Top Banner
F.C Ledesma Avenue, San Carlos City, Negros Occidental Tel. #: (034) 312-6189/(034) 729-4327 Date started: 5-22-07 10:00 am Introduction to Systems Analysis & Design Source: SAD by Shelly Cashman 6 th Edition Chapter I Introduce you to the role of information technology in today’s dynamic business environment. You will learn about the development of information systems, systems analysis and design concepts, the systems development life cycle, and various systems development methods, tools, and techniques. This chapter also describes the role of the information technology department and the people who work there. Objectives When you finish this chapter, you will be able to: · Discuss the impact of information technology on business strategy and success · Define and information system and describe its components · Use profiles and models to understand business functions and operations · Explain how the Internet has affected business strategies and relationships · Identify various types of information systems and explain who uses them · Explain systems development tools, including modeling, prototyping and CASE tools · Distinguish between structured analysis and object-oriented methodology · Describe the systems development life cycle · Discuss the role of the information technology department and the systems analysis who work there The headlines in Figure 1-1 offer dramatic examples of how information technology affects businesses, large and small. Companies use information as a weapon in the battle to increase productivity, deliver quality products and services, maintain customer loyalty, and make sound decisions. In a global economy with intense competitions, information technology can mean the difference between success and failure. FIGURE 1-1
141
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Date started: 5-22-07 10:00 am

Introduction to Systems Analysis & DesignSource: SAD by Shelly Cashman 6th Edition

Chapter I Introduce you to the role of information technology in today’s dynamicbusiness environment. You will learn about the development of informationsystems, systems analysis and design concepts, the systems developmentlife cycle, and various systems development methods, tools, and techniques.This chapter also describes the role of the information technologydepartment and the people who work there.

ObjectivesWhen you finish this chapter, you will be able to:

Discuss the impact of information technology on business strategyand successDefine and information system and describe its componentsUse profiles and models to understand business functions andoperationsExplain how the Internet has affected business strategies andrelationshipsIdentify various types of information systems and explain who usesthemExplain systems development tools, including modeling,prototyping and CASE toolsDistinguish between structured analysis and object-orientedmethodology Describe the systems development life cycleDiscuss the role of the information technology department and thesystems analysis who work there

The headlines in Figure 1-1 offer dramatic examples of how informationtechnology affects businesses, large and small. Companies use informationas a weapon in the battle to increase productivity, deliver quality productsand services, maintain customer loyalty, and make sound decisions. In aglobal economy with intense competitions, information technology can meanthe difference between success and failure.

FIGURE 1-1

Page 2: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

The Impact of Information Technology

Information technology (IT) refers to the combination of hardware andsoftware products and services that people use to manage, access,communicate, and share information. Successful firms treat information as avital asset that just be used effectively, updated constantly, and safeguardcarefully.

The Future of IT

More than ever, business success depends on information technology. In areport titled Digital Economy 2003, the U.S. Department of Commerce statedthat, “After two years of retrenchment, IT producing industries now showsigns of resuming the dynamic role they paid during 1996-2000.” The reportestimated that the IT sector accounted for almost 30 percent of economicgrowth during 2003, and pointed out that IT has created a new economy,where advances in hardware, software, and connectivity provideunprecedented benefits to business and individuals around the world.According to the report, an explosion in Internet use is driving this growth. As the table shown in Figure 1-3 indicates, the world online populationincreased by 106 percent between 200 and 2004. The statistics show rapidglobal growth. Although economic trends affect IT spending levels, most business giveIT budgets are relatively priority, in good times or bad. The reason insimple-during periods of growth, companies cannot afford to lag behind theIT curve. Conversely, when the economy slows down, firms often use It toreduce operating costs and improve efficiency.

Page 3: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Figure 1-3 Internet World Stats is a firm that provides Internet usage figures and online population data.

The Role of Systems Analysis and Design

Systems analysis and design is a step-by-step process for developinghigh-quality information systems. An information system combinesinformation technology, people, and data to support business requirements.For example, information systems handle daily business transaction, improvecompany productivity, and help managers make sound decisions. The ITdepartment team includes systems analysts who plan, develop, and maintaininformation systems. With increasing demand for talented people, employment expertspredict a shortage of qualified applicants to fill IT positions. Many companieslist employment opportunities on their Web sites, as show in Figure 1-4.

Page 4: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Figure 1-4 Hewlett-Packard, a leader in information technology, advertisesjobs and opportunities for students and graduates on its Web site.

Who develops Information Systems?

Traditionally, a company either developed its own information systems,called in-house applications, or purchased systems called software packagesfrom outside vendors. Today, the choice is much more complex. Optionsinclude Internet-based application services, outsourcing, custom solutionsfrom IT consultants, and enterprise-wide software strategies. Regardless of the development method, launching a new informationsystem involves risks as well as benefits. The greatest risk occurs when acompany tries to decide how the system will be implemented beforedetermining what the system is supposed to do. Instead of putting the cartbefore the horse, a company must begin by outlining its business needs andidentifying possible IT solutions. Typically, this important work is performedby systems analysts and other IT professionals. A firm should not considerimplementation options until it has a clear set of objectives. Later on, as the

Page 5: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

system is developed, a system analyst’s role will vary depending on theimplementation option selected.

Information Systems Components

A system is a set of related components that produces specificresults. For example, specialized systems route Internet traffic, manufacturemicrochips, and control complex events like the Mars mission shown in Figure1-5. A mission-critical system is one that is vital to a company’soperations. An order processing system, for example, is mission-criticalbecause the company cannot do business without it. Every system requires input data. For example, your computerreceives data when you press a key or click a menu command. In aninformation system, data consists of basic facts that are the system’s rawmaterial. Information is data that has been transformed into output that isvaluable to users. For example, Figure 1-6 shows an order processing systemthat displays an order from. When a sales representative enters data(customer number, product code, and quantity ordered), the system createsa customer order with all the necessary information. Large businesses withthousands or millions of sales transaction require company-wide informationsystems and powerful servers such as those shown Figure 1-7.

An information system has five key components, as shown if Figure1-8: hardware, software, data, process, and people.

Hardware

Hardware consists of everything in the physical layer of the informationsystem. For example, hardware can include servers, workstations, networks,telecommunications equipment system, fiber-optics cables, handheldcomputers, scanners, digital capture devices, and other technology-basedinfrastructure. As new technologies emerge, manufacturers race to marketthe innovations and reap the rewards. Hardware purchasers today face a wide array of technology choices anddecisions. Almost 40 years ago, a concept called Moore’s Law accuratelypredicted that computer processing power would double every 18 to 24months, as shown in Figure1-9. Fortunately, as hardware became morepowerful, it also became less expensive.

Software

Page 6: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Software refers to the programs that control the hardware and produce thedesired information or results. Software consists of system software andapplication software.System software manages the hardware components, which can include asingle workstation or a global network with many thousands of clients. Eitherthe hardware manufacturer supplies the system software or a companypurchases it from a vendor. Examples of system software include theoperating system, security software that protects the computer fromintrusion, device drivers that communicate with hardware such as printers,and utility programs that handle specific tasks such as data backup and diskmanagement. System software also includes a network operating system(NOS), which controls the flow of data, provides data security, and managesnetwork accounts. In today’s interconnected business world, networksoftware is vitally important. Application software consists of programs that support day-to-daybusiness functions and provide users with the information they require.Application software can serve one user or thousands of users throughoutthe organization. Example of company-wide applications, called enterpriseapplications, includes order processing systems, payroll systems, andcompany communications network. On a smaller scale, individual usersincrease their productivity with tools such as spreadsheets, word processors,and database management systems.Application software includes horizontal and vertical systems, a horizontalsystem is a system, such as an inventory or payroll application, that can beadapted for use in many in many different types of companies. A verticalsystem is designed to meet the unique requirements of a specific businessor industry, such as a Web-based retailer, a medical practice, or a videochain. Most companies use a combination of software that is acquired atvarious times. When planning an information system, a company mustconsider how a new system will interface with older systems, which are calledlegacy systems. For example, a new human resources system might needto exchange data with an older payroll application.

Data

Data is the raw material that an information system transforms into usefulinformation. An information system can store data in various locations, calledtable. By linking the tables, the system can extract specific information.Figure 1-10 shows a payroll system that stores data in four separate tables.At the end of a pay period, the payroll system produces a payback check thataccurately reflect the employee’s hours worked, gross pay,current deduction, and net pay.

Page 7: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Processes

Processes describe the task and business functions that users,managers, and IT staff members perform to achieve specific results.Processes are the building blocks of an information system, becausethey represent actual day-to –day business operations. To build asuccessful information system, analysis must understand businessprocess and document them carefully.

People

The primary purpose of an information system is to provide valuableinformation to users. Users, sometimes called end users, are the peoplewho interact with an information system, both inside an outside thecompany. Internal users include administrators, managers, technicians, salesstaff, and corporate officers. External users include customer’s system toplan their manufacturing schedules. The success or failure of a systemusually depends on whether users are satisfied with the system’s output andoperations. To serve users, successful information systems depend on skilledprofessional, such a systems analysts, programmers, networkadministrators, and other IT staff members.

Business Information Systems

A system analyst must understand a company’s business informationsystems needs. For example, the requirements of a Web-based music retailerare very different from those of a hotel chain or a truck manufacturer. An analyst builds a business profile by investigating a company’s mixof products and services and its ability to use the Internet to conductbusiness. The analyst also studies the interactivity among informationsystems, system boundaries, and specialized business information needs, aswell as the company’s size and future growth projections.

Categories of Companies

Traditionally, companies have been identified as production-oriented orservice-oriented. A new category includes companies that depend on theInternet as a primary business channel.

Production-oriented companies primarily manufacture and sell products,such as the microchips shown in Figure 1-11. Motorola, Intel and Compaqare examples of production-oriented companies. Service-oriented

Page 8: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

companies primarily offer information or services, or sell goods produced byothers. AT & T, United Airlines, and Wall-Mart are examples of servicecompanies. Some companies offer a mix of products, services, information,and technical resources to customers. For example, IBM reported in a recentfinancial statement that more that 58 percent of its total revenue wasderived from the sale of software, services, and maintenance, compared with42 percent from hardware sales. Although IBM still manufactures and sellstechnology products, it also operates and international consulting division, aleasing unit, and a financial services branch. A new category of company is the Internet-dependent firm, whichis often described as a dot-com (.com) company because it bases itsprimary business n a commercial Web site rather than using traditionalbusiness channels. Amazon.com and etrade.com are examples of dot-comcompanies. At the other end of the spectrum are traditional companies,sometimes called brick-and-mortar companies because they conductbusiness from a physical location instead of from a Web site. In recent years,many Internet-based companies have enjoyed spectacular growth, and thevalue of their company stock has soared. Some observers are skeptical andwonder whether this momentum can continue, especially if a company lacksa solid record of profitability.

The Growth of E-Commerce

One of the faster-growing business sectors is Internet-basedcommerce, commonly called e-commerce (electronic commerce) orI-commerce (Internet Commerce). E-commerce includes both B2C(Business-to-Commerce) and B2B (business-to-business). Thedemand for e-commerce systems will translate into career opportunities andnew challenges for systems developers, another name for systems analysts.The October 4,1999 issue of INFOWORLD magazine predicted that onlineretails sales would grow from $7.8 billion in 1999 to staggering $108 billionin 2003. If that forecast is accurate, the trend will increase job opportunitiesfor all IT professionals. Advances in technology have greatly expanded the role of e-commercein business. Some business analysts believe that the Internet is changingconsumer buying habits and reshaping the economy. Many large and smallbusinesses alike are developing strategies to survive in this newenvironment. To succeed in Web-based marketing, a company must offer anattractive user interface that is reliable, powerful, and secure. E-commerce is changing traditional business models and creating newones. For example, a common business model is a retail store that sells aproduct to a customer who physically visits the store. To carry out that sametransaction on the Internet, however, the company must develop a differentbusiness model and deal with a different set of marketing, advertising, andprofitability issues. Another e-commerce example is a company that rakes

Page 9: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

well-established business model, such as an auction, and extends itdramatically. Firms such as e-bay.com have transformed a traditionalmarketing concept into a new, enormously popular and successful method ofbuying goods and services. As more companies develop Web-based businessmodels, new roles and opportunities for systems analyses will be created.The earliest e-commerce leaders were Internet start-up companies, such asAmazon.com and e-trade.com, but many traditional brick-and-mortar firmsare beginning to capitalize on the Internet’s enormous potential. Althoughthey got off to a slow start in the e-commerce wars, many brick-and-mortarfirms companies have substantial resources and world wide bard recognition.The September 18, 2000 issue of INFOWORLD magazine reported that“….brick-and-mortar powerhouse have been quietly incubating the next waveof e-commerce companies, ready to trounce their dot-com competition.”

Characteristics of Information SystemsAn analyst learns about an information system by asking questions

about the system and how it supports business operations. As a systemsanalyst, you might ask the following questions as you complete your work:

1. Does this system interact with other system? Figure 1-12 shows majorbusiness systems and communications links in a large company. Thearrows in the figure show how data flows between the interactivesystems. For examples, a purchasing system generates orders thatbecome input for a production system. Each system interacts with afinance system that monitors the company’s profitability. A breakdownin any one system can affect companies rely on telecommunicationsand the Internet for mission-critical systems.

A company’s information system also can interface with a system operatedby another firm, such as when a payment is made by one company’saccounts payable system to another company’s accounts receivable system.This process, known as electronic data interchange (EDI), involves thecomputer-to-computer transfer of data between companies. EDI hasexpanded rapidly as companies form closer working relationships with theirsuppliers and customers. In the past, EDI was used mainly for processingtransactions between two companies, such as purchasing or payments.Toda, EDI can help a firm plan its production, adjust inventory levels, orstock up on raw materials using data that comes from another company’sinformation systems.

2. What are the system’s boundaries? A system boundary indicateswhere one system ends and another system begins. The boundarybetween two systems is not always clear-cut. For example, when arecustomer payments part of the accounts receivable system, and whenare they included in the finance system? If customer payments need tobe adjusted, must the adjustments take place in both systems? Who

Page 10: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

makes the adjustments? What processes and files are involved?Complex systems have many interfaces with other systems; thesystem analyst must carefully plan and design theses systems todesign their boundaries correctly.

3. Will the system handle specialized business needs? Many firms requirespecialized systems for information management that is unique totheir company or industry. At a college, for example, specializedsystems handle class registration, classroom scheduling, and studentgrading. At a hospital, specialized systems manage patientadmissions, room scheduling, and insurance billing. Firms in thebanking, insurance, airlines, and telecommunications industries requirecomplex systems to run their businesses. If a specialized system isavailable as a vertical software package, a company can purchase andcustomize the package. Otherwise, a company must developspecialized in-house systems.

4. What size is the company, and what growth is forecast? Large andsmall companies in the same industry have different informationsystems requirements. For example, banks range in size from localoperations with one or two branches to multinational banks withbranches in many states and foreign countries. All banks handle loanprocessing and checking accounts. A multinational bank, however, hasa much higher volume of customers, transactions, and accounts. Alarge bank’s systems are more complex because they consolidateinformation from banking centers around the world, handle currencyexchange issues, and offer a wide array of products and services.

Types of Business Information Systems

Large companies require many different types of information systems. In thepast, IT managers divided systems into categories based on the audiencethey served. Traditional categories included office systems (used byadministrative staff), operational systems (used by operational personnel),management information systems (used by lower-and middle-levelmanagers), and executive information systems (used by top managers).Other categories were decision support systems (used by primarily businessplanners) and expert systems (used by employees to control complexprocess or diagnose problems). Today, the traditional labels no longer apply. For example, allemployees, including top managers, use office systems, Similarly,operational personnel often require information support from what formerlywere called management information systems. Now, it is more useful to

Page 11: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

identify a system by its functions and features, rather than by its users. Onthat basis, today’s systems include enterprise computing systems,transaction processing systems, business support systems, knowledgemanagement systems, and user productivity systems.

Enterprise Computing Systems

Enterprise computing refers to information systems that supportcompany-wide data management requirements. Airline reservation ad creditcard billing systems are examples of enterprise computing systems.Enterprise computing also can improve data security and reliability byimposing a company-wide framework for adapt access ad storage, In manylarge companies, applications called enterprise resource planning (ERP)systems provide cost-effective data access for users and managersthroughout the company. For example, a car rental company can use ERP toforecast customer demand for rental cars at hundreds of locations. Many hardware and software vendors target the enterprise computingmarket and offer a wide array of products and services. Figure 1-13 shows aWeb site maintained by Microsoft that is dedicated to enterprise computingmarketing.

Figure 1-13

Transaction Processing Systems

Transaction processing (TP) systems and online transactionprocessing (OLTP) systems are called operational systems because theyprocess data generated by day-to-day business operations. Examples of TPsystems include customer billing, accounts receivable, and warranty claimprocessing. TP captures necessary data and triggers a se of updates when aspecific transaction occurs, such as a sales order. In the example shown inFigure 1-14, a single sales transaction must verify customer data, check thecustomer’s credit status, post the invoice to the accounts receivable system,check to ensure that he requested item is in stock, adjust inventory data toreflect a sale, and update the sales activity file. TP systems typically involvevery large amounts of data. To increase efficiency, TP systems process a setof transaction-related commands as a group rather than individually. TPsystems also ensure that if any one element of a transaction fails, the systemcannot process the rest of the transaction. This feature is known as dataintegrity. Most transaction processing systems are mission-critical systemsthat cannot be interrupted without severe disruption to the business.

Business Support Systems

Page 12: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Business support systems (BSS) provide job-related information support tousers at all levels of a company. These systems can analyze transactionaldata, generate information needed to manage and control business process,and provide information that leads to better decision making. Early business computer systems were called managementinformation systems (MISs) primarily managers used them. Today,employees at all levels need information to perform their jobs, and they relyon information systems for that support. An information system must generate timely and accurate records. Forexample, when a company sells merchandise to a customer, a transactionprocessing system records the sale, updates the customer’s balance, andmakes a deduction from inventory. A related business support system canhighlight slow-or-fast moving items, customers with past due balances, andinventory items that need reordering. Managers, buyers, and inventorycontrol specialists all use information to make better decisions. Large retailchains use point-of –sale scanners such as the one shown in Figure 1-15 tocollect sales information that can be used to spot trends quickly, identify hotproduct items, and maintain a competitive edge. An important feature of a business support system is decision supportcapability to conduct a what-if analysis. Decision support helps usersmake decisions by creating a business model and applying a set of variables.For example, a truck fleet dispatcher might run a series of what-if scenariosto determine the impact of increased demand or bad weather on the fleet’scapability of delivering goods on time. Alternatively, a retailer might usewhat-if analysis to determine the price it must charge to increase profits by10 percent assuming that volume and costs remain uncharged.

Knowledge Management Systems

Knowledge management systems are sometimes called expertsystems because they simulate human reasoning by combining a knowledgebase and inference rules that determine how the knowledge is applied. Aknowledge base consisting of a large database allows users of findinformation by clicking menus, typing keywords, or entering text questions innormal English phrases. In a knowledge management system, logical rulesnamed inference rules identify data patterns and relationships. Forexample, a data inquiry using the phrase data screen would producedifferent results than the phrase screen data because of the word order. Figure 1-16 illustrates a technical support knowledge base in a Website maintained by Novell for its customers and users. After a user enters asymptom, problem, or question, Novell’s knowledge management systemsearches for a solution.

Figure 1-16

Page 13: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Knowledge management systems do not make decisions based oncommon sense or intuition ash humans do. Many knowledge managementsystems use an approach called fuzzy logic that allows logical inferences tobe drawn from imprecise relationships. Using fuzzy logic, values need not beblack and white, like binary logic, but can be many shades of gray. Forexample, if you ask the Novell Knowledgebase (shown in Figure 1-16 on theprevious page) to find information about user password administration, it willsearch the knowledge base for articles with those terms. Using fuzzy logic,the results will be displayed in priority order, with those that are presumablymore relevant at the top of the list.User Productivity Systems

User productivity systems provide employees at all organizationallevels with a wide array of tools that can improve quality and jobperformance. Local and wide area networking, e-mail, voicemail, fax, videoconferencing, word processing, automated calendars, databasemanagement, spreadsheets, desktop publishing, presentation graphics,company intranets, and Internet access throughout the company enhanceuser productivity. When companies first installed word processing systems, managersexpected to reduce the number of employees as office efficiency increased.That did not happen, primarily because the basic nature of clerical workchanged. As the country shifted from an industrial to a service economy,companies required a new class of knowledge worker who needed constantaccess to information. This group grew rapidly as companies assigned moreresponsibility to employees at lower organizational levels. Relativelyinexpensive hardware, powerful networks, corporate downsizing, and a movetoward employee empowerment also have contributed to this trend. Todayadministrative assistants and company presidents alike are networked, usetheir computer workstations, and share corporate data as they perform theirjobs.

Information Systems IntegrationMost large companies require systems that combine enterprise

computing, transaction processing, business support, knowledgemanagement, and user productivity features. For example, suppose aninternational customer has a problem with a product and makes a warrantyclaim. A customer service representative enters the claim into a transactionprocessing system. The transaction updates two other systems: a knowledgemanagement system that has a history of product problems and warrantyactivity, and a quality control tracking system with decision supportcapabilities., A quality control engineer uses what- if analysis to determine ifit would be less expensive to make certain design changes in the product

Page 14: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

that would reduce warranty claim. In this example, a transaction processingsystem is integrated with a knowledge management system and a businesssupport system with decision support features.

Organizational Structure

Corporate organizational structure has changed in recent year. As part ofdownsizing and business process reengineering, many companies reducedthe number of management levels and delegated responsibility to operationalpersonnel. Although the organization chart tends to be somewhat flatter, atraditional hierarchy still exists in most companies. In the typicalorganizational model shown in Figure 1-17, operational personnel report tolower- and middle-level managers, who in turn report to top mangers. In acorporate structure, the top managers report to the board of directors that iselected by the company’s shareholders. Although titles vary, distinct levels ofresponsibility exist. A systems analyst must understand the company’sorganizational model in order to recognize who is responsible for businessprocesses and decisions and, hence, to be aware of what information isrequired by whom.

Figure 1-17

Top Management

Top mangers develop long-range plans, called strategic plans thatdefine the company’s overall mission and goals. To carry out that task, topmanagers ask questions such as “How much should the company invest ininformation technology,” or “How much will Internet sales grow in the nextfive years,” or “Should the company build new factories or contract out theproduction functions?” Strategic planning focuses on issues that affect the company’s futuresurvival and growth, including long-term IT plans. Top managers focus onthe entire business enterprise and use information systems to set thecompany’s course and direction. To develop a strategic plan, top managersalso need information from outside the company, such as economicforecasts, technology trends, competitive threats, governmental issues, andshareholder concerns.

Middle Management

Middle managers focus their goals on a shorter time frame, usuallyranging from one month to one year. They develop plans to achieve businessobjectives in a process called tactical planning. Middle managers delegateauthority and responsibility to team leaders or supervisor and then provide

Page 15: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

direction, necessary resources, and feedback on performance as tasks arecompleted. Middle managers need more detailed information than top managers,but somewhat less information than team leaders and supervisors. Forexample, a middle manager might review a weekly sales summary for ageographic region, whereas a sales team leader would need a daily report oncustomer activity. Middle managers also use business support systems,knowledge management systems, and user productivity systems to performtheir jobs.

Lower Management

Supervisors and team leaders oversee operational employees andcarry out day-to-day operational plans. They coordinate operational tasks,make necessary decisions, and ensure that the right tools, materials, andtraining are available. Like other managers, this group often needs decisionsupport information, consults knowledge management systems, and relies onuser productivity systems to carry out their day-to-day responsibilities.

Operational EmployeesOperational employees primarily use TP systems to enter and receive

data they need to perform their jobs. In many companies, operationalemployees also need information to handle tasks and make decisions thatwere assigned previously to supervisors. This trend, called empowerment,gives employees more responsibility and accountability. Many companies findthat empowerment leads to better employee motivation and increasedcustomer satisfaction.

SYSTEMS DEVELOPMENT TECHNIQUES AND TOOLS

In addition to understanding business operations, systems analysts mustknow how to use a variety of techniques, such as modeling, prototyping, andcomputer-aided systems engineering (CASE) tools, to plan, design, andimplement information systems. They must be able to work in teamenvironments where input from users, managers, and IT staff is synthesizedinto a design that will meet everyone’s needs. And they must be able to useother software tools to illustrate accurately their designs and ideas.

Modeling

Modeling produces a graphical representation of a concept or processthat systems developers can analyze the, test, and modify. A system analystcan describe and simplify an information system by using a set of business,data object, network, and process models.

Page 16: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

A business model, or requirements model, describes businessfunctions that an information system must support. A data model describesdata structures and design. An object model portrays the design andprotocols of telecommunications links. A process model describes systemlogic and process that programmers use to develop necessary code modules.Although the models might appear to overlap, they actually work together todescribe the same environment from different points of view. Modeling involves various techniques, such as data flow diagrams,entity-relationship diagrams, use cases, and unified modeling language.Those techniques are described in more detail in next Chapter.

Prototyping

Prototyping involves the creation of an early working version of theinformation system or its components. Just as an aircraft manufacturer testsa new design in a wind tunnel, systems analysts construct and reviewprototypes for a larger systems. Prototyping tests system concepts andprovides an opportunity to examine input, output, and user interfaces beforefinal decisions are made. The prototype can serve as an initial model that isused as a benchmark to evaluate the completed system, or the prototypeitself can develop into the final version of the system. Either way, prototypingspeeds up the development process significantly. A possible disadvantage of prototyping is that important decisionsmight be made too early, before business or IT issues are thoroughlyunderstood. If a prototype is based on careful fact-finding and modelingtechniques, however, it can be an extremely valuable tool.

Computer-Aided Systems Engineering

Computer-aided system engineering (CASE) is a techniquethat use powerful programs, called CASE tools, to help systems analystsdevelop and maintain information systems. CASE tools provided an overallframework for systems development and support a wide variety of designmethodologies, including structured analysis and object-oriented analysis. Traditionally, systems developers differentiated between two CASEcategories: upper CASE tools and lower CASE tools. Upper CASE toolssupport the modeling process and produce a logical design of the informationsystem. Lower CASE tools speed the development process by generatingsource code based on the logical model. Today, many popular CASE toolscombine upper and lower CASE features into a single product. CASE tools can boost IT productivity and improve the quality of thefinished product. For example, developers use CASE tools to maintain designintegrity, manage a complex project, and generate code modules that speedup implementation. Figure 1-18 shows the Visible Systems Analyst’s Toolkit

Page 17: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

explains how systems developers use CASE tools, and provides suggestionsand example.

Figure 1-18

Joint Application Development and Rapid ApplicationDevelopment

In the past, the IT department typically developed information Isystems and contacted users only when their input was desired or needed.Unfortunately that approach often left large communication gaps betweensystem developers and users. Over time, many companies discovered thatsystems development teams composed of IT staff, user, and managers couldcomplete their work more rapidly and produce better results. Twomethodologies became popular: joint application development (JAD)and rapid application development (RAD). Both approaches use teamscomposed of user, managers, and IT staff to complete projects. JAD involvesteam-based fact-finding techniques, while RAD is more like a condensedversion fo the entire development process. JAD is described in more detail inChapter 3, and RAD is explained in Part 4 of the Systems Analyst’s Toolkit atthe end of the book.

Other Systems Development Tools

In addition to CASE tools, a systems analyst uses various productivitytools or organize and structure the task of developing an information system.In addition to word processing, spreadsheets, graphics tools, andpresentation software, analysts use special purpose charting tools. A popularexample is VISIO, which is shown in Figure 1-19. A systems analyst can useMicrosoft VISIO to draw flowcharts, data flow diagrams, network diagrams,and business process diagrams, among others.

Figure 1-19

OVERVIEW OF SYSTEMS DEVELOPMENT METHODOLOGIES

This section discusses the most popular methodologies for developingcomputer-based information systems. A popular, traditional method is calledstructured analysis, but a newer strategy called object-oriented analysis anddesign also is widely used. Each method offers many variations. Someorganizations develop their own approaches or adopt methods offered bysoftware vendors or consultants. Most IT experts agree that no single, bestsystem development strategy exists. Instead, a systems analysis shouldunderstand the alternative methodologies and their strengths andweaknesses.

