The overall process by which current methods are replaced with new methods is referred to as __.

The cost approach is a real estate valuation method that estimates the price a buyer should pay for a piece of property is equal the cost to build an equivalent building. In the cost approach, the property's value is equal to the cost of land, plus total costs of construction, less depreciation. It yields the most accurate market value for when a property is new than through alternative methods.

The cost approach is one of three valuation methods for real estate; the others being the income approach and the comparable approach.

  • The cost approach to real estate valuation considers the value should equal the total cost to build an equivalent structure.
  • The cost approach considers the cost of land, plus costs of construction, less depreciation.
  • The cost approach is considered less reliable than other real estate valuation methods, but can be useful in certain cases such as when evaluating new construction or a unique home with few comparables.

Instead of focusing on the prices other, similar homes in the area are selling for, or a property’s ability to generate income, the coast approach method values real estate by calculating how much the building would cost today if it were destroyed and needed to be replaced from start to finish. It also factors in how much the land is worth and makes deductions for any loss in value, otherwise known as its depreciation.

The logic behind the cost approach is that it makes little sense for buyers to pay more for a property than what it would cost to build from scratch. 

There are two main types of cost approach appraisals:

  1. Reproduction method: This version considers what a replica of the property would cost to be built and gives attention to the use of original materials.
  2. Replacement method. In this case, it is assumed that the new structure has the same function but with newer materials, utilizing current construction methods and updated design.

When all estimates have been gathered, the cost approach is calculated in the following way:

cost – depreciation + land worth = value of the property.

The cost approach can be less reliable than the income and comparable methodologies in practice. It requires certain assumptions, including taking for granted that there is enough available land for the buyer to build an identical property.

Moreover, if comparable vacant land is not available, the value must be estimated, which makes the appraisal less accurate. The lack of similar building materials also reduces the accuracy of the appraisal and increases room for subjectivity. Calculating depreciation on older property is not straightforward and easily measurable, either.

Despite these limitations, there are a few cases where the cost approach can be useful and even necessary. Valuing the various components of real estate separately is especially helpful when dealing with property that is new or differs from others in unique ways.

The cost approach is required and sometimes is the only way to determine the value of exclusive-use buildings, such as libraries, schools or churches. These resources generate little income and are not often marketed, which invalidates the income and comparable approaches.

The cost approach is often used for new construction, too. Construction lenders require cost approach appraisals because any market value or income value is dependent upon project standards and completion. Projects are reappraised at various stages of construction to enable the release of funds for the next stage of completion.

Insurance appraisals tend to use the cost approach when underwriting homeowners' policies or considering claims because only the value of improvements is insurable and land value is separated from the total value of the property. The choice between depreciated value and full replacement or reproduction value is the determining factor for the evaluation.

Finally, the cost approach is occasionally relied on to value commercial property, such as office buildings, retail stores, and hotels. The income approach is the main method used here, although a cost approach may be implemented when design, construction, functional utility or grade of materials require individual adjustments.

Most residential appraisals do not use the cost approach. Instead, sales comparisons usually drive market valuations of these types of properties.

When a cost approach appraisal comes in below market pricing, it can be a sign of an overheated market. Conversely, regular evaluations above market pricing may signal a buying opportunity.

An exception is if the property is under-improved or over-improved for its neighborhood. In this case, an accurate estimation of the value of improvements adds to the precision of the determination of value, which is not possible using only the comparable approach.

The use of the argument, conventionally called self isn't as hard to understand, as is why is it necessary? Or as to why explicitly mention it? That, I suppose, is a bigger question for most users who look up this question, or if it is not, they will certainly have the same question as they move forward learning python. I recommend them to read these couple of blogs:

1: Use of self explained

Note that it is not a keyword.

The first argument of every class method, including init, is always a reference to the current instance of the class. By convention, this argument is always named self. In the init method, self refers to the newly created object; in other class methods, it refers to the instance whose method was called. For example the below code is the same as the above code.

2: Why do we have it this way and why can we not eliminate it as an argument, like Java, and have a keyword instead

Another thing I would like to add is, an optional self argument allows me to declare static methods inside a class, by not writing self.

Code examples:

class MyClass(): def staticMethod(): print "This is a static method" def objectMethod(self): print "This is an object method which needs an instance of a class, and that is what self refers to"

PS:This works only in Python 3.x.

In previous versions, you have to explicitly add @staticmethod decorator, otherwise self argument is obligatory.

Planning
The planning phase is the fundamental process of understanding why an information system should be built and determining how the project team will go about building it. It has two steps:


1. During project initiation, the system’s business value to the organization is identified: how will it lower costs or increase revenues? Most ideas for new systems come from outside the IS area (from the marketing department, accounting department, etc.) in the form of a system request. A system request presents a brief summary of a business need, and it explains how a system that supports the need will create business value. The IS department works together with the person or department that generated the request (called the project sponsor) to conduct a feasibility analysis.

The feasibility analysis examines key aspects of the proposed project:

■ The idea’s technical feasibility (Can we build it?)

■ The economic feasibility (Will it provide business value?)

■ The organizational feasibility (If we build it, will it be used?)

The system request and feasibility analysis are presented to an information systems approval committee (sometimes called a steering committee), which decides whether the project should be undertaken.

2. Once the project is approved, it enters project management. During project management, the project manager creates a workplan, staffs the project, and puts techniques in place to help the project team control and direct the project through the
entire SDLC. The deliverable for project management is a project plan, which
describes how the project team will go about developing the system.

Information system projects are usually complicated.They require a significant time, effort. and economic investment The problems to be solved are frequently stated vaguely. which means that the Initial envisioned solution may be premature. For these reasons, system projects should be carefully planned. System Initiation establishes project scope  

and the problem solving plan.Thus, we see that system Initiation establishes the project scope,goals, 

schedule, and budget required to solve the problem or opportunity represented by the project. 

Project scope defines the area of the business to be addressed by the project and the goals to be achieved. 

Scope and goals ultimately Impact the resource committmemts. namely. schedule and 

budget, that must be made to successfully complete the project.. By establishing a project schedtde and budget  

against the inittal scope and goals, you also establish a baseline against which  all stakeholders can accept the reality that any fut chaure changes In 

scope or goals wll impact the schedule and budget.

The Planning Phase is the fundamental two-step process of understanding why an information system should be developed and creating a plan for how the project team will develop it. The deliverables from both steps are combined into the project plan,
which is presented to the project sponsor and approval committee at the end of the Planning Phase. They decide whether it is advisable to proceed with the system development project.

The overall process by which current methods are replaced with new methods is referred to as __.


CHECKLIST for PLANNING STAGE


Analysis
The analysis phase answers the questions of who will use the system, what the system will do, and where and when it will be used. During this phase, the project team investigates any current system(s), identifies improvement opportunities, and develops a concept for the new system.

This phase has three steps:
1. An analysis strategy is developed to guide the project team’s efforts. Such a strategy usually includes an analysis of the current system (called the as-is system) and its problems, and then ways to design a new system (called the to-be system).
2. The next step is requirements gathering (e.g., through interviews or questionnaires). The analysis of this information—in conjunction with input from project sponsor and many other people—leads to the development of a concept for a new system. The system concept is then used as a basis to develop a set of business analysis models, which describe how the business will operate if the new system is developed. The set of models typically includes models that represent the data and processes necessary to support the underlying business process.
3. The analyses, system concept, and models are combined into a document called the system proposal, which is presented to the project sponsor and other key decision makers (e.g., members of the approval committee) who decide whether the project should continue to move forward.

The system proposal is the initial deliverable that describes what business requirements the new system should meet. Because it is really the first step in the design of the new system, some experts argue that it is inappropriate to use the term analysis as the name for
this phase; some argue a better name would be analysis and initial design. Most organizations continue use to the name analysis for this phase, however, so we use it in this book as well. Just keep in mind that the deliverable from the analysis phase is both an analysis and
a high-level initial design for the new system.

System analysis is Intended to provide the project team with a more thorough understanding of the problems and needs that triggered tile project. 

As such, the business area (scope of the project- as defined during system Initiation) may be studied and analyzed to gain a more detailed understanding of what works, what doesn't, and what"s needed.  system analysis requires working with system users to clearly define business requirements and expectations for any new system that IS to be purchased or developed. Also. business priorities may need to be established In the event that schedule and budget are insufficient to accomplish all that is desired,

The overall process by which current methods are replaced with new methods is referred to as __.

CHECKLIST for ANALYSIS STAGE

Performing Requirements Determination
you will learn here about various methods that systems analysts use to collect the information needed to determine systems requirements. 

In many ways, the requirements determination step is the single most critical step of the entire SDLC. It is here that the major elements of the system first begin to emerge. During requirements determination, the system is easy to change because little work has been done yet. As the system moves through the subsequent phases in the SDLC, it becomes harder and harder to return to requirements determination and make major changes because of all of the rework that is involved.


Although many factors contribute to the failure of systems development projects, failing to determine the correct requirements is a primary cause.1 This is why the iterative approaches of many RAD and agile methodologies are so effective—small 
batches of requirements can be identified and implemented in incremental stages, allowing the overall system to change and evolve over time. In this lessons, we will focus on the requirements determination step of theanalysis phase. We begin by explaining what a requirement is and the overall process of requirements analysis and requirements gathering. 

What Is a Requirement?
A requirement is simply a statement of what the system must do or what characteristics it needs to have. During the analysis phase, requirements are written from the perspective of the businessperson, and they focus on what the system does. They focus on business user needs, so they usually are called business requirements (sometimes, user requirements). Later in the design phase, business requirements evolve to become more technical, and they describe how the system will be implemented. Requirements in the design phase are written from the developer’s perspective, and they usually are called system requirements.  

Before we continue, we want to stress that there is no black-and-white line dividing a business requirement and a system requirement—and some companies use the terms interchangeably. The important thing to remember is that a requirement is a statement of what the system must do, and requirements will change over time as the project moves from analysis to design to implementation. Requirements evolve from detailed statements of the business capabilities that a system should have to detailed statements of the technical way in which the capabilities will be implemented in the new system.

Requirements can be either functional or nonfunctional in nature. A functional requirement relates directly to a process the system has to perform or information it needs to contain. For example, a process-oriented functional requirement would be that the system must have the ability to search for available inventory. An information-oriented functional requirement would be that the system must include actual and budgeted expenses. (See Table below.) Functional requirements flow directly into the next steps of the analysis process (use cases, process models, data model) because they define the functions that the system needs to have.

The overall process by which current methods are replaced with new methods is referred to as __.


Nonfunctional requirements refer to behavioral properties that the system must have, such as performance and usability.  The ability to access the system through a Web browser would be considered a nonfunctional requirement. Nonfunctional requirements may influence the rest of the analysis process (use cases, process models, and data model), but often do so only indirectly; nonfunctional requirements are primarily used in the design phase when decisions are made about the user interface, the hardware and software, and the system’s underlying architecture.

Table below lists different kinds of nonfunctional requirements and examples of each kind. Notice that the nonfunctional requirements describe a variety of characteristics regarding the system: operational, performance, security, and cultural and political. These characteristics do not describe business processes or information, but they are very important in understanding what the final system should be like. For example, the project team needs to know whether a system must be highly secure, requires subsecond response time, or has to reach a multilingual customer base. These requirements will affect design decisions that will be made in the design phase, particularly architecture design. The goal at this point is to identify any major issues. 

The overall process by which current methods are replaced with new methods is referred to as __.


As stated earlier and shown in Figure, 

The overall process by which current methods are replaced with new methods is referred to as __.


the two parts to systems analysis are determining requirements and structuring requirements. We address these as two separate steps, but you should consider these steps as somewhat parallel and repetitive. For example, as you determine some aspects of the current and desired system(s), you begin to structure these requirements or to build prototypes to show users how a system might behave. Inconsistencies and deficiencies discovered through structuring and prototyping lead you to explore further the operation of the current system(s) and the future needs of the organization.
Eventually your ideas and discoveries meet on a thorough and accurate depiction of current operations and the requirements for the new system. 

PART-I:  Determining Requirements
At the end of the systems planning and selection phase of the SDLC, management can grant permission to pursue development of a new system. A project is initiated and planned  and you begin determining what the new system should do. During requirements determination, you and other analysts gather information on what the system should do from as many sources as possible. Such sources include users of the current system, reports, forms, and procedures. All of the system requirements are carefully documented and made ready for structuring. Structuring means taking the system requirements you find during requirements determination and ordering them into tables, diagrams, and other formats that make them easier to translate into technical system specifications.  In many ways, gathering system requirements is like conducting any investigation.  The characteristics you need to enjoy solving mysteries and puzzles are the same ones you need to be a good systems analyst during requirements determination. These characteristics include:

  • . Impertinence: You should question everything. Ask such questions as “Are all transactions processed the same way?” “Could anyone be charged something other than the standard price?” “Might we someday want to allow and encourage employees to work for more than one department?”
  • Impartiality: Your role is to find the best solution to a business problem or opportunity. It is not, for example, to find a way to justify the purchase of new hardware or to insist on incorporating what users think they want into the new system requirements. You must consider issues raised by all parties and try to find the best organizational solution.
  • Relaxing of constraints: Assume anything is possible and eliminate the infeasible. For example, do not accept this statement: “We’ve always done it that way, so we have to continue the practice.” Traditions are different from rules and policies. Traditions probably started for a good reason, but as the organization and its environment change, they may turn into habits rather than sensible procedures.
  • Attention to details: Every fact must fit with every other fact. One element out of place means that the ultimate system will fail at some time. For example, an imprecise definition of who a customer is may mean that you purge customer data when a customer has no active orders; yet these past customers may be vital contacts for future sales.
  • Reframing: Analysis is, in part, a creative process. You must challenge yourself to look at the organization in new ways. Consider how each user views his or her requirements. Be careful not to jump to this conclusion: “I worked on a system like that once—this new system must work the same way as the one I built before.”

Deliverables and Outcomes
The primary deliverables from requirements determination are the types of information gathered during the determination process. The information can take many forms: transcripts of interviews; notes from observation and analysis of documents; sets of forms, reports, job descriptions, and other documents; and computer-generated output such as system prototypes. In short, anything that the analysis team collects as part of determining system requirements is included in these deliverables.  Table below lists examples of some specific information that might be gathered at this time.

The overall process by which current methods are replaced with new methods is referred to as __.

The deliverables summarized in the Table  contain the information you need for systems analysis. In addition, in your information gathering, you need to understand the following components of an organization:

  • . The business objectives that drive what and how work is done

  • . The information people need to do their jobs

  • . The data handled within the organization to support the jobs

  • . When, how, and by whom or what the data are moved, transformed and stored

  • . The sequence and other dependencies among different data-handling activities

  • . The rules governing how data are handled and processed

  • . Policies and guidelines that describe the nature of the business, the market, and the environment in which it operates

  • . Key events affecting data values and when these events occur

Such a large amount of information must be organized in order to be useful, which is the purpose of the next part of systems analysis—requirements structuring.

Requirements Structuring
The amount of information gathered during requirements determination could be huge, especially if the scope of the system under development is broad. The time required to collect and structure a great deal of information can be extensive and, because it involves so much human effort, quite expensive. Too much analysis is not productive, and the term analysis paralysis has been coined to describe a project that has become bogged down in an abundance of analysis work. Because of the dangers of excessive analysis, today’s systems analysts focus more on the system to be developed than on the current system. Later , you learn about joint application design (JAD) and prototyping, techniques developed to keep the analysis effort at a minimum yet still be effective. Other processes have been developed to limit the analysis effort even more, providing an alternative to the SDLC. Many of these are included under the name of Agile Methodologies. Before you can fully appreciate alternative approaches, you need to learn traditional fact-gathering techniques.

Traditional Methods for Determining Requirements
Collection of information is at the core of systems analysis. At the outset, you must collect information about the information systems that are currently in use. You need to find out how users would like to improve the current systems and organizational operations with new or replacement information systems.


One of the best ways to get this information is to talk to those directly or indirectly involved in the different parts of the organization affected by the possible system changes. Another way is to gather copies of documentation relevant to current systems and business processes. In this chapter, you learn about traditional ways to get information directly from those who have the information you need: interviews and direct observation. You learn about collecting documentation on the current system and organizational operation in the form of written procedures, forms, reports, and other hard copy. These traditional methods of collecting system requirements are listed in Table below.


The overall process by which current methods are replaced with new methods is referred to as __.


I - Interviewing and Listening
Interviewing is one of the primary ways analysts gather information about an information systems project. Early in a project, an analyst may spend a large amount of time interviewing people about their work, the information they use to 
do it, and the types of information processing that might supplement their work. Others are interviewed to understand organizational direction, policies, and expectations that managers have of the units they supervise. During interviewing, you gather facts, opinions, and speculation and observe body language, emotions, and other signs of what people want and how they assess current systems.


Interviewing someone effectively can be done in many ways, and no one method is necessarily better than another. Some guidelines to keep in mind when you interview are summarized in Table  below.

The overall process by which current methods are replaced with new methods is referred to as __.


First, prepare thoroughly before the interview. Set up an appointment at a time and for a duration that is convenient for the interviewee. The general nature of the interview should be explained to the interviewee in advance. You may ask the interviewee to think about specific questions or issues, or to review certain documentation to prepare for the interview. Spend some time thinking about what you need to find out, and write down your questions. Do not assume that you can anticipate all possible questions. You want the interview to be natural and, to some degree, you want to direct the interview spontaneously as you discover what expertise the interviewee brings to the session.


Prepare an interview guide or checklist so that you know in which sequence to ask your questions and how much time to spend in each area of the interview. The checklist might include some probing questions to ask as follow-up if you receive certain anticipated responses. You can, to some extent, integrate your interview guide with the notes you take during the interview, as depicted in a sample guide in Figure below. This same guide can serve as an outline for a summary of what you discover during an interview.

The overall process by which current methods are replaced with new methods is referred to as __.

The overall process by which current methods are replaced with new methods is referred to as __.