Page 18: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Structure Analysis

Structured analysis is a traditional systems development techniquethat is time-tested and easy to understand. Structured analysis evolves in a1960s environment, where most systems were based on mainframeprocessing of individual data files. Because it describes the processing thattransforms data into useful information, structured analysis includes dataorganization and structure, relational database design, and user interfaceissues. Structured analysis uses a series of phase, called the systemsdevelopment life cycle (SDLC) to plan, analyze, design, implement, andsupport a n information system.

Structured analysis relies on a set of process models that graphicallydescribe a system. Process modeling identifies the data flowing into aprocess, the business rules that transforms the data, and resulting outputdata flow. Figure 1-20 shows a simple process model that represents aschool registration process with related input and output. Structured analysisis developing into a technique called information engineering. Informationengineering, like enterprise computing, envisions the overall businessenterprise and how corporate data and processes interact throughout theorganization.

Figure 1-20

Object-Oriented Analysis

Whereas structured analysis regards processes and data as separatecomponents, object-oriented (O-O) analysis combines data and theprocesses that act on the data into thing called objects. Systems analystsuse O-O methods to model real-world business processes and operations.The result is a set of software objects that represent actual people, things,transactions, and events. Using an O-O programming language, aprogrammer then transforms the object it into reusable code andcomponents. An object is member of a class, which is collection of similar objects.Objects posses characteristics called properties, which it inherits from itsclass or possess on its own. As shown in Figure 1-21, the class namedPERSON includes INSTRUCTOR and STUDENT. Because the PERSON class hasa property named Address, a STUDENT inherits an Address property. ASTUDENT also has a property named Major that is not shared by othermembers of the PERSON class. In O-O programming, built-in processes called methods can exchangean object’s properties. For example, a sailboat object might have a property

Page 19: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

named sailing speed that can be changed by methods that raise and lower itssails. One object can send information to another object by using a message.A message can request specific behavior or information from the recipient.For example, if there if there is no wind, a sailboat owner object might senda “start the motor” message to the sailboat object. The owner object has thecapability to send this message, and the sailboat object knows what action toperform when it receives he message. O-O analysis uses object models to represent data, behavior, by whatmeans objects affects other objects. By describing an objects (data) andmethods (processes) needed to support a business operation, a systemdeveloper can design reusable components that allow faster systemimplementation and decreased development cost. Many analysts believe that, compared with structured analysis, O-Omethod are more flexible, efficient, and realistic in today’s dynamic businessenvironment. Also O-O analysis provides an easy transition to popular O-Oprogramming languages, such as Java C++. Chapter 5 covers O-O analysisand design and describes O-O terms, concepts, tools, and techniques detail.

Other development strategies In addition to structured analysis and O-O methodologies, you might

encounter other systems development techniques created by individualcompanies. For example, Microsoft has developed an approach calledMicrosoft Solutions Framework (MSF), as shown in Figure 1-22 thatdocuments the experience of its own IT teams. MSF is described in moredetail in Part 4 of the System Analyst’s Toolkit. Using MSF, you design a series of models, including a risk ofmanagement model, a team model, and a process model, among others.Each model has a specific purpose and outputs that contribute to the overalldesign of the system. Although the Microsoft process differs from the SDLCphase-oriented approach, MSF, developers do the same kind of planning, askthe same kind of fact-finding question, deal with the same kinds of designand implementation issues, and resolve the same kinds of problems. MSFuses O-O analysis and design concepts, but also examines a broaderbusiness and organizational context that surrounds the development of aninformation system. Companies often choose to follow their own methodology. By usingpowerful CASE tools, an IT staff can apply a variety of techniques rather thanbeing bound to a single, rigid methodology. For example, the PopkinSoftware CASE tool described in Figure 1-23 offers a complete set of analysisand modeling tools that support many methodologies and strategies. If asystems analyst needs additional choices, he or she can choose from anentire industry of IT software companies and consulting firms.

THE SYSTEM DEVELOPMENT LIFE CYCLE

Page 20: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Structured analysis uses a technique called the system developmentlife cycle (SDCL) to plan and manage the system development process.Although it is primarily identified with structured analysis, the SDCLdescribes activities and functions fit into a particular methodology. TheSDCL model includes the following steps:

1. System planning2. System analysis3. System design4. System implementation5. System operation and support

Traditionally, the SDCL is pictured as a waterfall model shown inFigure 1-24, where the result of each phase, often called an endproduct or deliverable, flows down into the next phase. In reality,the system development process is dynamic and constant change incommon. Figure 1-25 represents an alternative model, whereplanning, analysis, and design interact. This interactive modeldepicts real-world practice and the constant dialog among users,managers, and systems developers.

FIGURE 1-24

FIGURE 1-25

SYSTEMS PLANNING System planning usually begins with a format request to the ITdepartment, called system request that describes as problems ordesired changes in an information system or a business process. Inmany companies today, IT systems planning is an integral of overallbusiness planning. When managers and users develop strategic,tactical, and operational plans, they include IT requirements thatsubsequently generate systems request. A systems request can come from a top manager, a planningteam, a department head or the IT department itself. The request canbe very significant or relatively minor. A major request might involve anew information system or the replacement of an existing systemsthat cannot handle current requirements. In contrast, a minor requestmight ask for a new feature or a change to a user interface. The purpose of the planning phase is to identify clearly the natureand scope of the business opportunity or problem by performing apreliminary investigation, often called a feasibility study. Thepreliminary investigation is a critical step because the outcome willaffect the entire development process. The end product, or deliverable,is a report that describes business considerations, reviews anticipated

Page 21: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

benefits and cost, and recommends a course of action based oneconomic, technical, and operational factors. Suppose you’re a system analyst and you receive a request for asystem change or improvements. Your first step is to determinewhether it make sense to lunch a preliminary investigation at all. Oftenyou will need to learn more about business operations before you canreach a conclusion. After an investigation, you might found that thesystem functions well, but that users need more training. In somesituations, you might recommend a business process review, ratherthan IT solutions. In other cases, you might conclude that a full-scalesystems review is necessary. If the development process continues,the next step is system analysis.

SYSTEM ANALYSISThe purpose of the system analysis phase is to understand

business requirements and build a logical model of the new system.The first step is the requirements modeling, where you defined anddescribed business process. Requirements modeling continues theinvestigation that began during systems planning and involve variousfact-finding technique, such as interviews, surveys, observation andsampling. During the next tasks, data modeling, process modeling,and object modeling, you develop a logical model of businessprocesses the system might support. The model consist of varioustypes of diagrams, depending on the methodology being used. The end product of the systems analysis phase is the systemrequirement document. The system requirements documentdescribes management and user requirement, alternative plans andcosts and your recommendation. Looking ahead to design and implementation, several possibilitiesexist: develop a new system in-house, purchase and commercialpackage, or modify an existing system.

SYSTEMS DESIGN

The purpose of the systems design phase is to create a blueprintthat will satisfy all documented requirements for the system. At thisstage, you design the user interface and identify all necessary outputs,inputs, and processes. In addition, you design internal and externalcontrols, including computer–based and manual features to guaranteethat the system will be reliable, accurate, maintainable, and secure.During the systems design phase, you also determine to transform thelogic design into program modules and code. The result of this phase is documented in the system designspecification and presented to management and users for review and

Page 22: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

approval. Management and user involvement is critical to avoid anymisunderstanding about what the new system will do, how it will do it,and how it will cost.

System Implementation

During the systems implementation phase, the new systemis constructed. Whether the developers used structured analysis orO-O methods, the procedure is the same – programs are written,tested, and documented, and the system is installed. If the systemwas purchased as a package, system analysts configure the softwareand perform any a completely functioning and documentedinformation system. At a conclusion of this phase, the system is ready for use. Finalpreparations include converting data to the new system’s files, trainingusers, and performing the actual transition to the new system. Thesystems implementation phase also includes an assessment, called asystems evaluation, to determine whether the system operatesproperly and if it costs benefits are within expectations.

Systems Operation, Support and Security

During the systems operation, support, and security phase theI.T. staff maintains, enhances, and protects the system. Maintenancechanges correct errors and adapt to changes in the environment, suchas new tax rates. Enhancements provide new features and benefits.The objective during this phase is to maximize return on the ITinvestment. Security controls safeguard the system from both externaland internal threats. A well-designed system will be secure, reliable, maintainable,and scalable. A scalable design can expand to meet new businessrequirements and volumes. Information systems development isalways a work in progress. Business processes change rapidly, andmost information systems need to be updated significantly or replacedafter several years of operation.

Systems Development Guidelines

With experience as a systems analyst, you will develop yourown style and techniques. Although each project is different, youshould consider some basic guidelines as you build an informationsystem.

Planning

Page 23: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Stick to an overall development plan. If you use the SDLC as aframework for systems development, complete the phases insequence. If you use an O-O methodology, follow a logical series ofsteps as you define the components.

Involve the Users Throughout the Development Process

Ensure that users are involved in the development process,especially when identifying and modeling system requirements.Modeling and prototyping can help you user needs and develop abetter system.

Listening is very important

Listen carefully! The best system is the one that meets userneeds most effectively. When you interact with users, you must putaside any preconceive notions and listen very closely to what they aresaying to you. Chapter3 describes the interview process and containsmany tips about getting the most out if face-to-face communication.

Create a Timetable with Major Milestones

Identify major milestones for project review and assessment. Atthose milestones, managers and systems developers must decidewhether to proceed with the project, redo certain tasks, return to anearlier phase, or terminate the project entirely. The SDLC modelrequires formal assessment of end products and deliverables. O-Oanalysis involves a continuous modeling process that also requirescheckpoints and project review.

Identify Interim Checkpoints

Establish interim checkpoints between major milestones toensure that the project remains on schedule. Regardless of thedevelopment methodology, the systems analyst must keep the projecton track and avoid surprises. Create a reasonable number ofcheckpoints – too many can be burdensome, but too few thecompletion of interviews conducted during a preliminary investigation.

Remain Flexible

Be flexible within the framework of your plan. Systemsdevelopment is a dynamic process, and overlap often exists between

Page 24: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

the phases of systems planning, analysis, design, and implementation.For example, when you investigate a systems request, you begin afact-finding process that often carries over into the next phase.Similarly, you often start building process models before fact-finding iscomplete. The ability to overlap phases is especially important whenyou are working on a system that must be developed rapidly.

Develop Accurate Cost and Benefit Information

Provide accurate and reliable cost and benefit information.Managers need to know the cost of developing and operating asystem. At the start of each phase, you must provide specificestimates.

Information Technology Department

The information technology (IT) department develops andmaintains a company’s information system. The structure of the ITdepartment varies among companies, as does its name and placementwithin the organization. In a small firm, one person might requiremany people with specialized skills to provide information systemssupport. Figure 1-29 shows a typical IT organization in a company thathas networked PCs, enterprise-wide databases, centralized processing,and Web-based operations.

Figure 1-29

The IT group provides technical support, which includes sixmain functions: application development, systems support andsecurity, user support, database administration, networkadministration and Web support. These functions overlap considerablyand often have different companies.

Application Development

Traditionally, IT departments had an applicationdevelopment group composed of systems analysts and programmerswho handled information system design, development, andimplementation. Today, many companies use development teamsconsisting of users, managers, and IT staff members for those sametasks. A popular model for information systems development is aproject-oriented team using RAD or JAD, with IT professionalsproviding overall coordination, guidance, and technical support.

Page 25: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Systems Support and Security

Systems support and security provides vital protection andmaintenance services for system hardware and software, includingenterprise computing systems, networks, transaction processingsystems, corporate IT infrastructure. The systems support andsecurity group implements and monitors physical and electronicsecurity hardware, software and procedures. This group also installsand supports operating systems, telecommunication software, andcentralized database management systems. In addition, systemssupport and security technicians provide technical assistance to othergroups in the IT department.

CASE IN POINT 1.2: Global Hotels and Momma’s Motels

Suppose you work in the IT department of Global Hotels, amultinational hotel chain. Global Hotels runs several specializedbusiness support, including a guest reservation system that wasdeveloped in-house to meet the requirements of a larger companywith worldwide operations. Guests can make one-stop onlinereservations by visiting Globe’s Web site, which has links to all majortravel industry sites. Global Hotels just acquired Momma’s, a regional chain of 20motels in western Canada. Momma’s uses a vertical reservationspackage suitable for small- to medium-sized businesses, and a genericaccounting and finance package. Should Momma’s use Global Hotels’information systems or continue with own? In your answer, considerissues such as business profiles, business processes, systeminteractivity, EDI, XML. e-commerce, and the characteristics of bothinformation systems. What additional information would be helpful toyou in making a recommendation?

User Support

User support provides users with technical information,training, and productivity support. The user support function usually iscalled a help desk or information center (IC). A help desk’s stafftrains users and managers on application software such as e-mail,word processors, spreadsheet, and graphics packages. User supportspecialists answer questions, troubleshoot problems, and serve as aclearinghouse for user problems and solutions.

Page 26: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

In many companies, the user support team also installs andconfigures software applications that are used within the organization.Although user support specialists coordinates with other technicalsupport areas, their primary focus is user productivity and support forbusiness processes.

Database Administration

Database administration involves database design,management, security backup, and user access. In small- andmedium-sized companies, an IT support person performs those rolesin addition to other duties. Regardless of company size, mission-criticaldatabase applications require continuous attention and technicalsupport.

Network Administration

Business operations depend on telecommunication networksthat enable company-wide information systems. Networkadministration includes hardware and software maintenance, support,and security. In addition to controlling user access, networkadministrators install, configure, manage, monitor, and maintainnetwork applications. Network administration is discussed in moredetail in Chapter 8.

Web Support

Web support is the newest technical support function. Websupport specialists, often called webmaster, support a company’sInternet and intranet operations. Web support involves design andconstruction of Web pages, monitoring traffic, managing hardware andsoftware, and linking Web-based applications to the company’sexisting information systems. Reliable, high-quality Web support isespecially critical for companies engaged in e-commerce.

Phase 1 Systems Planning

Analyzing the Business Case (Preliminary Investigation)

Chapter 2

Page 27: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Systems planning is the first of five phase in the systemdevelopment life cycle. In this chapter, you learn about business andIT planning, and how systems get started and are reviewed initially.

Objectives

When you finish this chapter, you will be able to:

Describe the strategic planning process, and why it is importantIT managersExplain the purpose of a mission statementExplain the SDLC as a framework for systems development andbusiness modelingExplain the reason for information systems projects and thefactors that affect such projectsDescribe the initial review of systems request and the role ofthe systems review committeeDescribe the internal and external factors that affect informationsystems projectsDefine operational feasibility, technical feasibility, and economicfeasibilityDescribe the steps and end product of a preliminaryinvestigation

IntroductionDuring the systems planning phase, a systems analyst reviews

systems project and gains an understanding of the company’s objectives,information requirements, and business operations. The chapter begins with a discussion of strategic planning because itprofessionals must understand, support, and help plan long-term companygoals as well as day-to-day operations. You also will learn how the SDLC andCASE tools provide a framework for systems development.Systems development typically begins with a systems request, followed by apreliminary investigation. You will learn how systems request originate, howthey area evaluated, and how to conduct a preliminary investigation. Youalso will learn about the fact-finding techniques that begin at this point andcarry over into later development phases. Finally, you will examine the reportto management, which concludes the systems planning phase.

The Importance of Strategic Planning

Strategic planning is the process of identifying long-termorganizational goals, strategic, strategies, and resources. Strategic planninglooks beyond day-to-day activities and focuses on a horizon that is 3, 5, 10,or 20 years in the future.

Page 28: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Over of the Strategic Planning Process

Why does a systems analyst need to know about strategic planning?The answer might be found in an old story about two stonecutters who werehard at work when a passerby asked them what they were doing, “I amcutting stones,” said the first worker. The second worker replied, “I ambuilding a cathedral. So it is with information technology: One analyst mightsay, “I am using a CASE tool,” whereas another might say, “I am helping thecompany succeed in a major new business venture.” Systems analystsshould focus on the larger, strategic roe f IT as they carry out theirday-to-day responsibilities. During strategic planning, many companies ask a series of broadlyworded question that is called a SWOT analysis because it examines acompany’s strengths (S), weakness (W), opportunity (O), and threats (T).Each question leads to an IT-related issue, which in turn requires morereview, analysis, and planning. For example:

What are our major strengths, and how ca we utilize them inthe future? What must we do to strengthen our IT function,including our people and technology infrastructure?What are lour major weaknesses, and how can we overcomethem? How should we address weaknesses in IT resources andcapability?What are our major opportunities, and how can we take fulladvantage of them? What IT plans do we have to supportbusiness opportunities?What major threats do we face, and what can we do aboutthem? What can we do to deal with potential threats to ITsuccess?

When a company performs a SWOT analysis, a long-term strategic planemerges. The plan requires technical, financial, and human resources. Mostimportant, the strategic plan requires information resources and technologythat area supplied by IT professionals, including systems analysts.

Form the Strategic Plan to Business Results

Figure 2-1 shows the strategic planning process. A company developsa mission statement based on the firm’s purpose, values, and vision for thefuture. The mission statement is the foundation for major goals, shorter-termobjectives, and day-to-day business operations.

Figure 2-1

Page 29: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

A mission statement describes the company for its stakeholder andbriefly states the company’s overall purpose, products, services, and values.Stakeholders include anyone affected by the company’s performance, suchas customers, employees, supplies, stockholders, and members of thecommunity. Figure 2-2 shows examples of mission statement from severalleading companies. The mission statement is just the starting point. Next, the companyidentifies a set of goals that will accomplish the mission. For example, thecompany might establish one-year, three-year, and five-year goals forexpanding marker share. To achieve those goals, goals the companydevelops a list of specific objectives, which have a shorter time frame. Forexample, if a goal is to increase Web-based orders by 30 percent next year,a company might set quarterly objectives with monthly milestones.Objectives also might include tactical plan, such as creating a new Web siteand training a special customer support group to answer e-mail inquiries.Finally objectives are translated into day-to-day operations, using IT andother vital resources.

Figure 2-2

The FutureNew industries,products, and services will require powerful information

systems, and top managers will expect IT departments to support thebusiness enterprise. E-commerce will continue to surge, and the businessenvironment will be dnyanmic and challenging. To some firms, intensechange will be threatening; to others it will represent an opportunity. In the mid-1980s, Tom Peters wrote a popular book called Thriving onChaos that became a standard guidebook for many corporations . Peters saidthat change will be constant and successful companies must reinvent theirbusiness and learn how to thrive on change. He accurately predicted globalcompetition, rapidly changing markets, and the explosive growth ofinformation technology. Today, top managers know the need powerfulinformation systems to handle both the problems and opportunities ofconstant change.

The Role of IT Department

In most successful companies, a close link exists between businessoperations and information technology. Ten years ago, the IT departmentcommonly handled all aspects of systems development, and consulted usesonly when and if the department required user input. New approaches, suchas joint application development (JAD) and rapid application development(RAD) are widely accepted, and today, you are more likely to see systemsdevelopment users, managers, and IT staff working together right from thestart.

Page 30: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Even where tam-oriented development is the norm, some companiessee the role of the IT department as gatekeeper, responsible for screeningand evaluating systems requests. Should the IT department perform theinitial evaluation, or should a cross-functional team do it? The answerdepends on the company’s size and organization, and whether IT is tightlyintegrated into business operations. In smaller companies or firms where isonly one person with IT skills, that person acts as a coordinator and consultsclosely with users and managers to evaluate systems request.

INFORMATION SYSTEMS PROJECTS

This section discusses reasons for systems projects, internal andexternal factors that affect systems projects, and systems request forms.

Reasons for Systems Projects

The starting point for a project called a systems request, which it is aformal way of asking for IT support. A systems request might proposeenhancement for an existing system, the correction of problems, or thedevelopment of an entirely new information system.

As Figure 2-5 shows, the main reasons for system requests areimproved service to customers, better performance, more information,stronger controls, and reduced cost.

Figure 2-5

Factors Affecting Systems ProjectEvery business decision that a company makes is affected y internal

and external factors, and IT systems project are no exception. Figure 2-7shows the main internal and external factors.

Figure 2-7

Evaluation of Systems Requests

In most organizations, the IT department receives more systemsrequests than it can handle. Many organizations assign responsibility forevaluating systems requests to a group of key managers and users. Manycompanies call this group systems review committee or a computerresources committee. Regardless of the name, the objective is to use thecombined judgment and experience of several managers to evaluate systemsprojects.

System Reviews Committees

Page 31: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

In some companies, one person instead of a committee is responsiblefor evaluating systems requests. This often is the case in smaller companiesof firms where only one person has information technology skills. In thatsituation, the systems person must consult closely with users and managersthroughout the company to ensure that business and operational needs areconsidered carefully. In larger companies, instead of the company relying on a singleperson, a system review committee consists of the IT director and severalmanagers from other departments. Even where there is a committee, the ITdirector must act as a technical consultant to the committee to ensure thatmembers are aware of crucial issues, problems, and opportunities. Wit habroader viewpoint, a committee can establish priorities more effectively thanan individual, and one person’s bias is less likely to affect a committee’sdecisions. On the other hand, action on requests must wait until the committeemeets. To avoid delay, committee members use memos, e-mail, andteleconferencing with each other. Another potential disadvantage of acommittee is that members could favor projects requested by their owndepartments, and internal political differences can delay important decisions.

Evaluation of Projects

The systems review committee must evaluate the requests and setpriorities. Suppose the committee receives four requests: from the marketinggroup to analyze current customers spending habits and forecast futuretrends, a request from the technical support group for a cellular link soservice representatives can download technical data instantly, a request fromthe accounting department to redesign customers statements and allowaccess to them via the Internet, and a request from the production staff foran inventory control system that can exchange data with major suppliersdirectly. With a limited staff, which of those projects should the committeeconsider for further study? What criteria should be applied? How should thecommittee decide the priorities? To answer those questions, the committeemust assess the feasibility of each systems request.

Overview of Feasibility

A systems request must meet several tests to see whether it isworthwhile to proceed further. This series of tests is called feasibility studyand is a vital part of every systems projects. As shown in Figure 2-10, afeasibility study uses three major yardsticks to measure, or predict asystem’s success: operational feasibility, technical feasibility, and economicfeasibility.

Page 32: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Sometimes a feasibility study is quite simple and can be done in a fewhours. If the request involves a new system or a major change, however,extensive fact-finding and investigation is required.

Figure 2-10

Every systems request must pass an initial review to decide whether itdeserves further study. How much effort needs to go into that decision? Thatdepends on the request. For example, if a department wants an existingreport sorted in a different order, the analyst can decide quickly whether therequest is feasible. On the other hand, a proposal by the marketingdepartment for a new market research system to predict sales trendsrequires more effort. In both cases, the systems analyst asks threeimportant questions:

1. Is the proposal desirable in an operational sense? Is it apractical approach that will solve a problem or takeadvantage of an opportunity to achieve company goals?

2. Is the proposal technically feasible? Are the necessarytechnical resources and people available for the project?

3. Is the proposal economically desirable? What are theprojected savings and costs? Are there other intangiblefactors, such as customer satisfaction or company image? Isthe problem worth solving, and will the request result in asound business investment?

Later in this chapter, you will learn some techniques to use in thefact-finding process, including the examination of company documentsand organization charts, interviews with managers and users, and areview of current system documentation. If the systems requestappears feasible, those tasks will begin now and then continue in thesystem analysis phase.

Operational Feasibility

A system that has operational feasibility is one that will beused effectively after it has been developed. If users have difficultywith a new system, it will not produce the expected benefits.Operational feasibility depends on several vital issues, For example,consider the following questions:

Does management support the project? Do users support theproject? Is the current system well liked and effectively used?Do users see the need for change?Will the new system result in workforce reduction? If so, whatwill happen to affected employees?

Page 33: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Will the new system require training for user? If so, is thecompany prepared to provide the necessary resources fortraining current employees?Will users be involved in planning the new system right from thestart?Will the new system place any new demands on users or requireany operating changes? For example, will any information beless accessible or produced less frequently? Will performancedecline in any way? If so, will an overall gain to the organizationoutweigh individual losses?Will customers experience adverse effects in any way, eithertemporarily or permanently? Will any risk to the company’simage or goodwill result?Is the schedule for development of he system reasonable?Do any legal or ethical issues need to be considered?

Technical Feasibility

A systems request has technical feasibility if the organization hasthe resources to develop or purchase, install, and operate the system. Whenassessing technical feasibility, an analyst must consider the following points:

Does the company have the necessary hardware, software, andnetwork resources? If not, can those resources be acquiredwithout difficulty?Does the company have the needed technical expertise? If not,can it be expanded?Will the hardware and software environment be reliable? Will itintegrate with other company information systems, both nowand in the future? Will it interface with external systemsoperated by customers and suppliers?Will the combination of hardware and software supply adequateperformance? Do clear expectations and performancespecification exist?Will the system be able to handle future transaction volume andcompany?

Economic Feasibility

A systems request has economic feasibility if the projected benefitof the proposed system outweigh the estimated costs involved in acquiring,installing, and operating it. Costs can be one time or continuing, and canincur at various times during project development and use. When assessing costs, companies usually considered the total cost ofownership (TCO), which includes ongoing support and maintenance costs,

Page 34: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

as well as acquisition costs. To determine TCO, the analyst needs toestimate costs in each of the following areas:

People, including IT staff and usersHardware and equipmentSoftware, including in-house development as well as purchasesfrom vendorsFormal and informal trainingLicenses and feesConsulting expensesFacility costsThe estimated cost of not developing the system or postponingthe project

In addition to costs, you need to assess tangible and intangiblebenefits to the company. The systems review committee will use thosefigure, along with you cost estimates, to decide whether to pursue theproject beyond the preliminary investigation phase.

Tangible benefits are benefits that can be measured in dollar.Tangible benefits results from a decrease in expenses, an increase inrevenues, or both. Examples of tangible benefits include the following:

A new scheduling system that reduces overtimeAn online package tracking system that improves serviceand decreases the need for clerical staffA sophisticated inventory control system that cuts excessinventory and eliminates production delays.

Intangible benefits are difficult to measure in dollar but alsoshould be identified. Examples of intangible benefits include thefollowing:

A user-friendly system that improves employee jobsatisfactionA sales tracking system that supplies betterinformation for marketing decisionsA new Web site that enhances the company’simage

You also must consider the development timetable, because somebenefits might occur as soon as the system is operational, but others mightnot take place until later.

The Systems Analyst’s Toolkit contains tools to help you assesseconomic feasibility

Determining Feasibility

The first step in the evaluation of a systems request is to make aninitial determination of feasibility. Any request that is not feasible should be

Page 35: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

identified as soon as possible. For example, a request might requirehardware or software that the company already rejected for other reasons. Ifso, the request will not fit the company’s technical environment and shouldnot be pursued further. Even if the request is technically feasible, it might not be the bestsolution. For example, a request for a new report that is needed only oncecould require considerable design and computer-based software package andask users to produce their own reports. In that case, a better investment isto train users instead of producing the reports for them. You should keep in mind that systems requests that are not currentlyfeasible can be resubmitted as new hardware, software, or expertisebecomes available. Development costs might decrease, or the value ofbenefits might increase enough that a systems request eventually becomesfeasible. Conversely, an initially feasible project can be rejected later. As theproject progresses, conditions often change. Acquisition costs might increase,and the project might become more expensive than anticipated. In addition,managers and users sometimes lose confidence in a project. For all thosereasons, feasibility analysis is an ongoing task that must be performedthroughout the system development process.

Criteria Used to Evaluate Systems Requests

After rejecting systems requests that are not feasible, the systemsreview committee must establish priorities for the remaining items. Priorityusually goes to projects that provide the greatest benefit, at the lowest cost,in the shortest period of time. Many factors, however, influence projectevaluation. When assessing a project, a system analyst should ask thefollowing questions:

Will the proposed system reduce costs? Where? When? How?How much?Will the system increase revenue for the company? Where?When? How? How much?Will the systems project result in more information or producebetter results? How? Are the results measurable?Will the system serve customers better?Will the system serve the organization better?Can the project be implemented in a reasonable time period?How long will the results last?Are the necessary financial, human, and technical resourcesavailable?