The first page of the sample interview guide contains a general outline of the interview. Besides basic information on who is being interviewed and when, list major objectives for the interview. These objectives typically cover the most important data you need to collect, a list of issues on which you need to seek agreement (e.g., content for certain system reports), and which areas you need to explore. Also, include reminder notes to yourself on key information about the interviewee (e.g., job history, known positions taken on issues, and role with current system). This information helps you to be personal, shows that you consider the interviewee important, and may assist in interpreting some answers. Also included is an agenda with approximate time limits for different sections of the interview. You may not follow the time limits precisely, but the schedule helps you cover all areas during the time the interviewee is available. Space is also allotted for general observations that do not fit under specific questions and for notes taken during the interview about topics skipped or issues raised that could not be resolved.


On subsequent pages, list specific questions. The sample form in Figure shown above  includes space for taking notes on these questions. Because the interviewee may provide information you were not expecting, you may not follow the guide in sequence. You can, however, check offquestions you have asked and write reminders to yourself to return to or skip other questions as the interview takes place.

Choosing Interview Questions You need to decide on the mix and sequence of open-ended and closed-ended questions to use. 

Open-ended questions are usually used to probe for information when you cannot anticipate all possible responses or when you do not know the precise question to ask. The person being interviewed is encouraged to talk about whatever interests him or her within the general bounds of the question. An example is, “What would you say is the best thing about the information system you currently use to do your job?” or “List the three most frequently used menu options.” You must react quickly to answers and determine whether any followup questions are needed for clarification or elaboration. Sometimes body language will suggest that a user has given an incomplete answer or is reluctant to provide certain information. If so, a follow-up question might result in more information. One advantage of open-ended questions is that previously unknown information can surface. You can then continue exploring along unexpected lines of inquiry to reveal even more new information. Open-ended questions also often put the interviewees at ease because they are able to respond in their own words using their own structure. Open-ended questions give interviewees more of a sense of involvement and control in the interview. A major disadvantage of open-ended questions is the length of time it can take for the questions to be answered. They also can be difficult to summarize.

Closed-ended questions provide a range of answers from which the interviewee may choose. Here is an example:Which of the following would you say is the one best thing about the information system you currently use to do your job (pick only one)?

a. Having easy access to all of the data you need

b. The system’s response time

c. The ability to run the system concurrently with other applications

Closed-ended questions work well when the major answers to questions are well known. Another plus is that interviews based on closed-ended questions do not necessarily require a large time commitment—more topics can be covered. Closed-ended questions can also be an easy way to begin an interview and to determine which line of open-ended questions to pursue. You can include an “other” option to encourage the interviewee to add unexpected responses.
A major disadvantage of closed-ended questions is that useful information that does not quite fit the defined answers may be overlooked as the respondent tries to make a choice instead of providing his or her best answer.

Like objective questions on an examination, closed-ended questions can follow several forms, including these choices:

  • True or false
  • Multiple choice (with only one response or selecting all relevant choices)
  • Rating a response or idea on some scale, say, from bad to good or strongly agree to strongly disagree (each point on the scale should have a clear and     consistent meaning to each person, and there is usually a neutral point in the middle of the scale)
  • Ranking items in order of importance


The overall process by which current methods are replaced with new methods is referred to as __.

The overall process by which current methods are replaced with new methods is referred to as __.

Interview Guidelines 

Firstly, with either open- or closed-ended questions, do not phrase a question in a way that implies a right or wrong answer. Respondents must feel free to state their true opinions and perspectives and trust that their ideas will be considered. Avoid questions such as “Should the system continue to provide the ability to override the default value, even though most users now do not like the feature?” because such wording predefines a socially acceptable answer.

Secondly, listen carefully to what is being said. Take careful notes or, if possible, record the interview on a tape recorder (be sure to ask permission first!). The answers may contain extremely important information for the project. Also, this may be your only chance to get information from this particular person. If you run out of time and still need more information from the person you are talking to, ask to schedule a follow-up interview.

Thirdly, once the interview is over, go back to your office and key in your notes within forty-eight hours with a word processing program such as Microsoft Word. For numerical data, you can use a spreadsheet program such as Microsoft Excel. If you recorded the interview, use the recording to verify your notes. After forty-eight hours, your memory of the interview will fade quickly. As you type and organize your notes, write down any additional questions that might arise from lapses in your notes or ambiguous information. Separate facts from your opinions and interpretations. Make a list of unclear points that need clarification. Call the person you interviewed and get answers to these new questions. Use the phone call as an opportunity to verify the accuracy of your notes. You may also want to send a written copy of your notes to the person you interviewed to check your notes for accuracy. Finally, make sure to thank the person for his or her time. You may need to talk to your respondent again. If the interviewee will be a user of your system or is involved in some other way in the system’s success, you want to leave a good impression.

Fourthly, be careful during the interview not to set expectations about the new or replacement system unless you are sure these features will be part of the delivered system. Let the interviewee know that there are many steps to the project. Many people will have to be interviewed. Choices will have to be made from among many technically possible alternatives. Let respondents know that their ideas will be carefully considered. Because of the repetitive 

nature of the systems development process, however, it is premature to say now exactly what the ultimate system will or will not do.

Fifthly, seek a variety of perspectives from the interviews. Talk to several different people: potential users of the system, users of other systems that might be affected by this new system, managers and superiors, information systems staff, and others. Encourage people to think about current problems and opportunities and what new information services might better serve the organization. You want to understand all possible perspectives so that later you will have information on which to base a recommendation or design decision that everyone can accept.

II - Directly Observing Users
Interviewing involves getting people to recall and convey information they have about organizational processes and the information systems that support them. People, however, are not always reliable, even when they try to be and say what they think is the truth. As odd as it may sound, people often do not have a completely accurate appreciation of what they do or how they do it, especially  when  infrequent events, issues from the past, or issues for which people have considerable passion are involved. Because people cannot always be trusted to interpret and report their own actions reliably, you can supplement what people tell you by watching what they do in work situations.

The intent behind obtaining system records and direct observation is the same, however, and that is to obtain more firsthand and objective measures of employee interaction with information systems. In some cases, behavioral measures will more accurately reflect reality than what employees themselves believe. In other cases, the behavioral information will substantiate what employees have told you directly. Although observation and obtaining objective measures are desirable ways to collect pertinent information, such methods are not always possible in real organizational settings. Thus, these methods are not totally unbiased, just as no one data-gathering method is unbiased.

III - Analyzing Procedures and Other Documents
As previously noted, interviewing people who use a system every day or who have an interest in a system is an effective way to gather information about current and future systems. Observing current system users is a more direct way of seeing how an existing system operates. Both interviewing and observing have limitations. Methods for determining system requirements can be enhanced by examining system and organizational documentation to discover more details about current systems and the organization they support.  What can the analysis of documents tell you about the requirements for a new system? In documents you can find information about:

  • Problems with existing systems (e.g., missing information or redundant steps)
  • Opportunities to meet new needs if only certain information or information processing were available (e.g., analysis of sales based on customer type)
  • Organizational direction that can influence information system requirements (e.g., trying to link customers and suppliers more closely to the organization)
  • Titles and names of key individuals who have an interest in relevant existing systems (e.g., the name of a sales manager who has led a study of buying          behavior of key customers)
  • Values of the organization or individuals who can help determine priorities for different capabilities desired by different users (e.g., maintaining market    share even if it means lower short-term profits)
  • Special information-processing circumstances that occur irregularly that may not be identified by any other requirements determination technique (e.g.,     special handling needed for a few large-volume customers who require use of customized customer ordering procedures)
  • The reason why current systems are designed as they are, which can suggest features left out of current software that may now be feasible and desirable     (e.g., data about a customer’s purchase of competitors’ products not available when the current system was designed; these data now available from  several sources)
  • Data, rules for processing data, and principles by which the organization operates that must be enforced by the information system (e.g., each customer  assigned exactly one sales department staff member as primary contact if customer has any questions)

One type of useful document is a written work procedure for an individual or a work group. The procedure describes how a particular job or task is performed, including data and information used and created in the process of performing the job. For example, the procedure shown in Figure below includes data (list of features and advantages, drawings, inventor name, and witness names) required to prepare an invention disclosure. It also indicates that besides the inventor, the vice president for research, the department head, and the dean must review the material and that a witness is required for any filing of an invention disclosure. These insights clearly affect what data must be kept, to whom information must be sent, and the rules that govern valid forms.

The overall process by which current methods are replaced with new methods is referred to as __.

The overall process by which current methods are replaced with new methods is referred to as __.


Procedures are not trouble-free sources of information, however. Sometimes your analysis of several written procedures reveals a duplication of effort in two or more jobs. You should call such duplication to the attention of management as an issue to be resolved before system design can proceed. That is, it may be necessary to redesign the organization before the redesign of an information system can achieve its full benefits. Another problem you may encounter is a missing procedure. Again, it is not your job to create a document for a missing procedure—that is up to management. A third and common problem happens when the procedure is out of date, which you may realize in your interview of the person responsible for performing the task described in the procedure. Once again, the decision to rewrite the procedure so that it matches reality is made by management, but you may make suggestions based upon your understanding of the organization. A fourth problem often encountered is that the formal procedures may contradict information you collected from interviews, questionnaires, and observation about how the organization operates and what information is required. As in the other cases, resolution rests with management.

All of these problems illustrate the difference between formal systems and informal systems. A formal system is one an organization has documented; an informal system is the way in which the organization actually works. Informal systems develop because of inadequacies of formal procedures and individual work habits, preferences, and resistance to control. It is important to understand both formal and informal systems because each provides insight into information requirements and what is necessary to convert from present to future systems.