Very few projects will score high in all areas. Some proposed systemsmight not reduce costs but will provide important new feature. Othersystems might reduce operating cost substantially but require the purchase

Page 36: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

or lease of additional hardware. Some systems might be very desirable butrequire several years of development before producing significant benefits.

Whenever possible, the analyst should evaluate a proposed projectbased on tangible factors. A tangible factor can be assigned an actual orapproximate dollar value. A reduction of $8,000 in network maintenance isan example of a tangible factor.

Often, the evaluation involves intangible factors. In contrast to atangible factor, it is difficult to assign a dollar value to an intangible factor.Enhancing the organization’s image and improving customer service areexamples of intangible factors. Intangible factors often weigh heavily in thedecision for or against a systems project.

Discretionary and Non-discretionary Projects

Is the project absolutely necessary? Projects where management hasa choice in implementing them are called discretionary projects. Projectswhere no choice exists are called nondiscretionary projects. Creating a newreport for a user is an example of a discretionary project; adding a reportrequired by a new federal law is an example of a nondiscretionary project. If a particular project is not discretionary, is it really necessary for thesystem review committee to evaluate it? Some people believe that waitingfor committee approval delays critical nondiscretionary projectsunnecessarily. Others believe that by submitting all systems requests to thesystems review committee, the committee is kept aware of all projects thatcompete for the resources of the IT department. As a result, the committeeassesses the priority of discretionary projects and can schedule them morerealistically. Additionally, the committee might need to prioritizenondiscretionary projects when funds or staff are limited. Many nondiscretionary projects are predictable. Examples includeannual updates to payroll, tax percentages, or quarterly changes in reportingrequirements for an insurance processing system. By planning ahead forpredictable projects, the IT department manages in resources better andkeeps the systems review committee fully informed without needing priorapproval in every case.

Steps in Preliminary Investigation

During a preliminary investigation, a system analyst typically follows aseries of steps, as shown in Figure 2-12. The exact procedure, howeverdepends on the nature of the request, the size of the project, and the degreeof urgency.

Figure 2-12

Step 1: Understand the Problem or Opportunity

Page 37: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

If the systems request involves a new information system or asubstantial change in an existing system, system analyst might need todevelop a business profile that describes business processes and functions,as explained in Chapter 1. Even where the request involves relatively minorchanges or enhancements, you need to understand how those modificationswill affect business operations and other information systems. Often achange in one system has an unexpected effect on another system. Whenyou analyze a systems request, you need to determine which departmentucers, and business processes are involved. In many cases, the systems request does not reveal the underlyingproblem, but only a symptom. For example, you might receive a request toinvestigate mainframe processing delays, and find improper schedulingpractices, rather than hardware problems. Similarly, a request for analysiscustomer complaints might disclose a lack of sales rep training, rather thanproblems with the product.

Step 2: Define the Project Scope and Constraints

Determining the project scope means to define the boundaries, orextent, of the project ---being as specific as possible. For example, thestatement, payroll is not being produced accurately is very general, comparewith the statement, overtime pay is not being calculated correctly forproduction workers on the second shift at Yorktown plant. Similarly, thestatement, the project scope is to allow customers to inquire online aboutaccount balances and recent transactions. Projects sometimes expand gradually, without specific authorization, ina process called project creep. TO avoid this problem, you should defineprojects scope as clearly as possible. You might want to use a graphicalmodel that shows systems, people, and business processes that will beaffected. The scope of the project also establishes the boundaries of thepreliminary investigation itself. A systems analyst should also limit the focusto the problem at hand and avoid unnecessary expenditure of time andmoney. Along with defining the scope of the project, you need to identify anyconstraints on the system. A constraint, or requirement, is a condition thatthe system must satisfy or an outcome that the system must achieve. Aconstraint can involve hardware, software, time, policy, law, or cost. Systemconstraints also define project scope. For example, if the system mustoperate with existing hardware, that is a constraint that affects potentialsolutions. Other examples of constraints are: the order entry system mustaccept input from 15 remote sites; the human resources information systemmust produce statistics on hiring practices; and the new web site must beoperational by March 1. When examining constraints, you should identifytheir characteristics.

Page 38: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Present Versus Future Constraints

Is the constraint something that must be met as soon as the system isdeveloped or modified, or is the constraint necessary at some future time?

Internal versus External Constraints

Is the constraint due to a requirement within the organization or doesthe constraint or does some external force, such as government regulations,impose it?

Mandatory versus Desirable Constraints

Is the constraint mandatory? Is it absolutely essential that theconstraint is met, or is it merely? If desirable, how important is theconstraint? Examples of various types of constraints are shown in Figure 2-13.One common mistake is to list all constrains as mandatory, which results inincreased development time and costs. Present, external, and mandatoryconstraints usually are fixed and must be met by the system when it isdeveloped or modified. Constraints that are future, internal, or desirableoften can be postponed. Regardless of the type, all constraints should beidentified as possible avoid future problems and surprises.

Figure 2-13

A clear definition of projects scope and constraints avoids misunderstandingsthat arise when mangers assume that the system will have a certain featureor support for a project, but later find that the feature is not included.

Step 3: Perform Fact-FindingFact-Finding involves various techniques, which are described below.

Depending on what information is needed to investigate the systems request,fact-finding might consume several hours, days, or weeks. For example, achange in a report format or data entry screen might require a singletelephone call or e-mail message to a user, whereas a new inventory systemwould involve a aseries of interviews. During fact-finding, you might analyzeorganization charts conduct interviews, review current documentation,observe operations, and carry out a user survey.

ANALYZE ORGANIZATION CHARTS In many instances you will not knowthe organizational structure of departments involved in the study. You shouldobtain organization charts to understand how the department functions andidentify individuals you might want to interview. Organization charts often

Page 39: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

can be obtained the company’s human resources department. If such chartsare unavailable, you should obtain the necessary information directly fromdepartment personnel and then construct your own charts. You can use andorganization chart tool built into your word processor or a separate graphicaltool, such as Microsoft Visio. When organization charts are available, you should verify theiraccuracy, Keep in mind that organization charts show formal reportingrelationships but not the informal alignment of a group, which also isimportant.

CONDUCT INTERVIEWS The primary method of obtaining informationduring the preliminary investigation is the interview, as shown in Figure 2-14.Remember that the purpose of other s that the project is justified. Yourprimary role in an interview is to ask effective questions and listen carefully.If you plan to talk to several people about the same topic, you shouldprepare a standard set of questions for all the interviews. Also be sure toinclude open-ended questions, such as “What else do you think I shouldknow about the system?” or “Is there any techniques in Chapter 3, When youbegin the systems analysis phase. When conducting interviews during the preliminary investigation, youshould interview managers and supervisors who have a broad knowledge ofthe system and can give you an overview of the business process involved.Depending on the situation, you might talk to learn how the system functionson a day-to-day basis.

Figure 2.14

REVIEW CURRENT DOCUMENTATION Although interviews are anextremely important method of obtaining information, you also may want toinvestigate the current system documentation. The documentation might notbe up-to-date, so you should check with users to confirm that you arereceiving accurate and complete information.

OBSERVE OPERATIONS Another fact-finding method is to observe thecurrent system in operation. You might see how workers carry out typicaltasks. You might choose to trace or follow the actual paths taken by inputsource documents or output reports. In addition to observing operations, youmight want to sample the inputs or outputs of the system. Using simplestatistical techniques described in the Systems Analyst’s Toolkit, you canobtain valuable information about the nature and frequency of the problem.

CARRY OUT A USER SURVEY Interviews can be time-consuming.Sometimes you can obtain information from a larger group by carrying out auser survey. In this case, you design a form that users complete and returnto you for tabulation. A survey is not as flexible as a series of interviews, but

Page 40: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

it is less expensive, generally takes less time, and can involve a broad crosssection of people.

Step 4: Determine FeasibilityAt this point you have analyzed the problem or opportunity, defined

project scope and constraints, performed fact-finding to learn about factorsthat might affect the project, and estimated the sosts and benefits of thenew system. Now you are ready to determine operational, technical, andeconomic feasibility.

Step 5: Estimate Time and Costs to Continue Development

To develop specific time and cost estimates for the next developmentphase, you should consider the following issues:

What information must you obtain, and how will you gather andanalyze the information?What sources of information will you use, and what difficultieswill you encounter in obtaining the information?Will you conduct interviews? How many people will youinterview, and how much time will you need to meet with thepeople and summarize their responses?Will you conduct a survey? Who will be involved? How muchtime will take people to complete it? How much time will it taketo prepare it and tabulate the results?How much will it cost to analyze the information gathered andto prepare a report with finding and recommendations?

In addition to time and cost figures for the next development phase, youshould provide an estimate for the overall project, so managers canunderstand the full cost impact and timetable. Exact figures might not beavailable, but an estimated range of time and costs can be useful,particularly when forecasting a best versus worst scenario.

Step 6: Present results and Recommendations to Management

At this stage, you have several alternatives. You might find that noaction is necessary or that some other strategy, such as additional training,is needed. To solve a minor problem, you might implement as simple asolution without performing further analysis. In other situations, you willrecommend that the project proceed to the next development phase, whichis systems analysis. The final task in the preliminary investigation is to prepare a report tomanagement. The report includes an evaluation of the systems request, anestimate of costs and benefits, and your recommendation. Part I of the

Page 41: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

System Analyst’s Toolkit helps you achieve effective written and oralcommunications. The format of the preliminary investigation report varies from onecompany to another. A typical report might include the seven sections shownin Figure 2-15

Figure 2-15

1. Introduction. The first section is an overview of the report. Theintroduction contains a brief description of the systems, the name ofthe person or group who performed the investigation, and the nameof the person or group who initiated the investigation.

2. System Request Summary. The summary describes the basis of thesystems request.

3. Findings. The finding section contains the results of you preliminaryinvestigation, including a description of the project’s scope,constraints, and feasibility.

4. Recommendations. Recommendations for further action, with specificreasons and justification, are explain in this section. Management willmake the final decision, but the IT department’s input is an importantfactor.

5. Time and Cost Estimates. This section describes the cost of acquiringand installing the system, and the total cost of ownership during thesystem’s useful life.

6. Expected Benefits. Anticipated tangible and intangible benefits and atimetable that shows when they are to occur is included in thissection.

7. Appendix. An appendix is included in the report if you need to attachsupporting information. For example, you might list the interviews youconducted, the documentation you reviewed, and other sources forthe information you obtained. You do not need detailed reports of theinterviews or other lengthly documentation. It is critical that youretain those documents to support you findings and for futurereference.

In addition to a written report, you might be asked to give an oralpresentation, as shown in Figure 2-16. Chapter 3 and Part I of theSystems Analyst’s Toolkit provide suggestions on deliveringpresentation.Figure 2-16

CHAPTER 3Phase 2System Analysis

Page 42: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

System analysis is the second phase in the systemsdevelopment life cycle. In the prior phase, systems planning, youconducted a preliminary investigation to learn more about the systemsrequest. Now, in the systems analysis phase, you objective is todevelop a logical, business-oriented model of the proposed modeling,and object modeling. Before going on to the systems design phase,you also will consider the transition from logical to physical design.

Requirements Modeling Requirements modeling is the first of four chapters in thesystems analysis phase. Chapter 3 describes the process of gatheringfacts about a systems project and creating models and documentationthat will be used to design and develop the system.

INTRODUCTIONAfter an overview of the systems analysis phase, this chapter

describes requirements modeling techniques and team-based methodsthat systems analysts use to visualize and document new systems.The chapter then discusses system requirements and fact-findingtechniques, which include interview, documentation review,observation, survey and questionnaires, sampling, and research.

OBJECTIVES

When you finish this chapter, you will be able to:Explain systems analysis phase activities and the endproduct of the systems analysis phaseDescribe joint application development (JAD)Describe the Unified Modeling Language (UML) andexplain use case diagrams and sequence diagramsExplain how functional decomposition diagrams (FDD) areused during systems developmentList and describe system requirements, including outputs,inputs, process, performance, and controlsExplain the important of scalability in systems designDefine total cost of ownership (TCO) and explain theconceptDescribe how to conduct a successful interviewExplain when and how to use fact-finding techniques,including interviews, documentation review, observation,questionnaires, sampling, and research.

Page 43: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Develop effective documentation methods to use duringsystems development

SYSTEMS DEVELOPMENT METHODSThe traditional model for systems development was an IT

department the use structured analysis and consulted users whentheir input or approval was needed. Although the IT staff still has acentral role and structured analysis remains a common method ofsystems development, many companies now use teams to developinformation systems. Fro example, joint application development(JAD), which is discussed in this chapter, is a group-orientedtechnique for fact-finding and requirements modeling. Because it isnot linked to a specific development methodology, systemsdevelopers use JAD when group input and interaction is desired. Team-oriented methodologies that go beyond JAD and providean overall framework for systems development include rapidapplication development (RAD) and Microsoft Solutions Framework(MSF), which are both described in the Systems Analyst’s Toolkit.

Joint Application Development

Joint application development (JAD) is a popular systemsdevelopment technique. In a traditional structured analysis process,the IT staff collects information from users and managers anddevelops the requirements for a new system. In contrast, using a JADteam approach (such as that shown in Figure 3-2). The companycreates a task force of users, managers, and IT professional thatworks together to gather information, discuss business needs, anddefine the new system requirements.

Figure 3-2

The JAD ream usually meets over a period of days or weeks, ina special conference room or at an off-site location. Either way, JADparticipants should be insulated from the distraction of day-to-dayoperations. The objective is to analyze the existing system, work onpotential solutions, and agree on requirements for the new system. The JAD group usually has a project leader, who needs stronginterpersonal and organizational skills, and one or more members whodocument and record the results and decisions. Typically JADparticipants and their roles are shown in Figure 3-3. IT staff members

Page 44: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

often serve as JAD project leaders, but that is not always the case.Systems analysts on the JAD team participate in discussions, askquestion, take notes, and provide support to the team. If CASE toolsare available, analysts can develop models and enter documentationfrom the JAD session directly into the CASE tool.

Figure 3-3

A typical JAD session agenda is shown in Figure 3-4. The JADprocess involves intensive effort by all team members. Because of thewide range of input and constant interaction among the participants,many companies believe that a JAD group produces the best possibledefinition of the new system.

Figure 3-4

Compared with traditional methods, JAD is more expensive andcan be cumbersome if the group is too large relative to the size of theproject. Many companies find, however, that JAD allows key users toparticipate effectively in the requirements modeling process. Whenproperly used, JAD can result in a more accurate statement of systemrequirements, a better understanding of common goals, and strongercommitment to the success of the new system.

MODELING TOOLS AND TECHNIQUES

Models helps users, managers, systems develops to understandcurrent r new system designs. Modeling involves graphical methodand nontechnical language that represent the system at variousstages of development. During requirements modeling, you can usethe Unified Modeling Language to describe user interaction with thesystem, and function decomposition diagram to show the organizationof business function and processes. Modeling and fact-finding areclosely related – fact-finding results translate into models thatimprove documentation and communication, and often lea to morefact-finding and modeling.

Unified Modeling Language

The Unified Modeling Language (UML) is widely used methods ofvisualizing and documenting software systems design. UML was

Page 45: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

created by Grady Booch, Ivar Jacobson, and James Rumbaugh in early1990s and soon became an IT industry standard. UML usesobject-oriented design concepts, but it is independent any specificprogramming language and is used to describe business processesand requirements generally. UML provides various graphical tools and techniques, such asuse case diagrams and sequence diagrams. During requirementsmodeling, a systems analyst can utilize such tools to represent theinformation system from a user’s viewpoint. Use case diagrams,sequence diagrams, and other UML concepts are discussed in moredetail in Chapter 5, along with other object-oriented analysismethods. A brief description of each is given below.

USE CASE DIAGRAMS

During requirements modeling, system analyst and users worktogether to document requirements and model system functions. Ause case diagram visually represents the interaction between usersand the information system. In a use case diagram, the user becomes an actor, with aspecific role that describes how he or she interacts with the system.Systems analysts can draw use case diagrams freehand or use CASEtools that integrate the use cases into the overall system design. Figure 3-5 shows a simple use case diagram for sales systemwhere the actor is a customer and the use case involves a credit cardvalidation that is performed by the system. Because use cases depictthe system through the eyes of a use, common business language canbe used to describe the transactions. For example, Figure 3-6 shows atable that documents the credit card validation use case. Figure -7 onthe next page shows a student records systems with several se caseand actors.

Figure 3-5

Figure 3-6

Figure 3-7SEQUENCE DIAGRAMS

Sequence diagrams show the timing of transaction betweenobjects as they occur. A systems analysts use a sequence diagram to

Page 46: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

show all possible outcomes, or focus on a single scenario. Figure 3-8shows simple sequence diagram of a successful credit card validation.The interaction proceeds from top to bottom, along a vertical timeline,while the horizontal arrows represent messages from one object toanother.

Figure 3-8

Functional Decomposition Diagrams

A functional decomposition diagram (FDD) is a top-downrepresentation of business function and processes. Using an FDD ananalyst can show business functions and break them down intolower-level functions and processes. Creating a FDD is similar to drawing an organization chart ---you start at the top and work your way down. Figure 3-9 showsfour-level FDD of a library system, drawn the Visible Analyst CASEtool. FDDs can be used at several stages of systems development.During requirements modeling, analysts use FDDs to model businessfunctions and show how they are organized into lower-level processes.Those processes are represented as logical symbols during data andprocess modeling and can translate into program modules duringapplication development.

Figure 3-9

SYSTEM REQUIREMENTS CHECKLIST

During requirements modeling, systems developers mustidentify and describe all systems requirements. A system requirementis a characteristic or feature that must be included in n informationsystem to satisfy business requirements and be acceptable to usersSystem requirements therefore serve as benchmarks to measure theoverall acceptability of the finished system System requirements fall into five general categories: outputs,inputs, processes performance, and controls. Typical examples ofsystem requirements for each category are listed below.

Outputs

Page 47: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

The Web site must report online volume statistics everyfour hours, and hourly during peak periods.The inventory system must produce a daily report showingthe part number, description, quantity on hand, quantityallocated, quantity available, and unit costs of allparts-sorted by part number.The contact management system must generate a dailyreminder list for all sales reps.The purchasing system must provide suppliers withup-to-date specification.The sales tracking system must produce a dailyfast-moving-item report, listing all products exceed theforecast sales volume- grouped by style, color, size, andreorder status.The costumer analysis system must produce a quarterlyreport that identifies changes in ordering patterns ortrends, with statistical comparisons to the previous fourquarters.

Inputs

Manufacturing employees must swipe their ID cards intoonline data collection terminals that record labor costproduction efficiency.The department head must enter overtime hours on aseparate screen.Student grades must be entered on machine-scannableforms prepared by the instructor.Each input form must include date, time, product code,customer number, and quantity.Data entry screens must be uniform, except forbackground color, which can be changed by the user.A data entry person at the medical group must inputpatient service into the billing system.

Processes

The student records system must allow record access byeither the student name or the student number.

Page 48: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

As the final step in year-end processing, the payrollsystem must update employee salaries, bonuses, andbenefits, and produce tax data required by the IRS.The warehouse distribution system must analyze dailyorders and create a routing pattern for delivery trucks thatmaximizes efficiency and reduces unnecessary mileage.The human resources system must interface properly withthe existing payroll system.The video rental system must not execute new rentaltransactions for customers who overdue tapes.The prescription system must automatically generate aninsurance claim form.

Performance

The system must support 25 users online simultaneously.Response time must not exceed four seconds.The system must be operational 7 days a week, 365 daysa year.The accounts receivable system must prepare customerstatements by the third business day of the followingmonth.The student records system must produce class listswithin five hours after the end of registration.The online inventory control system must flag alllow-stock items within one hour after the quantity fallsbelow a predetermined minimum.

Controls

The system must provide log-on security at the operatingsystem level.An employee record must be added, changed, or deletedonly by a member of the human resources department.The system must maintain separate levels of security forusers and the system administrator.Al transactions must have audit trails.The manager of the sales department must approveorders that exceed a customer’s credit limit.The system must create an error log file that includes theerror type, description, and time.

Page 49: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

SCALABILITY AND TOTAL COST OF OWNERSHIP

In addition to the system requirements listed above, systemsdevelopers must consider future growth and demands on the systemand the total cost of ownership, which includes all future operationaland support costs.

Scalability Scalability means the ability to adjust system capacity asbusiness requirements change in the future. To ensure the system willmeet future requirements, you need information about current andfuture volume and growth for all outputs, inputs, and processes. Forexample, to create a Web site for customer orders, you need to knowthe estimated number of online customers, the periods of peak onlineactivity, the number and types of data items required for eachtransaction, and the method of accessing and updating customer files. Even to print customer statements, you need to know thenumber of active accounts and have a forecast for one, two, or fiveyears, because that information affects future hardware decisions. Inaddition, with realistic volume projections, you can provide reliablecost estimates for related expenses such as postage and onlinecharges. Similarly, for a motel chain reservation system, you mightdetermine the frequency of online queries about room availability, thetime required for each query, and the average response time. Withthat information, you could estimate server transaction volume andnetwork requirements. Transaction volume has a significant impact on operating costs.When volume exceeds the system’s limitations, maintenance costsincrease sharply. Volume can change dramatically if a companyexpands or goes into a new line of business. For example, a newWeb-based marketing effort might require an additional server and24-hour technical support. Data storage also is an important concern. You need todetermine hoe much data storage is required currently and predictfuture needs based on system activity and growth. Thoserequirements affect hardware, software, and network bandwidthneeded to maintain system performance. You also must consider data retention requirements anddetermine whether data can be deleted or achieved on a specifictimetable. You learn that a transaction file must be retained for five

Page 50: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

years. If the information is stored on tape cartridges, and youcalculate that two cartridges are needed for each month’s data, thenthe company will need 120 cartridges (2 cartridges per month x 12months x 5 years)

Total Costs of Ownership

In addition to direct costs, systems developers must identify anddocument indirect expenses that contribute to the total cost ofownership (TCO). That is especially important where thedevelopment team is assessing several alternatives. After consideringthe indirect (and, hence, sometimes hidden) costs, a system thatseems inexpensive might actually turn out to be the most costlychoice. Microsoft Solutions Framework (MSF) includes a TCO model thatoffers tools, methods, and guidelines to analyze and reduce TCO. Onthe Web site shown in Figure 3-10. Microsoft states that indirect costshave tripled over last 10 years and account for almost 50 percent oftotal and downtime productivity losses, typically were not included inIT department budgets and were unaccounted for in most companies.

Figure 3-10

During requirements modeling, systems analysis should identifyindirect costs and include them in TCO estimate. Even if accuratefigures are unavailable, management should consider indirect coststhat might increase TCO.

FACT-FINDING

Now that you understand the categories of systemrequirements, scalability, and TCO, the next step is to begin collectinginformation. Whether you are working on your own or as a member ofa JAD team, during requirements modeling you will use variousfact-finding techniques, including interviews, document review,observation, surveys and questionnaires, sampling, and research.

Overview

Although software can help you gather and analyze facts, noprogram actually performs fact-finding for you. The first step is to

Page 51: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

identify the information you need. Typically, you begin by asking aseries of questions, such as these: What business functions aresupported by the current system? What strategic objectives andbusiness requirements must be supported by the new system? Whatare the benefits and TCO of the propose system? What transactionswill the system process? What information do users and managersneed from the system? Must the new system interface with legacysystems? What procedures could be eliminated by business processreengineering? What security issues exist? What risks are acceptable?What budget and timetable constraints will affect systemdevelopment? To obtain answers those and similar questions, you must startwith a fact-finding plan. You will develop a strategy, carry outfact-finding techniques, document the results, and prepare a systemrequirements document, which is presented to management.

Who, What, When, Where, and How?

Fact-finding involves answers to five familiar questions: who,what, when, where and how. For each of those questions you mustalso ask another very important question: why. Some examples ofthese questions are:

1. Who? Who performs each of the procedures within thesystem? Why are the correct people performing theactivity? Could other people perform the tasks moreeffectively?

2. What? What is being done? What procedures within arebeing followed? Why is the process necessary? (Often,procedures are followed for many years and no one knowswhy. You should question why a procedure is beingfollowed at all.)

3. Where? Where are operations being performed? Why?Where could they be performed? Could they be performedmore efficiently elsewhere?

4. When? When is a procedure performed? Why is it beingperformed at this time? Is it the best time?

Page 52: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

5. How? How is a procedure performed? Why is it performedin that manner? Could it be performed better, moreefficiently, or less expensively in some other manner?

There is a difference between asking what is being don andwhat could or should be done. The sequence of the questions isvery important, especially at this early stage of thedevelopment process. The systems analyst first must know whatcurrent situation is. Only then can he or she tackle the questionof what should be done. Figure 3-11 lists the basic questionsand when they should be asked. Notice that the first twocolumns relate to the current system, nut the third columnfocuses on the proposed system.

Figure 3-11

The system analysis phase can be especially challengingwhen a large system is involved. Business systems are neverstatic – they change rapidly to meet the organization’s needs. Ifrevision were made to a system, it might not resemble theoriginal systems design at all. In some cases, the systemsanalyst must perform reverse engineering to find out how theoriginal system functional before it was modifies. It is possiblethat several layers of changes were made at various timesbecause of enhancements and maintenance.

INTERVIEWS

Systems analysts spend a great deal of time talkingwith people, both inside and outside the information technologydepartment. Much of that conducting interviews, which are animportant fact-finding technique. An interview is a plannedmeeting during which you obtain information from anotherperson. You must have the skill needed to plan, conduct, anddocument interviews successfully. The interviewing processconsists of these seven steps:

1. Determine the people to the interview.

2. Establish objectives for the interviews.

3. Develop interview questions. Prepare for the interview.

Page 53: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

4. Conduct the interview.

5. Document the interview. Evaluate the interview.

Step 1: Determine the People to Interview

To get an accurate picture of the system, you must select theright people to interview and ask them the right questions. During thepreliminary investigation, you talked mainly to middle managers ofdepartment heads. Now, during the systems analysis phase, youmight need to interview people from all levels of the organization. Although you can select your interview candidates form theformal organization charts that you reviewed earlier, you also mustconsider any formal structures that exist in the organization. Informalstructures usually are based on interpersonal relationships and candevelop from previous work assignments, physical proximity,unofficial procedures, or personal relationship such as the informalgathering shown in Figure 3-12. In an informal structure, some peoplehave more influence or knowledge than appears on an organizationchart. Your knowledge of the company’s formal and informalstructures helps you determine the people to interview during thesystems analysis phase.

Figure 3-12

Should you interview several people at the same time? Groupinterviews can save time and provide opportunity to observeinteraction among the participants. Group interviews also can presentproblems. One person might dominate the conversation, even whenquestions are addresses specifically to others. Organization level alsocan present a problem, as the presence of upper management in aninterview can prevent lower-level employees from expressingthemselves candidly.

Step 2: Establish Objectives for the Interview

After deciding on the people to interview, you must establishobjectives for the session. First, you should determine the generalareas to discussed, and then list the facts you want to gather. You

Page 54: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

should also try to solicit ideas, suggestions, and opinions during theinterview. The objectives of an interview depend on the role of the personbeing interviewed. Upper-level managers can provide the big pictureand help you to understand the system as whole. Specific detailsabout operations and business processes are best learned from peoplewho actually work with the system on a daily basis. In the early stage of systems analysis, interviews usually aregeneral. As the fact-finding process continues, however, theinterviews focus more on specific topics. Interview objectives alsovary at different stages of the investigation. By setting specificobjectives, you create a framework that helps you decide whatquestions to ask and how to phrase the questions.

Step 3: Develop Interview Questions

Creating a standard list of interview questions helps keep youon track and avoid unnecessary tangents. Also, if you interviewseveral people who perform the same job, a standard question listallows you to compare their answers to the same questions. Althoughyou have a list of specific questions, you might decide to depart fromit because an answer to one question leads to another topic that youwant to pursue. That question or topic then should be included in arevised set of questions used to conduct future interviews. If thequestion proves to be extremely important, you may need to return toa previous interviewee to query hi or her on the topic. The interview should consist of several different kinds ofquestions: open-ended, closed-ended, or questions with a range ofresponses. When you phrase your questions, you should avoid leadingquestions that suggest or favor a particular reply. For example, ratherthan asking, “What advantages do you see in the proposed system?”you might ask, “Do you see an advantages in the proposed system?