A second type of document useful to systems analysts is a business form, illustrated in Figure below. Forms are used for all types of business functions, from recording an order to acknowledging the payment of a bill to indicating what goods have been shipped. Forms are important for understanding a system because they explicitly indicate what data flow in or out of a system. In the sample invoice form in Figure below, we see space for data such as invoice number, the “bill to” address, the quantity of items ordered, their descriptions, rates, and amounts.

The overall process by which current methods are replaced with new methods is referred to as __.

A printed form may correspond to a computer display that the system will generate for someone to enter and maintain data or to display data to online
users. The most useful forms contain actual organizational data that allow you to determine the data characteristics actually used by the application. The ways in which people use forms change over time, and data that were needed when a form was designed may no longer be required.

A third type of useful document is a report generated by current systems. As the primary output for some types of systems, a report enables you to work

backward from the information on the report to the data that must have been necessary to generate it. Figure below presents an example of a common financial accounting report, the statement of cash flows. You analyze such reports to determine which data need to be captured over what time period and what manipulation of these raw data is necessary to produce each field on the report.


The overall process by which current methods are replaced with new methods is referred to as __.

The overall process by which current methods are replaced with new methods is referred to as __.


If the current system is computer based, a fourth set of useful documents is one that describes the current information systems—how they were designedand how they work. Several different types of documents fit this description, everything from flowcharts to data dictionaries to user manuals. An analyst who has access to such documents is fortunate because many in-house-developed information systems lack complete documentation. Analysis of organizational documents and observation, along with interviewing and distributing questionnaires, are the methods used most for gathering system requirements.

This TABLE below summarizes the comparative features of observation and analysis of organizational documents.

The overall process by which current methods are replaced with new methods is referred to as __.


Modern Methods for Determining System Requirements
Even though we called interviews, questionnaires, observation, and document analysis traditional methods for determining a system’s requirements, all of  these methods are still used by analysts to collect important information. Today, however, additional techniques are available to collect information about the current system, the organizational area requesting the new system, and what the new system should be like. 

In this section, you learn about two modern information-gathering techniques for analysis: joint application design (JAD) and prototyping. These techniques can support effective information collection and structuring while reducing the amount of time required for analysis.

The following is a list of typical JAD participants:
JAD session leader: The JAD leader organizes and runs the JAD. This person has been trained in group management and facilitation as well as in systems analysis. The JAD leader sets the agenda and sees that it is met. He or she remains neutral on issues and does not contribute ideas or opinions, but rather concentrates on keeping the group on the agenda, resolving conflicts and disagreements, and soliciting all ideas.
Users: The key users of the system under consideration are vital participants in a JAD. They are the only ones who clearly understand what it means to use the system on a daily basis.
Managers: Managers of the work groups who use the system in question provide insight into new organizational directions, motivations for and organizational impacts of systems, and support for requirements determined during the JAD.
Sponsor: As a major undertaking, because of its expense, a JAD must be sponsored by someone at a relatively high level in the company such as a vice president or chief executive officer. If the sponsor attends any sessions, it is usually only at the beginning or the end.
Systems analysts: Members of the systems analysis team attend the JAD, although their actual participation may be limited. Analysts are there to learn from users and managers, not to run or dominate the process.
Scribe: The scribe takes notes during the JAD sessions, usually on a personal computer or laptop. 

IS staff: Besides systems analysts, other IS staff, such as programmers, database analysts, IS planners, and data-center personnel, may attend the session. Their purpose is to learn from the discussion and possibly
to contribute their ideas on the technical feasibility of proposed ideas or on the technical limitations of current systems.

Radical Methods for Determining System Requirements
Whether traditional or modern, the methods for determining system requirements that you have read about in this lessons apply to any requirements determination effort, regardless of its motivation. Yet, most of what you have 
learned has traditionally been applied to systems development projects that involve automating existing processes. Analysts use system requirements determination to understand current problems and opportunities, as well as what is needed and desired in future systems. Typically, the current way of doing things has a large impact on the new system. In some organizations, though, management is looking for new ways to perform current tasks. These ways may be radically different from how things are done now, but the payoffs may be enormous: Fewer people may be needed to do the same work; relationships with customers may improve dramatically; and processes may become much more efficient and effective, all of which can result in increased profits. The overall process by which current methods are replaced with radically new methods is referred to as business process reengineering (BPR).

A first step in any BPR effort is to understand what processes need to change, what are the key business processes for the organization. Key business processes are the structured set of measurable activities designed to produce a specific output for a particular customer or market. The important aspect of this definition is that key processes are focused on some type of organizational outcome such as the creation of a product or the delivery of a service. Key business processes are also customer focused. In other words, key business processes would include all activities used to design, build, deliver, support, and service a particular product for a particular customer. BPR, therefore, requires you first to understand those activities that are part of the organization’s key business processes and then to alter the sequence and structure of activities to achieve radical improvements in speed, quality, and customer satisfaction. The same techniques you learned to use for system requirements determination can be applied to discovering and understanding key business processes: interviewing key individuals, observing activities, reading and studying organizational documents, and conducting JAD sessions.

Disruptive Technologies
Once key business processes and activities have been identified, information technologies must be applied to improve business processes radically. Hammer and Champy suggest that organizations think “inductively” about information technology. Induction is the process of reasoning from the specific to the general, which means that managers must learn about the power of new technologies and think of innovative ways to alter the way work is done. This approach is contrary to deductive thinking, in which problems are first identified and solutions then formulated.


Hammer and Champy suggest that managers especially consider disruptive technologies when applying deductive thinking. Disruptive technologies are those that enable the breaking of long-held business rules that inhibit organizations from making radical business changes. For example, Toyota is using production schedule databases and electronic data interchange (EDI)—an information system that allows companies to link their computers directly to suppliers—to work with its suppliers as if they and Saturn were one company. Suppliers do not wait until Saturn sends them a purchase order for more parts but simply monitor inventory levels and automatically send shipments as needed. Table below shows several long-held business rules and beliefs that constrain organizations from making radical process improvements. For example, the first rule suggests that information can appear in only one place at a time. However, the advent of distributed databases, which allow business units to share a common database, has “disrupted” this long-held business belief.

The overall process by which current methods are replaced with new methods is referred to as __.


PART-2:  Structuring Requirements.

In this lessons, we continue our focus on the systems analysis part of the SDLC, which is highlighted in Figure below.

The overall process by which current methods are replaced with new methods is referred to as __.


 Note the two parts to the analysis phase, determining requirements and structuring requirements. We focus on a tool analysts use to structure information— data-flow diagrams (DFDs). Data-flow diagrams allow you to model how data flow through an information system, the relationships among the data flows, and how data come to be stored at specific locations. Data-flow diagrams also show the processes that change or transform data.
Because data-flow diagrams concentrate on the movement of data between processes, these diagrams are called process models. 

As the name indicates, a data-flow diagram is a graphical tool that allows analysts (and users) to show the flow of data in an information system. The system can be physical or logical, manual or computer based. In this lesson, you learn the mechanics of drawing and revising data-flow diagrams, as well as the basic symbols and set of rules for drawing them. We also alert you to pitfalls. You learn two important concepts related to data-flow diagrams: balancing and decomposition. At the end of the lesson, you learn how to use data-flow diagrams as part of the analysis of an information system and as a tool for supporting business process reengineering. You also are briefly introduced to a method for modeling the logic inside processes, decision tables.

Process Modeling
Process modeling involves graphically representing the processes, or actions, that capture, manipulate, store, and distribute data between a system and its environment and among components within a system. A common form of a process model is a data-flow diagram (DFD). A data-flow diagram is a
graphic that illustrates the movement of data between external entities and the processes and data stores within a system. Although several different tools have been developed for process modeling, we focus solely on data-flow diagrams because they are useful tools for process modeling. 
Data-flow diagramming is one of several structured analysis techniques used to increase software development productivity. Although not all organizations

use each structured analysis technique, collectively, these techniques, like dataflow diagrams, have had a significant impact on the quality of the systemsdevelopment process.

Modeling a System’s Process

The analysis team begins the process of structuring requirements with an abundance of information gathered during requirements determination. As part ofstructuring, you and the other team members must organize the information into a meaningful representation of the information system that exists and of

the requirements desired in a replacement system. In addition to modeling the processing elements of an information system and transformation of data in the system, you must also model the structure of data within the system. Analysts use both process and data models to establish the specification of an information system. With a supporting tool, such as a CASE tool, process and data models can also provide the basis for the automatic generation of an information system.


Deliverables and Outcomes
In structured analysis, the primary deliverables from process modeling are a set of coherent, interrelated data-flow diagrams. Table below lists the progression of deliverables that result from studying and documenting a system’s process. First, a context data-flow diagram shows the scope of the system, indicating which elements are inside and outside the system. Second, data-flow diagrams of the current system specify which people and technologies are used in which processes to move and transform data, accepting inputs and producing outputs. The detail of these diagrams allows analysts to understand the current system and eventually to determine how to convert the current system into its replacement. Third, technology-independent, or logical, data-flow diagrams show the dataflow, structure, and functional requirements of the new system. Finally, entries for all of the objects in all diagrams are included in the project dictionary or CASE repository

The overall process by which current methods are replaced with new methods is referred to as __.


This logical progression of deliverables helps you to understand the existing system. You can then reduce this system into its essential elements to show the way in which the new system should meet its information processing requirements, as they were identified during requirements determination. In later steps in the systems development life cycle, you and other project team members make decisions on exactly how the new system will deliver these new requirements in specific manual and automated functions. Because requirements determination and structuring are often parallel steps, data-flow diagrams evolve from the more general to the more detailed as current and replacement systems are better understood.


Even though data-flow diagrams remain popular tools for process modeling and can significantly increase software development productivity, they are not used in all systems development methodologies. Some organizations, such as EDS, have developed their own type of diagrams to model processes. Some methodologies, such as rapid application development (RAD), do not model processes separately at all. Instead, RAD builds processes—the work or actions that transform data so that they can be stored or distributed—into the prototypes created as the core of its development life cycle. However, even if you never formally use data-flow diagrams in your professional career, they remain a part of systems development’s history. DFDs illustrate important concepts about the movement of data between manual and automated steps and are a way to depict work flow in an organization.  
DFDs continue to benefit information systems professionals as tools for both analysis and communication. 

Data Flow Diagrams (may be included in Requirements Document) Data Flow Modeling represents the flow of information around a system. Data Flow Diagrams (DFDs) take a ‘top-down’ approach, expanding the system description into more and more detail via a series of ‘levels’, so a set of DFDs will comprise a Context Diagram. 

DFDs show how information flows around a system, they: 

• Represent a situation from the viewpoint of the data; 

• Is a technique to assist analysis of the processes of the system. 

• To graphically document boundaries of a system; 

• To provide hierarchical breakdown of the system; 

• To show movement of information between a system and its environment; 

• To document information flows within the system; 

• To aid communication between users and developers.

Data-Flow Diagramming Mechanics

A data flow diagram is a logical model of the flow of data through a system that shows how the system’s boundaries, processes, and data entities are logically related.

A data flow diagram is an excellent tool for summarizing and organizing detailed information about a system’s boundaries, processes, and data entities, providing the analyst with a logical map of the system. Documenting the system’s boundaries by drawing a context diagram helps the analyst, the user, and the responsible managers visualize alternative high-level logical system designs. The elements of a data flow diagram lead directly into physical design, with processes suggesting programs and procedures, data flows suggesting composites, and data stores suggesting data entities, files, and databases.

Creating a data flow diagram is a process driven task. Consequently, it is relatively easy to overlook key data elements and composites. Balancing a data flow diagram verifies the model’s internal consistency, but does not necessarily reveal missing elements. Attempting to balance a significant logical model without appropriate software (such as CASE software) is at best difficult and can be misleading. Beginners and users often confuse data flow diagrams with process flowcharts.
A data flow diagram is a logical model that shows the flow of data through a system.

Data-flow diagrams are versatile diagramming tools. With only four symbols, data-flow diagrams can represent both physical and logical information systems. The four symbols used in DFDs represent data flows, data stores, processes, and sources/sinks (or external entities). The set of four symbols we use in this book was developed by Gane and Sarson (1979) and is illustrated in Figure below.

 A data flow is data that are in motion and moving as a unit from one place in a system to another. A data flow could represent data on a customer order form or a payroll check. It could also represent the results of a query to a database,  the contents of a printed report, or data on a data-entry computer display form. A data flow can be composed of many individual pieces of data that are generated at the same time and that flow together to common destinations.

The overall process by which current methods are replaced with new methods is referred to as __.

data store is data at rest. A data store may represent one of many different physical locations for data, including a file folder, one or more computer-based file(s), or a notebook. To understand data movement and handling in a system, the physical configuration is not really important. A data store might contain data about customers, students, customer orders, or supplier invoices. 

process is the work or actions performed on data so that they are transformed, stored, or distributed. When modeling the data processing of a system, it doesn’t matter whether a process is performed manually or by acomputer.
source/sink is the origin and/or destination of the data. Source/sinks are sometimes referred to as external entities because they are outside the system. Once processed, data or information leave the system and go to some other place. Because sources and sinks are outside the system we are studying, many of their characteristics are of no interest to us. In particular, we do not consider the following:

  • Interactions that occur between sources and sinks
  • What a source or sink does with information or how it operates (i.e., a source or sink is a “black box”)
  • How to control or redesign a source or sink because, from the perspective of the system we are studying, the data a sink receives and often what data a 
    •   source provides are fixed
  • How to provide sources and sinks direct access to stored data  because, as external agents, they cannot directly access or manipulate data stored within    the system; that is, processes within the system must receive or distribute data between the system and its environment.

Using Gane and Sarson’s notation,4 four primary symbols are used to create a data flow diagram (Figures above). A source or destination (sink) is represented by a (shaded) square. Sources and destinations define the system’s boundaries; each one represents a person, organization, or other system that supplies data to the system, gets data from the system, or both. A process, or transform, (a round-cornered rectangle) identifies an activity that changes, moves, or otherwise transforms data. A data store (an open-ended,
horizontal rectangle) represents data at rest and implies that the data are held (for some logical reason) between processes. A data flow (an arrow) 
represents data in motion. Additionally, Gane and Sarson use thick arrows to show physical or material flows.

Using Yourdon7 and DeMarco’s2 notation, sources and sinks are represented as rectangles, processes as circles, and data stores as horizontal rectangles open at both ends (two parallel horizontal lines). Data flows are shown as arrows. There is no symbol for a material flow.

All About Data Flow Diagrams (DFDs)

This guide provides everything you need to know about data flow diagrams, including definitions, history, and symbols and notations. You'll learn the different levels of a DFD, the difference between a logical and a physical DFD and tips for making a DFD.  

What is a data flow diagram?

A data flow diagram (DFD) maps out the flow of information for any process or system. It uses defined symbols like rectangles, circles and arrows, plus short text labels, to show data inputs, outputs, storage points and the routes between each destination. Data flowcharts can range from simple, even hand-drawn process overviews, to in-depth, multi-level DFDs that dig progressively deeper into how the data is handled. They can be used to analyze an existing system or model a new one. Like all the best diagrams and charts, a DFD can often visually “say” things that would be hard to explain in words, and they work for both technical and nontechnical audiences, from developer to CEO. That’s why DFDs remain so popular after all these years. While they work well for data flow software and systems, they are less applicable nowadays to visualizing interactive, real-time or database-oriented software or systems.

The overall process by which current methods are replaced with new methods is referred to as __.

History of the DFD

Data flow diagrams were popularized in the late 1970s, arising from the book Structured Design, by computing pioneers Ed Yourdon and Larry Constantine. They based it on the “data flow graph” computation models by David Martin and Gerald Estrin. The structured design concept took off in the software engineering field, and the DFD method took off with it. It became more popular in business circles, as it was applied to business analysis, than in academic circles.

Also contributing were two related concepts:

  • Object Oriented Analysis and Design (OOAD), put forth by Yourdon and Peter Coad to analyze and design an application or system.
  • Structured Systems Analysis and Design Method (SSADM), a waterfall method to analyze and design information systems. This rigorous documentation approach contrasts with modern agile approaches such as Scrum and Dynamic Systems Development Method (DSDM.)

Three other experts contributing to this rise in DFD methodology were Tom DeMarco, Chris Gane and Trish Sarson. They teamed up in different combinations to be the main definers of the symbols and notations used for a data flow diagram.

Symbols and Notations Used in DFDs

Two common systems of symbols are named after their creators:

  • Yourdon and Coad
  • Yourdon and DeMarco
  • Gane and Sarson

One main difference in their symbols is that Yourdon-Coad and Yourdon-DeMarco use circles for processes, while Gane and Sarson use rectangles with rounded corners, sometimes called lozenges. There are other symbol variations in use as well, so the important thing to keep in mind is to be clear and consistent in the shapes and notations you use to communicate and collaborate with others.

Using any convention’s DFD rules or guidelines, the symbols depict the four components of data flow diagrams.

  1. External entity: an outside system that sends or receives data, communicating with the system being diagrammed. They are the sources and destinations of information entering or leaving the system. They might be an outside organization or person, a computer system or a business system. They are also known as terminators, sources and sinks or actors. They are typically drawn on the edges of the diagram.
  2. Process: any process that changes the data, producing an output. It might perform computations, or sort data based on logic, or direct the data flow based on business rules. A short label is used to describe the process, such as “Submit payment.”
  3. Data store: files or repositories that hold information for later use, such as a database table or a membership form. Each data store receives a simple label, such as “Orders.”
  4. Data flow: the route that data takes between the external entities, processes and data stores. It portrays the interface between the other components and is shown with arrows, typically labeled with a short data name, like “Billing details.”

Notation

Yourdon and Coad

Gane and Sarson

External Entity

The overall process by which current methods are replaced with new methods is referred to as __.

The overall process by which current methods are replaced with new methods is referred to as __.

Process

The overall process by which current methods are replaced with new methods is referred to as __.

The overall process by which current methods are replaced with new methods is referred to as __.

Data Store

The overall process by which current methods are replaced with new methods is referred to as __.

The overall process by which current methods are replaced with new methods is referred to as __.

Data Flow