OPEN-ENDED QUESTIONS

Open-ended questions encourage spontaneous andunstructured responses. Such as questions are useful when you wantto understand a larger process or draw out the interviewee’s opinions,attitudes, or suggestions. Here are some examples of open-endedquestions: Is the system operating properly? How are the checks

Page 55: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

reconciled? What added features would you like to have in the newbilling system?

CLOSED-ENDED QUESTIONS

Closed-ended questions limit or restrict the response. You useclosed-ended questions when you want information that is morespecific or when you need to verify facts. Examples of closed-endedquestions include the following: How many personal computers do youhave in this department? DO you review the reports before they aresent out? How many hours of training does a clerk receive? Is thecalculation procedure describes in the manual? How many customersordered products from the Web site last month?

RANGE-OF-RESPONSE QUESTION

Range-of-response questions are closed-ended questions thatask the person to evaluate something by providing limited answers tospecific responses or on a numeric scale. This method makes it easierto tabulate the answers and interpret the results. Range-of-responsequestions might include these: On scale of 1 to 10, with 1 of thelowest and 10 the highest, how effective was your training? Howwould you rate the severity of the problem: low, medium, or high? Isthe system shutdown something that occurs never, sometimes, often,usually, or always?

Step 4: Prepare for the Interview

After setting the objectives and developing the questions, youmust prepare for the interview. Careful preparation is essentialbecause this is an important meeting and not just a casual chat.Schedule a specific day and time for the meeting and place areminder call to confirm the meeting. Remember that interview is aninterruption of the other person’s routine. Business pressures mightforce a postponement of the meeting; when that occurs, you shouldschedule another appointment as soon as it is convenient for both ofyou. Remember to keep department managers informed of yourmeetings with their staff members. Sending a message to eachdepartment manager listing your planned appointments is a good wayto keep them informed. Figure 3-13 is an example of such a message.

Page 56: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Figure 3-13

You should send a list of essential questions to an interviewee severaldays before the meeting, especially when detailed information isneeded, so the person can prepare for the interview and minimize theneed for a follow-up meeting Figure 3-14 shows a sample memo thatlists the primary interview questions, and confirms the date, time,location, and purpose of the interview. If you have questions about documents, ask the interviewee tohave samples available at the meeting. Your advance memo shouldinclude a list of the documents you want to discuss, if you know whatthey are. Otherwise, you can make a general request for documents,as the analyst did in her memo shown in Figure 3-14. The two schools of thought exist about the best location for aninterview. Some analysts believe that interviews should take place inthe interviewee’s office, whereas other analysts feel that a neutrallocation such as a conference room is better. Supporters of interviews in the interviewee’s office believe thatis the best location because it makes the interviewee feel comfortableduring the meeting. A second argument in favor of the interviewee’soffice is that the office is where he or she has the easiest access tosupporting material that might be needed during the discussion. Ifyou provide a complete list of topics in advance, however, theinterviewee can bring the necessary items to a conference room orother location. Supporters of neutral locations stress the importance of keepinginterruption to a minimum so both people can concentrate fully. Inaddition, an interview that is free of interruptions takes less time thatall calls be held until the conclusion of the interview.

Figure 3-14

Step 5: Conduct the Interview

After determining the people to interview, setting yourobjectives, and preparing the questions, you should develop a specificplan for the meeting. When conducting an interview, you should beginby introducing yourself, describing the project, and explaining yourinterview objectives.

Page 57: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

During the interview, ask questions in order in which youprepare them, and give the interviewee sufficient time to providethoughtful answers. Establish a good rapport with the interviewee is important,especially if this is your first meeting. If the other person feelscomfortable and at ease, you probably will receive more complete andcandid answers. Your primary responsibility during an interview is tolisten carefully to the answers. Analysts sometimes hear only whatthey expect to hear. You must concentrate on what is said and noticeany nonverbal communication that takes place. This process is calledengaged listening. After asking a question, allow the person enough time to thinkabout the questions and arrive at an answer. Studies have shown thatthe maximum pause during a conversation is usually three to fiveseconds. After that interval, one person will begin to talking. You willneed to be patient and practice your skills in many actual interviewsituations to be successful. When you finish asking your questions, summarize the mainpoints covered in the interview and explain the next course of action.For example, mention that you will send a follow-up memo or that theinterviewee should get back to you with certain information. Whenyou conclude the interview, thank the person and encourage him orher to contact you with any questions or additional comments. After an interview, you should summarize the session and seeka confirmation from the other person. By stating your understandingof the discussion, the interviewee can respond and correct you, ifnecessary. One good approach is to rephrase the interviewee’sanswers by saying, “If I understand you correctly, you are saying that…”

Step 6: Document the Interview

Although taking notes during an interview has both advantagesand disadvantages, the accepted view is the note taking should bekept a minimum. Although you should write down a few notes to jogyour memory after the interview, you should avoid writing everythingthat is said. Too much writing distracts the other person and makes itharder to establish a good rapport. After conducting the interview, you must record the informationquickly. You should set aside time right after the meeting to recordthe facts and evaluate the information. For that reason, try not to

Page 58: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

schedule back-to-back interviews. Studies have shown that 50percent of a conversation is forgotten within 30 minutes. Therefore,you should use your notes to record the facts immediately so you willnot forget them. You can summarize the facts by preparing anarrative describing what took place or by recording the answers youreceived next to each question on your prepared question.Tape recorders are effective tools for an interview, however, manypeople feel uncomfortable when recorders are present. Before using arecorder, you should discuss its use with the interviewee. Assure theinterviewee that you will erase the tape after you transcribe you notesand that you will stop and rewind the tape anytime during theinterview at his request. If you ask sensitive questions or theinterviewee wants to answer a question without being recorded. Even with a tape recorder in use, you should listen carefully tothe interviewee’s responses so you can ask good follow -up questions.Otherwise, you might have to return for a second visit to ask thequestions you missed the first time. Also, remember that eachrecorded interview takes twice the amount of time, because you mustlisten to or view the recorded meeting again after conducting theinterview itself. After the interview, send a memo to the interviewee expressingyour appreciation for his or her time and cooperation. In the memo,you should note the date, time, location, purpose o the interview, andthe main points you discussed so the interviewee has a writtensummary and can offer additions or corrections.

Step 7: Evaluate the Interview

In addition to recording the facts obtained in an interview, try toidentify any possible biases. For example, an interviewee who tries toprotect his or her own area or function might give incomplete answersor refrain from volunteering information. Or an interviewee withstrong opinions about the current or future system might distort thefacts. Some interviewees might answer your questions in n attempt tobe helpful although they do not have the necessary experience toprovide accurate information.

OTHER FACT-FINDING TECHNIQUES

In addition to interviewing, systems analysts use otherfact-finding techniques, including document review, observation,

Page 59: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

surveys and questionnaires, sampling, and research. Such techniquesare used before interviewing begins to obtains a good overview, andto help develop better interview questions.

Document Review

Document Review can help you understand how the currentsystem is supposed to work. Remember that system documentation issometimes out of date. Forms can change to be discontinued, anddocumented procedures often are modified or eliminated.. You shouldobtain copies of actual forms and operating documents currently inuse. You should review blank copies of forms, aw well as samples ofactual completed forms. You usually can obtain document samplesduring interviews with the people who perform that procedure. If thesystem uses a software package, you should review thedocumentation of that software.

Observation

The observation of current operating procedures is anotherfact-finding technique. Seeing the system in action gives youadditional perspective and a better understanding of systemprocedures. Personal observation also allows you to verify statementsmade in interviews and determine whether procedures really operateas they are described. Through observation, you might discover thatneither the system documentation nor the interview statements areaccurate. Personal observation also can provide important advantages asthe development process continues. For example, recommendationsoften are better accepted when they are based on personalobservation of actual operations. Observation also can provide theknowledge needed to test or install future changes and can help buildrelationship with the users who will work with the new system. Plan observations in advance by preparing a checklist of specifictasks you want to observe and questions you want to ask. Considerthe following issues when you prepare your list:

1. Ask sufficient questions to ensure that you have a completeunderstanding of the present system operation. A primary goalis to identify the methods of handling situations that are notcovered by standard operating procedures. For example, what

Page 60: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

happens in a payroll system if an employee loses a time card?What is the procedure if an employee starts a shift 5 minuteslate but then works 10 minutes overtime? Often, the rules forexception such as these are not written or formalized.Therefore, you must try to document any procedures forhandling exceptions.

2. Observe all the steps in a transaction and note the documents,inputs, output, and process involved.

3. Examine each form, record. Determine the purpose each item ofinformation serves.

4. Consider each user who works with the system and thefollowing questions: What information does that person receivefrom the people? What information does this person generate?How is the information communicated? How often dointerruptions occur? How much downtime occurs? How muchsupport does the user require, and who provides it?

5. Talk to the people who receive current reports to see whetherthe reports are complete, timely, accurate, and in a useful form.Ask whether information can be eliminated or improvedadditional information.

As you observe people at work, as shown in Figure 3-15, remainaware of a factor called the Hawthorne Effect. The namecomes from a study performed in the Hawthorne plant of theWestern Electric Company in the 1920s. The purpose of thestudy was to determine how various changes in the workenvironment affect employee productivity. The surprising resultwas that productivity conditions were made better or worse.Researchers concluded that productivity seemed to improvewhenever the workers knew they were being observed.

Figure 3-15

Thus, as you observe users, remember that normaloperations might not always run as smoothly as yourobservations indicate. Operations also might run less smoothlybecause workers night be nervous during the observation. Ifpossible, meet with workers and their supervisors to discussyour plans and objectives to help establish a good workingrelationship. In some situations, you might even participate in

Page 61: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

the work yourself to gain a personal understanding of the taskor the environment.

Questionnaires and SurveysIn systems development projects where it is desirable to

obtain input from a large number of people, a questionnaire canbe a valuable tool. A questionnaire , also called survey, is adocument containing a number of standard questions that canbe sent to many individuals. Questionnaires are used to obtain information aboutworkloads, reports received, volumes of transactions handled,types of job duties, difficulties, and opinions of how the jobcould be performed better or more efficiently. Figure 3-16 showsa sample questionnaire that includes several different questionand response formats. A typical questionnaire starts with a heading, whichincludes a title, a brief statement of purpose, the named andtelephone number of the contact person, the deadline date forcompletion, and how and where to return the form. The headingusually is followed by general instructions that provide clearguidance on how to answer the questions. Headings also areused to introduce each main section or portion of the survey andinclude instructions when the type of question or responsechanges. Along questionnaire might end with a conclusion thatthanks the participants and reminds then how to return theform.

Figure 3-16

What about the issue of anonymity? Should people beasked to sign the questionnaire or is it better to allowanonymous responses? The answer depends on two questions.First, does an analyst really need to know who the respondentsare in order to match or correlate information? For example, itmight be important to know what percentage of users need acertain software feature, but specific user names might not berelevant. Second, does the questionnaire include any sensitiveor controversial topics? Many people do not want to be identifiedwhen answering a question such as “How well has yoursupervisor explained the system to you?” In such cases,anonymous responses might provide better information.

Page 62: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

When designing a questionnaire, the most important ruleof all is to make sure that your questions collect the right datain a form that you can use to further your fact-finding. ‘Here aresome additional ides to keep in mind when designing ourquestionnaire:

Keep the questionnaire brief and user-friendly.Provide clear instructions that will answer all anticipatedquestions.Arrange the questions in a logical order, going from easyto more complex topics.Phrase questions to avoid misunderstanding; use simpleterms and wording.Try not to lead the response or use questions that giveclues to expected answers.Limit the use of open-ended questions that are difficult totabulate.Limit the use of questions that can raise concerns aboutjob security or other negative issues.Include a section at the end of the questionnaire forgeneral comments.Test the questionnaire whenever possible on a small testgroup before finalizing it and distributing to a large group.

Figure 3-17

Instead of using a paper form for your questionnaire, you can create afill-in form and collect data on the Internet or a company intranet. Forexample, you can use Microsoft Word (as shown in Figure 3-17 ) tocreate several types of form fields such as text boxes, check boxes,and dropdown lists where users can slick selections. Before youpublish the form, you should protect it so that user can fill it in butcannot change the layout or design. Forms also can be automated, sothat if a user answers no to question three, he or she goes directly toquestion eight, where the form-filing resumes.

Sampling

When studying an information system, you should collectexamples of actual documents using a process called sampling. Thesamples might include records, reports, operational logs, data entry

Page 63: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

documents, complaint summaries, work requests, an various types offorms. Sampling techniques include systematic sampling, stratifiedsampling, and random sampling. Suppose you have a list 200 customers who complained abouterrors n their statements, and you want to review a representativesample of 20 customers. A systematic sample would select everytenth customer for review. If you want to ensure that the sample isbalanced geographically, however, you could use a stratified sampleto select a certain percentage of transaction from each work shift,rather than fixed number. Finally, a random sample selects any 20customers. The main objective of a sample is to ensure that it representsthe overall population accurately. If you are analyzing inventorytransactions, for example, you should select a sample of transactionsthat are typical of actual inventory operations and don not includeunusual or unrelated examples. For instance, if a company performsspecial processing on the last business day of the month, that day isnot a good time to sample typical daily operations. You also should consider sampling when using interviews orquestionnaires. Rather that interviewing everyone or sending aquestionnaire to the entire group, you can use a sample ofparticipants you must use sound sampling techniques to reflect theoverall population and obtain an accurate picture.

Research

Research is another important fact-finding technique. Yourresearch can include reviewing journals, periodicals, and books toobtain background information, technical material, and news aboutindustry trends and development. The Internet is an extremely valuable research tool. Most majorhardware and software vendors maintain sites on the Web where youcan obtain information about products services offered by thecompany and send e-mail with specific questions to companyrepresentatives. In addition to contracting specific firms, you can access Websites maintained by publishers and independent firms that providelinks to hundreds of hardware and software vendors, as shown inFigure 3-18. Such sites are one-stop information centers where ITprofessionals can find information, share ideas, and keep posted ondevelopments in technology.

Page 64: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Figure 3-18

Using the Internet, you also can access information from federal andstate governments, as well as from publishers, universities, andlibraries around the world. Finally, newsgroups are good resourcesfor exchanging information with other professionals, seeking answersto questions, and monitoring discussions that are of interest to you. Inaddition to electronic research, you can attend professional meetings,seminars, and discussions with other IT professionals, which can bevery helpful in solving. Research also can involve site visits, where the objective is toobserve a system in use at another location. If you area studying yourfirm’s human resources information system, for example, you mightwant to see how another company’s system works. Site visits also areimportant when considering the purchase of a software package. Ifthe software vendor suggests possible sites to visit, be aware thatsuch sites might constitute a biased sample. A single site visit seldomgives you true pictures, so should try to visit more than oneinstallation. Before a site visit, prepare just as you would for an interview.Contact the appropriate manager and explain the purpose of yourvisit. Decide what questions you will ask and what problems orlimitations. You also will want to learn about the support provided bythe vendor, the quality of the system documentation, and so on.

Interviews vs. Questionnaires

When you must ask series of identical questions to manyindividuals, a questionnaire is very useful. On the other hand, if yourequire information from only one a few people, then you probablyshould interview each person individually. Is it better to interview oruse a questionnaire? What about situations that do not fall neatly intoeither category? The interview is more familiar and personal than aquestionnaire. People who are unwilling to put critical or controversialcomments in writing might talk more freely in person. Moreover,during a face-to-face interview, you can react immediately toanything the interviewee says. If surprising or confusing statementsare made, you can pursue the topic with additional questions. Inaddition, during a personal interview, you can watch for clues to help

Page 65: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

you determine if responses are knowledgeable and unbiased.Participation in an interview can contribute to improved humanrelations as well, because people who are asked for their opinionsoften view the project more favorably.

Interviewing, however, is a costly and time-consuming process.In addition to the meeting itself, both people must prepare and theinterviewer has to do follow-up work. When a number of interviewsare planned, the total cost can be quite substantial. The personalinterview usually is the most expensive fact-finding technique.

In contrast, a questionnaire gives many people the opportunityto provide input and suggestions. Questionnaire recipients can answerthe questions at their convenience and do not have to set aside ablock of time for an interview. If the questionnaire allows anonymousresponses, people might offer more candid responses than they wouldin an interview.

Preparing a good questionnaire, however, like good interview,requires skill and time. If a question is misinterpreted, you cannotclarify the meaning as you can in face-to-face interview. Furthermore,unless questionnaires are designed well, recipients might view themas intrusive, time-consuming, and impersonal. As an analyst, youshould select the technique that will work best in particular situation.

Data and Process Modeling

Phase 2: Systems Analysis

CHAPTER 4Structured analysis describes a system in terms of its input,

output, data, and processes. During structured analysis, systemsanalysis use data and process modeling to show how systemprocesses transform data into useful information. The end product ofstructured analysis is a logical model, which also is called a businessmodel because it must support business operations and meet theneeds of managers and users. A logical model shows what the systemmust do, regardless of how it will be accomplished physically. Later, inthe systems design phase, the analyst builds a set of physical modelsthat describe how the system will function.

Page 66: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Structures analysis involves three main tools: data flow diagrams, adata dictionary, and process description. Systems analysts also useCASE tools to develop data process models and document the systemdesign.

OBJECTIVESWhen you finish this chapter, you will be able to:

Describe data and processing modeling concepts andtools

Explain how structured analysis describes an informationsystem

Describe the symbols used in data flow diagrams andexplain the rules for their use

Explain the sequence of dataflow diagrams, from generalto specific

Explain how to level and balance a set of dataflowdiagrams

Draw a complete set of data flow diagrams for aninformational system

Describe how a data dictionary is used and what itcontains

Use process description tools, including structuredEnglish, decision tables, and decision trees

Explain the interaction among data flow diagrams, thedata dictionary, and process description

Describe the relationship between logical and physicalmodels

This is the second of four chapters in the systems analysisphase. It explains how to represent system data and processesgraphically.

Page 67: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

INTRODUCTION

During the requirements modeling process described in Chapter3, you used fact-finding techniques to gather and record data aboutthe current system and user requirements. Now, in Chapters 4 and 5,you will learn about the next steps in the systems analysis phase. Youwill use structured analysis and objected-oriented techniques todocument the system requirements, analyze them, and develop alogical model of the system that you present to management. In thefinal stage of systems analysis, explained in Chapter 6, you will learnhow to evaluate various developments alternatives, develop thesystem requirements proposal, and prepare for the systems designphase.

DATA FLOW DIAGRAMS

In the Systems Analyst’s Toolkit, you learn how to use visualaids to help explain a concept, as shown in Figure 4-1. During thesystems analysis phase, you learn to create a visual model of theinformation system using a set of data flow diagrams. A data flow diagram (DFD) shows how data moves through aninformation system but does not show program logic or processingsteps. DFD represent a logical model that shows what the systemdoes, not how it does. That distinction is important because focusingon implementation issues at this point would restrict your search forthe most effective system design.

Figure 4-1

DFD Symbol

DFDs use four basic symbols that represent processes, dataflows, data stores, and external entities. Several different versions ofDFD symbols exist, but they all serve the same purpose. This textuses a popular version called the Gane and Sarson symbol set is theYourdon symbol set. Figure 4-2 shows examples of both versions.Symbols are referenced in the text using all capital letters for thesymbol name.

Figure 4-2

Page 68: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

PROCESSING SYMBOL

A process receives input data and produces output that has adifferent content, form, or both. For instance, the process forcalculating pay uses two inputs (pay rate and hours worked) toproduce one output (total pay). Process can be very simple or quitecomplex. In a typical company, processes might include calculatingsales trends, filling online insurance claims, ordering inventory from asupplier’s system, or verifying e-mail addresses for Web costumers.Processes contain the business logic, also called business rulesthat transform the data and produce the required results. The symbol for the process is a rectangle with rounded corners.The name of the process appears inside the rectangle. The processname identifies a specific function and consists of a verb (and anadjective, if necessary) fallowed by a singular noun. Examples of theprocess are APPLY RENT PAYMENT, CALCULATE COMMISSION, ASSIGNFINAL GRADE, VERIFY ORDER and FILL ORDER.

Processing details are not shown in a DFD. For example, youmight have a process named DEPOSIT PAYMENT. The process symboldoes not reveal the business logic for the DEPOSIT PAYMENT. Todocument the logic, you create a process description, which isexplained later in this chapter. In DFDs, a process appears as a black box, where the inputs,outputs, and general function of the process are known, but theunderlying details are not shown. A black box approach shows aninformation system in a series of increasingly detailed pictures. Youuse that technique to zoom in and explode each process withoutconfusing the overall view of the system.

DATA FLOW SYMBOL

A data flow is a path for data to move from one path of theinformation system to another. A data flow in a DFD represents one ormore data items. For example, a data flow could represent a singledata item (such as student ID number) or it could represent a set ofdata (such as class roster with student ID number, names andregistration dates for a specific class). The diagram does not show thestructure and detailed contents of a data flow. Those elements aredefined in a data dictionary, which is described later in this chapter.

Page 69: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

The symbol for a data flow is a line with a single or doublearrowhead. The data flow name appears above, below, or alongsidethe line. A data flow name consists of a singular noun and anadjective, if needed. Examples of data flow names are DEPOSIT,INVOICE PAYMENT, STUDENT GRADE, ORDER and COMMISION.Exceptions to the singular name rule are data flow names, such asGRADING PARAMETERS, where a singular name could mislead youinto thinking a singular parameter or singular item of data exists. Figure 4-3 shows typical examples of data flow and processsymbol Iconnections. Because a process changes data from one formto another, at least one data flow must enter and one data flow mustexit each process symbol, as they do in the CREATE INVOICE process.A process symbol can have more than one outgoing data flow, asshown in the GRADE STUDENT WORK process, or more than oneincoming data flow, as shown in the CALCULATE GROSS PAY process.A process also can connect to any other symbol, including anotherprocess symbol, as shown by the connection between VERIFY ORDERand ASSEMBLE ORDER in Figure 4-3. Therefore, a data flow musthave a process symbol on at least one end.

Figure 4-3

Figure 4-4 shows three data flow and process combination thatyou must avoid. The APPLY INSURANCE PREMIUM process, forinstance, has no input data flow. Because it has no input, the processis called a spontaneous generation process. The CALCULATEGROSS PAY is a black hole process, which is a process that has nooutput. A gray hole is a process that has at least one input and oneoutput, but the input obviously is insufficient to generate the outputshown. For example, a date of birth input is not sufficient to produce afinal grade output in the CALCULATE GRADE process.

Figure 4-4

Spontaneous generation, black holes, and gray holes arelogically not possible in a DFD because a process must act on input,shown by an incoming data flow, and produce output represented byoutgoing data flow.

DATA STORE SYMBOL

Page 70: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

A data store, or a data repository, is used in a DFD torepresent a situation in which the system must retain data becauseone or more processes need to use the stored data at a later time. Forinstance, instructor needs to store students score on tests andassignments during the semester so they can assign final grades atthe end of the term. In a payroll example, you store employee salaryand deduction data during the year so you can report total earningsand withholdings at the end of the year. The DFD does not show thedetailed contents of a data store; the specific structure and dataelements are defined in the data dictionary (which we discuss laterthis chapter). The physical characteristics of the data store are because youare concerned with a logical model. Also, the length of time that thedata is stored is unimportant— it can be a matter of seconds while atransaction is processes or a period of months while data isaccumulated for year-end processing. What is important is that aprocess needs access to the data at some later this time. In DFD, the Gane and Sarson symbol for a data store is a flatrectangle that is open on the right side and close on the left side. Thename of the data store appears between the lines and identifies thedata it contains. A data store name is a plural name consisting of anoun and adjectives, if needed. Examples of a data store names areSTUDENTS, ACCOUNTS RECEIVABLE, PRODUCTS, DAILY PAYMENTS,PURCHASE ORDER, OUTSTANDING CHECKS, INSURANCE POLICIES,and EMPLOYEES. Exceptions to the plural name rule are collectivenouns that represent multiple occurrence of object. For example,GRADEBOOK represents a group of students and their scores. A data store must be connected to a process with a data flow.Figure 4-5 illustrates typical examples of data stores. In each case,the data store has at least one incoming and one outgoing data flowand is connected to a process symbol with a data flow.

Figure 4-5

Violations of the rule that a data store must have at least oneincoming and one outgoing data flow are shown in Figure 4-6. In thefirst example, two data stores are connected incorrectly (with-out aprocess in between them and missing an incoming data flow on oneand the outgoing data flow on the other), and in the second and thirdexamples, the data stores lack either an outgoing or incoming dataflow.

Page 71: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Figure 4-6

EXTERNAL ENTITY SYMBOL

An external entity is a person, department, outside organization,or other information that provides data to the system or receivesoutput from the system. The symbol for an entity is a rectangle,which usually is shaded to make it look three-dimensional. The nameof the external entity appears inside the square. External entities show the boundaries of the information systemand how the information system interacts with the outside world. Forexample, a customer submitting an order is an external entitybecause the customer supplies data to the order system. Otherexamples of external entities include a patient who supplies medicaldata, a homeowner who receives a property tax bill, a warehouse thatsupplies a list of items in stock, and an accounts payable system thatreceives data from the company’s purchasing system. External entities also are called terminators, because they aredata origins or final destinations. Systems analysts call an externalentity that supplies data to the system a source, and an externalentity that receives data from the system a sink. An external entityname is the singular form of a department, outside organization,other information system, or person. Examples of external entitynames are CUSTOMER, STUDENT, EMPLOYEE, MEMBER, SALES REP,WAREHOUSE, INTERNAL REVENUE SERVICE, PAYROLL SYSTEM, andGENERAL LEDGER SYSTEM. An external entity might be a source or asink or both, as shown in Figure 4-7. An external entity must beconnected to a process by data flow. Figure 4-8 shows violation of thisrule.

Figure 4-7

Figure 4-8

With an understanding of the proper use of DFD symbols, youare ready to construct diagrams that use these symbols. Figure 4-9shows a summary of the rules for using DFD symbols.

Figure 4-9

Page 72: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Context Diagrams