DFD rules and tips ( Conventions )

    • Each process should have at least one input and an output.
    • Each data store should have at least one data flow in and one data flow out.
    • Data stored in a system must go through a process.
    • All processes in a DFD go to another process or a data store.
    • Data stored in a system must go through a process.

Legal and illegal data flows ---  All data flows must begin and/or end with a process (Figure below). Data cannot legally flow directly from a source to a destination or between a source/destination and a data store unless they pass through an intermediate process.

The overall process by which current methods are replaced with new methods is referred to as __.


Data flow linesMultiple data flows between two components can be shown by two data flow lines or by a two-headed arrow. Some analysts use two flow lines whenthe input and output data flows are different and a single two-headed arrow when they are the same. For example, a process that gets data from a store,updates the data, and then sends the same data elements back to the store calls for a two-headed arrow.

NamingA process name consists of a verb followed by a noun. By convention, the names of the sources, destinations, and data stores are capitalized, whileprocess names and data flows are shown mixed case.

NumberingBy convention, the processes in a level 1 data flow diagram are numbered 1, 2, 3, and so on. The numbers do not imply sequence; they are for reference only.The sub-processes in an exploded data flow diagram are assigned numbers starting with the parent process’s number. For example, level 1 process 4 might be exploded into level 2 processes 4.1, 4.2, 4.3, and so on, while level 2 process 4.3 might be decomposed into level 3 processes 4.3.1, 4.3.2, 4.3.3, and so on.Many analysts use the letter D followed by a number to identify the data stores. For example, in an inventory system, INVENTORY might be D1, SALES might be D2, and so on. Some analysts identify the sources and destinations as well.

Duplicate symbolsSymbols can be repeated if doing so makes the diagram easier to read. For example, duplicating a symbol might be clearer than drawing lengthy orcrossing data flows. Duplicate symbols are usually marked in some way; for example, source/destinations might be marked with a slash in the lower-leftcorner and data stores might be marked with an extra vertical line.

DFD levels and layers: From context diagrams to pseudocode

A data flow diagram can dive into progressively more detail by using levels and layers, zeroing in on a particular piece.  DFD levels are numbered 0, 1 or 2, and occasionally go to even Level 3 or beyond. The necessary level of detail depends on the scope of what you are trying to accomplish.

  • DFD Level 0 is also called a Context Diagram. It’s a basic overview of the whole system or process being analyzed or modeled. It’s designed to be an at-a-glance view, showing the system as a single high-level process, with its relationship to external entities. It should be easily understood by a wide audience, including stakeholders, business analysts, data analysts and developers. 

The overall process by which current methods are replaced with new methods is referred to as __.

  • DFD Level 1 provides a more detailed breakout of pieces of the Context Level Diagram. You will highlight the main functions carried out by the system, as you break down the high-level process of the Context Diagram into its subprocesses. 

The overall process by which current methods are replaced with new methods is referred to as __.

  • DFD Level 2 then goes one step deeper into parts of Level 1. It may require more text to reach the necessary level of detail about the system’s functioning. 

The overall process by which current methods are replaced with new methods is referred to as __.

  • Progression to Levels 3, 4 and beyond is possible, but going beyond Level 3 is uncommon. Doing so can create complexity that makes it difficult to communicate, compare or model effectively.

Using DFD layers, the cascading levels can be nested directly in the diagram, providing a cleaner look with easy access to the deeper dive.

By becoming sufficiently detailed in the DFD, developers and designers can use it to write pseudocode, which is a combination of English and the coding language.  Pseudocode facilitates the development of the actual code.

Examples of how DFDs can be used

Data flow diagrams are well suited for analysis or modeling of various types of systems in different fields.

DFD in software engineering: This is where data flow diagrams got their main start in the 1970s. DFDs can provide a focused approached to technical development, in which more research is done up front to get to coding.

DFD in business analysis: Business analysts use DFDs to analyze existing systems and find inefficiencies. Diagramming the process can uncover steps that might otherwise be missed or not fully understood.

DFD in business process re-engineering:  DFDs can be used to model a better, more efficient flow of data through a business process. BPR was pioneered in the 1990s to help organizations cut operational costs, improve customer service and better compete in the market.

DFD in agile development: DFDs can be used to visualize and understand business and technical requirements and plan the next steps. They can be a simple yet powerful tool for communication and collaboration to focus rapid development.

DFD in system structures: Any system or process can be analyzed in progressive detail to improve it, on both a technical and non-technical basis.

DFD vs. Unified Modeling Language (UML)

While a DFD illustrates how data flows through a system, UML is a modeling language used in Object Oriented Software Design to provide a more detailed view. A DFD may still provide a good starting point, but when actually developing the system, developers may turn to UML diagrams such as class diagrams and structure diagrams to achieve the required specificity.

Logical DFD vs. Physical DFD

These are the two categories of a data flow diagram.  A Logical DFD visualizes the data flow that is essential for a business to operate. It focuses on the business and the information needed, not on how the system works or is proposed to work. However, a Physical DFD shows how the system is actually implemented now, or how it will be. For example, in a Logical DFD, the processes would be business activities, while in a Physical DFD, the processes would be programs and manual procedures.

The overall process by which current methods are replaced with new methods is referred to as __.

The overall process by which current methods are replaced with new methods is referred to as __.


The overall process by which current methods are replaced with new methods is referred to as __.


Design
The design phase decides how the system will operate, in terms of the hardware, software, and network infrastructure; the user interface, forms and reports; and the specific programs, databases, and files that will be needed. Although most of the strategic decisions about the system were made in the development of the system concept during the analysis phase, t
he steps in the design phase determine exactly how the system will operate. 

The design phase has four steps:

1. The design strategy is first developed. It clarifies whether the system will be developed by the company’s own programmers, whether the system will be outsourced to another firm (usually a consulting firm), or whether the company will buy an
existing software package.
2. This leads to the development of the basic architecture design for the system,
which describes the hardware, software, and network infrastructure to be used. In
most cases, the system will add or change the infrastructure that already existsin the organization. The interface design specifies how the users will move throughthe system (e.g., navigation methods such as menus and on-screen buttons) andthe forms and reports that the system will use.

3. 

The database and file specifications are developed. These define exactly what datawill be stored and where they will be stored.

4. 

The analyst team develops the program design, which defines the programs thatneed to be written and exactly what each program will do.


This collection of deliverables (architecture design, interface design, database and file specifications, and program design) is the system specification that is handed to the programming team for implementation. At the end of the design phase, the feasibility analysis

and project plan are reexamined and revised, and another decision is made by the project sponsor and approval committee about whether to terminate the project or continue

The system design phase develops the technical blueprints and specifications required to Implement the final solution.These blueprints and speclflcations wlll he used to Implement required databases, programs, user interfaces, and networks for the information system. In the case where we choose to purchase software Instead of build it,  the blueprints specify  how the purchased software wlll he Integrated Into the business and with other Information systems.

The design phase decides how the system will operate. This collection of deliverables is the system specification that is handed to the programming team for implementation. At the end of the design phase, the feasibility analysis and project plan are reexamined and revised, and another decision is made by the project sponsor and approval committee about whether to terminate the project or continue.

The overall process by which current methods are replaced with new methods is referred to as __.


CHECKLIST for DESIGN STAGE

Implementation
The final phase in the SDLC is the implementation phase, during which the system is actually built (or purchased, in the case of a packaged software design). This is the phase that usually gets the most attention, because for most systems it is the longest and most expensive single part of the development process. 

This phase has three steps:
1. System construction is the first step. The system is built and tested to ensure it performs as designed. Because the cost of bugs can be immense, testing is one of the most critical steps in implementation. Most organizations give more time and attention to testing than to writing the programs in the first place.
2. The system is installed. Installation is the process by which the old system is turned off and the new one is turned on. It may include a direct cutover approach (in which the new system immediately replaces the old system), a parallel conversion approach (in which both the old and new systems are operated for a month or two until it is clear that there are no bugs in the new system), or a phased conversion strategy (in which the new system is installed in one part of the organization as an initial trial and then gradually installed in others). One of the most important aspects of conversion is the development of a training plan to teach users how to use the new system and help manage the changes caused by the new system.
3. The analyst team establishes a support plan for the system. This plan usually includes a formal or informal post-implementation review as well as a systematic way for identifying major and minor changes needed for the system.

System implementatlon constructs the new lnfonnation system and puts lt Into operation. It is during 'system Implementation that any new hardware  and system software are lnstalled and tested. Any purchased applicatlon software and databases are Installed and configured. And any custom software and databases are constructed using the technicalblueprints and specifications developed during system design.

The final phase in the SDLC is the implementation phase, during which the system is actually built (or purchased, in the case of a packaged software design). At the end of implementation, the final system is put into operation and supported and maintained.

The overall process by which current methods are replaced with new methods is referred to as __.

CHECKLIST for IMPLEMENTATION STAGE

SDLC - SUMMARY TABLE

The overall process by which current methods are replaced with new methods is referred to as __.

The overall process by which current methods are replaced with new methods is referred to as __.


For now, there are two important points to understand about the SDLC. First, you should get a general sense of the phases and steps that IS projects move through and some of the techniques that produce certain deliverables. Second, it is important to understand that the SDLC is a process of gradual refinement. The deliverables produced in the analysis phase provide a general idea of the shape of the new system. These deliverables are used as input to the design phase, which then refines them to produce a set of deliverables that describes in much more detailed terms exactly how the system will be built. These deliverables in turn are used in the implementation phase to produce the actual system. Each phase refines and elaborates on the work done previously.


CONCEPTS

Consumer electronics is a very competitive business. What might be the success story of the year one year is a
forgotten item two years later. Rapid product commoditization makes the consumer electronic marketplace verycompetitive. Getting the right products to market at the right time with the right components is an ongoing challenge for telecommunications and consumer electronic goods companies.

Questions
1. What external data analysis should a consumerelectronics company use to determine marketplaceneeds and its abilities to compete effectively in amarketplace?

2. Staying one step ahead of competitors requires a

corporate strategy and the support of informationsystems. How can information systems and systemsanalysts contribute to an aggressive corporate strategy?

Project Identification and Initiation
Projects are identified when someone recognizes a business need that can be satisfied through the use of information technology.  
Examples of business needs include supporting a new marketing campaign, reaching out to a new type of customer, or improving interactions with suppliers.  Project initiation is the point at which an organization creates and assesses the original goals and expectations for a new system. The first step in the process is to identify the business value for the system by developing a system request that provides basic information about the proposed system. Next, the analysts perform a feasibility analysis to determine the technical, economic, and organizational feasibility of the system.

The project sponsor is someone who recognizes the strong business need for a system and has an interest in seeing the system succeed. He or she will work throughout the SDLC to make sure that the project is moving in the right direction from the perspective of the business. The project sponsor serves as the primary point of contact for the system. Usually, the sponsor of the project is from a business function such as marketing, accounting, or finance; however, members of the IT area also can sponsor or cosponsor a project.

Once the project sponsor identifies a project that meets an important business need and he or she can identify the business requirements and business value of the system, it is time to formally initiate the project. In most organizations, project initiation begins with a technique called a system request.

System Request
The business value for an information system is identified and then described in a system request. This form contains the project’s sponsor, business need, business requirements, and business value of the information system, along with any other issues or constraints that are important to the project. The document is submitted to an approval committee who determines whether the project would be a wise investment of the organization’s time and resources.

A system request is a document that describes the business reasons for building a system and the value that the system is expected to provide. The project sponsor usually completes this form as part of a formal system project selection process within the organization. Most system requests include five elements: project sponsor, business need, business requirements, business value, and special issues. (See
Figure below.) The sponsor describes the person who will serve as the primary contact for the project, and the business need presents the reasons prompting the project.

The overall process by which current methods are replaced with new methods is referred to as __.

The overall process by which current methods are replaced with new methods is referred to as __.


The overall process by which current methods are replaced with new methods is referred to as __.



The business requirements of the project refer to the business capabilities that the system will need to have, and the business value describes the benefits that the organization should expect from the system. Special issues are included on the document as a catchall category for other information that should be considered in assessing the project. For example, the project may need to be completed by a specific deadline. Project teams need to be aware of any special circumstances that could affect the outcome of the system.

The completed system request is submitted to the approval committee for consideration. This approval committee could be a company steering committee that meets regularly to make information systems decisions, a senior executive who has control of organizational resources, or any other decision-making body that governs the use of business resources. The committee reviews the system requestand makes an initial determination, based on the information provided, of whether to investigate the proposed project or not. If so, the next step is to conduct a feasibility analysis.

Feasibility Analysis

Once the need for the system and its business requirements have been defined, the approval committee may authorize the systems analyst to create a more detailed business case to better understand the opportunities and limitations associated with the proposed project. Feasibility analysis guides the organization in determining whether to proceed with a project. Feasibility analysis also identifies the important risks associated with the project that must be addressed if the project is approved. As with the system request, each organization has its own process and format for the feasibility analysis, but most include techniques to assess three areas: technical
feasibility, economic feasibility, and organizational feasibility. The results of these techniques are combined into a feasibility study deliverable that is given to the approval committee at the end of project initiation. 

The overall process by which current methods are replaced with new methods is referred to as __.


A feasibility analysis is then used to provide more detail about the risks associated with the proposed system, and it includes technical, economic, and organizational feasibilities. The technical feasibility focuses on whether the system can be built, by examining the risks associated with the users’ and analysts’ familiarity with the application, familiarity with the technology, project size, and compatibility with existing systems. The economic feasibility addresses whether the system should be built. It includes a cost–benefit analysis of development costs, operational costs, tangible benefits, and intangible costs and benefits. Finally, the organizational feasibility analysis assesses how well the system will be accepted by its users and incorporated into the ongoing operations of the organization. The strategic alignment of the project and a stakeholder analysis can be used to assess this feasibility dimension.

Technical Feasibility
The first technique in the feasibility analysis is to assess the technical feasibility of the project, the extent to which the system can be successfully designed, developed, and installed by the IT group. Technical feasibility analysis is, in essence, a technical risk analysis that strives to answer the question: “Can we build it?”
Familiarity with the technology is another important source of technical risk. When a system will use technology that has not been used before within the organization, there is a greater chance that problems will occur and delays will be incurred because of the need to learn how to use the technology. 
Project size is an important consideration, whether measured as the number of people on the development team, the length of time it will take to complete the project, or the number of distinct features in the system. Larger projects present more risk, because they are more complicated to manage and because there is a greater chance that some important system requirements will be overlooked or 

misunderstood. The extent to which the project is highly integrated with other systems (which is typical of large systems) can cause problems, because complexity is increased when many systems must work together.
Finally, project teams need to consider the compatibility of the new system with the technology that already exists in the organization. Systems rarely are built in a vacuum—they are built in organizations that have numerous systems already in place. New technology and applications need to be able to integrate with the existing environment for many reasons. They may rely on data from existing systems, they may produce data that feed other applications, and they may have to use the company’s existing communications infrastructure. A new CRM system, for example, has little value if it does not use customer data found across the organization in existing sales systems, marketing applications, and customer service systems.
The assessment of a project’s technical feasibility is not cut and dried, because in many cases, some interpretation of the underlying conditions is needed (e.g., how large does a project need to grow before it becomes less feasible?). One approach is to compare the project under consideration with prior projects undertaken by the organization. Another option is to consult with experienced IT professionals in the organization or with external IT consultants; often, they will be able to judge whether a project is feasible from a technical perspective.

Economic Feasibility
The second element of a feasibility analysis is to perform an economic feasibility
analysis (also called a cost–benefit analysis) that identifies the financial risk associated with the project. This attempts to answer the question “Should we build thesystem?” Economic feasibility is determined by identifying costs and benefits associated with the system, assigning values to them, and then calculating the cash flowand return on investment for the project. The more expensive the project, the morerigorous and detailed the analysis should be. Figure below lists the steps to perform a

cost–benefit analysis; each step will be described in the upcoming sections.

The overall process by which current methods are replaced with new methods is referred to as __.



Identify Costs and Benefits The first task when developing an economic feasibilityanalysis is to identify the kinds of costs and benefits the system will have and listthem along the left-hand column of a spreadsheet. Figure below lists examples of costs

and benefits that may be included.


The overall process by which current methods are replaced with new methods is referred to as __.


The costs and benefits can be broken down into four categories: 

(1) development costs,     (2) operational costs,    (3) tangible benefits, and   (4) intangibles. 

Development costs are those tangible expenses that are incurred during the creation of the system, such as salaries for the project team, hardware and software expenses, consultant fees, training, and office space and equipment. Development costs are usually thought of as one-time costs. Operational costs are those tangible costs that are required to operate the system, such as the salaries for operations staff, software licensing fees, equipment upgrades, and communications charges.  Operational costs are usually thought of as ongoing costs. Tangible benefits include revenue that the system enables the organization to collect, such as increased sales. In addition, the system may enable the organization to avoid certain costs, leading to another type of tangible benefit: cost savings. For example, if the system produces a reduction in needed staff, lower salary costs result. Similarly, a reduction in required inventory levels due to the new system produces lower inventory costs. In these examples, the reduction in costs is a tangible benefit of the new system.
Of course, a project also can affect the organization’s bottom line by reaping intangible benefits or incurring intangible costs. Intangible costs and benefits are more difficult to incorporate into the economic feasibility analysis because they are based on intuition and belief rather than on “hard numbers.” Nonetheless, they should be listed in the spreadsheet along with the tangible items.

Assign Values to Costs and Benefits Once the types of costs and benefits have been identified, you will need to assign specific dollar values to them. This may seem impossible—How can someone quantify costs and benefits that haven’t happened yet? And how can those predictions be realistic? Although this task is very difficult, you have to do the best you can to come up with reasonable numbers for all of the costs and benefits. Only then can the approval committee make an educated decision about whether or not to move ahead with the project.
The most effective strategy for estimating costs and benefits is to rely on the people who have the best understanding of them. For example, costs and benefits that are related to the technology or the project itself can be provided by the company’s IT group or external consultants, and business users can develop the numbers associated with the business (e.g., sales projections, order levels). The company also can consider past projects, industry reports, and vendor information, although these sources probably will be a bit less accurate. Likely, all of the estimates will be revised as the project proceeds