During requirements modeling, you used interviews,questionnaires, and other techniques to gather facts about thesystem, and you learned how the various people, departments, data,and process fit together to support business operations. Now you areready to create a graphical model of the information system based onyour fact-finding results. To learn how to construct DFDs, you will use examples of theseinformation systems. The simplest example is grading system thatinstructors use to assign final grades based on the scores the studentsreceive during the term. The second example is an order system thata company uses to enter orders and apply payments against acustomer’s balance. The third example is a manufacturing system thathandles a company’s production. The first step in constructing a set of DFDS is to draw a contextdiagram. A context diagram is a top-level view of an informationsystem that shoes the system’s boundaries and scope. To draw acontext diagram, you start by placing a single process symbol In thecenter of the page. The symbol represents the entire around theperimeter of the page and use data flows to connect the entities tothe central process. You do not show any data stores in a contextdiagram because data scores are internal to the system. How do you know what external entities and data flows to placein the context diagram? You begin by reviewing the systemrequirements to identify all external data sources and destinations.During that process, you record the name of the external entities, thename and content of the data flows, and the direction of the dataflow. If you do that carefully, and you did a good job of fact-finding inthe previous stage, you should have no difficulty drawing the contextdiagram. Figure 4-10 shows the context diagram for the grading system.The GRADING SYSTEM process is at the center of the diagram. Thethree external entities (STUDENTS RECORDS SYSTEM, STUDENT, andINSTRUCTOR0 are placed around the external entities involves sixdifferent data flows. The STUDENT RECORDS SYSTEM external entitysupplies data through the CLASS ROSTER data flow. The STUDENTexternal entity supplies data through the SUBMITTED WORK data flowand receives data through the GRADED WORK data flow. Finally, theINSTRUCTOR external entity supplies data through the GRADING

Page 73: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

PARAMETERS data flow and receives data through the GRADE REPORTdata flow.

Figure 4-10

The context diagram for an order system is shown in Figure4-11. Notice that the ORDER SYSTEM process is at the center of thediagram and five external entities surround the process. Three of theexternal entities, SALES REP, BANK, and ACCOUNTING, have singleincoming data flows for COMMISION, BANK DEPOSIT, and CASHRECEIPTS ENTRY, respectively. The WAREHOUSE external entity hasone incoming data flow — PICKING LIST — that is, a report thatshows the items ordered and their quantity, location, and sequence topick from the warehouse. The WAREHOUSE external entity has oneoutgoing data flow, COMPLETED ORDER and PAYMENT, and twoincoming data flows, ORDER REJECT NOTICE and INVOICE.

Figure 4-11

The context diagram for the order system more complex than thegrading system because it has two more external entities and threemore data flows. What makes one system more complex than anotheris the number of components, the number of levels, and the degree ofinteraction among its process, external entities, data stores, and dataflows. Figure 4-12 shows context diagram for the manufacturingsystem. The information system supports the company’s entireproduction; it has 13 external entities and 18 data flows.

Figure 4-12

DATA DICTIONARY

A set of DFDs produces a logical model of the system, but the detailswithin those DFDs are documented separately in a data dictionary,which is the second component of structure analysis. A data dictionary, or data repository, is a central storehouse ofinformation about the system’s data. An analyst uses the datadictionary to collect, document, and organize specific facts about thesystem, including the contents of the data flow, data stores, externalentities, and processes. The data dictionary also defines and describes

Page 74: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

all data elements and meaningful combinations of data elements. Adata element, or data item or field, is the smallest piece of datathat has meaning within an information system. Examples of the dataelement are student grade, salary, Social Security number, accountbalance, and company name. Data elements are combined intorecords or data flow or retained in a data store. For example, an autoparts store inventory record might include part number, description,supplier code, minimum and maximum stock levels, cost, and listprice. Figure 4-24 shows a data dictionary and the items that aredefined during structured analysis. Significant relationships existamong these items. Notice that the data stores and data flows arebased on data structures that are composed of data elements. Dataflows are connected to data stores, external entities, and processes.Accurately documenting these relationships in a data dictionary isessential so the data dictionary is consistent with the DFDs.

Figure 4-24

Documenting the Data Elements

You must document every data element in the data dictionary.Dome analyst like to record their notes on forms such as the oneshown in Figure 4-25, which documents a SOCIAL SECURITY NUMBERdata element. Others prefer to enter the information directly into aCASE tool. Several of the DFDs and data dictionary entries thatappear in this chapter were created using a popular CASE tool calledVisible Analyst. Although other CASE tools might use other terms ordisplay the information differently, the objective is the same: toprovide clear, comprehensive information about the data andprocesses that make up the system.

Figure 4-25

In figure 4-26, two sample screens show how the SOCIALSECURITY NUMBER data element might be recorded in the VisibleAnalyst data dictionary.

Figure 4-26

Page 75: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Regardless of the terminology or method, the followingattributes usually are recorded and described in the data dictionary:

Data element name or label. The standard name for the dataelement; it should be meaningful to users.

Alternative name(s). Any name(s) other than the standard dataelement name; these names are called synonyms or aliases. Forexample, if you have a data element named CURRENTBALANCES, CUSTOMER BALANCE, RECEIVABLE BALANCE, orAMOUNT OWED.

Type and length. Type refers to whether the data element containsnumeric, alphabetic, or character values. Length is the maximumnumber of characters for an alphabetic or character data elementor maximum number of digits and number of decimal positionsfor a numeric data element. In addition to text and numeric data,sounds and images also can be stored in digital form. In somesystems, these binary data objects are managed and processedjust as traditional data elements are. For example, an employeerecord might include a digitized photo image of the person.

Output format. The arrangement of the data element when userssee it printed on reports or displayed on the screen. For example,a telephone number that is stored as 9195559999 has an outputformat of (919) 555-9999.

Default value. The value for the data element if a value otherwise idnot entered for it. For example, all new customers might have adefault value of $500 for the CREDIT LIMIT data element.

Prompt, column header, or field caption. The default displayscreen prompt or report column heading when the informationsystem outputs the data element.

Source. The specification for the origination point for the dataelement’s values. The source could be a specific form, adepartment or outside organization, another information system,or the result of a calculation.

Security. Identification for the individual or department that hasaccess or update privileges for each data element. For example,

Page 76: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

only a credit manager has the authority to change a credit limit,while sales reps are authorized to access data in read-only mode.

Responsible user(s). Identification of the user(s) responsible forentering and changing values for the data element.

Acceptable values and data validation. Specification of the dataelement’s domain, which is the set of values permitted for thedata element; these values can be either specifically listed orreferenced in a table, or selected from a specified range ofvalues. You would indicate if a value for the data element isoptional. Some data elements have additional validity rules. Forexample, an employee’s salary must be within the range definedfor the employee’s job classification.

Derivation formula. If the data element’s value is the result of acalculation, then you show the formula for the data element,including significant digits and rounding operations, if any.

Description or comments. Part of the data element’s documentationthat allows you to provide additional definitions, descriptions, ornotes.

Documenting the Data Flows

In addition to documenting each data element, you mustdocument all data flows in the data dictionary. Figure 4-27 on thepage shows a definition for a data flow named COMMISION. Theinformation on the manual form at the top was entered into the CASEtool data dictionary at the bottom of Figure 4-27.

Figure 4-27

Although terms can vary, the typical attributes as follows:

Data flow name or label. The data flow name as it appears on theDFDs.

Alternate name(s). Aliases for DFD data flow name(s).

Description. Describes the data flow and its purpose.

Page 77: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Origin. The DFD beginning, or source, for the data flow; the origincan be process, a data store, or an external entity.

Destination. The DFD ending point(s) for the data flow, thedestination can be a process, a data store, or an external entity.

Record. Each data flow represents a group of related data elementscalled a record or data structure. In the most dictionaries, recordsare defined separately from the data flow and the data stores.When records are defined, more than one data flow or data storecan use the same record, if necessary.

Volume and frequency. Described the data expected number ofoccurrences for the data flow per unit time. For example, if thecompany has 300 employees, a TIME CARD data flow wouldinvolve 300 transactions and records each week, as employeessubmit their work hour data.

Documenting the data stores

You must document every DFD data store on the datadictionary. Figure 4-28 shows the definition of a data store namePRODUCTS. Typical characteristics of a data store are as follows:

Figure 4-28

Data store name and label. The data store name as it appears onthe DFDs.

Alternate name(s). Aliases for the DFD data store name.

Description. Describes the data store and its purpose.

Input data flows. The standard DFD names for the data flowsentering the data store.

Output data flows. The standard DFD names for the data flows leaving the data store.

Page 78: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Record. The record name in the data dictionary for the data store.

Volume and frequency. Describes the estimated number of recordstored in the data store; specifies any growth and changesstatistics for the data store.

Documenting the process

You must document every process, as shown in figure 4-29.Your documentation includes a description of the process’scharacteristics and, for functional primitives, a process description,which is a model that documents the processing steps and thebusiness logic.

Figure 4-29

Following are the typical characteristics of a process:

Process name or label. The process name as it appears on theDFDs.

Purpose or description. A brief statement of the process’s generalpurpose.

Process number. A reference number that identifies the process andindicate relationships among various levels in the systems.

Input data flows. The standard DFD names for the data flowsentering the process.

Output data flows. The standard DFD names for the data flowsleaving the process.

Process description. This section is filled in if the process isfunctional primitive. For functional primitives the processdescription documents the processing steps and business logic.You will learn how to write process description in the nextsection.

Documenting the External Entities

Page 79: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

By documenting all external entities, the data dictionary canserve as a complete documentation package. Figure 4-30 shows adefinition for an entity named WAREHOUSE.

Figure 4-30

Typical characteristics of an external entity include the following:

External entity name. The external name as it appears on the DFDs.

Alternate name(s). Any aliases for the external entity name.

Description. Describe the external entity and its purpose.

Input data flows. The standard DFD names for the input data flowsto the external entity. ‘Output data flow. The standard DFD names forthe data flow leaving the external entity.

Documenting the Records

A record is a data structure that contains a set of related dataelements that are stored and processed together. Data flows and datastores consist of records that you must document in the datadictionary. You define characteristics of each record, as shown inFigure 4-31.

Figure 4-31

Typical characteristics of a record include the following.

Record or data structure name. The record name as it appears inthe related data flow and data store entries in the data dictionary.

Alternative name(s). Any aliases for the record name.

Definition content or composition. A list of all the data elementsinclude in the record. The data element names must march exactlywhat you entered in the data dictionary. Identify any data elementthat will serve as a primary key. A primary key is a data element in arecord that uniquely identifies that record. A primary key can consistof one data element or a combination of two or more data elements.

Page 80: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

The CREDIT STATUS record shown in Figure 4-31, for example, has aprimary key of CUSTOMER NUMBER (PK is used to identify theprimary key), which distinguishes one customer’s record from allother customer records. In a video store, you might need to use aprimary key based on a combination of two fields, such as MOVIENUMBER and COPY NUMBER, to identify each individual tape.

PROCESS DESCRIPTION TOOLS A process description documents the details of a functionalprimitive, which represents a specific set of processing steps andbusiness logic. Using a set of process description tools, you create amodel that is accurate, complete, and concise. Typical processdescription tools include structured English, decision tables, anddecision trees. When you analyze a functional primitive, you break theprocessing steps down into smaller units in a process called modulardictionary.

Figure 4-32

Modular Design Modular design Is Based on combinations of three logicalstructures, sometimes called control structures, which serve asbuilding blocks for the process. Notice that each logical structure hasa single entry and exit point. The three structures are calledsequence, selection, and iteration. A rectangle represents a step orprocess, a diamond shape represents a condition or decision, and thelogic follows the lines in the direction indicated by the arrows.

Figure 4-33Figure 4-34

1. Sequence. The completion of steps in sequential order, oneafter another, as shown if Figure 4-32. One or more of the stepsmight represent a sub process that contains additional logicalstructures.

2. Selection. The completion of one of two or more process stepsbased on the results of a test or condition. In the exampleshown in Figure 4-33 the system tests the input, and if thehours are greater than 40, it performs the CALCULATIVEOVERIME PAY process.

Page 81: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

3. Iteration. The completion of a process step that is repeateduntil a specific condition changes =, as shown in Figure 4-34.An example of iteration is a process that continues to printpaychecks until it reaches the end of the payroll file. Iterationalso is called repetition or looping.

Sequence, selection, and iteration structures can be combined invarious ways to describe processing logic.

Structured English Structured English is a subset of standard English thatdescribe logical process clearly and accurately. When you usestructured English, you must conform to the following rules:

Use only the three building blocks of sequence, selection, anditeration.Use indentation for readability.Use a limited vocabulary, including standard terms used inthe data dictionary and specific words that describe theprocessing rules.

An example of structured English appears in Figure 4-35, whichshows the VERIFY ORDER that was illustrated earlier, structuredEnglish was added to describe the processing logic.

Figure 4-35Figure 4-36

Structured English might look familiar to programming studentsbecause it resembles pseudocode, which is used in program design.Although the techniques are similar, the primary purpose ofstructured English is to describe the underlying business logic, whileprogrammers, who are concerned with coding, mainly use pseudocodeas a shorthand for the actual code. Figure 4-36 shows another example of structured English.Notice that the capitalized words are all terms from the datadictionary to ensure consistency between process description and thedata dictionary. The other terms, such as for, each, if, and output,describe the processing logic. Following these structured English rulesensures that your process descriptions are understandable to userswho must confirm that the process is correct, as well as to other

Page 82: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

analysis and programmers who must design the information systemfrom your descriptions.

Decision Trees A decision trees is a graphical representation of the conditions,actions, and rules found in a decision table. Decision trees show thelogic structure in a horizontal form that resembles a tree with theroots at the left and the branches to the right. Like flowcharts,decision trees are effective ways to present the system tomanagement, as shown in Figure 4-40. Decision trees and decisiontables are considered equivalent, but in different forms—a graphicversus a table.

Figure 4-40

Figure 4-41 shows the same PAY COMMISION conditions andactions. A decision tree is read from left to right, with the conditionsalong the various branches and the actions at the far right. Becausethe example has two conditions with four resulting sets of actions, theexample has four terminating branches at the right side of the tree.

Whether to use decision table or a decision tree of often is amatter of personal preference. A decision table might be a better wayto handle complex combinations of conditions. On the other hand, adecision tree is an effective way to describe a relatively simpleprocess.

Figure 4-41

CHAPTER 5: Object Modeling

INTRODUCTIONIn Chapter 4, you learned how to use structured analysis

techniques to develop a data and process model of the proposedsystem. Now, in Chapter 5, you will learn about object-orientedanalysis, which is another way to view and model the systemrequirements. In this chapter you use object-oriented methods todocument, analyze, and model the information system. In Chapter 6,which concludes the system analysis phase, you will evaluate

Page 83: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

alternatives, develop the system requirements document, learn aboutprototyping, and prepare for the system design phase of the SDLC.

Objectives

When you finish this chapter, you will be able to:

Explain how object-oriented analysis can be used to describe aninformation system.Define object modeling terms and concepts, including objects,attributes, methods, messages, classes, and instancesExplain relationships among objects, including dependency,association, aggregation, and inheritanceDraw an object relationship diagramDescribe Unified Modeling Language (UML) tools andtechniques, including use cases, use case diagrams, classdiagrams, sequence diagrams, state transition diagrams, andactivity diagramsExplain the advantages of using CASE tool in developing theobject modelExplain how to organize the object model

OBJECT-ORIENTED TERMS AND CONCEPTS

Object-oriented analysis describes an information system by identifyingthings called objects. An object represents a real person, place, event, ortransaction. For example, when a patient makes an appointment itself is anobject. Object-oriented analysis is a popular approach that sees a systemfrom the viewpoint of the objects themselves as they function and interactwith the system. The end product of object-oriented analysis is an objectmodel, which represents the information system in terms of objects andobject object-oriented concepts. Later, during the implementation phase ofthe SDLC, systems analysts and programmers transform the objects intoprogram code modules. A modular approach saves money and time, becausethe modules can be optimized, tested, and reused.

Objects

Page 84: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Consider how the UML describes a family with parents and children.The UML represents an object as a rectangle with the object name at the top,followed by the object’s attributes and methods. Figure 5-3 shows a CHILD object with certain attributes such as name,age, sex, and hair color. If the family has three children, there are threeinstances of the CHILD object. A CHILD object performs certain methods,such as picking up toys, eating dinner, and playing with siblings. To signalthe CHILD object to perform those tasks, you send certain messages that theCHILD object could understand. For example, the DINNER READY messagetells a BROTHER/SISTER message tells a CHILD object to cooperate withother CHILD objects.

Figure 5-3

Continuing with the family example, the PARENT object in Figure 5-4posses the same attributes as the CHILD object and an additional attributedefining the parent as a biological, step, or adoptive parent. The PARENTobject also can perform methods, such as reading a bedtime story, drivingthe car pool van, or preparing a school lunch. The message GOOD NIGHTtells the PARENT object to read a bedtime story, while the message DRIVEsignals that it is the PARENT object’s turn to drive the car pool van.

Figure 5-4Figure 5-5

Now consider an example of a fitness center, as shown in Figure 5-6,and the objects that interact with the fitness center’s enrollment system. Atypical fitness center might have students, instructors, fitness-classschedules, and a registration process. STUDENT and INSTRUCTORS objects are shown in Figure 5-7. eachSTUDENT object has the following attributes: student number, name,address, telephone, date of birth, fitness record, and status. In addition, aSTUDENT can add a fitness-class; drop a fitness-class; change ad address,telephone or status; and update his or her fitness record. The INSTRUCTOR object in Figure 5-7 has the following attributes:instructor number, name, address, telephone, fitness-classes taught,availability, private lesson fee, and status. An INSTRUCTOR obmect canteach a fitness-class, and change his or her availability, address, telephone,private lesson fee, or status.

Figure 5-6Figure 5-7

Figure 5-13

Page 85: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

When a method creates a new instance of an object (such as adding anew student, fitness-class, or instructor) it is called a constructor method.A method that changes existing data is called an update method. Forexample, an update changes a student’s address when the CHANGESADDRESS message is received. A query method is any method thatprovides information about an object’s attributes. Just as you can send aquery to a database, a query method called FITNESS-CLASS LISTING createsa list of all students registered in a specific fitness-class.Messages

A message is a command that tells an object to perform a certainmethod. For example, the message ADD directs the STUDENT class to add aSTUDENT instance. The STUDENT class understands that is should add thestudent number, name and other data about that student, as shown inFigure 5-14. Similarly, a message named DELETE tells the STUDENT class todelete a STUDENT instance. The same message to two different objects can produce differentobjects results. The concept that a message gives different meanings todifferent objects is called polymorphism. For example, in Figure 5-15, themessage GOOD NIGHT signals the PARENT object to read a bedtime story,but the same message to the DOG object tells the dog to sleep. The GOODINIGTH message to the CHILD object signals it to request a drink of water ora five-minute reprieve.

Figure 5-14Figure 5-15

You can view an object as a black box, because a message to the objecttriggers changes within the object without specifying how the changes mustbe carried out. A gas pump is an example of a black box. When you selectthe economy grade at a pump, you do not need to think about how the pumpdetermines the correct price and selects the right fuel, as long as it does soproperly. The black box concept is an example of encapsulation, which meansthat all data methods are self-contained. A black box does not want or needoutside interference. By limiting access to internal process, an objectprevents its internal code from being altered by another object or process.Encapsulation allows objects to be used as modular components anywhere inthe system, because objects send and receive messages but do not alter theinternal methods of other objects.Object-oriented designs typically are implemented with object-orientedprogramming languages. A major advantage of O-O designs is that systemsanalysts can save time and avoid errors by using modular objects, andprogrammers can translate the designs into code, working with resultsprogram modules that have been tested and verified. For example, in Figure

Page 86: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

5-16, a specific SALES TRANSACTION object and CUSTOMER class could bereused, with minor modifications, in other sales-oriented systems wheremany of the attributes and methods are similar.

Figure 5-16

Classes An object belongs to a group or category called a class. All objectswithin a class share common attributes and methods. Objects within a classcan be grouped into subclass, which are more specific categories within aclass. For example, TRUCK objects represent a subclass within the VEHICLEclass, along with other subclass called CAR, MINIVAN, and SCHOOL BUS, asshown in Figure 5-17. Notice that all four subclass share common traits ofthe VEHICLE class, such as make, model, year, weight, and color. Eachsubclass also can posses traits that are uncommon, such as a load limit forthe TRUCK or an emergency exit location for the SCHOOL BUS.

Figure 5-17

In the fitness center example shown in Figure 5-18, INSTRUCTORobjects represent a subclass within the EMPLOYEE class. The EMPLOYEE classalso can contain MANAGER and OFFICE STAFF subclasses, because amanager and staff members are employees. All INSTRUCTOR, MANAGER andOFFICE STAFF objects contain similar information (such as employeenumber, name, title, and pay rate) and perform similar tasks (such asgetting hired and changing an address or telephone number). A class can belong to a more general category called a superclass.For example, a NOVEL class belongs to a superclass called BOOK, because allnovels are books. The NOVEL class can have subclasses called HARDCOVERand PAPERBACK. Similarly, as shown in Figure 5-19, the EMPLOYEE classbelong s to the PERSON superclass, because every employee is a person,band the INSTRUCTOR class is a subclass of EMPLOYEE.

RELATIONSHIPS AMONG OBJECTS AND CLASSES

Relationships enable objects to communicate and interact as they performbusiness functions and transactions required by the system. Relationshipsdescribe what objects need to know about each other, how objects, and theeffects of membership in classes, superclasses, and subclasses. Somerelationships are stronger that others (just as a relationship between familymembers is stronger that one between casual acquaintance). Types ofrelationships, from weakest to strongest, include dependency, association,aggregation, and inheritance.

Page 87: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Figure 5-18Figure 5-19

Object Relationship DiagramAfter you identify the objects, classes, and relationships, you are ready

to prepare an object relationship diagram that will provide an overview of thesystem. You will use that model as a gude as you continue to developadditional diagrams and documentation. Figure 5-24 shows an objectrelationship diagram for the fitness center. Notice that the model show theobjects and how they interact to perform business functions andtransactions.

Figure 5-24

CHAPTER 6

Transition to System Design

Chapter 6 is the final chapter in the system analysis phase. In this chapter,you will learn about evaluating software alternatives, preparing the systemrequirements documents, prototyping, and preparing for the transition to thenext SDLC phase—systems design.

INTRODUCTION

The main objective of the systems analysis phase is to build a logicalmodel of the new information system. In Chapter 3, 4 and 5, you learnedabout requirements modeling, data and process modeling, and objectmodeling. Chapter 6 describes the remaining activities in the systemsanalysis phase, which include evaluation of alternative solutions, preparationof the system requirements document to management, and presentation ofthe system requirements document to management. The chapter alsodescribes the transition to systems design, prototyping, design guidelines,and the use of codes.

OBJECTIVES

When you finish this chapter, you will be able to:

Evaluate software alternatives and development strategiesExplain advantages and disadvantages of developing in-housesoftware versus purchasing and customizing a software package

Page 88: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Describe how companies use out-sourcing and user applicationsList the steps in purchasing and evaluating a software packageExplain the different between a request for proposal (REP) and arequest for quotation (RFQ)Describe the system requirements document and the presentation tomanagement at the end of the system analysis phaseExplain the transition from systems analysis to systems design, andthe difference between logical and physical designExplain the importance of prototyping and describe variousprototyping methods, tools, and techniquesDiscuss the systems design process and provide guidelines for systemdesignCreate and use appropriate codes during systems design anddevelopment

EVALUATING SOFTWARE ALTERNATIVES

Earlier in the system analysis phase, you investigated the currentsystem and developed a logical model for the proposed system. Now, as youprepare for the transition to the system design phase, you will examinesoftware alternatives and select an overall strategy for the proposed system. Companies can acquire software by developing an in-house system,buying a commercial software package, or customizing a software package.Although many factors influence this decision, the most importantconsideration is total cost of ownership (TCO), which was explained inChapter 3. The steps in system development are shown in Figure 6-1.

Figure 6-1

The choice between developing in-house software and purchasingsoftware often is called a make or buy, or build or buy decision. Thecompany’s IT department makes, builds, and develops in-house software,whereas a software package is purchased or least from another firm. Thepackage might be a standard commercial program to a customized packagedesigned specifically for the purchaser. Companies that develop software forsale are called software vendors. A firm that enhances a commercialpackage by adding custom features and configuring it for a particularindustry is called a value-added reseller (VAR).

Software packages are available for every type of business activity. Asoftware package that can be used by many different types of organizationsis called a horizontal application. An accounting package is a goodexample of a horizontal application because it can be utilized by manydifferent businesses.

In contrast, a software package developed to handle informationrequirements for a specific type of business is called a vertical application.

Page 89: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

For example, organizations with special system requirements includecolleges, banks, hospitals, insurance companies, real estate firms, andairlines. A hotel chain might use a vertical application for its guestreservation system, as shown in Figure 6-2, and use horizontal applicationsfor basic business needs, and as payroll processing and accounts payable.

Figure 6-2

Of the software acquisition options available — developing in-house,buying a software package, or customizing a software package — each hasadvantages, disadvantages, and cost considerations, as shown in Figure 6-1.Those software acquisition options are describes in detail in the threesections.

Figure 6-3

Developing Software In-HouseWith an enormous variety of software packages available to handle

horizontal and vertical business operations, why would a firm choose todevelop its own software? Typically, companies choose in-house developmentto satisfy unique business requirements, to minimize changes in businessprocedures and policies, to meet constraints of existing systems and existingtechnology, and to develop internal resources and capabilities.

SATISFY UNIQUE BUSINESS REQUIREMENTS

Companies often decide to develop software in-house because nocommercially available software package can meet their unique businessrequirements. A college, for example, needs a course scheduling system,based on curriculum requirements, student demand, classroom space, andavailable instructors. A package delivery company needs a system to identifythe best combination of routes and loading patterns for the company’s fleetof delivery trucks. If existing software packages cannot handle thoserequirements, then in-house developed software might be only choice.

MINIMIZE CHANGES IN BUSINESS PROCEDURES AND POLICIES

A company might choose to develop its own software if availablepackages will require changes in current business operations or processes.While installing a new software package almost always requires some degreeof change in how a company does business, if installation of a purchasepackage will be too disruptive, then the organization might develop its ownsoftware instead.

MEET CONSTRAINTS OF EXISTING SYSTEMS

Page 90: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Any new software installed must work with existing systems. Forexample, if a new budgeting system must interface with an existingaccounting system, finding a software package that works correctly with theexisting accounting system might prove difficult. If so, a company coulddevelop its own software to ensure that the new system will interface withthe old system.

MEET CONSTRAINTS OF EXISTIG TECHNOLOGY

Another reason to develop software in-house is that the new systemmust work with existing hardware and legacy systems. That could require acustom design not commercially available. Some companies have oldermicrocomputer workstations that cannot handle graphics-intensive softwareor high-speed internet access. In that situation, the company either mustupgrade the environment or develop in-house software that can operatewithin the constraints of the existing hardware. As a systems analyst, youaddressed the issue of a technical feasibility during the preliminaryinvestigation. Now, in the systems analysis phase, you must examine theadvantages and disadvantages of in-house software development to decidewhether it is justifiable.

DEVELOP INTERNAL RESOURCES AND CAPABILITIES

Many firms feel that in-house IT resources and capabilities provide acompetitive advantage because they can respond quickly when businessproblems or opportunities arise. By designing a system in-house, companiescan develop and train an IT staff that understands the organization’sbusiness functions and information support needs.

Purchasing a Software Package

During the systems analysis phase, you should investigate whether acommercially available software package could satisfy system requirements.Advantages of purchasing a software package over developing softwarein-house include lower costs, less time to implement, proven reliability andperformance benchmarks, less technical development staff, future upgradesprovided by vendor, and the ability to use other companies who haveimplemented the software as resources.

LOWER COSTS

Because many companies use software packages, software vendors,spread the development costs over many costumers. Compares to software

Page 91: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

development in-house, a software package almost always is less expensive— particularly in terms of initial investment.

LESS TIME TO IMPLEMENT

When you purchase a package, it already has been designed,programmed, tested, and documented. Therefore, the in-house timenormally spent those tasks is eliminated. Of course, you still must install thesoftware and integrate it onto your systems environment which can take asignificant amount of time.

PROVEN RELIABILITY AND PERFORMANCE BENCHMARKS

If the package has been on the market for any length of time, anymajor problems probably have already been detected and corrected by thevendor. If the product is popular, it almost certainly has been rated andevaluated by independent reviewers.

LESS TECHNICAL DEVELOPMENT STAFF

Companies that use commercial software packages often are able toreduce the number of programmers and systems analysts on the IT staff.Using commercial software also means that the IT staff can concentrate onthe systems whose requirements cannot be satisfied by software packages.

FUTURE UPGRADES PROVIDED BY THE VENDOR

Software vendors regularly upgrade software packages by addingimprovements and enhancements to create a new version or release. A newrelease of software package, for example, can include drivers to support anew laser printer or a new type of data storage technology. In many cases,the vendor receives input and suggestions from current users when planningfuture upgrades.

OTHER COMPANIES AS RESOURCES

Using a commercial software package means you can contact users inother companies to get their impressions and input about the softwarepackage. You might be able to try the package or make a site visit toobserve the system in operation before making a purchase decision. If acompany decides to install a new software release, the upgrade must beplanned and coordinate carefully just as with any other system change.Upgrades generally are less expensive than buying the entire package or

Page 92: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

acquiring new software because vendors usually offer a lower price to currentusers. If you have modified the package however, you must make similarmodification for any upgrades that you install later.

Customizing Software Packages

If you do not find a software package that satisfies your specificrequirements, you can develop your own software package or acquire apackage that you can customize to meet your needs. Three was to customizea software package are as follows:

1. You can purchase a basic package that vendors will customize to suityour needs. Many vendors offer basic packages in a standard versionwith add-on components that are configured individually. A vendoroffers options when the standard application will not satisfy allcustomers. A human resources information system is a typicalexample, because each company handles employee compensation andbenefits differently.

2. You can negotiate directly with the software vendor to makeenhancements to meet your needs by paying for the changes.

3. You can purchase the package and make your own modifications. Thatoption is attractive when the product comes close to satisfying yourrequirements and the vendor will not (or cannot) make the requestedchanges. A disadvantage of that approach is that systems analystsand programmers might be unfamiliar with the software and will needtime to learn the package and make the modification correctly.

Additionally, some advantages of purchasing a standard package canbe lost if the product must be customized. If the vendor does thecustomizing, the modified package will cost more, take longer to obtain, andmight be less reliable. Although vendors regularly upgrade their standardsoftware packages, they might not upgrade a customized version. Inaddition, if the modifications are done by the company purchasing thesoftware, when a new release of the package becomes available, thecompany might have to modify the new version.

Other Software Alternatives

Thus far, we have discussed three primary software alternatives:developing in-house software, buying a software package, and customizing asoftware package. Other possibilities include using an application serviceprovider, outsourcing, and developing end-user applications.

APPLICATION SERVICE PROVIDERS

Page 93: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

A new category of software supplier is the application serviceprovider (ASP). An ASP delivers applications, or access to applications, bycharging a usage or subscription fee. An ASP provides more than a license touse the software; it rents an operational package to the customer. If acompany uses an ASP to supply a transaction processing package, forexample, the company does not have to design, develop, implement, andmaintain the package. The service that the Asp provides is calledapplication hosting. As shown in Figure 6-4 on the next page, Microsoftbelieves that software as a service represents a new model for hostingcommerce, business, and knowledge management application services. ASPs represent a growing trend, with the Internet serving as a logicaland popular delivery channel. Many large firms, such as SAP have enteredthe ASP marketplace by offering application on a rental basis, as reported inthe INFOWORLD magazine article shown in Figure 6-4.

Figure 6-4

OUTSOURCING

Outsourcing is the use of outside companies called servicingproviders to work and handle a portion of a company’s IT workload on atemporary or long-term basis. Like ASPs, outsourcing also is a popular trend,as shown In Figure 6-5. Many firms outsource IT work as a way of controllingcosts and dealing with rapid technological change. According to an estimatein the January 17, 200, issue of INFOWORLD, companies report outsourcingsavings of 20 to 40 percent compared with performing the same servicesin-house. Service providers usually concentrate on specific functions such ashardware, software and network support, or business services such aspayroll processing and billing.

Outsourcing can be especially attractive to a company whose volumefluctuates widely, such as a defense contractor. In some situations, acompany outsources application development or customization tasks to an ITconsulting firm if the company lacks time or expertise to handle the work onits own. Outsourcing relieves the company of the responsibility of adding ITstaff in busy times and downsizing when the workload lightens. Outsourcing also involves some concerns. A company must turn overinternal data to an external service provider to maintain quality. In addition,as the author of the INFOWORLD article shown in Figure 6-5 points out, acompany must plan outsourcing carefully to avoid lost revenue, addedexpenses, and potential litigation. Companies often require additional programmer, systems analysts,and other technical personnel to handle peak workloads on a short-termbasis. Rather than extra staff, companies can get assistance from a contractpersonnel firm, which supplies technical help for a specific period of time at

Page 94: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

a set rate. A company also might turn a contract personnel firm, or an ITconsultant, when it needs people with specialized skills or knowledge for ashort-term project. Outsourcing strategies can include everything from a temporaryarrangement with a payroll service to a long-term contract with a systemsmanagement or facilities management firm that provides IT support foran entire operation. A major disadvantage of outsourcing is that it raisesemployee concerns about job security. Talented people usually preferposition where the firm is committed to in-house IT development.

USER APPLICATIONS

Business requirements sometimes can be fulfilled by user application,rather than a formal information system or commercial package. Userapplications utilize standard business software, such as Microsoft Office200, which has been configured in a specific manner to enhance userproductivity. For example, to help a sales rep respond rapidly to customerprice requests, an IT support person can set up a form letter with links to aspreadsheet that calculates incentives and discounts. In addition toconfiguring the software, the IT staff can create a user interface, whichincludes screens, commands, controls, and features that enables users tointeract more effectively with the application. User interface design isdescribed in Chapter 7. In some situations, user applications offer a simple, low-cost solution.Most IT departments have a backlog of projects, and IT solutions forindividuals or small groups do not always receive a high priority. At the sametime, application software is more powerful, flexible, and user-friendly thanever. Companies such as Microsoft and Corel offer software suites andintegrated applications that can exchange data with programs that includetutorials. Wizards, and Help features to guide less experienced users whoknow what they need to do but do not know how to make it happen. Many companies empower lower-level employees by providing moreaccess data and more powerful data management tools. Empowerment alsomakes the IT department more productive because it can spend less timeresponding to the daily concerns of users and more time on high-impactsystems development projects that support strategic business goals. In mostlarge and medium-sized companies, a help desk or information center(IC), within the IT department is responsible for supporting users. The ICstaff provides hotline assistance, training, and guidance to users who needsupport. Once they learn an application, many users can perform tasks thatonce required a programmer. Some user applications have powerful screen

Page 95: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

generators and report writer that allow users to design their own data entryforms and reports. For example, as shown in Figure 6-6, Microsoft Accessincludes Form Wizard and Report Wizard tools that ask a series of questions,and then create the form or report. Those design tools allow users to designspecific input and output views that meet their operational needs — with littleor no assistance required from the IT staff. Users typically require spreadsheets, database managementprograms, and other software packages to meet their information needs. Ifuser applications access corporate data, you must provide appropriatecontrols data security and integrity. For example, some files are usuallyrestrict user applications to PC-based systems within a user’s department.

Selecting a Software Alternative

The company must decide whether to develop the software in-house,customize a software package, purchase a software package, or select somecombination of these solutions. The decision affects the remaining SDLCphases and your involvement as a systems analyst. The decision to developsoftware in-house, for example, can require more participation from thesystems analyst than choosing a commercial package. Management usuallymakes a determination after you present your written recommendation anddeliver a formal presentation, which is described later in the chapter. Figure6-7 illustrates how system analysts are involved in various softwarealternatives. If management decides to develop the system in-house, the systemsdesign phase of the SDLC can begin. During systems design, described inChapters 7, 8, and 9, you will develop the physical design for the system. If the management decide to buy a software package, you will performa series of five steps evaluate the information system requirements, identifypotential software vendors, evaluate software package alternatives, makethe purchase, and install the software package. These steps are described indetail in the next section.

Figure 6-7

If management decides to customize a software package, you willfollow the same five steps described in buying package, with one majordifference. Because your system will require additional features orcapabilities, you must design the specific changes, just as you would for anin-house developed project. So even though you are purchasing a package,you also must work through the systems design phase of the SDLC to designthe modifications. Customizing a software package requires a combination oftasks, because you are purchasing and redesigning an essential part of thesystem.

Page 96: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

STEPS IN EVALUATING AND PURCAHSING SOFTWARE PACKAGES

Step1: Evaluate the Information System Requirements

Based on your analysis of the system requirements, you must identifythe system’s key features, estimates volume and future growth, specify anyhardware constraints, and prepare a request for proposal or quotation.

IDENTIFY THR KEY FEATURES OF THE SYSTEM

Evaluating system requirements involves highlighting any criticalfeatures the system must have. For example, if a company operatesnationwide, then its payroll system must be capable of deducting anyapplicable state income taxes. To be acceptable, a software package wouldhave to include this essential feature.

ESSENTIAL VOLUME AND FUTURE GROWTH

You need to know the current volume of transactions and processingand then forecast changes over a three-to-five period. Figure 6-8 shows aone-year volume estimate for an order entry system based on currentprocedures and a one-year estimate factoring in the addition of a Web-basedsales site. Notice that the Web site will handle almost twice as many orderswhile the number of sales reps is reduced by more than half. Volume figuresare constraints for both the software package and the hardware required.You must make sure that the package and the hardware can handle futuretransaction volumes and data storage requirements.

Figure 6-8

SPECIFY ANY HARDWARE CONSTRAINTS

As noted, the software must run properly on your current or proposedhardware platform. Whenever possible, you should make decisions aboutsoftware first because software is the main element in any systems — it isthe part with which people work and directly affects the system’s usability.

PREPARE A REQUEST FOR PORPOSAL OR QUOTATION

To obtain the information you need to male a decision, you shouldrequest for proposal or request for quotation. The two documents are similarbut used in different situations, based on whether or not you have selected aspecific software product.

Page 97: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Typically, a request for proposal (RFP) is written list of featuresand specifications given to prospective vendors when you have not identifieda specific product or package to use. Based on the RFP, vendors can decide ifthey have a product that will meet your needs and then respond withsuggestions and alternatives. RFPs vary in size and complexity, just like thesystems they describe. An RFP for a large system contain dozens of pageswith unique requirements and features. You can use an RFP to designatesome features as essential and others as desirable. An RFP also requestsspecific pricing and payment terms. Figure 6-9 shows an example of a pagefrom an RFP.

Figure 6-9

On the other hand, you can use a request for quotation (RFQ)when you already know the specific product or package you want and youneed to obtain price quotation or bids. RFQs can involve outright purchase ora variety of leasing options and can include maintenance or technical supportterms. You can think of an RFQ as a shortened version of an RFP, becausethe methods, the objective is to obtain vendor replies that are clear,comparable, and responsive so you can make a well-informed selectiondecision.

In today’s fast-paced IT marketplace, traditional methods for obtainingRFQs are often too slow. The InfoQuote Web site shown in Figure 6-10 offersa meeting place where sellers can list their products and buyers can obtainan instant quote on a package such as the vehicle information managementsystem shown in the example.

Figure 6-10

Step 2: Identify Potential Software Vendors

The next step is to contact potential vendors. If the software runs onpersonal computers, you might purchase from a commercial softwarevendor. Preparing an RFP will help the vendor’s sales representatives identifypossible solutions. If software will run on a maintenance computer, or as anenterprise-wide application, you probably will not purchase it from a retailsource. Instead, you can identify popular products and strategies bycontracting software vendors, industry sources, and IT consultants. TheInternet is a primary marketplace for all IT products, and you can expect tofind descriptive information on the Web about all major vendors and theirproducts. In addition, firms such as IDEA International offer services to helpyou select and configure a system, as shown in Figure 6-1. If you need to identify vertical applications for specific industries, youcan research industry trade journals or Web sites to find reviews for

Page 98: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

industry-specific software solutions. Figure 6-12 shows an example of an ITfirm that creates specialized software solutions for many industries includinghospitality, automotive, retailing, and medical. Another approach is to work with a consulting firm. Many ITconsultants offer specialized services that help companies select softwarepackages. A major advantage of using a consultant is that you can tap ontobroad experience that is difficult for any one company to acquire.Consultants can be located by contracting professional organizations,industry source, or simply by searching the Internet. Using a consultantinvolves additional expense but can prevent even more costly mistakes. Another valuable resource is the Usenet. The Usenet is an Internetbulletin board system that contains thousands of forums, callednewsgroups that cover every imaginable topic. Usenet groups are excellentsources of information and good places to exchange ideas with otheranalysts and IT professionals.

Figure 6-11Figure 6-12

Step 3: Evaluate Software Package Alternatives

After identifying possible software packages, you must compare theman select one to fit the company’s needs. First you should obtain informationabout the packages from as many sources as possible, including vendorpresentations and literature, product documentation, trade publications, andcompanies that perform software testing and evaluation. To learn moreabout particular software packages, search the Internet using keywords thatdescribe the application. Web sites maintained by consultants and softwarepublishers often include products references and links to vendors. As part ofthe evaluation process, you will obtain information from the existing users,test the application, and benchmark the package if necessary.

EXISTING USERS

You can contact existing users of the software packages to obtainfeedback and learn about their experiences. For personal computerpackages, ask your retail source for the references, or contact the softwarecompany directly. For minicomputer and mainframe software packages,software vendors typically supply user references. User references areimportant because you need to know whether the software package hasworked well for companies like yours. Vendors, however, usually havesatisfied clients on their reference lists, so do not be surprised if you receivemostly positive feedback from that source.

TESTING

Page 99: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

If possible, ask users in you organization to try the software package.For horizontal applications r a small system, using a demonstration copy toenter a few sample transactions could be an acceptable test. For verticalapplications or large systems, a team of IT staff and users might needseveral days or weeks to perform tests.

BENCHMARKING

TO determine whether a package can handle a certain transactionvolume efficiently, you can perform a benchmark test. A benchmarkmeasures the time a package takes to process a certain number oftransactions. For example, a benchmark can consist of measuring the timeneeded to post 1,000 sales transactions. If you are considering two or morepackages, benchmark testing is a good way to measure relativeperformance. Many IT publications publish regular reviews of individual packages,including benchmark tests, and often have annual surveys covering variouscategories of software. Some f the publications shown in Figure 6-13 alsooffer online versions and additional Web-based features, search capability,and IT links.

Figure 6-13

You also can obtain information form independent firms thatbenchmark various software packages and sell comparative analyses of theresults, as shown in Figure 6-14. The Transaction Processing PerformanceCouncil (TPC) is an example of a nonprofit organization that publishesstandards and reports for its members and the general public, whileInfoSizing is an IT consulting firm that offers analysis of performancebenchmarks. Finally, you should match each package against the RFP features andrank the choices. IF some features are more important than others, givethem a higher weight. You can use a spreadsheet to perform the calculationsand graph the results.

Step 4: Mark the Purchase

When you purchase software, usually you do not own it — what youare buying is a software license that gives you the right to se the softwareunder certain terms and conditions. For example, the license would allow youto use the software only on a single computer, a specified number ofcomputers, a network, or an entire site, depending on the terms of thelicense agreement.

Page 100: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Other license restrictions could prohibit you form making the softwareavailable to others or modifying the program. For personal computer users,software license terms and conditions usually cannot be modified. Forminicomputer and mainframe users, terms of the license agreement can benegotiated and should be reviewed carefully by management and the legaldepartment. Although most software packages are purchased, some vendors offerleasing as financial alternative. For example, IBM provides flexible leasingprograms for software and hardware through a special financial servicesgroup. If a customer does decide to lease, lease agreement describes thetime period, terms, and payments. Another alternative, discussed earlier inthe chapter, is to investigate whether the package is available through anASP for a rental or subscription fee. As part of the acquisition strategy, you should consider amaintenance agreement, which allows you to contact the vendor forassistance when you have system problems or questions. The agreementmight provide full support for a period of time of list specific chargesparticular services. Many personal computer packages provide a mail-in registration cardthat entitles users to free technical support for a period of time. Sometimessupport is offered with a charge per occurrence, or per minute or hour oftechnical support time. Some software vendors also contact registeredowners whenever a new release is available and usually offer the new releaseat a reduced price. For most minicomputer and mainframe packages, amaintenance agreement gives you the right to obtain new releases of thepackage at no charge or at a reduced rate.

Step 5: Install the Software Package

After purchasing the software package, the final setup is theinstallation. For small systems, installation can take one day or less. Forlarge systems or network installations, the process can require considerabletime and effort. Your installation strategy should be planned well in advance,especially if any disruption of normal business operations is expected. If thesoftware package is customized, then the task will be more complex anddifficult. Before you can sue the new software package, you must complete allimplementation steps, including loading, configuring, and testing thesoftware; training users; and converting data files to the new system’sformat. Chapters 10 and 11 discuss implementation strategies andtechniques in more detail.

Evaluation and Selecting Teams

Page 101: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Most companies use a combination of in-house developed software,software packages, outsourcing, and end-user systems. Even a single systemcan use a mix of software alternatives. For example, a company purchases astandard software package to process its payroll, and then develop its ownsoftware to handle the interface between the payroll package and thecompany’s in-house manufacturing cost analysis system. The evaluation and selection of alternatives is not a simple process.The objective is to obtain the product with the lowest total cost of ownership,but actual cost and performance can be difficult to measure. With a largenumber of choices, how do you select the best alternative? When selecting hardware and software, systems analysts often workas an evaluation and selection team. A team approach ensures thatcritical factors are not overlooked and that a sound choice is made. Theevaluation and selection team also must include users, who will participate inthe selection process and feel a sense of ownership in the new system. The primary objective of the evaluation and selection team is toeliminate system alternatives that will not work, rank the system alternativesthat will work, and then present the visible alternatives to management for afinal decision.

COMPLETION OF SYSTEMS ANALYSIS

To complete the systems analysis phase, you must prepare the systemrequirements document and your presentation to management. In additionto the information that follows, the Systems Analyst’s Toolkit includes asection with guidelines and suggestions for preparing the written rport andthe presentation to management.

System Requirements Document

The system requirements document, or software requirementsspecification, contains the requirements for the new system, describes thealternatives that were considered, and makes a specific recommendation tomanagement. This important document is the starting point for measuringthe performance, accuracy, and completeness of the finished system beforeentering the systems design phase. The system requirements document is like a contract that identifieswhat must be delivered, by the systems developers, to uses; therefore youshould write the system requirements document in language that users canunderstand so they can offer input, suggest improvements, and approve thefinal version. Because the system requirements document can be lengthy, youshould format and organize it so it is easy to read and use. The systemrequirements document should include a cover page and a detailed table ofcontents. The system requirements document should include a cover page

Page 102: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

and a detailed table of contents. You also can add index and a glossary ofterms to make the document easier to use. The content of the systemrequirements document will depend on the company and the complexity ofthe system. The Systems Analyst’s Toolkit provides guidance and offerssuggestions to help you create the system requirements document.

Presentation to Management

The presentation to management at the end iof the systems analysisphase is one of the most critical milestones in the systems developmentprocess. At this point, managers make key decisions that affect the futuredevelopment of the system. Prior to the management presentation, you might give two otherpresentations: one to the principal individuals in the IT department to keepthem posted, and another presentation to users to answer their questionsand seek their approval. The system requirements document is the basis forall three presentations, and you should distribute the document, or asummary, in advance so the recipients can review it. When preparing your presentation, you should review the guidelinesand suggestions in the Systems Analyst’s Toolkit, which will help you designand deliver a successful presentation. In addition to the techniques found inthe Toolkit, also keep the following suggestions in mind

Begin you presentation with a brief overview of the purpose andprimary objectives of the system project.Summarize the primary visible alternatives. For each alternative,describe the costs, advantages, and disadvantages.Explain why the evaluation and selection team chose therecommended alternative.Allow time for discussion and for questions and answers.Obtain a final decision from management or agree on a timetable forthe next step in the process.

The object of the management presentation is to obtain approval for thedevelopment of the system and to gain management’s full support, includingnecessary financial resources. Management will probably choose one of thefive alternatives: develop an in house system, modify the current system,purchase or customize a software package, perform additional systemsanalysis work, or stop all further work. Depending on their decision, you nexttask as a systems analyst will be one of the following:

1. Develop an in-house system. Begin the systems designphase for the new system.

2. Modify the current system. Begin the systems design phasefor the modified system.

Page 103: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

3. Purchase or customize a software package. Negotiate thepurchase terms with the software vendor for managementapproval. Then, if the package will be used without modification,you can begin planning the systems implementation phase. Ifyou must make modifications to the package, your next step isto start planning the testing and documentation of themodifications as part of the systems implementations phase.

4. Performing additional systems analysis work.Management might want you to investigate certain alternativesfurther, explore alternatives not examined, reduce the projectscope because of cost constraints, or expand the project scopebased on new developments. If necessary, you will perform theadditional work and schedule a follow-up presentation.

5. Stop all further work. The decision might be based on yourrecommendation, a shift in priorities or costs, or for otherreasons. Whatever the reason, if that is management’s decision,then you have no additional tasks for the project other than tofile all your research in a logical location so that it can beretrieved if the project is reopened in the future.

After the presentation and management decision, you will begin a variety oftasks, depending on the strategy chosen. If you are developing an in-housesystem or modifying a package, you will build a model of the proposedsystem and start designing the system’s output, input, files, and datastructures. The following sections describe several tools and techniques thatcan assist you in the process, including prototyping, CASE tools, andalternative graphical tools.

TRANSITION TO SYSTEMS DESIGN

If management decide to develop the system in-house, then the nextphase of the SDLC — the systems design phase — can begin. In a smallercompany, you might be assigned full responsibility for the project. In a largeIT group, you could work as a member of a development team even thoughyou had not participated in the earlier SDLC phases. When systems design begins, it is essential to have an accurate andunderstandable system requirements document. Your document contains thedesign for the new system and is the starting point for the system designphase. Errors, omissions, ambiguities, and other problems will affect thequality and completeness of the finished product. As you proceed to the nextphase, you must be certain that you performed a thorough and accuratesystems analysis and communicated the results in your system requirementsdocument.

Systems Design Overview

Page 104: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

The logical design of an information system defines the functions andfeatures of the system and the relationships among its components. Thelogical design includes the output that must be produced by the system, theinput needed by the system, and the processes that must be performed bythe system without regard to how tasks will be accomplished physically.Because the logical design defines the necessary, or essential, requirementsof the system, it also is know as the essential model. As previously discussed, a logical design defines what must take place,not how it is to be accomplished. Logical designs, thus, do not address theactual method of implementation. The logical design for a customer system,for example, describes the data that must be entered, specifies that recordsmust be displayed in customer number order, and explains what informationto produce for a customer status report. Specifications for the actual input,or entry, of data, the sort method, the physical process of creating thereport, and the exact format of the report are not part of the logical design. In contrast, the physical design of an information system is plan forthe actual implementation of the system. The physical design is built on thesystem’s logical design and describes the implementation of a specific set ofsystem components. In the customer system, for example, the physicaldesign describes actual processes of entering, verifying, and storing data;physical layout of data files; the sorting procedures; the exact format ofreports; and so on. Whereas logical design is concerned with what thesystem must accomplish, physical design is concerned with how the systemwill meet those requirements. The logical design is completed during the systems analysis phase ofthe SDLC. To create the logical design, you investigated, analyzed, anddocumented the input, processing, and output requirements and constraints.Now, in the systems design phase, you are ready to begin work on thephysical design of the system.

The Relationship between Analysis and Design

Because logical and physical designs are related so closely, goodsystems design is impossible without careful, accurate systems analysis. Infact, the design phase typically cannot begin until the analysis work iscomplete. Although some overlap is possible, it is much better to finish theanalysis phase before moving on to systems design. During systems design, you should return to the analysis phase only invery limited situations. You might return o fact-finding, for example, if youdiscover that you overlooked an important fact, if users have significant newneeds, or if legal or governmental requirements change. You might return torequirements analysis if you reencounter unforeseen design issues orproblems. Such cases are the exception to the rule, however. If an analyst

Page 105: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

develops a pattern of returning to prior phases, it could indicate that earlierwork was inaccurate or incomplete.

Other Modeling Tools

As you proceed from logical design to physical design, you continue touse DFDs, object modeling tools, CASE tools, and the prototyping toolsdescribed in this chapter. You also should know about systems flowcharts,which are another method of physical design of a system.

OVERVIEW OF SYSTEMS DESIGN

An information system has five basic components: data, people,processes, hardware, and software. Interaction among the components hasa major impact on the design process, so the systems analyst mustunderstand the entire logical design of system before beginning the physicaldesign of any one component. The first step is to review the system requirements document, which isespecially important if you did not work on the previous phase or if asubstantial amount of time passed since the analysis phase was completed.After you review the system requirements, you are ready to start the actualdesign process. What should you do first, and why? The best place to begin is with the user interface, which affects theoverall interaction between the user and the system. As you develop the userinter face, you will move into the specific input and output design tasks. Thenyou will work on data design and systems architecture for the system. Because the components of the system are interdependent, the designphase is not a series of work clearly defined steps. Although you might startwith one component, it is not unusual to work on several components at thesame time. For example, making a decision to change a report format mightrequire other changes in a data design or input screens. The final step in systems design is to prepare a system designspecification report and present your results to management. Those tasksand other systems design activities are listed and described Figure 6-23.

Figure 6-23

SYSTEM DESIGN OBJECTIVESThe goal of system design is to build the system that is effective,

reliable, and maintainable. To be effective, the system must satisfy thedefined requirements and constraints. The system also must be accepted byusers who use it to support the organization’s business objectives. A system is reliable if it adequately handles error, such as input errors,processing error, hardware errors, or human mistakes. Ideally, all errors canbe prevented. Unfortunately, no system is completely foolproof, whether it is

Page 106: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

a payroll system, a telephone switching system, an internet access system,or a space shuttle navigation system. A more realistic approach to building areliable system is to plan an errors, detect them as early as possible, allowfor them correction, and prevent them from damaging the system itself. A system is maintainable if it is well designed, flexible, and developedwith future modifications in mind. No matter how well a system is design andimplemented, at some point it will need to be modified. Modifications will benecessary to correct problems, to adapt to changing user requirements, toenhance the system, or to take advantage of changing technology. Yoursystems design must be capable of handling future modifications or thesystem soon will be outdated and fail to meet requirements.

SYSTEMS DESIGN CONSIDERATIONSGood design results in systems that are effective, reliable, and

maintainable. As shown figure 6-24, design considerations involve users,data, and processing.

Figure 6-24

USER CONSIDERATIONS

Of the many issues you must consider during systems design, yourmost important goal is to make the system acceptable to users, oruser-friendly. Throughout the design process, the essential factor to consideris how decisions will affect users. Always remember that you are designingthe system for the user, and keep these basic points in mind.

Carefully consider any point where users receive output from, orprovide input to, the system. Above all, the user interface must be easy tolearn and use. Input process should be well documented, easy to follow,intuitive, and forgiving of errors. Output should be attractive and easy tounderstand, with an appropriate level of detail.

Anticipate future needs of the users, the system and the organization.Suppose that an employee master file contains one-character field to indicateeach employee’s category. The field currently has two valid values: Findicates a full time employee, and P indicates a part-time employee.Depending on the field value, either FULL TIME or PART-TIME will print as thevalue on various reports. While those two values could be programmed, orhardcoded, into the report programs, designing a separate table withcategory cades and captions is a better choice. The hardcoded solution isstraightforward, but if the organization adds another value, such as X forFLEXTIME, a programmer would have to change all the report programs. If aseparate table for codes and captions is used, it can be changed easilywithout requiring modifications to the reports.

You must provide flexibility. Suppose that a user wants a screendisplay of all customer balances that exceed $5,000 in an account receivable

Page 107: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

system. How should you design that feature? The programs could behardcoded to check costumers balances against a fix value of 5,000 which isa simple solution for the programmer and the user because extra keystrokesor commands are not entered to produce the display. That approach,however, is inflexible. For instance, if a user needs a list of costumers whosebalance exceed than $7.500 rather than $5,000, the existing system cannotprovide the information. To accommodate the request, the programmerwould have to change and retest the program and rewrite newdocumentation. On the other hand, you could design the program to produce a reportof all costumers whose balance exceeds a specific amount entered by theuser. For example, if a user wants to display costumers with balances ofmore than $7,500 he or she can enter the number 7,500 in a parameterquery. A parameter is a value that the user enters whenever the query isrun, which provides flexibility, enables users to access information easily, andcosts less. A good system design can combine both approaches. In that example,you could design the program to accept a variable amount entered by theuser but starts with a default value of 5,000. Then the users can press theENTER key to accept the default value, or enter another value. Often the bestdesign strategy is to come up with several alternatives, so users can decidewhat will work best for them. Again, always remember to design the systemwith the user in mind.

DATA CONSIDERATIONS

Data entry storage considerations are important parts of the systemdesign. Here are some guidelines to follow:

Data should be entered into the system where and when itoccurs because delays cause data errors. For examples, employeesreceiving department should enter data about incoming shipments when theshipments arrive, and sales clerks should enter the data about new orderswhen they take the orders.

Data should be verified when it is entered, to errorsimmediately. The input design should specify a data type, such as numeric,alphabetic, or character, and range of acceptable values for each entry dataitem. If an incorrect data value is entered, the system should recognize andflag it immediately. The systems should also allow corrections at any time.Some errors, for examples, are corrected easiest right at entry while theoriginal source documents are at hand or the costumer is on the telephone.Other errors may need further investigation, so users must be able to correcterrors at a later time. Automated methods of data entry should be usedwhenever possible. Receiving department employees in many companies, forexamples, are corrected easiest right at entry while the original sourcedocuments are at hand or the customer is on the telephone. Other errors

Page 108: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

may need further investigation, so users must be able to correct errors at alater time.

Automated methods of data entry should be used whenever possible.Receiving department employees in many companies, for example, usescanners to capture data about merchandise received. Automated data entrymethods, such as the scanner shown in Figure 6-24, reduce input errors andimprove employee productivity.

Access for data entry should be controlled and all entries or changesto critical data values should be reported. Dollar fields and many volumefields are considered critical data fields. Examples of critical volumes includethe number of checks processed, the number of medical prescriptiondispensed, or the number insurance premium payments received. Reportsthat trace the entry and changes to critical data values are called audittrails and are essential in every system.

Every instance of entry and change to data should be logged. Forexample, the system should record when a customer’s credit limit wasestablished, and by whom, which is necessary to construct the history of atransaction.

Data should be entered into a system only once. If input data for apayroll system also is needed for a human resources system, you shoulddesign a program interface between the systems so data can be transferredautomatically.

Data duplication should be avoided. In an inventory file, for example,the supplier’s addresses should not be stored with every part record.Otherwise, the address of a vendor who supplies 100 different parts isrepeated 100 times in the data file. Additionally, if the vendor’s addresschanges, all 100 parts records must be updated. Data duplication also canproduce inconsistencies. If those 100 stored addresses for the vendor are notidentical, how would a user know which version is correct?

PROCESSING CONSIDERATIONS

In addition to the issues affecting users and data, you should considerthe following guidelines in your processing design:

Use a modular design. In a modular design, you create individualprocessing components, called modules, that connect to a higher-levelprogram or process. In a traditional, structured design, each modulerepresents a specific process or subprocess shown on a DFD and documentedin a process description. If you are using an object-oriented design, objectclasses are represented by code modules when implementing the design withan OOPL. You will learn more about modular design in Chapter 10, whichdescribes application development.

Design modules that perform a single function are easier tounderstand, implemented, and maintain. Independent modules also provide

Page 109: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

greater flexibility because they can be developed and tested individually,then combined at a later point in the development process. Modular design inespecially helpful when developing large-scale systems because separateteams of analysts and programmers can work on different areas of theproject, and then integrate the modules to create a finished system.

Phase 3: Systems Design

Systems design is the third phase in the system development lifecycle. In the previous phase, systems analysts, you developed a logicalmodel of the system that will meet the specifications described in the systemrequirements document.

Chapter 7This is the first of the three chapters in the systems design phase of

the SDLC. During systems design, you construct a physical model of theinformation system based on the logical model you developed in the systemsanalysis phase. In this chapter, you will focus on how to design the userinterfaces, input procedures, and output required to support businessrequirements.

Introduction User interface, input, and output design begins the systems designphase of the SDLC. This chapter begins with user interface design concepts,including functions, layout, and usability. The chapter then covers inputprocedures, controls, formats. The chapter concludes with a discussion ofoutput design, including printed reports and other system outputs.

After the logical model constructed, systems analysts turn their attention tothe physical design. A key design element is the user interface, whichdescribes how users interact with the system. When developing older,processing-centered systems, analysts typically designed all the printed andscreen output first, then worked on the inputs necessary to produce theresults. Often, the user interface mainly consisted of process-controlscreens that allowed the user to send commands to the system. Thatapproach worked well with traditional systems that transformed input datainto specific output information.

ObjectivesWhen you finish this chapter, you will be able to:

Explain the concept of user interface design andhuman-computer interaction

Define user-centered interface design principles

Page 110: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Describe guidelines for the user interface design

Describe user interface controls

Explain input design concepts, techniques, and methods

Describe guidelines for data entry screen design andvalidation checks for reducing input errors

Describes effective source documents and input controls

Discuss output design issues and various types of output

Design various types of printed reports, and suggestnecessary output control and security

USER INTERFACE DESIGN

In a user-centered system, the distinction blurs between input,output and the interface itself. Most users work with a varied mix of inputscreen output, and data queries as they perform their day-to-day jobfunctions. Because all those tasks require interaction with the computersystem, the user interface is a logical staring point in the systems designphase. Many firms, including IBM, offer consulting services and softwaresolutions to help companies develop successful user interfaces, as shown inFigure 7-3. User interface design requires an understanding of human-computerinteraction and user-centered design principles, discussed in the next section,Input and output design topics are covered later in this chapter.

Figure 7-3

Human-Computer Interaction

A user interface is based on basic principles of human-computerinteraction. Human-computer interaction (HCI) describes therelationship between computers and people who use them to performbusiness-related tasks, as shown in f Figure 7-4. HCI concepts apply toeverything from PC desktop to the main menu for a global network. In itsbroadest sense, a user interface includes all the communications andinstructions necessary to enter input to the system, and to obtain output inthe form of screen displays or printed reports.

Figure 7-4

Page 111: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

As a systems analyst, you will design user interfaces for in-housedeveloped software and customize interfaces for various commercialpackages and user productivity applications. Your main objective is to createa user-friendly design that is easy to learn and use. As IBM points out on itsWeb site shown in Figure 7-5,”In a complex world, easy hits the spot.” IBMnotes that it pays to make case of use a priority right from the start, becauseeach dollar spent up front saves $10 later on.

User-Centered Design Principles

User-centered design involves eight basic principles:

UNDERSTAND THE UNDERLYING BUSINESS FUNTIONSThe interface designer must understand the underlying business

functions and how the system supports individual, departmental, andenterprise goals. The overall objective is to design an interface that startingpoint might be to analyze a functional decomposition diagram (FDD). As youlearned in Chapter 3, an FDD is a graphical representation of businessfunctions that starts with major functions, then breaks them down intoseveral levels of details. An FDD can provide a checklist of user tasks thatyou must include in the interface design

MAXIMIZE GRAPHICAL EFFECTIVENESS

Studies show that people learn better visually. The immense popularityof Microsoft Windows is largely the result of a graphical user interface that iseasy to learn and use. A graphical user interface (GUI) uses graphicalobjects and techniques that allow users to communicate with the system.Now that GUIs have become universal in application packages, users expectin-house software also to GUIs. A well-designed GUI can help users learn anew system rapidly, and work with the system effectively.

PROFILE THE SYSTEM’S USERS

A systems analyst should understand user experience, knowledge, nsskill levels. If wide range of capability exists, the interface should be flexibleenough to accommodate novices as well as experienced users.

THINK LIKE A USER

To develop an interface driven by user requirements, the designermust learn to think like a user and see the system through a user’s eyes.

Page 112: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

USE PROTOTYPING

From a user’s viewpoint, the interface is the most critical part of thesystem design because it is where he or she interacts with the system —perhaps for many hours each day. It is essential to construct models,mock-ups, and prototypes for user approval. The interface designer shouldobtain as much as feedback as possible, s early as possible. You can presentscreen mock-ups to users as a succession of storyboards, which aresketches that show the general screen layout and design. Users must test allaspects of the interface design and provide feedback to the designers.

DESIGN A COMPREHENSIVE INTERFACE

The user interface should include all tasks, commands, andcommunications between users and the information system. The screenshown in Figure 7-6 shows the main options for a student registration systemat school. In a GUI environment, a user can display and work with multiplewindows on a single screen. The windows can contain processing options,data options, or both. To make the interface even more powerful, the usercan have several programs open at once and data can be transferredbetween them. Because GUIs are used for data entry as well as for processcontrol, they must follow the guidelines for goods data entry screen designdiscussed later in this chapter.

Figure 7-6

CONTINUE THE FEEDBACK PROCESS

Even after the system is operational, it is important to monitor systemusage and solicit user suggestions. You can determine if system features arebeing used as intended by observing and surveying users. Sometimes,full-scale operations highlight problems that were not apparent when theprototype was tested. Based on user feedback, Help screens might needrevision and design changes to allow the system to reach its full potential.

DOCUMENT THE INTERFACE DESIGN

You should document all screen designs for later use by programmers.If you are using a CASE tool or screen generator, number the screen designsand save them in a hierarchy similar to a menu. User-approved sketches andstoryboards also can be used to document the user interface. By applying basic user-centered design principles, a system analystcan plan, design, and deliver a successful user interface.

Page 113: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

User Interface Design GuidelinesGood user interface design is based on a combination of ergonomics,

aesthetics, and interface technology. Ergonomics describes how peoplework, learn, and interact with computers; aesthetics focuses on how aninterface can be made attractive and easy to use; and interfacetechnology provides the operational structure required to carry out thedesign objectives. Systems analysts should consider various guidelines when designing auser interface, including the following topics

FOCUS ON BASIC OBJECTIVES

Facilitate the system design objectives, rather than calling attention tothe interface.

Create a design that is easy to learn and remember.

Design the interface to improve user efficiency and productivity.

Write commands, actions, and system responses that are consistentand predictable.

Minimize data entry problems.

Correct errors easily.

Create a logical and attractive layout.

BUILD AN INTERFACE THAT IS EASY TO LEARN AND USE

Label clearly all controls, buttons, and icons.

Select only those images that users can understand easily, if you useimages to identify icons or control. For example, Figure 7-7 showsthree control buttons, but only the printer image has an obviousmeaning.

Figure 7-7

Provide on-screen instructions that are logical, concise, and clear. InFigure 7-8, the top message is hard to understand, but the bottommessage is unmistakable.

Figure 7-8

Page 114: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Show all commands in a list of menu items, but dim any commandsthat are not currently available.

Make it easy to return to one or more levels in the menu structure.

PROVIDE FEATURES THAT PROMOTE EFFICIENCY

Organize tasks, commands, and functions in groups that resembleactual business operations. Organize tasks, commands, and functionsin groups that resemble actual business operations. Organize tasks,commands, and functions in groups that resemble actual businessoperations. You should group functions and submenu items in amultilevel menu hierarchy, or tree, that is logical and reflects howusers typically perform the tasks. Figure 7-9 shows an example of amenu hierarchy for an order tracking system.

Figure 7-9

Create alphabetical menu list or place the selections used frequently atthe top of the menu list. No universally accepted approach to menuitem placement exists. The best strategy is to design a prototype andobtain feedback from users. Some applications, such as MicrosoftWord 2000, even allow menus to show recently used commands first.Some users might accept that design, but others might find itdistracting.Provide shortcuts so experienced users can avoid multiple menu levels.You can create shortcuts using hotkeys that allow a user to press theALT key + the underlined letter of a command.Use default values if the majority of values in a field are the same. Forexample, if 90 percent of the firm’s customers live in Albuquerque, useAlbuquerque as the default value in the City field.Use a duplicate value function that enables users to insert into a fieldin the new record the value from the same field in the previous record.Provide a fast-find feature that displays a list of possible values assoon as users enter the first few letters.Use a natural language feature that allows users to type commands orrequests in normal English phrases. For example, natural languagequeries can be used with a Help system that lets you ask a questionand receive a response, as shown in the Microsoft PowerPoint examplein Figure 7-10. Most user like natural language features because theydo not have to memorize a series of complex commands and syntax.Natural language technology still is evolving and is being used in manyInternet browsers and search engines. Figure 7-11 shows a Web sitefor PLS (Personal Librarian Software), a leading supplier of information

Page 115: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

retrieval software that supports natural language queries. PLS isowned by America Online (AOL) A Help system using PLS allows usersto search for topics using natural language queries.

Figure 7-10Figure 7-11

MAKE IT EASY FOR USERS TO OBTAIN HELP OR CORRECT ERRORS

Ensure that Help is always available. Help screens should provideinformation about menu, choices, procedures, shortcuts, and errors.Provide user-selected Help context-sensitive Help. User-selected Helpdisplays information when user requests it. By making appropriatechoices through the menus and submenus, the user eventually reachesa screen with the desired information. Figure 7-12 shows the mainHelp screen for the student registration system. Context-sensitiveHelp offers assistance for the task in progress. Figure 7-13 shows aHelp while entering data into the ADVISOR ASSIGNED field. Clickingthe Close button returns the user to the current task.

Figure 7-12Figure 7-13

Provide a direct source for users to return to the point from whereHelp was requested. Title every Help screen to identify the topic, andkeep Help text simple and concise. Insert blank lines betweenparagraphs to make Help easier to read, and provide easier to read,and provide examples where appropriate.Include contact information, such as a telephone extension or e-mailaddress if a department or Help desk is responsible for assisting users.Require user confirmation before data deletion (Are you sure?) andprovide a method recovering data that is deleted inadvertently. Buildin safeguards that prevent critical data from being changed or erased.Provide an Undo key or menu choice that allows the user to eradicatethe results of the most recent command or action.Highlight the erroneous part and allow the user to make thecorrection without retyping the entire command or action.Use hypertext links to assist users as they navigate through Helptopics.

MINIMIZE INPUT DATA PROBLEMS

Provide data validation checks. More information on data validationtechniques is provided in the section on input design found later in thischapter.

Page 116: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Display event-driven messages and reminders. Just ascontext-sensitive Help is important to users, it is desirable to displayan appropriate message when it is time for the users to perform acertain task. For example, when exiting the system, a message mightask users if they want a printed report of the data entered during therecent session.Establish a list of predefined values that users can click to select.Predefined values prevent spelling errors, avoid inappropriate data in afield, and make the user’s job easier — the input screen displays a listof acceptable values and user simply points and clicks the choice.Build in rules that enforce data integrity. For example, if the user triesto enter an order for a new customer, the customer be added beforethe system will accept the order data.Use input masks, which are templates or patterns that make it easierfor users to enter data. Microsoft Access 2000 provides standard inputmasks for fields such as dates, telephone numbers, ZIP codes, andSocial Security numbers. In addition, you can create custom inputmasks for any type of data, as shown in Figure 7-14. Notice that themask can manipulate the input data and apply a specific format. Forexample, if a user enters text in lowercase, the input mask>LLLLLLLLwill convert the data to capital letters.

2 6 4

Figure 7-14

PROVIDE FEEDBACK TO USERS

Display messages at logical place on the screen, and be consistent.Alert users to lengthy processing times or delays. Give users anon-screen progress report, especially if the delay is lengthy.Allow messages to remain on the screen long enough for users to readthem. In some case, the screen should display messages until the usertakes some action.Let the user know whether the task or operation was successful or not.For example, use messages such as Update completed, All recordshave been posted, or ID Number not found.Provide a text explanation if you use an icon or image on controlbutton when moving the insertion point over the icon or image.Use messages that are specific, understandable, and professional.Avoid messages that are cute, cryptic, or vague, such as: Error!,Unacceptable value, or Error DE4-16. Better examples are: Enter anumber between 1 and 5; Customer number must be numeric –please reenter, or Call the Accounting Department, Ext. 239 forassistance.

Page 117: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

CREATE AN ATTRACTIVE LAYOUT AND DESIGN

Use appropriate colors to highlight different areas of the screen; avoidgaudy and bright colors.Use special effects sparingly. For example, animation and sound mightmake screens interesting, but special effects can be distracting andyou should use them carefully.Use hyperlinks that allow users to jump to related topics.Group related objects and information. Visualize the screen the way auser will see it, and stimulate the tasks that the user will perform.Screen density is important. Keep screen displays uncluttered, withenough white space to create an attractive, readable design.Display titles, messages, and instructions in a consistent manner andin the same general locations on all screens.Use consistent technology. For example, do not use the terms delete,cancel, and erase to indicate the same action. Similarly, the samesound should always signal the same event.Ensure that commands will always have the same effect. For example,if the BACK control button returns a user to the prior screen, the BACKcommand should always perform that function throughout theapplication.Ensure that similar mouse actions will produce the same resultsthroughout the application. The results of pointing, clicking, anddouble-clicking should be consistent and predictable.Require the user to confirm data entry by pressing the ENTER key orTAB key at the end of a fill-in field, even if the data does notcompletely fill the field.

USER FAMILIAR TERMS AND IMAGESRemember that users are accustomed to a pattern of red= stop,yellow = caution, and green = go. Stick to that pattern and use itwhen appropriate to reinforce on-screen instructions.Provide a keystroke alternative for each menu command, witheasy-to-remember letters, such as File, Exit, and Help.Use familiar commands if possible, such as Cut, Copy, and Paste.Provide a Windows look and feel in your interface design if users arefamiliar with Windows-based applications.Avoid complex terms and technical jargon: instead, use select termsthat come from everyday business processes and the vocabulary of atypical user.

INPUT DESIGN

Page 118: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Input technology has changed dramatically in recent years. Today,many input devices and techniques are available, as shown in Figure 7-19.Businesses use the technology to speed up the input process, reduce costs,and capture data in new forms, such as the digital signature shown in Figure7-19.

Figure 7-19

No matter how data enters an information system, the quality of theoutput is only as good as the quality of the input. The concept, sometimesknown as garbage in, garbage out (GIGO), is familiar to IT professionals,who know that the best time to avoid problems is when the data is entered.The main objective of input design is to ensure the quality, accuracy, andtimelines of input data. During input design, you determine how data will be captured andentered into the system. Data capture is the identification and recording ofsource data. Data entry is the process of converting source data intocomputer-readable form and entering it into the information system. Input design has six main objectives:

1. To select a suitable input and data entry method2. To reduce input volume3. To design attractive data entry screens4. To use validation checks to reduce input errors5. To design required source documents6. To develop effective input controls

Input and Data Entry Methods

Input processes should be efficient, timely, and logical. Systemsanalysts apply business process engineering techniques when studyingtransactions and business operations to determine now and when datashould enter the system. Usually, the first decision is whether to use batch oronline input methods. Each method has advantages and disadvantages, andthe systems analyst must consider the following factors:

BATCH INPUT Using batch input, data entry is performed on aspecified time schedule, such as daily, weekly, monthly, or loner. Forexample, batch input occurs when a payroll department collects time cardsat the end of the week and enters the data as a batch. Another example is aschool that enters all grades for the academic term is a batch.

ONLINE INPUT Although batch input is used is used in specific situations,most business activity requires online data entry. The online methodoffers major advantages, including the immediate validation and availabilityof data. A popular online input method is source data automation, which

Page 119: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

combines online data entry and automated data capture using input devicessuch as magnetic data strips, or swipe scanners. Source dataautomation is fast, accurate, and does not require human involvement in thetranslation process. Many large companies use a combination of source data automationand a powerful communication network to manage global operationsinstantly. Some common examples of source data automation are:

Businesses that use point-of-sale (POS) terminals equipped with barcode scanners and magnetic swipe scanners to input credit card data.Automatic teller machines (ATMs) that read data strips on bank cards.Factory employees who use magnetic ID cards to clock on and offspecific jobs so the company can track production costs accurately.Hospitals that imprint bar codes on patient identification bracelets anduse portable scanners when gathering data on patient treatment andmedication.Retail stores that use portable bar code scanners to log new shipmentsand update inventory data.Libraries that use handheld scanners to read optical strips on books.

TRADEOFFS Although online input offers many advantages, it doeshave some disadvantages. For example, unless source data automation isused, manual data entry is slower and more expensive than batch inputbecause it is performed at the time the transaction occurs and often donewhen computer demand is at its highest. The decision to use batch or online depends on business requirements.For example, hotel reservations must be entered processed immediately, buthotels can enter their monthly performance figures in a batch. In fact, someinput occurs naturally in batches when the mail arrives.

Input Volume

To reduce input volume, you must reduce the number of data itemsrequired for each transaction. Data capture and data entry require time andeffort, so when you reduce input volume, number of errors. The followingguidelines will help reduce input volume:

1. Input necessary data only. Do not input a data item unless it is neededby the system. A completed order form, for example, might containthe name of the clerk who took the order. If that data is not needed bythe system, the user should not enter it.

2. DO not input data that the user can retrieve from system files orcalculate from other data. In the order system displays the customername so the user can verify it. The user then enters the item andquantity. Note that the description, price, extended price, total price,sales tax, and grand total are retrieve automatically or calculated bythe system date.

Page 120: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

3. Do not input constant data. If orders are in batches with the samedate, then a user should enter the order date only once for the firstorder in the batch. If orders are entered online, then the user canretrieve the order date automatically using the current system date.

4. Use coders, you learned in Chapter 6 that codes are shorter than thedata they represent and that coded input can reduce data entry time.In order system example in Figure 7-20, the CUSTOMER ID and ITEMfields are codes.

Figure 7-20

Designing Data Entry Screens

Some users work with many features of the user interface; othersspend most of their time entering data. This section discussed interfaceguidelines are based on general principles of interface design discussedearlier in this chapter. The most effective method of the online data entry is form filling, inwhich a blank form that duplicates or resembles the source document iscompleted on the screen. The user enters the data and then moves to thenext field.

Restrict user access to the screen locations where data is entered. Whenthe screen in Figure 7-20 displays, the system should position theinsertion point in the first data entry location. After the operator entersa CUSTOMER ID, the insertion point should be able to position theinsertion point only in the places where data is entered on the form.

Provide a descriptive caption for every field, and show the user where toenter the data and the required or maximum field. Other methodsused to indicate field location and length of each field. Other methodsused are video highlighting, underscores, special symbols, or acombination of these features.

Display a sample format if user must enter values in a field in a specificformat. For example, provide an on-screen instruction to let usersknow that the date format is MMDDYY, and provide an example if theuser must enter separators, such as slashes. It is better to use aninput mask, so users simply can enter 112702 to represent November27, 2002.

Require an ending keystroke for every field. Pressing the ENTER key orTAB key should signify the end of a field entry. Avoid a design thatmoves automatically to the next item when the field is full. The latterapproach requires an ending keystroke only when the data entered isless than the maximum field length. It is confusing to uses twodifferent data entry procedures.

Do not require users to type leading zeroes for numeric fields. Forexample, if the project number is 45, the operator should type 45

Page 121: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

instead of 045 before pressing the ENTER key. An exception to thatrule might occur when entering a date, where a leading zero is neededto identify single-digit months.

Do not require users to type trailing zeroes for numbers that includedecimals. For example, when a user types a value of 98, the systemshould interpret the value as 98.00 if the field has been formatted toinclude numbers with two decimal places. The decimal point is neededonly to indicate nonzero decimal places, such as 98.76.

Display default values so operators can press the ENTER key to accept thesuggested value. If the default value is not appropriate, the operatorcan change it.

Use a default value when a field value will be constant for successiverecords or throughout the data entry session. For example, if recordsare input in order by date, the date used in the first transaction shouldbe used as the default date until a new date is entered, at which timethe new date becomes the default value.

Display a list of acceptable values for fields, and provide meaningful errormessages if the user enters an unacceptable value. An even bettermethod, which was described in the user interface design section, is toprovide a drop-down list box containing acceptable values that allowsthe user to select a value by clicking.

Provide a way to leave the data entry screen at any time without enteringthe current record. In Figure 7-20 on page 7.14, clicking the CancelOrder Without Entering button cancels the current order and movesthe insertion point back to the beginning of the form.

Provide users with an opportunity to confirm the accuracy of input databefore entering it by displaying a message such as, Add this record?(Y/N). A positive response (Y) adds the record, clears the entry fields,and positions the insertion point in the first field so the user can inputanother record. If the response is negative (N), the current record isnot added and the user can correct the errors.

Provide a means for user to move among fields on the form in a standardorder or in any order they choose. For example, in the form shown inFigure 7-20, pressing the TAB key moves the insertion point to thenext field, and pressing the SHIFT + TAB keys together moves theinsertion point to the previous field. In a graphical user (GUI), the usercan override the standard field order and select field locations with themouse or cursor keys.

Design the screen form layout to match the layout of the sourcedocument. If the source document fields start at the top of the formand run down in a column, the input screen should use the samedesign.

Allow users to add, change, delete, and view records. Figure 7-20 showsa screen that can be used for entering orders, finding items, andfinding customers. After the operator enters a customer identification

Page 122: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

code, the order form displays current values for all appropriate fields.Then the operator can view the data, make changes, enter the order,or cancel without ordering. Messages such as: Apply these changes?(Y/N) or Delete this record? (Y/N) should require users to confirm theactions. Highlighting the letter N as a default response will avoidproblems if the user presses the ENTER key by mistake.

Provide a method to allow users to search for specific information, asshown in Figure 7-20.

Input Errors

Reducing the number of input errors improves data quality. One wayto reduce input errors to eliminate unnecessary data entry, as discussedearlier in the chapter. For example, a user can not misspell a customer nameif it is not entered, or entered automatically based on the user entering thecustomer ID. Similarly, an outdated item price cannot be used if the itemprice is retrieved from a master file instead of being entered manually. The best defense against incorrect data is to identify and correct errorsbefore they enter the system by using data validation checks. A datavalidation check improves input quality by testing data and rejecting anyentry that fails to meet specified conditions. You can design at least eighttypes of data validation checks into the input process.

Sequence checks are used when the data must be in somepredetermined sequence. If the user must enter work orders innumerical sequences, for example, then an out-of-sequence ordernumber indicates an error, must enter transactions chronologically,then a transaction with an out-of-sequence date indicated an error.

Existence checks are used for mandatory data items. For example, if anemployee record requires a Social Security number, an existencecheck would not allow the user to save the record until he or sheenters a suitable value in the SSN field.

Data type checks tests to ensure that a data item fits the required datatype. For example, a numeric field must have only numbers ornumeric symbols, and an alphabetic field can contain only thecharacters. A through Z or the character a through z.

Range checks test data items to verify that they fall between a specifiedminimum and maximum value. The daily hours worked by anemployee, for example, must fall within the range of 0 to 24. When thevalidation check involves a minimum or a maximum value, but notboth, it is called a limit check. Checking that a payment amount isgreater than zero, but not specifying a maximum value, is an exampleof a limit check.

Reasonableness checks identify values that are questionable, but notnecessarily wrong. For example, input payment values of $.05 and$5,000,000.00 both pass a simple limit check for a payment value

Page 123: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

greater than zero, and yet both values could be errors. Similarly, anhour worked value of 24 passes a 0 to 24 range check, but the valueseems unlikely and the system should verify it using a reasonablenesscheck.

Validity checks are used for data items that must have certain values.For example, if an inventory system has 20 valid item classes, thenany input item that does not match one of the valid classes will fail thecheck. Verifying that a customer number on an order matches acustomer number in the customer file is another type of validity check.Because the value entered must refer to another value, that type ofcheck also is called referential integrity, which is discussed moredetail on Chapter 8. Another validity check might verify that a newcustomer number does not much s number already stored in thecustomer master file.

Combination checks are performed on two or more fields to ensure thatthey are consistent or reasonable when considered together. Eventhough all the fields involved in a combination check might pass theirindividual validation checks, the combination of the field values mightbe inconsistent or unreasonable. For example, if an order input for 30units of a particular item has an input discount rate applicable only forpurchases of 100 or more units, then the combination is invalid; eitherthe input order quantity or the input discount rate is incorrect.

Batch controls are totals used to verify input. Batch controls mightcheck data items such as record counts and numeric field totals. Forexample, before entering a batch of orders, a user might calculate thetotal number of orders and the sum of all the order quantities. Whenthe batch of orders is entered, the order system also calculates thesame two totals. If the system totals do not match the input totals,then a data entry error has occurred. Unlike the other validationchecks, batch controls do not identify specific errors. For example, ifthe sum of all the order quantities does not match the batch controltotal, you know only that one or more orders in the batch was enteredincorrectly or meaningful numbers themselves, but are useful forcomparison purposes.

Source Documents

A source document is form used to request and collect input triggeror authorize an input action, and provide a record of the originaltransaction. During the input design stage, you develop source documentsthat are easy to complete and inexpensive. Consider a time when you struggles to complete a poorly designedform. You might have encountered insufficient space, confusinginstructions, or poor organization, all symptoms of incorrect form layout.Good form layout makes the form easy to complete and provides enough

Page 124: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

space, both vertically and horizontally, for users to enter the data. A formshould indicate data entry positions clearly using blank lines or boxes anddescriptive captions. Figure 7-21 on the next page shows severaltechniques used for line and boxed captions on source documents, and anexample of check boxes that effective when a user must select choicesform a list.

Figure 7-21

The sequence of information on a form also is important. Sourcedocuments typically include most of the zones shown in Figure 7-22. Theheading zone usually contains the company name or logo and the titleand number of the form. The control zone contains codes, identificationinformation, numbers, and dates that are used for storing completedforms. The instruction zone contains instructions for completing theform. The main part of the form, called the body zone, usually takes upat least half of the space on the form and contains captions and areas forentering variable data. If totals are included on the form, they appear inthe totals zone. Finally, the authorization zone contains any requiredsignatures.

Information should flow on a form from left to right and top to bottomto match the way users reads documents naturally. That layout makesthe form easy to use for users who enter data into the system using thecompleted form. For example, compare the two different layouts for ahypothetical form shown in Figure 7-23. Notice that the top diagram isconfusing, while the bottom one is logical and easy to follow.

Figure 7-23

Figure 7-24 shows a source document for video club membershipapplication, and Figure 7-25 shows a multipage source document for adog license application also serves as a receipt; the top (white) copy isretained as the source document and the document and the bottom(yellow) coy is returned to the applicant.

Figure 7-24Figure 7-25

Layout and design also is important on Web-based forms. Comparethe paper-based subscription application for INFOWORLD in Figure 7-26 tothe online form shown in Figure 7-27 on the next page. Notice that theWeb-based form uses drop-down list boxes and input masks to make iteasier for the subscriber to fill out.

Figure 7-26

Page 125: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Figure 7-27Input Control

Input control includes the necessary measures to ensure that inputdata is correct, complete, and secure. You must focus on the input controlduring every phase of the input design, starting with source documents thatpromote data accuracy and quality. When a batch input method is used, thecomputer can produce an input log file that identifies and documents thedata entered. Every piece of information should be traceable back to the input datathat produced it. That means that you must provide an audit trail thatrecords the source of each data item and when it entered the system. Inaddition to recording the original source, an audit trail must show how andwhen data is accessed or changed, and by whom. All those actions must belogged in an audit trail file and monitored carefully. A company must have procedure for handling source documents toensure that data is not lost before it enters the system. All source documentsthat originate from outside the organization should be logged when they arereceived. Whenever source documents pass between departments, thetransfer should be recorded.

Data security protects data form loss or damage and recovers datawhen it is lost or damage. Once data is entered, the company should storesource documents in a safe location for some specified length of time. Thecompany should have a record retention policy that meets all legalrequirements and business needs. Audit trail files and reports should be stored and saved. Then, if datafile is damaged, you can use the information to reconstruct the lost data.Data security also involves protecting data from authorized access. Systemsign-on procedures should prevent unauthorized individuals from enteringthe system and users should change their passwords regularly. Havingseveral levels of access also is advisable. For example, a data entry personmight be allowed to view a credit limit, but not change it. Sensitive data canbe encrypted, or coded, in a process called encryption, so only users witdecoding software can read it.

OUTPUT DESIGN ISSUES

Before designing output, ask yourself several questions:What is the purpose of the output?Who wants the information, why it is it needed, and how will it be

used?What specific information will be included?Will the output be printed, viewed on-screen, or both?When will the information be provided, and how often must it be

updated?

Page 126: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Do security or confidentiality issues exist?

The design process should meet with users to find out exactly whatkind of output is need. You can use prototypes and mock-ups to obtainfeedback throughout the design strategies, as you will see in the nextsection.

Types of Output

Although most system output is printed in reports (which isdiscussed in the next section) or displayed on screens, new technologyhas had an enormous impact on how people communicate and obtaininformation. The change especially is true in business informationsystems that require significant se interaction. Figure 7-28 shows that, in addition to traditional printed andscreen output, information is delivered to users by means of theInternet, e-mail, audio output, automated facsimile systems, computeroutput microfilm, and other specialized methods. The type of outputand the technology needed usually decided during the systemsanalysis phase, based on user requirements. Now, in systems designphase, you must design the actual reports, screen forms, and otheroutput delivery methods.

Figure 7-28

Printed Output

Although many organizations strive to reduce the flow of paper andprinted reports, few firms have been able to eliminate printed outputtotally. Because they are portable, printed reports are convenient, andeven necessary in some situations. Many users find it handy to viewscreen output, the print out the information they need for a discussionor business meeting. Printed output also is used in turnarounddocuments, which are output documents that are later entered backinto the same or another information system. Your telephone or utilitybill, for example, might be a turnaround document printed by thecompany’s billing system. When you return the bill with your payment,the bill is scanned into the company’s accounts receivable system torecord your payment accurately. Reports, like any other element of the user-computer interface,should be attractive, professional, and easy to use. Systems analystsshould realize that printed output is highly visible, and managerssometimes judge an entire project by the quality of the reports theyreceive.

Page 127: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Types of ReportsTo be useful, a report must include the information that a user

needs. From a user’s point of view, a report with too little informationis of no value. Too much information, however, can make a reportconfusing and difficult to understand. When designing reports, theessential goal is to match the report to the user’s specific informationneeds. Depending on their job functions, users mighty need one ormore of the reports described below.

Figure 7-30

User InvolvementPrinted reports are an important way of delivering information

to user, so recipients should approve all report designs in advance. Toavoid problems, you should submit each design for approval as youcomplete it, rather than waiting until you finish all report designs. When designing a report, you should prepare a mock-up, orprototype, for users to review. The mock-up should include samplefield values, with enough records to show all the design features,depending on the type of printed output, you can use a wordprocessor, a report generator, or a printer spacing chart to createmock-up reports.

Reports Design PrinciplesPrinted reports must be attractive, professional, and easy to

read. Good report design, like any other aspect of the user interface,requires effort and attention to detail. To produce a well-designed report, the analyst must considerseveral topics, including report headers and footers, page headers andfooters, column headings and alignment, column spacing, field order,and grouping of detail lines. Figure 7-34 shows and example of thosedesign features.

Figure 7-34

Report Design ExampleAlthough the Employee Hours report shown in Figure 7-34

follows many of the design guidelines discussed, you could stillimprove it. Too much detail is on the page, forcing users to search forthe information they need. Can you see any material that you couldeliminate? If most employees do not work overtime, the overtime hoursshould stand out. You can do that by not printing 0.0 when overtimehours are zero. Repeating the shop number for each employee also isunnecessary, because the employees are grouped by shop number.

Page 128: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Another way to avoid repeating the shop number is to use a groupheader to identify each shop, and eliminate the SHOP NUMBER filedaltogether. Finally, most of the employees in a shop, are clerks. Themanager and assistant manager titles would stand out better if theword Clerk were not printed for all clerical employees. Those changeshave been made in Figure 7-36. The EMPLOYEE NAME and POSITIONcolumns also were exchanged to avoid a larger gap between namesand the REGULAR HOURS column.

Figure 7-36

Output Control and SecurityOutput must be accurate, complete, current, and secure.

Companies use various output control methods to maintain outputintegrity and security. For example, every report should include anappropriate title, report number code, printing date, and time periodcovered. Reports should have pages that are numbered consecutively,identified as Page xx of xx, and the end of the report should be labeledclearly, control totals and record counts should be reconciled againstinput totals and counts. Reports should be selected at random for athorough check of correctness and completeness. All processing errorsor interruptions must be logged so they can be analyzed.

Output security protects privacy rights and shields theorganization’s proprietary data from a theft or unauthorized access. Toensure output security, you must perform several important tasks.First, limit the number of printed copies and use a tracking procedureto account for each copy. When printed output is distributed from acentral location, you should use specific procedures to ensure that theoutput is delivered to authorize recipients only. That is especially truewhen reports contain sensitive information, such as payroll data. Allsensitive reports should be stored in secure areas. All pages ofconfidential reports should be labeled appropriately.

`As shown in Figure 7-41, it is important to shred sensitivereports, out-of-date reports, and output from aborted print runs.Blank check forms must be stored in a secure location and beinventoried regularly to verify that no forms are missing. If signaturestamps are used, they must be stored in a secure location away fromthe forms storage location. In more organizations, the IT department is responsible foroutput control and security measure. Systems analysis must beconcerned with security issues as they design, implement, and supportinformation systems. Whenever possible, security should be designedinto the system by using passwords, shielding sensitive data, andcontrolling user access, physical security will always be necessary,

Page 129: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

especially in the case of printed output that is tangible and can beviewed and handled easily. As part of the trend toward enterprise-wide data management,many companies have installed diskless workstations, which offersecurity advantages. A diskless workstation as shown Figure 7-42,is a network terminal that supports a full-featured user interface, butlimits the printing or copying of data, except to certain networkresources that can be mentioned and controlled more easily.

Figure 7-41Figure 7-42

CHAPTER 8Data Design

In this, the second of three chapters in the system design phaseof the SDLC, you will focus on data design and management issuesthat are necessary to construct the physical model of the informationsystem.

INTRODUCTION

In the systems analysis phase, you created data flow diagrams andidentified data elements, data flows, and data stores to build a logicaldesign for the information system. In this part of the systems designphase you will develop a physical plan for data organization, storage,and retrieval. This chapter begins with a review of data design concepts andterminology, then discusses relationships among data objects and howto draw entity-relationship diagrams that describes those associations.You also will learn how to use normalization concepts to build aneffective database design. The chapter concludes with a discussion ofphysical design issues, logical and physical records, data storageamong formats, and data controls.

Objective

When you finish this chapter, you will be able to:Explain data design concepts and data structures

Describe file processing systems and various types of files

Describe database systems, their characteristics, andadvantages

Page 130: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Define the components of a database managementsystem (DBMS)

Explain the concepts of data warehousing and datamining

Understand data design terminology, including entities,fields, common fields, records, and files, tables, and keyfields

Explain data relationship and draw an entity-relationshipdiagram

Define cardinality, cardinality notation, and crow’s footnotation

Explain normalization, including examples of first, secondand third normal form

Describe hierarchical, network, relational, andobject-oriented database models

Differentiate between logical and physical records, anddiscuss data storage formats and date fields

Explain data control measures

DATA DESIGN CONCEPTS

Before constructing an information system, a systems analyst mustunderstand basic data design concepts, including how a data is structuredand the characteristics of file-oriented and database systems. A systemsanalyst also must understand data warehousing, data mining, and thecomponents of a database management system.

Data Structures

A file contains data about people, places, things, or even events thatinteract with the information system. For example, a file might consist if dataabout customers, products, orders, or suppliers. Depending on businessrequirements, an information system can be designed as a file-orientedsystem or a database system. A file-oriented system processes one or more individual data filesusing a method called file-processing. In the example shown in Figure 8-1,an auto repair shop might use two separate file-oriented systems: a Work

Page 131: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Records system that maintains a JOB data file. Notice that some informationis duplicated in both data files. A database consists of linked data files, also called tables, that forman overall data structure. Compared to file processing, a databaseenvironment offers greater flexibility and efficiency. For example, Figure 8-1shows a database that links the MECHANIC file and the JOB FILE. Notice thatthe database design avoids duplication—the MECHANIC and JOB files becomecomponents of a larger data structure. A database management system(DBMS) is a collection of tools, features, and interfaces that enables users toadd, update, manage, access, and analyze data in database File processing systems still exist to handle specific applications, butmost information systems today are designed as databases. The pros andcons of file processing compared with database systems are discussed in thefollowing section.

Overview of File Processing

Some systems use file processing to handle large volumes ofstructured data on a regular basis. Many older systems utilizedfile-processing designs because that approach was well suited to mainframehardware and batch input. Although less common today, file processing canbe more efficient and cost less than a DBMS in certain situations. Forexample, consider a credit card company that posts thousands of dailytransactions from a TRANSACTION file to customer balances stored in aCUSTOMER file, as shown in Figure 8-3. For that relatively simple process,file processing is highly effective. In typical file processing environment, a company might have threedepartments, each with its own information system and data files. Severalpotential problems exist in a file-processing environment. The first problem isdata redundancy, which means that data common to two or moreinformation systems is stored in several places. Data redundancy requiresmore storage space, and maintaining and updating data in several locationsis expensive. Secondly, data integrity problems can occur if updates arenot applied in every file. Changing the data in only one of the systems willcause inconsistent data and result in incorrect information in the secondsystem. The third problem is the rigid data structure of a typicalfile-processing environment. Businesses must make decisions based oncompany-wide data, and managers often require information from multiplebusiness units and departments. In a file-processing environment, thatmeans retrieving information from independent, file-based systems, which isslow and inefficient. A file-oriented information system uses various types of files, includingmaster files, table files, transaction files, work files, security files, and historyfiles.

Page 132: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

MASTER FILESA master files stores relatively permanent data about an entity. For

example, a PRODUCT master file contains one logical record for each productthe company sells. The quantity-on-hand field in each record might changedaily, but the number of file records does not change unless the companyadds a new product or discontinues an old one. Master files might includedata for customers, sales representatives, students, employees, or patients.

TABLE FILESA table files contains reference data used by the information system.

As with master files, table files are relatively permanent and are not updatedby the information system. Examples of table files include tax tables andpostage rate tables.

TRANSACTION FILESA transaction file stores records that contain day-to-day business

and operational data. A transaction file is an input file that updates a masterfile; after the update is completed, the transaction file has served itspurpose. Unless they are saved for security or backup reasons, transactionfiles are temporary files. An example of a transaction file is a charges andpayments file that updates a customer balance file.

WORK FILESA work file is a temporary file created by an information system foe a

single task. Most often a work file is created by one process in theinformation system and used by another process within the same system.Work files also are called scratch files. Work files can contain copies ofmaster file records or various other records that are needed temporarily.Example of work files include sorted files and report files that hold outputreports until they are printed.

SECURITY FILESA security file is created and saved for backup and recovery

purposes.Examples of security files include audit trail files and backups of master,table, and transaction files. New security files must be created regularly toreplace outdated files.

HISTORY FILESA history file is a file copy created and saved for historical or

archiving purposes. Now history files, unlike new security files, do not replacethe old files. In some cases, inactive master file records are deletedperiodically and added to a special history file. For example, records forstudents who have not registered for any course in the last two semestersmight be deleted from the active student master file and added to an inactive

Page 133: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

student file, which is a type of history file that can be used for queries orreports. If an inactive student registers again, his or her data record isdeleted from the inactive student file and added back to the active studentmaster file.

Overview of Database Systems

A properly designed database offers a solution to the problems of fileprocessing. (Keep in mind, however, that a poorly designed database canactually create more problems.) A database provides an overall frameworkthat avoids data redundancy and supports a real-time, dynamicenvironment. In a file-processing environment, data files are designed to fitindividual business systems. In contrast, in a database environment, severalsystems can be built around a single database. Figure 8-4 shows a databaseenvironment with a database serving five separate information systems.

Figure 8-4

From a user’s point of view, the main advantage of a DBMS is that itoffers timely, interactive, and flexible data access. Specific DBMS advantagesinclude the following:

Scalability. Scalability means that a system can be expanded,modified, or downsized easily to meet the rapid changing needsof a business enterprise.Better support for client/server systems. In a client/serversystem, processing is distributed throughout the organization.Client/server systems require the power and flexibility of adatabase design. You will learn more about client/serversystems in Chapter 9.Economy of scale. Database design allows better utilization ofhardware. If a company maintains an enterprise-wide database, processing is less expensive using a powerful mainframeserver instead of using several smaller computers. The inherentefficiency of high-volume processing o larger computers is calledeconomy of scale.Sharing of data. Data can be shared across the enterprise,allowing more users to access more data. Because the databasedesign is flexible, users can view the same information theyneed to do their jobs.

Page 134: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Balancing conflicting requirements. Typically, a DBMS ismanaged by a person called database administrator (DBA) ,who assesses overall requirements and maintains the databasefor the benefit of the entire organization rather than a singledepartment or user.Enforcement of standards. Effective database administrationensures that standards for data names, formats, anddocumentation are followed uniformly throughout theorganization.Controlled redundancy. Because the data is stored in a singledatabase, data items do not need to be duplicated in separatefiles for various systems. Even where some duplication might bedesirable for performance reasons, the database approachallows control of the redundancy.Security. The DBA can define authorization procedures to ensurethat only legitimate users can access the database and canallow different users to have different levels of access. MostDBMSs provide sophisticated security support.Increased programmer productivity. Programmers do not haveto create the underlying file structure foe a database. Thatallows them to concentrate on logical design and, therefore, anew database application can be developed more quickly than afile-oriented system.Data independence. Systems that interact with a DBMS arerelatively independent of how the physical data is maintained.That design provides the DBA flexibility to alter data structureswithout modifying information systems that use the data.

Although a DBMS has many advantages, there are some tradeoffs.Because DBMSs are powerful, they require more expensive hardware,software, and data networks capable of supporting a multiuserenvironment. In addition, a DBMS is more complex than file processingsystem, therefore the learning curve for systems analysts, databaseadministrators, and users usually is steeper, which increases TCO(Total Cost of Ownership). Finally, procedures for security, backup,and recovery are more complicated and critical in a databaseenvironment. When a company maintains all vital data resources in adatabase, a DBMS failure seriously disrupts business operations. Although the trend is toward enterprise-wide database design,many companies still use a combination of centralized DBMSs andsmaller, department-level data management systems. Why is this so?Most large businesses view data as a company-wide resource thatmust be accessible to users throughout the company. At the sametime, other factors encourage a decentralized design, includingnetwork expense; a reluctance to move away from smaller, more

Page 135: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

flexible systems; and a realization that enterprise-wide DBMSs van behighly complex and expensive to maintain. The compromise, in manycases, is a client/server design, where processing is shared by severalcomputers. Client/server systems are described in Chapter 9. As withmany design decisions, the best solution depends on the individualcircumstances.

DBMS Components

A DBMS provides an interface between a database and user whoneed to access the data. Although users are concerned primarily withan easy-to-use interface and support for their business requirements,a systems analyst must understand all of the components of a DBMS.In addition to interfaces for users, database administrators, andrelated systems, a DBMS also has a data manipulation language aschema, and a physical data repository, as shown in Figure 8-5.

Figure 8-5

INTERFACES FOR USERS, DATABASE ADMINISTRATORS, ANFRELATED SYSTEMS

When users, database administrators, and related informationsystems request data and services, the DBMS processes the request,manipulates the data, and provides a response.

Users. Users typically work with predefined queries andswitchboard commands, but also use query languages to accessstored data. A query language allows a user to specify a taskwithout specifying how the task will be accomplished. Somequery languages use natural language commands that resembleordinary English sentences. With a query-by-example (QBE)language, the user provides an example of the data requested.Many database programs also generate SQL (StructuredQuery Language), which is a query language that allows PCusers to communicate with servers and mainframe computers.Figure 8-6 shows a QBE request for all Bright Silver Metallic orBlack 2001 PT Cruisers with roof racks. The QBE requestgenerates the SQL commands shown at the bottom of Figure8-6.

Figure 8-6

Database administrators. A DBA is responsible for DBMSmanagement and support. DBAs are concerned with datasecurity and integrity, preventing unauthorized access,providing backup and recovery, audit trails, maintaining the

Page 136: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

database, and supporting user needs. Most DBMSs providingutility programs to assist the DBA in creating and updating datastructures, collecting and reporting patterns of database usage,and detecting and reporting database irregularities.Related information systems. A DBMS might support severalrelated information systems that provide input to, and requirespecific data from, the DBMS. For example, a database mightsupport five separate systems, as shown in Figure 8-4. Unlike auser interface, no human intervention is required for two-waycommunication between the DBMS and the related systems.

DATA MANIPULATION LANGUAGEA data manipulation language (DML) controls database

operations, including storing, retrieving, updating, and deleting data.Most commercial DBMSs, such as Oracle and IBM‘s DB/2 use a DML.Some database products such as Microsoft Access, also provide aneasy-to-use graphical environment that enables users to controloperations with menu-driven commands.

SCHEMAThe complete definition of a database, including descriptions of

all fields, records, and relationships, is called a schema. You also candefine one or more subschemas. A subschema is a view of thedatabase used by one or more systems or users. A subschema definesonly those portions of the database that particular system or userneeds or is allowed to access. For example, to protect individualprivacy, you might not want to allow a project management system toretrieve employee pay rates. In that case, the project managementsystem subschema would not include the pay rate field. Databasedesigners also use subschemas to restrict the level of accesspermitted. For example, specific users, systems, or locations might bepermitted to create, retrieve, update, or delete data, depending ontheir needs and the company’s security policies.

PHYSICAL DATA REPOSITORYIn Chapter 4, you learned about a data dictionary, which

describes all data elements included in the logical design. At this stageof the systems development process, the data dictionary istransformed into a physical data repository, which also contains theschema and subschemas. The physical repository might be centralized,or distributed at several locations. Physical design issues are discussedfurther in Chapter 9, where system architecture is described.

Page 137: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Data Warehousing

Many large companies use software packages that gather andstore data in special configuration called data warehouses. A datawarehouse is an integrated collection of data that can supportmanagement analysis and decision making. For example, in a typicalcompany, data is generated by transaction-based systems, such asorder entry, inventory, accounts receivable, and retrieve the dataeasily from the order entry system. On the other hand, suppose that a user wants to see May salesresults for the sales re assigned to a specific customer, as shown in Figure 8-7 on the next page. Although the information systems areinteractive, it is difficult for a user to extract specific data that spansseveral systems and time frames; the average user might needassistance from the IT staff. Rather than accessing separate systems, a data warehousestores transaction data in a format that allows users to access,combine, and analyze the data. A data warehouse allows users tospecify certain dimensions, or characteristics. In a consumerproducts data warehouse, dimensions might include time, customer,and sales representative. By selecting values for each characteristic, auser can obtain multidimensional information from the stored data.

Figure 8-7

DATA DESIGN TERMINOLOGY

Using the data design concepts discussed in the previous section, asystems analyst can select a strategy and begin to construct a datamanagement system. The first step is to understand data designterminology.

DefinitionsFigure 8-9 shows a table with fields and records that describe an

entity called CUSTOMER.

Figure 8-9

ENTITY An entity is a person, place, thing, or event for which data iscollected and maintained. For example, an online sales system includesentities named CUSTOMER, ORDER, PRODUCT, and SUPPLIER. When youprepared DFDs during the systems analysis phase, you identified variousentities during the systems analysis phase, you identified various entities anddata store. Now you will consider the relationships among the entities.

Page 138: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

FIELD A field, also called an attribute, is a single characteristicor fact about an entity. In the example shown in Figure 8-9, the entityname CUSTOMER has fields to store data about each customer, suchas First Name, Last Name, and Address. A common field is anattribute that appears in more than one entity. Common fields can beused to link entities in various types of relationships.

RECORD A record, also called a tuple (rhymes with couple), is aset of related fields that describes one instance, or member of anentity, such as one customer, one order, or one product. A recordmight have one dozens of fields, depending on what information isneeded.

FILE AND TABLE Records are grouped into files or tables,depending on the data design model. In a file-oriented system, a set of related records forms a filethat contains data about a person, place, thing, or event, as youlearned in this chapter. For example, if an inventory system tracks1,500 products, the PRODUCT file has 1,500 records — one records foreach product. Often, data in files can be structured, or organized, in amanner that speeds up processing in a file-oriented system. In a database environment, a set of related records is groupedinto a table that stores data about a specific entity. Tables are shownas two-dimensional structures that consist of vertical columnsrepresenting fields and horizontal rows for records. For example, asales database system might have separate tables called CUSTOMER,ORDER, PRODUCT, and SUPPLIER. Although they can have different meanings in a specific context,the terms file and table often can be used interchangeably.

Key Fields

During the systems design phase, you use key fields toorganize, access, and maintain data structures. The four types of keysare primary keys, candidate keys, foreign keys, and secondary keys.

PRIMARY KEYS A primary key is a field or combination offields that uniquely and minimally identifies a particular member of anentity. For example, in a customer table the customer number isunique primary key because no two customers can have the same

Page 139: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

customer number. That key also is minimal because it contains noinformation beyond what is needed to identify the customer. In Figure8-9 Customer ID is an example of primary key based on a single field.For example, if a student registers for three courses, his or herstudent number will appear in three records in the registrationsystem. If one of those courses has 20 students, 20 separate recordswill exist for that course number — one record for each student whoregistered. In the registration file, neither the student number nor thecourse ID is unique, so neither field can be a primary key. To identifya specific student in a specific course, the primary key must be acombination of student number and course ID. In that case, theprimary key is a combination key, or a multivalued key. Figure 8-10 shows four different tables. The first three tablesgave single-field primary keys. Notice that in the fourth table,however, the primary key is a combination of two foreign key fields:STUDENT–NUMBER and COURSE-ID.

CANDIDATE KEYS Sometimes you have a choice of fields or fieldcombination to use as the primary key. Any field that could serve as aprimary key is called a candidate key. For example, if everyemployee has a unique employee number, then you could use eitherthe employee number or the Social Security number as a primary key.Because you can designate only one field as a primary key, youshould select the field that contains the least amount of data and isthe easiest to use. Any field that is not a primary key or candidate keyis called a nonkey field. The primary keys shown in Figure 8-10 on the previous pagealso are candidate keys. Two other candidate keys exist: theSOCIAL-SECURITY-NUMBER field in the ADVISOR table and theCOURSE-DESCRIPTION field in the COURSE table.

FOREIGN KEYS Recall that a common field exists in more thanone table and can be used to form a relationship, or link, between thetables. For example, in Figure 8-10, the ADVISOR NUMBER fieldappears in both the STUDENT table and the ADVISOR table, where ituniquely identifies each advisor, and is a foreign key in the STUDENTtable. A foreign key is a field in table that must match a primary keyvalue in another table in order to establish the relationship betweenthe two tables.

Page 140: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Unlike a primary key, a foreign key need not be unique. Forexample, Carlton Smith has advisor number 49. The value 49 must bea unique value in the ADVISOR table because it is the primary key,but 49 can appear any number of times in the STUDENT table, wherethe advisor number serves as a foreign key. Figure 8-10 also shows how two foreign keys can combine toform a primary key in another table. The two-fields that form theprimary key for the GRADE table also are both foreign keys: theSTUDENT-NUMBER field must match a student number in theSTUDENT table and the COURSE-ID field must match one of thecourse IDs in the COURSE table. As shown in Figure 8-10, foreign keys are not unique. Aparticular advisor number can appear several times in the STUDENTtable — once for each student assigned to that advisor. In the GRADEtable, the foreign keys based on student numbers and course IDs canappear any number of times. Because the two foreign keys form aunique primary key, however, only one combination of a specificstudent and a specific course can exist. For example, only onecombined instance of student 1035 and course CSC151 can exist inthe GRADE table, or else there could be more than one grade recordfor a specific course.

SECONDARY KEYS A secondary key is a field or combination offields that can be used to access or retrieve records. Secondary keyvalues are not unique. For example, if you need to records for onlythose customers in a specific ZIP code, you would use the ZIP codefield as a secondary key. Secondary keys also can be used to sort ordisplay records in a certain order. For example, you could use the GPAfield in a STUDENT file to display records for all students in gradepoint order. The need for a secondary key arises because a table can haveonly primary key. In a CUSTOMER file the CUSTOMER-NUMBER is theprimary key. You might know a customer’s name, however, but northe customer’s number, however, but not the customer’s number. Ifyou assign the CUSTOMER-NAME field as a secondary key, then youcan retrieve records by using the CUSTOMER-NAME field. In Figure 8-10, student name and advisor names are identifiedas secondary keys, but other fields also could be used. For example,to find all students who have a particular advisor, you could use theADVISOR-NUMBER field in the STUDENT file as a secondary key.

Page 141: System Analysis and Design

F.C Ledesma Avenue, San Carlos City, Negros OccidentalTel. #: (034) 312-6189/(034) 729-4327

Referential Integrity

In Chapter 7, you learned that validity checks can help avoiddata input errors. One type of validity check, called referentialintegrity, is a set of rules that avoids data inconsistency and qualityproblems. In a relational database, referential integrity means that aforeign key value cannot be entered in one table unless it matches anexisting primary key in another table. For example, referentialintegrity would prevent you from entering a customer table. Withoutreferential integrity, you might have an order called an orphan,because it had no related customer. In the example shown in Figure 8-10 on page 8-11, referentialintegrity will not allow a user to enter an advisor number (foreign keyvalue) in the STUDENT table unless a valid advisor number (primarykey value) already exists in the ADVISOR table. Referential integrity also can prevent the deletion of a record ifthe record has a primary key that matches foreign keys in anothertable. For example,