Figure below  shows costs and benefits along with assigned dollar values. In this example, for simplicity, all development costs are assumed to occur in the current year 2009, and all benefits and operational costs are assumed to begin when the system is implemented at the start of 2010, and continue through 2013. Notice that the customer service intangible benefit has been quantified, based on a decrease in customer complaint phone calls. The intangible benefit of being able to offer services that competitors currently offer was not quantified, but it was listed so that the approval committee will consider the benefit when assessing the system’s economic feasibility.

The overall process by which current methods are replaced with new methods is referred to as __.



Determine Cash Flow A formal cost–benefit analysis usually contains costs and benefits over a selected number of years (usually, three to five years) to show cash flow over time. (See Figure Above.) With this cash flow method, the years are listed across the top of the spreadsheet to represent the period for analysis, and numeric values are entered in the appropriate cells within the spreadsheet’s body. Sometimes, fixed amounts are entered into the columns. For example, Figure Above lists the same amount for customer complaint calls, inventory costs, hardware, and software  

for all four years. Often, amounts are augmented by some rate of growth to adjust for inflation or business improvements, as shown by the 6% increase that is added to the sales numbers in the sample spreadsheet. Similarly, labor costs are assumed to increase at a 4% rate each year. Finally, totals are added to determine what the overall benefits will be, and the higher the overall total, the more feasible the solution becomes in terms of its economic feasibility

Determine Return on Investment The return on investment (ROI) is a calculation that measures the average rate of return earned on the money invested in the project. A high ROI suggests that the project’s benefits far outweigh the project’s cost. ROI is a simple calculation that divides the project’s net benefits (total benefits . total costs) by the total costs.. Although ROI is commonly used in practice, it suffers from several important limitations and should not be used as the only measure of a project’s worth. Figure Above includes the ROI calculation for our example project.


Determine Break-Even Point Another common approach to measuring a project’s worth is the break-even point. The break-even point (also called the payback method) is defined as the number of years it takes a firm to recover its original investment in the project from net cash flows. As shown in FigureABove, the project’s net cash flows “pay back” the initial investment during the fourth year; this is the year in which the cumulative cash flow figure becomes positive. Dividing the difference between that year’s cash flow and its cumulative cash flow by that year’s cash flow determines how far into the year the break-even will occur. 
The break-even point is easy to calculate and understand and does give an indication of a project’s liquidity or the speed at which the project will generate cash returns. Also, projects that produce higher returns early in the project’s life are thought to be less risky, since we can anticipate near-term events with more accuracy than we can long-term events. The break-even point does ignore cash flows that occur after the break-even point has been reached and therefore is biased against long-term projects.

Determine Net Present Value The simple cash flow method, return on investment, and break-even point, as shown in Figure 1-10, all share the weakness of not recognizing the time value of money. In these analyses, the timing of cash flows is ignored. A dollar in year 3 of the project is considered equal to a dollar in year 1. Net present value (NPV) is used to compare the present value of all cashinflows and outflows for the project in today’s dollar terms. The key to understanding present values is to recognize that if you had a dollar today, you could invest it and receive some rate of return on your investment. Therefore, a dollar received in the future is worth less than a dollar received today, since you forgo that potential return. Appendix 1A shows the present value of a dollar received in the future for different numbers of years and rates of return. If you have a friend who owes you a dollar today, but instead gives you that dollar in three years—you’ve been had!Given a 10% rate of return on an investment, you’ll be receiving the equivalent of 75 cents in today’s terms.

In Figure Below, the present value of the costs and benefits has been calculated and added to our example spreadsheet, using a 6% rate of return. The NPV is simply the difference between the total present value of the benefits and the total present value of the costs. As long as the NPV is greater than zero, the project is considered economically feasible.

The overall process by which current methods are replaced with new methods is referred to as __.

Organizational Feasibility
The final technique used for feasibility analysis is to assess the organizational feasibility of the system: how well the system ultimately will be accepted by its users and incorporated into the ongoing operations of the organization. There are many organizational factors that can have an impact on the project, and seasoned developers know that organizational feasibility can be the most difficult feasibility dimension to assess. In essence, an organizational feasibility analysis attempts to answer the question “If we build it, will they come?”

One way to assess the organizational feasibility of the project is to understand how well the goals of the project align with business objectives. Strategic alignment is the fit between the project and business strategy—the greater the alignment, the less risky the project will be, from an organizational feasibility perspective. For example, if the marketing department has decided to become more customerfocused, then a CRM project that produces integrated customer information would have strong strategic alignment with marketing’s goal. Many IT projects fail when the IT department initiates them, because there is little or no alignment with business-unit or organizational strategies.

A second way to assess organizational feasibility is to conduct a stakeholder analysis. 5 A stakeholder is a person, group, or organization that can affect (or can be affected by) a new system. In general, the most important stakeholders in the introduction of a new system are the project champion, system users, and organizational management (see Figure Below), but systems sometimes affect other stakeholders as well. For example, the IS department can be a stakeholder of a system because IS jobs or roles may be changed significantly after the system’s implementation. One key stakeholder—outside of the champion, users, and management—in Microsoft’s project that embedded Internet Explorer as a standard part of Windows was the U.S. Department of Justice.

The overall process by which current methods are replaced with new methods is referred to as __.

Stakeholders for Organizational Feasibility


The champion is a high-level executive and is usually, but not always, the project sponsor who created the system request. The champion supports the project by providing time and resources (e.g., money) and by giving political support within the organization by communicating the importance of the system to other organizational decision makers. More than one champion is preferable because ifthe champion leaves the organization, the support could leave as well.

While champions provide day-to-day support for the system, organizational management also needs to support the project. Such management support conveys to the rest of the organization the belief that the system will make a valuable contribution and that necessary resources will be made available. Ideally, management should encourage people in the organization to use the system and to accept the many changes that the system will likely create.

A third important set of stakeholders is the system users who ultimately will use the system once it has been installed in the organization. Too often, the project team meets with users at the beginning of a project and then disappears until after the system is created. In this situation, rarely does the final product meet the expectations and needs of those who are supposed to use it, because

needs change and users become savvier as the project progresses. User participation should be promoted throughout the development process to make sure that the final system will be accepted and used, by getting users actively involved in the development of the system (e.g., performing tasks, providing feedback, and making decisions).

The final feasibility study helps organizations make wiser investments regarding IS because it forces project teams to consider technical, economic, and organizational factors that can affect their projects. It protects IT professionals from criticism by keeping the business units educated about decisions and positioned as the leaders in the decision-making process. Remember—the feasibility study should be revised several times during the project at points where the project team makes critical decisions about the system (e.g., before the design begins). The final feasibility study can be used to support and explain the critical choices that are made throughout the SDLC.

Applying the Concepts at Tune Source
The steering committee met and placed the digital music download project high on its list of projects.  The next step was for Carly and Jason to develop the feasibility analysis. Figure Below presents the executive summary page of the feasibility study: The report itself was about 10 pages long, and it provided additional detail and supporting documentation. As shown in Figure Below, the project is somewhat risky from a technical perspective. Tune Source has minimal experience with the proposed application and the technology. One solution may be to hire a consultant to work with the IT department and to offer guidance.The economic feasibility analysis includes the assumptions that Carly made in the system request. The summary spreadsheet that led to the values in the feasibility analysis has been included in Appendix 1B. Development costs are expected to be about $280,000. This is a very rough estimate, as Jason has had to make some assumptions about the amount of time it will take to design and program the system. Nonetheless, the digital music download system appears to be very strong economically.The organizational feasibility is presented in Figure Below. There is a strong champion, well placed in the organization, to support the project. The project originated in the business or functional side of the company, not the IS department, and support for the project among the senior management team is strong.Additional stakeholders in the project are the management team responsible for the operations of the traditional stores and the store managers. They should be quite supportive, given the added service that they now can offer. Carly and Jason need to make sure that they are included in the development of the system so that they can appropriately incorporate it into their business processes.

The overall process by which current methods are replaced with new methods is referred to as __.

The overall process by which current methods are replaced with new methods is referred to as __.



Figure Below contains the summary spreadsheet for the Tune Source digital music download project. As shown, Carly’s original sales projections are used for the first year’s revenues. Sales are expected to grow 4% in the second year and 3% in the third year. Cost projections are based on Jason’s assumptions
about the time it will take to develop the system and the resources that will be required. Operating costs have a considerable new labor component because a new business unit is being created, requiring additional staff.* 
Figure Below incorporates several of the financial analysis techniques we have discussed. The rows marked A and C summarize the annual benefits and costs, respectively. The row marked D shows the yearly net benefits (total benefits . total costs). The ROI calculation shows that this project is expected to return 280% on the investment, calculated by dividing the total benefits in row A by the total costs in row C.  Row E shows the cumulative cash flow for the project, and this is used to determine the break-even point. As seen in Figure Below, the project fully recovers its costs in the first year, since the cumulative net cash flow is positive in the first year. The row marked B computes the present valueof each year’s total benefits, and the row marked F computes the present value of each year’s total costs. These values are used in the NPV calculation. The

total present value of costs is subtracted from the total present value of benefits, and the result is a large positive number, indicating the high desirability of this investment.

This spreadsheet shows that this project can add significant business value even if the underlying assumptions prove to be overly optimistic.

The overall process by which current methods are replaced with new methods is referred to as __.

The overall process by which current methods are replaced with new methods is referred to as __.