Sunteți pe pagina 1din 324

System Analysis & Design

KSOU

SYSTEM ANALYSIS AND DESIGN


Course Ob e!ti"e The overriding objective of the course is to provide students exposure to the theory of systems analysis and design. It describes fundamental concepts and trends that provide the context of Systems Analysis and Design methods. After successfully completing the course, students will have the following abilities to describe the different major approaches to systems analysis and design and ability to describe the tools used in systems analysis and design and the management of these analysis and design projects. Mo#ule $ Unit $ % Data an# In&ormation' Distinction between Data and Information, Types of data, Types of Information, haracteristics of information, Attributes of information !uality. Unit ( % Systems Con!e)ts' Definition, haracteristics of a system" organi#ation, Interaction, Interdependence, Integration, entral objective. $lements of systems" Inputs, outputs, %rocesses, ontrol, &eedbac', $nvironment, (oundaries and Interface, Types of system" %hysical or Abstract, )pen or closed system. Unit * % In&ormation systems' *hat is an information system+, Trends in Information system, Information system resources, Types of Information system" )peration support and ,anagement support. Mo#ule ( Unit + % System De"elo)ment Li&e Cy!le' *hat is system development, beginning of system development, system development methodology. Steps in system development life cycle" %reliminary Investigation , -e!uirements analysis or system analysis , Design of System, Development of Software, System Testing , Implementation and ,aintenance . Unit , % -easibility Analysis' Steps in feasibility Analysis, Types of feasibility studies, ase Study on identifying and examining alternative solutions Unit . / System Analyst' *ho is a system analyst+, -oles of system analyst" hange agent, Investigator . ,onitor, Architect, %sychologist, Salesperson, ,otivator, Information system resources, System analyst s'ill sets" Technical, ,anagerial, ommunication and analytical.

%$%

System Analysis & Design

KSOU

Mo#ule * Unit 0 % In&ormation Gat1ering Te!1ni2ues $' Sam)ling & In"estigation3 Inter"ie4ing' /inds of information sought, Interview plan, Interview conduction, Interview report. Unit 5 / In&ormation Gat1ering Te!1ni2ues (' 6uestionnaires' /inds of information sought, Different Scales in 0uestionnaires, 1sing !uestionnaires, Onsite obser"ation' )bserving the )rgani#ations $nvironment Unit 7 / In&ormation Gat1ering Te!1ni2ue *' 8rototy)ing' %rototyping approaches, %rototype development, 1sers Involvement in %rototyping. Advantages and disadvantages of different information gathering techni!ues. Mo#ule + Unit $9 / System Analysis Tools $' Data -lo4 Diagrams' Data &low diagrams, D&D Symbols, 2ogical and physical D&Ds, 2eveling or decomposition of D&D, 3uidelines for drawing D&Ds, -ules for stopping decomposition. Unit $$ / System Analysis Tools (' Case Stu#ies on D-Ds' )rder %rocessing System, &ood ordering system, Travel Agency, )nline university registration, A -eal $state Inc 4A-$I5. Unit $( / System Analysis Tools *' Data Di!tionary' Data repository, creating and using data dictionaries, Ma:ing Stru!ture# De!isions' Structured $nglish, Decision tree, Decision tables. Mo#ule , Unit $* / In)ut Design' Data processing, Input implementation methods 6 A taxonomy, Input design objectives . guidelines, &orm design, Screen design, 31I controls, $xtending input design to web, Input controls, Tools for input design and prototyping. Unit $+ / Out)ut Design' Types of outputs" Internal, external and turnaround, )utput implementation methods 6 A taxonomy, )utput design guidelines, )utput (ias, -eport design, Screen output design, $xtending output design to web. Unit $, / Database or &ile Design' Database design objectives, databases, Data concepts, Database design guidelines. onventional files and

%(%

System Analysis & Design

KSOU

Mo#ule . Unit $. / System Design' System design, 2ogical and physical design, System design elements, Structured design, System design approaches" ,odern structured design7 Structure charts, 8AD, -AD, )bject oriented design, Information engineering. Unit $0 / 8ro e!t Management' *hat is project management+, %roject management functions, %roject management tools and techni!ues" 3antt chart, (ar hart, *(S and %$-T. Unit $5 / 6uality Assuran!e' 0uality Assurance 6 Definition, Approaches to !uality, Total !uality management, Testing, maintenance and auditing. UNIT 1

DATA A9D I9&)-,ATI)9


Data
Data refers to a set of discrete objective facts about an event or a process. Data may be numerical !uantities or other attributes derived from observation, experiment, or calculation. The term data is derived from the 2atin word datum which means :that which is given: Data is often viewed as a lowest level of abstraction from which information and 4or5 'nowledge is derived. Data has no significance beyond its existence. Data can be meaningful only when a human or a machine interprets its context.

Some of the characteristics of data are" Data represents unorgani#ed and unprocessed facts 1sually data is static in nature. It can represent a set of discrete facts about events. Data is a prere!uisite to information.

Ty)es o& #ata

%*%

System Analysis & Design

KSOU

Data can be classified into different types. The following table ;.; illustrates some of the commonly used types of data. Data Alphanumeric data Image data Audio data <ideo data ;e)resente# by 9umbers, letters, and other characters 3raphic images or pictures Sound, noise, tones ,oving images or pictures
Table $<$ Types of data

In&ormation
Information is a collection of facts organi#ed in such a way that they have additional value beyond the value of the facts themselves. Information is data that has been interpreted or processed so that it has meaning for the user. In simpler terms, data endowed with relevance and purpose is information. &or instance consider the following set of numbers ;=.>, ;?.>, ;=.>, ;@.A, ;?.>,;A.A, etc. *hat does the set convey+ A students of a deemed university may consider it as his Bher ontinuous Internal $valuation mar's. A doctor may treat it as thermometer reading of temperature a patient. A programmer may treat it as output or set of real numbers which are input of Bto his Bher program. A researcher visuali#es it as set of simulated data obtained through his Bher experiment or simulation. Thus the interpretation differs from person to person with respect to a particular context. Cowever, if we say the temperature a patient ta'en every two hour ;=.>, ;?.>, ;=.>, ;@.A, ;?.>,;A.A then it is information. Anyone who visuali#es this information cannot interpret in any other way.

%+%

System Analysis & Design

KSOU

Similarly consider another example Dit is rainingE. $ven this is a data because it doesnFt convey the cause and effect. (ut Dthe temperature dropped ;A degrees and then it started rainingE, is information as it embodies the cause and effect of that cause.

Con"erting #ata into in&ormation Data becomes information when it is processed. &or example, consider a mar'eting company, set of raw sales figures is data. The sales manager may need to analy#e the sales performance of each region thereby solving the problem of poor sales in one region or deciding the future focus of a sales drive. Therefore, the raw data needs to be processed into a sales report, which provides information.

Data

Transformation
-ig $<$ Process of converting data to information

Information

The following table illustrates how the huge amount of data that manager may receive could be processed to create useful information. Data &inancial performance Sales figures ,ar'et and competition data %roduction output osts of resources or other inputs 8ossible met1o#s o& !on"erting #ata into in&ormation %resent complex data as a chart or graph %lot charts and identify trends &ind average or typical values ,onitor changes over time and forecast future values ompare figures and identify similarities or differences

Table $<( Converting data to information

Note'
%,%

System Analysis & Design

KSOU

ollecting data is an expensive process. To merit the effort, one needs to be very clear about why you need it. %roper planning must be done so that only re!uired data is obtained for processing and usage. &or organi#ations, the 'ey reason behind collection of data is to monitor and improve performance. Some of the important guidelines for data collection include ollect data on the indicators that really do affect performance ollect data from reliable sources ollect data, which can be converted into information.

C1ara!teristi!s o& in&ormation


Information must posses the following characteristics for it to be useful and !ualitative in nature. These include" ompleteness Accuracy Timeliness onsistency <alidity Appropriateness -elevance 1sability Accessibility

%.%

System Analysis & Design

KSOU

Com)leteness Information must be complete, else it leads to incorrect decision7ma'ing.

A!!ura!y Accurate information is the best 'ind of information. Accurate information is one, which is reliable and from a correct source. Timeliness :Timely: means, :appearing at the right momentE. Information needs to be available when itGs needed. Also, information needs to be up7to7date. Consisten!y The source of information should not change at different places, or contradicts itself. It is the sign that it is untrustworthy. =ali#ity To be valuable, information should be unbiased, representative and verifiable. If information neglects 'ey topics or issues, it might not represent the full 'nowledge base you need to 'now. If information cannot be independently verified, it should be treated with utmost caution. A))ro)riateness Information should be presented in a way that is meaningful, relevant and formatted to suit the userFs needs ;ele"an!e

%0%

System Analysis & Design

KSOU

The Information should be relevant to the user !uires. Information is not universally relevant and valuable, it is valuable and relevant only to a person who needs it and can use it. Usability The information has to be presented to the users to understand and explore it during decision7ma'ing activities.

%5%

System Analysis & Design

KSOU

A!!essibility 1p7to7date information should be accessible at any time to authori#ed or relevant users only.

/nowledge
/nowledge is a subset of information. It is a subset that has been extracted, filtered, or formatted in a very special way. ,ore specifically, 'nowledge is information that has been subjected to and passed tests of validation. &or instance, scientific 'nowledge is information i.e hypotheses and theories validated by the rules and tests applied to it by some scientific community. )rgani#ational 'nowledge is information validated by the rules and tests of the organi#ation see'ing 'nowledge. The !uality of the 'nowledge depends on the tendency of validation rules and tests to produce 'nowledge that improves organi#ational performance. In simpler terms, 'nowledge is a combination of information, experience and insight that may benefit the individual or the organi#ation. /nowledge is based on information that is organi#ed, synthesi#ed, or summari#ed to enhance comprehension, awareness, or understanding. /nowledge represents a state or potential for action and decisions in a person, organi#ation or a group. It could be changed in the process of learning, which causes changes in understanding, decision or action. Ty)es o& Kno4le#ge There are two 'inds of 'nowledge namely, explicit and tacit. -ormal3 e>)li!it or generally a"ailable :no4le#ge< This is 'nowledge which can be captured, articulated in formal language B records and transmitted among individuals of the organi#ation. $xample of such 'nowledge includes policies and operating procedures of a firm.

%7%

System Analysis & Design

KSOU

Instin!ti"e3 sub!ons!ious3 ta!it or 1i##en :no4le#ge< personal 'nowledge embedded in individuals based on their experience and involving such intangible factors as personal belief, perspective, and values.
build and

applied for

Data

a purpose

Information

process

/nowledge

-ig $<( From data to information to knowledge

Con"erting in&ormation to :no4le#ge The tremendous amount of information that is generated is only useful if it can be applied to create 'nowledge within the organi#ation. (uilding and managing 'nowledge is one of the greatest challenges that the organi#ations are facing. &igure ;.H illustrates the process of information conversion into 'nowledge.

% $9 %

System Analysis & Design

KSOU

19IT H
SYSTEMS CONCE8TS
Learning Ob e!ti"es' This unit gives a brief overview of general system concepts such as Definition of system, haracteristics of a system namely, organi#ation, Interaction, Interdependence, Integration, entral objective. 2ater part concentrates on elements of systems namely input, output, process, control . feedbac', environment, boundaries and interface. The different types of system, physical or abstract, open or closed system is also delt.

De&inition o& System


A system is a set of elements or components that interact to accomplish goals. The term System is derived from the 3ree' word systIma which means a set of interacting or interdependent entities, real or abstract, forming an integrated whole. In simpler terms, a system is an organi#ed relationship among functioning unitFs or components. *ith reference to a business organi#ation system or specifically a business system is a group of interrelated procedures used for a business function, with an identifiable boundary, wor'ing together for some purpose.

A system can be defined in many ways. Some of these include" A regularly interacting or interdependent group of items forming a unified whole. An organi#ed set of doctrines, ideas, or principles, usually intended to explain the arrangements or wor'ing of a systematic whole. An organi#ed or established procedure. An organi#ed society or social situation regarded as stultifying establishment. A System is a set of related components that produces specific results. An organi#ation consisting of interrelated departments or subsystems for carrying out specific business objectives is a business system.

System Con!e)t Im)li!ations


% $$ %

System Analysis & Design

KSOU

*e can observe three implications from the concept of system. They are" A system must be designed to achieve some set objectives. Interrelationships . interdependence must exist among the components of the system. The objectives of the organi#ation i.e the system must have a higher priority than that of the subsystems.

C1ara!teristi!s o& a system


Systems have five important characteristics namely organi#ation, interaction, interdependence, integration and central objective. Organi?ation The term organi#ation here implies to the structure . order of the system. It can be viewed as the arrangement of components that help to achieve the goals and objectives. It is a collection of one or more subsystems. Intera!tion A system many have many subsystems B components. The way in which each component functions with other components is called interaction. &or instance, consider a ,anufacturing firm, the sales unit must interact with production unit so that they have sufficient inventory level as and when the demand is made. The sales unit may also interact with finance unit for employee payments. Inter#e)en#en!e Some or all components or subsystems of the system may be dependent on one another. They may be coordinated . lin'ed together according to some plan. In simpler terms, if the output of one subsystem is input for the proper functioning of another subsystem, then

% $( %

System Analysis & Design

KSOU

the second subsystems is said to be interdependent on first. This interdependence may continue li'e a chain with in a system. &or example the outcome of the raw material unit of a firm i.e the processed raw material may be input to the production unit. The finished products manufactured by production unit may be input to testing unit and so on. Integration The term integration refers to the holism of system. It tells how different subsystem or components are tied together to form a system .It also implies how the different parts of system wor' together within the system even though each part performs a uni!ue function. &or a ,anufacturing firm to produce re!uired products with a very good !uality and at a reasonable price, all other subunits li'e procurement, production, finance, !uality control . testing and sales must wor' with coordination. Central Ob e!ti"e )bjectives are the main goals B aim to be achieved through the system. The systems exists to achieve or to help achieve these objectives. )bjectives may be real or stated. )bjectives may be long7term objectives or short7term objectives.

Ty)es o& systems


There are numerous types of systems that exist and we also come across them in our day7to7day life. Systems may be classified into different types. 9ormally all the systems are categori#ed into two categories namely natural systems and man7made systems.
% $* %

System Analysis & Design

KSOU

Natural systems There are thousands of systems that exist in nature. *e can further classify natural systems into two basic subcategories namely, physical systems and living systems. %hysical systems include diverse systems li'e Stellar systems" galaxies, solar systems, etc. 3eological systems" rivers, mountain ranges, etc. 2iving systems encompass all of the animals, plants and human beings. The living systems, whether at the level of the cell, the organ, the organism, the group, the organi#ation, the society, or the supranational system, all consists of around ;J subsystems. Some of these include the boundary, the distributor, the converter, the producer, the extruder, the channel and net, the decoder, the memory, etc. Man%ma#e systems ,an7made systems are the systems developed to support the human wor'ing ability. Some of the man made systems include" Social systems" organi#ations of laws, doctrines, customs, etc. Transportation systems" networ's of highways, canals and airlines. ommunication systems" telephone, telex and messaging system ,anufacturing systems" factories, assembly lines, etc.

&inancial systems" accounting, inventory, general ledger and so on. Today because of technology advancements, we can observe that most of these systems include computers. Cowever there are still some systems may not being automated because of reasons li'e cost, convenience, security, maintainability and politics. ,ost of the man7made systems, including computer systems can interact with physical systems and living systems. In some cases, automated systems are being designed to replace living systems. And in some cases living systems are considered as components of automated systems. Automate# systems Automated systems are the man7made systems that interact with or are controlled by one or more computers. Although many different 'inds of automated systems exists, they all
% $+ %

System Analysis & Design

KSOU

have some of the common components li'e hardware, software, people, data and procedures. Automated systems can be classified in many ways. )ne simplest way of categori#ing is by application. (ut, such a classification is not useful because techni!ues li'e analy#ing, modeling, designing and implementing automated systems are generally the same regardless of the application. A more useful categori#ation of automated systems is as follows" (atch system" In a batch system the information is usually retrieved on a se!uential basis, i.e the computer system read through all the records in its database, processing and updating those records for which there is some activity. )n7line systems" An on7line system is one, which accepts input directly from the user or environment where it is used and also returns outputs or results of computation directly to where they are re!uired. -eal7time systems" A real7time system may be defined as one which controls an environment by receiving data, processing them, and returning the results sufficiently !uic'ly to affect the environment at that time. Decision7support systems" These computer systems that help managers and other 'nowledge wor'ers in an organi#ation ma'e intelligent, informed decisions about various aspects of the operation. Typically, the decision7support systems do not operate on a regular basis. Instead, they are used on an adhoc basis, whenever needed. /nowledge7based systems" The goal of computer scientists wor'ing in the field of artificial intelligence is to produce programs that imitate human performance in a wide variety of intelligent tas's. &or some expert systems, that goal is close to being attained. &or others, although we do not yet 'now how to construct programs that perform well on their own, we can begin to build programs that significantly assist people in their performance of a tas'. Ot1er !lassi&i!ations Systems can also divided as %hysical or abstract )pen or closed

81ysi!al systems

% $, %

System Analysis & Design

KSOU

%hysical systems are tangible entities that may be static or dynamic in operation. &or example, physical parts of the computer center li'e computers, des's, and chairs that facilitate operation of the computer can be seen and counted. Such systems are static physical systems. A programmed computer in which data, programs, output and applications change as the userFs demand is dynamic physical system. Abstra!t systems Abstract systems are conceptual or nonphysical entities. They may be formulas of relationship among sets of variables or models i.e. the abstract conceptuali#ation of physical situations. A model is an easier way of visuali#ing relationships in the system under study. O)en system )pen systems is a system having an interface with environment. It permits interaction across its boundary. It receives inputs from within the system or from the environment and delivers outputs the system or environment. )pen systems tend to have form and structure. They adapt to changes in environment so as to continue to exist. Information systems are open systems, which adapt to the changing demands of the user. )ther examples of open system include biological system, organi#ational system. Close# system A closed system is one that does not interface with its environment, i.e. it has no input or output.

% $. %

System Analysis & Design

KSOU

The concept of closed systems is more relevant to scientific systems than to social systems. losed systems are isolated from environmental influences. A completely closed system is rare in reality. A chemical reaction in a sealed, insulated container is an closed system. -elatively closed systems are special type of closed system, which is less relaxed when compared to closed systems. They are used in organi#ations and in information processing, where systems are relatively isolated from the environment, but are not completely closed. &or example, a computer program with predefined input, a process and an output is a relatively closed system.

Systems )rin!i)les
There are a few general principles or guidelines that are of particular interest to people building automated information systems. They include" ;. If a system is more speciali#ed then it is less flexible i.e., the ability of a system to be adapted to different circumstances is very less. H. If a system is more general7purpose then it is less optimi#ed for a particular situation. (ut the more the system is optimi#ed for a particular situation, the less adaptable it will be to new circumstances K. If a system is very large then maintenance is a tedious process. L. Systems can be part of larger systems and they can always be partitioned into smaller subsystems. A. Systems can be scalable. Cowever, this principle could not be true for all systems.

Elements o& a system


A systems consists of the following elements, Input %rocessing )utput (oundary $nvironment omponents
% $0 %

System Analysis & Design

KSOU

In)ut' A system may accept input from within its boundary or from the environment. &or example, in a manufacturing firm, the production unit may get raw materials from the procurement section which is a part of the system i.e. a subsystem 4within the system boundary5 or directly from the raw material supplier which is outside the system i.e. environment. Out)ut' Any system that has an intended set of inputs with certain processing yields output. This output may be used by any subsystems or by the environment. onsider the same manufacturing scenario, the production unit may deliver finished products to the sales unit, a subsystem or directly delivery to the wholesalers B retailers i.e. to environment. 8ro!essing' Data to be converted into information should undergo a transformation process. Similarly, inputs that need to be converted into a desirable output should undergo the processing. &or instance, to get a finished product the raw materials have to undergo the process of cleaning, manufacturing, testing, etc. System boun#ary' System boundary is a delimiter, which divides or separates the system from the environment. En"ironment' Anything outside system boundary is environment. $nvironment Com)onents' The subsystemsB subparts of a system operating independently are called the components of a system. There may be association between to or more components of a system li'e finance unit and sales unit of a manufacturing firm. Such an association is called interrelationship. Interaction between two or more components re!uires an interface to be used. The following figure H.; illustrates the different view of basic elements of a system.

% $5 %

Input %rocessing )ther Systems System (oundary -ig< (<$ System Elements

)utput

System Analysis & Design

KSOU

19IT K IN-O;MATION SYSTEMS


Learning Ob e!ti"es' This unit introduces the concepts of Information systems such as, *hat is an information system+, Information system resources, Types of Information system" )peration support and ,anagement support.

@1at is an in&ormation SystemA


Information systems can be defined in many ways. An Information System is an organi#ed combination of people, hardware, software, and communication networ's and data resources. The information systems are used to collect, transform and disseminate information in an organi#ation for better management. Alternatively, an information system can also be defined as a set of interrelated components that collect, process, store, and distribute information to support decision ma'ing, coordination, control, analysis, and visuali#ation of various organi#ational activities. &inally, we can also define an information system is a set of interrelated elements or components that collect 4input5, manipulate 4process5, and disseminate 4output5 data and information and provide a feedbac' mechanism to meet an objective. Today most of the automated systems that we come across are information systems. &or instance, AT,, card catalog in a library and cash register maintained in ban's are all information systems.

@1y in&ormation systemsA


Today the business environment is changing due to the following factors 3lobali#ation Industrial economies
% $7 %

System Analysis & Design

KSOU

Transformation of the enterprise

3lobali#ation has paved a way for management . control in a global mar'etplace and also competition in world mar'ets. 3lobal wor' groups and global delivery systems are extensively used by most of the companies. *e can also notice that most of the recent business firms are focusing on 'nowledge and information based economies. This inturn has led to higher productivity in terms of new products . services. Thus 'nowledge is treated as one of the basic assets of the organi#ation. Thus, globali#ation and industrial economies have made industrial revolution by transforming the centrali#ed business approach into a decentrali#ed, more flexible and location independent approach. They have also empowered teamwor' within the firms. In order to survive and prosper in such a chaining environment, automation of day7to7day business activities is becoming crucial. As a solution deployment of Information systems are considered. The fundamental roles of information system in business includes

;. Support of most business processes and operations. H. Support of decision ma'ing by its employees and managers. K. Support of its strategies for competitive advantage.

In&ormation system ;esour!es


Information systems resources include, ;. %eople resources
% (9 %

System Analysis & Design

KSOU

H. Cardware resources K. Software resources L. Data resources A. 9etwor' resources 8eo)le resour!es' The main aim of an information system is to provide information to its users. 1sers are the people who interact with an information system, both inside and outside the organi#ation. There are two types of user namely end user and specialists. Information system specialist includes users li'e system analysts, software developers and system operators. )ther users other than the IS specialists are called end users. The success or failure of a system usually depends on whether users are satisfied with the systemFs output and operations. To serve users, successful information systems depend on s'illed professional, such a systems analysts, programmers, networ' administrators, and other IT staff members. Bar#4are ;esour!es Cardware consists of everything in the physical layer of the information system. Cardware resources can be classified as into machine resources and media. ,achine resources include computers, video monitor, magnetic dis' drives, printers and optical scanners. ,edia includes floppy dis's, magnetic tape, optical dis's, plastic cards and paper forms. So&t4are ;esour!es Software refers to the programs that control the hardware and produce the desired information or results. Software consists of system software and application software.
% ($ %

System Analysis & Design

KSOU

System software manages the hardware components, which can include a single wor'station or a global networ' with many thousands of clients. $ither the hardware manufacturer supplies the system software or a company purchases it from a vendor. $xamples of system software include the operating system, security software that protects the computer from intrusion, device drivers that communicate with hardware such as printers, and utility programs that handle specific tas's such as data bac'up and dis' management. Application software consists of programs that support day7to7day business functions and provide users with the information they re!uire. Application software can serve one user or thousands of users throughout the organi#ation. $xample of company7wide applications, called enterprise applications, includes order processing systems, payroll systems, and company communications networ'. )n a smaller scale, individual users increase their productivity with tools such as spreadsheets, word processors, and database management systems.
Data ;esour!es

Data is the raw material that an information system transforms into useful information. An information system can store data in various locations, called table. (y lin'ing the tables, the system can extract specific information. onsider a payroll system. At the end of a pay period, the payroll system produces a paybac' chec' that accurately reflect the employeeFs hours wor'ed, gross pay, current deduction, and net pay.

% (( %

System Analysis & Design

KSOU

Net4or: ;esour!es Today most of the enterprises are internetwor'ed enterprises i.e globally distinct parts of the organi#ation are connected together through networ'. Thus networ' resources includes communication media, communication processors, networ' access and control software

Ty)es o& In&ormation System


Information systems can be broadly classified into two categories namely, operation support system and management support system. The following figure K.; illustrates the classification of Information Systems.

Information System

)peration support System

,anagement support System

Transaction %rocessing System

%rocess ontrol System

$nterprise ollaboration System

,anagement Information System

Decision Support System

$xecutive Information System

% (* %

System Analysis & Design

KSOU

-ig *<$ Classi&i!ation o& In&ormation System

% (+ %

System Analysis & Design

KSOU

O)eration Su))ort System )peration support systems are that process data generated by and used in business operations. The main objective of an operation support system is to efficiently process business transactions, control industrial processes, support enterprise communications and collaboration, and update corporate databases. )peration Support System includes other subsystems li'e transaction processing system, process control system and enterprise collaboration system. Transaction processing systems process data resulting from business transactions, update operational databases, and produce business documents. $xamples of transaction processing system includes Sales and inventory system and processing and accounting systems. %rocess control systems are used to monitor and control industrial process. Some of the process control systems are petroleum refining, power generation, steel producing systems. $nterprise collaboration systems are used to support team, wor'group, and enterprise communications and collaboration. They inturn create virtual groups B teams. Some examples include email, chat, and video conferencing groupware systems.

Management support systems:


,anagement support systems focus on providing information and support for effective decision ma'ing by managers. ,anagement information systems provide information in the form of prespecified reports and displays to support business decision7ma'ing Transactions recorded in a T%S are analy#ed and reported by an ,IS. They have large !uantities of input data and they
% (, %

System Analysis & Design

KSOU

produce summary reports as output. They are normally used by middle managers. Some of the examples of management information system are Sales analysis, production performance and cost trend reporting systems. Decision support systems provide interactive ad hoc support for the decision ma'ing by providing information, models, or analysis tools. )ften used by senior manager or high7 level managers. Some of the decision support systems are product pricing, profitability forecasting, and ris' analysis.

$xecutive Information System or $xecutive Support System provides top executives with information in interactive format. They provide both summary and detailed report for the top executives about the entire organi#ation.

UNIT + SYSTEM DE=ELO8MENT LI-E CYCLE

The objective of this chapter is to focus on the stages of the system development life cycle 4system study5. In the present booming economical environment every organi#ation plans to expand and develop !uic' system and encash economic boom, as soon as possible. This re!uire a process which can !uic'ly develop new systems, in lesser time with lesser cost.
% (. %

System Analysis & Design

KSOU

@1at is system #e"elo)mentA 8ust li'e a living system, the candidate system has a life cycle. *e need to recogni#e this to understand system development. System development is a process of understanding how an information system can support business needs, designing the system then building it and delivering to the users. De&inition' A systems development life cycle 4SD2 5 is a systematic and orderly approach to solving system problems. A conceptual model used in project management that describes the stages involved in an information system development project, from an initial feasibility study through maintenance of the completed application. The system development project meaning and direction is given by the system analyst. A candidate system is approached after the analyst has a thorough understanding of user needs and problems, has developed as viable solution to these problems, and then communicates the solution through the installation of a candidate system. System De"elo)ment refers to the process of 6 examining a business situation with the intent of improving it through better procedures and methods. System Development is having two major components in it System Analysis 6 Analysis of current system for %roblems . Demerits in it and Additional re!uirements in new system System Design 6 %rocess of planning new system which will replace the old one
% (0 %

System Analysis & Design

KSOU

Ceginning o& a System De"elo)ment' System Development usually begins when a problem or opportunity is identified by ,anagers, it can be because of any of the followings" 9ew design idea to smoothen the process in the organi#ation. $volving environmental changes such as ompetition. Adding new business or product line to present business. %resent system does not satisfy the users information needs. %resent system no longer efficiently and effectively meets the 3oals of organi#ation. $xcessive time spent in correcting errors. urrent -eports B )utputs not meting users decision ma'ing s'ills.

$scalating customer and vendor complaints.

System De"elo)ment Met1o#ology' A system development life cycle is a logical method of system development. *here as a methodology is the physical implementation of that logical life cycle including" step7by7step activities for each phase individual Bgroup roles to be played in each activity deliverables and !uality standards for each activity tools and techni!ues to be used for each activity

@1y #o 4e use met1o#ologiesA

% (5 %

System Analysis & Design

KSOU

To ensure that a consistent, reproducible approach is applied to all projects 6 systematic approach reduce the ris' associated with shortcuts and mista'es produce complete and consistent #o!umentation from one project to the next able to incorporate the use of several development tools and techni!ues. A system development methodology is a very formal and precise system development process which defines a set of activities, methods, best practices, deliverables, and automated tools for system developers and project managers to use to develop and maintain information systems and software. A system development methodology is a formali#ed, standardi#ed, documented set of activities used to manage a system development project. It can be characteri#ed as follows" DI=ISION O- 8;ODECT into the identifiable phases which can be managed without having any problem. ;E=IE@ O- DE=ELO8MENT 8;OCESS by T)% ,anagement on periodically by getting deliverables. A88;O=ALS from all the participants of the Development 4i.e. 1sers, ,anagers, Analyst and Auditors5. TESTING O- SYSTEM thoroughly prior to implementation to ensure that it meets userFs needs. T;ANNING of user who will operate the new system.

8OST IM8LEMENTATION ;E=IE@ for effectiveness and efficiency of new system.

Different types of system development methodologies are used in designing information system. Depending upon the actual re!uirement of the system, different
% (7 %

System Analysis & Design

KSOU

approaches for data processing are adopted. Cowever, some system groups recommend the entrali#ed data processing system while others may go in for entrali#ed data processing, one or more distributed data processing system. In a

centrali#ed computers are used for processing and the retrieval of information is done from them. The distributed processing systems involve number of computers located remotely in the branchesBdepartments of the organi#ation. The clientBserver technologies are also gaining popularity these days.

Di&&erent 81ases &or System De"elo)ment Li&e Cy!le' A systematic approach to problem solving and is made up of several phases, each comprised of multiple steps. System development life cycle means combination of various activities. In other words we can say that various activities put together are referred as system development life cycle.

&ollowing are the different phases of system development life cycle" %reliminary Investigation System Analysis or -e!uirement Analysis System Design Development of Software System Testing Implementation ,aintenance

The different phases of system development life cycle is shown in the below figure

% *9 %

System Analysis & Design

KSOU

&ig. HJ.; Different phases of System development 2ife ycle

8BASES O- SYSTEM DE=ELO8MENT LI-E CYCLE 2et us now describe the different phases and the related uni!ue activities of system development life cycle in detail.

8reliminary or Initial In"estigationESystem Stu#yF' System study is the first stage of system development life cycle. This gives a clear picture of what actually the physical system is+ In practice, the system study is done in two phases. In the first phase, the preliminary survey of the system is done which helps in identifying the scope of the system. The second phase of the system study is more detailed and in7depth study in which the identification of userFs re!uirement and the limitations and problems of the present system are studied. After completing the system study, a system proposal is prepared by the System Analyst 4who studies the system5 and placed before the user. The proposed system contains the findings of the present system and recommendations to overcome the limitations and problems of the present system in the light of the userFs re!uirements. Identifying of problems, opportunities, and objectives. This phase introduces the objectives of the initial
% *$ %

System Analysis & Design

KSOU

investigation, the steps re!uired to initiate an investigationM the tas's involved in the initial investigation, and the data gathering and interviewing techni!ues. It also includes information and exhibits that should be in the initial investigation report, with regard to :Cow the standards manual might be used +: To describe the system study phase more analytically, we would say that system study phase passes through the following steps" problem identification and project initiation bac'ground analysis inference or findings

*hatever may be the reason of a re!uest submitted by the 1sers or ,anagers to the IS department a system analyst is assigned to ma'e a preliminary investigation. The objective of this activity is to review all re!uests and identify those proposals that are most beneficial to the organi#ation. (ut this should be noted that this is neither a designed study nor it includes collection of details to completely describe the business system. 3ather information, define system re!uirements, build prototypes for discovery of re!uirements, prioriti#e re!uirements, generate and evaluate alternatives, review recommendations with management 6 these are various tas's that are performed in this stage. 8reliminary In"estigation ob e!t !an be a!1ie"e# in &ollo4ing ste)s' -e!uest larification &easibility study $stimating osts and (enefits -e!uest Approvals

;e2uest Clari&i!ation' De&ining t1e S!o)e an# Ob e!ti"e o& ;e2uest" As mentioned in the objectives of System development objective earlier, an analyst has to define for which objective a re!uest for development is submitted.
% *( %

System Analysis & Design

KSOU

Con#u!ting t1e In"estigation' This is nothing but the ollection of data B inputs by" -eviewing internal documents 4i.e )rgani#ational procedures etc. onducting interviews of 1ser, Supervisory %ersonal and ,anagers harts, operating

I#enti&y "iable o)tion' Analyst has to identify the viable option by applying his common sense and intuitions on his investigation -easibility E8ossibilityF Stu#y' $valuation of alternative systems through cost and benefit analysis. )n the basis of the initial study, feasibility study ta'es place. The feasibility study is basically the test of the proposed system in the light of its wor'ability, meeting userFs re!uirements, effective use of resources and .of course, the cost effectiveness. The main goal of feasibility study is not to solve the problem but to achieve the scope. In the process of feasibility study, the cost and benefits are estimated with greater accuracy. This phase determines the objectives of the feasibility study and who this tas' belongs to 77 analysts or the project team+ It lists out the steps re!uired to complete a feasibility study, identifies the scope of the current system, problems and unexploited opportunities in the current system, which may be either manual or automated. It then discusses the major objectives for the new system, and the various methods to gather data and determine how to use the methods. It also helps to estimate the costs of each possible solution, and develops estimates of the benefits and shortcomings of each solution. It presents users and the management views on the above issues and their decision of whether to commit to the analysis part of the project. This phase may be included some related sub7phases"

% ** %

System Analysis & Design

KSOU

G Current )1ysi!al mo#el' The description of the system as it is now, including the mechanisms used to accomplish tas's 4e.g., people, devices5. G Current logi!al mo#el' The system description in term of functions, processes, and data with the mechanisms removed. G Ne4 Logi!al Mo#el' The urrent 2ogical ,ode with new features added. G Ne4 81ysi!al Mo#el' The urrent 2ogical ,odel with the various processes

allocated to automation, manual procedures, other mechanisms. Types of feasibility study that need to addressed in this phase are" Te!1ni!al -easibility" Cardware and software availability, Technical 3uarantee of Accuracy, -eliability, $asy to Access, Data security, technical capacity to hold data and future expansion. E!onomi!al -easibility" $valuation of cost . (enefits expected. O)erational -easibility' &inding views of wor'ers, employees, customers . suppliers about the use of new system. S!1e#ule -easibility' $stimation of time to ta'e new system to become operational. Legal &easibility' Testing whether new system will comply financial reporting re!uirements . ompanyFs contractual obligations. Estimating Cost & Cene&it' Costs' De"elo)ment Costs" This includes cost of testing, training, start up costs, salary to designers, ac!uisition cost of hardware . software.
% *+ %

System Analysis & Design

KSOU

O)eration Costs" This includes operator salary, maintenance costs, etc. Intangible Costs" 2oss of employee productivity, self confidence etc. Cene&its' Tangible Cene&its" Increase in sales B ontribution B %rofits. Decrease in investment, operating and processing cost. Improved information availability, analysis, ,anagement Decision s'ill. Intangible Cene&its" Increase in 3oodwill B Improved Image of (usiness.

;e2uest A))ro"al' (ased on the )bservation and &indings of the Analyst, selected re!uests are put up for the approval of management. %ersonnel involved in all these activities" Analyst 1ser management Systems management

System Analysis or ;e2uirement Analysis' After the selection of a re!uest for development analyst study in depth the %resent and %roposed 9ew System. This is the study of wea'ness . %roblems in the present system and management re!uirements of new system. This phase of System Development is being completed in following step"

% *, %

System Analysis & Design

KSOU

ollection of data and facts Analysis of %resent System Analysis of %roposed system

Colle!tion o& Data & -a!ts' $very system is built to meets some set of needs and to assess these needs, the analyst often interact extensively with the people, who will be benefited from the system In order to determine the re!uirement of those peoples he can use following facts finding techni!ues" Do!uments' This includes the ,anuals, diagrams, forms, organi#ational charts etc. It should be ensured that all documents are accurate . up to date 6uestionnaires' These are s'illfully drafted group of standard !uestion which can be given to all personal and can be analy#e !uic'ly. Inter"ie4s' To get a complete picture of problems and opportunities. Obser"ation' Surprise <isit of users wor' palace to get a clear picture of userFs environment. Analysis o& 8resent System' Detailed investigation of the present system involves collecting, organi#ing and evaluating facts about the present system and the environment in which it operates by studying following areas in depth" -eview of Cistorical Aspects of organi#ation Analy#e %resent inputs to the system -eview of all data file maintained irrespective of online or offline -eview methods, procedures . data communications Analy#e %resent outputs of system
% *. %

System Analysis & Design

KSOU

-eview internal controls ,odel the existing physical system and logical system 1nderta'e overall analysis of present system

Analysis o& 8ro)ose# System' After each functional area of present system is defined the purposed system specification must be defined. These specification will be based on the strength and wea'ness of present system. System Specification which should be in conformity with the %roject )bjective and Areas overed should be following" )utput B -eports ,aintenance of Database Data Inputting %rocess ,ethods and %rocedures to show the relationship between Input and )utput *or' volume including pea' period wor' volume

7Determining information re!uirements" Interview management, operations personnel 3ather systemsBoperating documents 1se !uestionnaires )bserve the system and personnel involved

72earn the who, what, where, when, and how, and the why for each of these. 7Analy#ing system needs reate data flow diagrams
% *0 %

System Analysis & Design

KSOU

Document procedural logic for data flow diagram processes omplete the data dictionary ,a'e semi7structured decisions %repare and present the system proposal -ecommend the optimal solution to management

Assuming that a new system is to be developed, the next phase is system analysis. Analysis involved a detailed study of the current system, leading to specifications of a new system. Analysis is a detailed study of various operations performed by a system and their relationships within and outside the system. During analysis, data are collected on the available files, decision points and transactions handled by the present system. Interviews, on7site observation and !uestionnaire are the tools used for system analysis. 1sing the following steps it becomes easy to draw the exact boundary of the new system under consideration" /eeping in view the problems and new re!uirements and wor'out the pros and cons including new areas of the system All procedures, re!uirements must be analy#ed and documented in the form of detailed data flow diagrams 4D&Ds5, data dictionary, logical data structures and miniature specifications. System Analysis also includes sub7dividing of complex process involving the entire system, identification of data store and manual processes. The main points to be discussed in system analysis are" Specification of what the new system is to accomplish based on the user re!uirements. &unctional hierarchy showing the functions to be performed by the new system and their relationship with each other. &unction networ' which are similar to function hierarchy but they highlight those functions which are common to more than one procedure.

System Design' (ased on the user re!uirements and the detailed analysis of a new system, the new system must be designed. This is the phase of system #esigning. It is a most crucial phase in the development of a system. System design first involves Logical Design. &irst one has to write detailed specification that called design specification. Than
% *5 %

System Analysis & Design

KSOU

secondly it involves Physical Design. Design and integrate the networ', design the application architecture, design the user interfaces, design the system interfaces, design and integrate the database, prototype for design details, design and integrate the system controls

9ormally, the design proceeds in two stages" %reliminary or general design Structure or detailed design

8reliminary or general #esign' In the preliminary or general design, the features of the new system are specified. The costs of implementing these features and the benefits to be derived are estimated. If the project is still considered to be feasible, we move to the detailed design stage. Show the users the view of the application. In this phase, as well as the previous two, users must be directly involved. In this phase, The analystsF imagination, creativity... and initiative are used to their fullest. It also issues the System &lowcharts to develop. In addition, broad specifications that describe how the data is to be processed by the computer will be developed.

Stru!ture or Detaile# #esign' In the detailed design stage, computer oriented wor' begins in earnest. At this stage, the design of the system becomes more structured. Structure design is a blue print of a computer system solution to a given problem having the same components and inter7relationship among the same components as the original problem. Input, output and processing specifications are drawn up in detail. In the design stage, the programming language and the platform in which the new system will run are also decided. The Analysts have to transform from general design specifications to detailed re!uirements that can be used in implementing the many tas's that ma'e up the system. The final report should include the
% *7 %

System Analysis & Design

KSOU

%rocedural &lowchart, record and report layout, and a realistic plan for implementing the design. 9o major changes should be made until the design is implemented and the system is operational, Then the programs for both transaction processing and batch jobs are executed. If there is the problems, the professional data processing staff is responsible for determining the cause and implementing a solution. There are several tools and techni!ues used for designing. These tools and techni!ues are" &lowchart Data flow diagram 4D&Ds5 Data dictionary Structured $nglish Decision table Decision tree

This %hase of System Development includes following functions" Designing System )utput Designing System Input Data Storage Designing System Out)ut' Im)ortant &a!tor o& Out)ut Design' A process of )utput designing contained Designing of ontent 4re!uired info in

an output5, &orm 4the way in which a content presented to user5, <olume 4!uantum of )utput i.e. %rints5, Time 2ines 4time of need of outputs5, ,edia 4method of output i.e. %rint, D etc5 and &ormat 4%hysical arrangement of Data5. @ay o& 8resenting In&ormation'

% +9 %

System Analysis & Design

KSOU

The way in which data will be presented to the 1ser which should be simple and better understandable and for this Tabular and 3raphic 4charts, maps etc5 can be used. Design H Layout o& Out)ut' The layout of a output can be in %rinted form, visual on screen etc. Designing o& System In)ut' Im)ortant -a!tor o& In)ut Design' A process of Input designing contained Designing of ontent 4re!uired info in a input5, &orm 4the media in which input is received by user5, <olume 4!uantum of input records5, Time 2ines 4re!uired time to enter one record5, ,edia 4method of input i.e. 'eyboard, ( - etc5 and &ormat 4Input by the user in the system5. Co#ing' To reduce input control errors and speed up the entire process coding is very important. This is also important to get all records in a specific form.

Met1o#s' Individually 41ni!ue codes giving only one option to user out of may i.e selection of gender from male or &emale etc5, Space or suggestive 4for brief information5.

S!1emes'

lassification

odes 4only single digit is re!uired for !uic' input5,

&unction code 4activities to be performed without spelling out all details5 etc. Data Storage' This includes the storage of data, indexing etc. &or storage of data it can follow the following approaches"

% +$ %

System Analysis & Design

KSOU

Con"entional -ile A))roa!1' This is a traditional approach where each transaction is updated in the master file, each application have their own database and it is not useful for other applications. 4(oss in IC 25 Database A))roa!1' This support decision ma'ing s'ill of the management. Data are stored in the small7small database files and same data can be used in the multiple applications. 4&iles maintained as a process of the organi#ation for ,IS etc.5 In this phase designing the recommended system, design the user interface, design output, design input, design system controls, design files andBor database, produce program specifications, producing decision trees or tables 6 these are the various activities that are performed. %ersonnel involved in this phase are 6 Analyst, System designer, 1ser management, 1ser operations wor'ers, Systems management.

De"elo)ment o& So&t4areECo#ingF' After designing the new system, the whole system is re!uired to be converted into computer understanding language. Co#ing the new system into computer programming language does this. It is an important stage where the defined procedure are transformed into control specifications by the help of a computer language. This is also called the programming phase in which the programmer converts the program specifications into computer instructions, which we refer as )rograms. The programs coordinate the data movements and control the entire process in a system. It is generally felt that the programs must be modular in nature. This helps in fast development, maintenance and future change, if re!uired. Developing and documenting software. Design computer programs using structure charts, 9assi7 Schneiderman charts, and pseudo code, wal'through program design, write computer programs, document software with help files, procedure manuals, and *eb sites with &re!uently As'ed 0uestions4&A0s5.

% +( %

System Analysis & Design

KSOU

After designing the system all required resources (hardware & oftware! should be gathered. If some of them are already with the organi#ation than it reduces the cost of ac!uisition, for remaining items organi#ation has to plan its procurements process, this includes following" Selection of Cardware" Selection of Software <endor Selection

Sele!tion o& Bar#4are' *hile selecting the hardware for new system a developer must 'eep in mind following" 2atest Technology *hether re!uirement of business is for cientific or "usiness Computer Software supplied by the manufacture and re!uirement of additional software ompatible with the existing systems in organi#ation

Sele!tion o& So&t4are' Selection of a perfect Software for organi#ation is totally depends on the followings" ;a)i# Im)lementation' *hether software can be implemented !uic'ly and put on use ASA%. This characteristic will not be there if software is to be developed, hence that will ta'e long time. Lo4 ;is: o& 6uality' Software should be properly tested by the manufacturer for the !uality otherwise organi#ation has to spend its precious time on !uality assurance. Lo4 ;is: o& Cost' The cost and benefit analysis will give us the perfect cost, which organi#ation can bear for ac!uiring the given software.
% +* %

System Analysis & Design

KSOU

=en#or Sele!tion' This is finding of resources from new system hardware and software will be procured. At resource will be finali#ed based on the following" %erformance apability in relation to cost and !uality" ost . (enefits 7%reparation of comparative statements based on the !uotations received from vendors with terms and conditions. ,aintainability 7 ,aintenance re!uirements of the new e!uipments ompatibility with the $xisting system.

<endor support 7%ost sale support from vendors %ersonnel involved in this phase are 6 Analyst, System designer, %rogrammers, Systems management.

System Testing' (efore actually implementing the new system into operations, a test run of the system is done removing all the bugs, if any. It is an important phase of a successful system. After codifying the whole programs of the system, a test plan should be developed and run on a given set of test data. The output of the test run should match the expected results. 1sing the test data following test run are carried out" 1nit test System test

Unit test' *hen the programs have been coded and compiled and brought to wor'ing conditions, they must be individually tested with the prepared test data. Any undesirable happening must be noted and debugged 4error corrections5.
% ++ %

System Analysis & Design

KSOU

System Test' After carrying out the unit test for each of the programs of the system and when errors are removed, then system test is done. At this stage the test is done on actual data. The complete system is executed on the actual data. At each stage of the execution, the results or output of the system is analy#ed. During the result analysis, it may be found that the outputs are not matching the expected out of the system. In such case, the errors in the particular programs are identified and are fixed and further tested for the expected output. *hen it is ensured that the system is running error7free, the users are called with their own actual data so that the system could be shown running as per their re!uirements. This is %erforming %arallel )peration and get the following done to analy#e the operational implementation feasibility. %reparation realistic data based on the actual wor'ing data of the organi#ation. It may be based on the Cistorical data of the organi#ation. %rocessing of Test Data with the new system and ta'e all outputs which can be possible. hec'ing result of all system with the results of the same data in the current system for the accuracy and error in the processing. -eview result with future users, operational and support personal"

Testing the system is nothing but test and debug computer programs, test the computer system, enhance system. %ersonnel involved in this process are7 Analyst, System designer, %rogrammers, Systems management

Im)lementation'
% +, %

System Analysis & Design

KSOU

After having the user acceptance of the new system developed, the implementation phase begins. Implementation is the stage of a project during which theory is turned into practice. During this phase, all the programs of the system are loaded onto the userGs computer. After loading the system, training of the users starts. ,ain topics of such type of training are" how to execute the pac'age, how to enter the data, how to process the data 4processing details5, how to ta'e out the reports. After the users are trained about the computeri#ed system, manual wor'ing has to shift from manual to computeri#ed wor'ing. In this phase construction of software components, verification and testing, converting data, train users and document the system and installation of the system is carried out. As the final %hase of the System Development it gives the results of the whole process and handover the new system to end users. This also includes the overall review of the development process for its lea'ages and errors in it. Detailed logic plans must be developed for all programs before they can be written, tested, and documented. After each procedure and program are tested, the system is tested. The conversion to the new system is made according to a plan developed in the detailed design phase. ,any companies encourage their customers documenting their own systems. System Au#it' *hen the implementation report is submitted, an evaluation should be made to determine whether the system meets the objectives stated in the general design report. In this phase, users may be able to suggest the easy7to7implement improvements. As in the six phase development life cycle, the project can be dropped at any point prior to implementation. A project may be dropped if the benefits derived from the proposed system do not justify commitment of the needed resources. )r if the costs is higher, than expected.

The following two strategies are followed for running the system"

% +. %

System Analysis & Design

KSOU

8arallel run' In such run for a certain defined period, both the systems i.e. computeri#ed and manual are executed in parallel. This strategy is helpful because of the following" ,anual results can be compared with the results of the computeri#ed system. &ailure of the computeri#ed system at the early stage, does not affect the wor'ing of the organi#ation, because the manual system continues to wor', as it used to do. 8ilot run' In this type of run, the new system is installed in parts. Some part of the new system is installed first and executed successfully for considerable time period. *hen the results are found satisfactory then only other parts are implemented. This strategy builds the confidence and the errors are traced easily. To complete this phase a developer has to complete the following functions successfully" $!uipment Installation Training %ersonnel onversion %rocedure

%ost Implementation $valuation 4&eedbac'5 E2ui)ment Installation' This includes following functions" Site %reparation" %reparing the site for installation and mo#ili$ing all re!uired e!uipments and personnel at the site. $!uipment Installation" Assembling and commissioning of the e!uipments 4hardware5 and installation of software
% +0 %

System Analysis & Design

KSOU

$!uipment

hec'out" )rgani#e test runs of the system with sample actual data

and thereafter if it performs satisfactory than with the live actual data. Training 8ersonnel' Since user are not familiar with the 9ew System, System Development %rocess includes training of 7 System O)erators' IT personnel who will handle the system maintenance in the future. Users EO)eratorsF' The final user who will wor' on the system. If there are deficiencies in Training, these may translate into reduction in user productivity levels Con"ersion 8ro!e#ures' This is the time when organi#ation switch over from old system to new developed system. &ollowing are the Strategies B ,ethods for conversion B system to new system. Dire!t C1angeo"er' Direct closing the old system and starting the new one. 8arallel C1angeo"er' for sometime operating both system simultaneously. Gra#ual C1angeo"er' Department wise switch over to new systems. Distribute# C1angeo"er' Any other method which management feels good for organi#ation. 8ost Im)lementation E"aluation E-ee#ba!:F' Analysis of Satisfaction of 1sers or chec'ing whether system is )perating %roperly or whether )bjectives of System Development is achieved or not, is the most important function in whole System Development process. hangeover of old

% +5 %

System Analysis & Design

KSOU

This is also important for development of new system in future since each development gives some experiences and lists some things to be ta'en care off. %ost Implementation $valuation includes following area" De"elo)ment E"aluation' schedule and budgets. O)eration E"aluation' hec' whether system is capable for handling the duties and objective of development is achieved In&ormation E"aluation' hec' Satisfaction of users etc. hec' whether development was done within

Implementing and evaluating the system involves plan conversion, train users, purchase and install new e!uipment, convert files, install system, review and evaluate system. %ersonnel involved in this process 6Analyst, System designer, %rogrammers, 1ser management, 1ser operations wor'ers, Systems management.

Maintenan!e' ,aintenance is necessary to eliminate errors in the system during its wor'ing life and to tune the system to any variations in its wor'ing environment. It has been seen that there are always some errors found in the system that must be noted and corrected. It also means the review of the system from time to time. The review of the system is done for" 'nowing the full capabilities of the system. 'nowing the re!uired changes or the additional re!uirements. studying the performance.

System maintenance is done mainly to remove undetected errors, and enhancing existing software. The time spent on maintenance typically ranges from L@7=> percent of total time.
% +7 %

System Analysis & Design

KSOU

Systems are enhanced for the following reasons" o Adding additional features to the system. o (usiness and governmental re!uirements change over time. o Technology, hardware, and software are rapidly changing. 8er&e!ti"e maintenan!e' 7This implies that while the system runs satisfactorily, there is still room for improvement. A#a)ti"e maintenan!e' 7 All systems will need to adapt to changing needs within a company. Corre!ti"e maintenan!e 7%roblems fre!uently surface after a system has been in use for a short time, however thoroughly it was tested. Any errors must be corrected. If a major change to a system is needed, a new project may have to be set up to carry out the change. The new project will then proceed through all the above life cycle phases.

UNIT , -easibility Analysis

)n the basis of result of the initial study, feasibility study ta'es place. The feasibility study is basically the test of the proposed system in the light of its wor'ability, meeting userFs re!uirements, effective use of resources and .of course, the cost effectiveness. The main goal of feasibility study is not to solve the problem but to achieve the scope. In the process of feasibility study, the cost and benefits are estimated with greater accuracy. The objective of a feasibility study is not to solve the problem, but to ac!uire a sense of itGs scope. The rest of feasibility study is a formal proposal.
% ,9 %

System Analysis & Design

KSOU

Depending on the results of the starting investigation, the survey is expanded to a more detailed feasibility study. &easibility study is a test of a system proposal according to its wor'ability impact on the organi#ation, ability to meet user re!uirements and effective use of resources. &easibility study focuses on three !uestions" ;. *hat are the userFs demonstrable re!uirements and how does a candidate system meet them+ Is there a new . better way to do the job that will benefit the user+ H. *hat resources are available for given candidate system+ Is the problem worth solving+ *hat are the costs . savings of the alternatives+ K. *hat are the li'ely impacts of the candidate systems on the organi#ation+ Cow well does it fit within the organi#ationFs plan+ *hat is recommended+ The above !uestions must be answered carefully. They revolve around investigation . evaluation of the problem, identification . description of candidate system, specification of performance . the cost of each system and final selection of the system.

This phase determines the objectives of the feasibility study and who this tas' belongs to 77 analysts or the project team+ It lists out the steps re!uired to complete a feasibility study, identifies the scope of the current system, problems and unexploited opportunities in the current system, which may be either manual or automated. It then discusses the major objectives for the new system, and the various methods to gather data and determine how to use the methods. It also helps to estimate the costs of each possible solution, and develops estimates of the benefits and shortcomings of each solution. It presents users and the management views on the above issues and their decision of whether to commit to the analysis part of the project. This phase may be included some related sub7phases" N Current )1ysi!al mo#el' The descriptions of the system as it is now, including the mechanisms used to accomplish tas's 4e.g., people, devices5.
% ,$ %

System Analysis & Design

KSOU

N Current logi!al mo#el' The system description in term of functions, processes, and data with the mechanisms removed. N Ne4 Logi!al Mo#el' The urrent 2ogical ,odel with new features added. N Ne4 81ysi!al Mo#el' The urrent 2ogical ,odel with the various processes allocated to automation, manual procedures, other mechanisms. The rest of the feasibility study is a formal proposal. -a!tors t1at #e)en# u)on &easibility stu#y are' $< Statement o& t1e )roblem' A carefully worded statement of the problem that led to analysis. (< Summary o& &in#ings & re!ommen#ations' A listed of the major findings . recommendations of the study. It is deal for the user who re!uires !uic' access to the results of the analysis of the system under study. *< Details o& &in#ings' An outline of the methods . procedures underta'en by the existing system, followed by coverage of the objectives . procedures of the candidate system, including personnel assignments, costs, project schedules . target dates is also discussed. +< ;e!ommen#ations & !on!lusions' Specific recommendations regarding the candidate system, including personnel assignments, costs, project schedules . target dates. Since the proposed is reviewed by the management, it becomes a formal agreement. This is a crucial decision point in the life cycle. hanges in the proposal are made in writing, depending on the complexity, si#e . cost of the project. It is simply common since to verify changes before committing the project to design.

% ,( %

System Analysis & Design

KSOU

Depending on the results of the staring investigation the survey is expanded into a more detailed feasibility study, it is a test of a system proposal according to itGs wor'ability impact on the organi#ation, ability to meet user re!uirements and effective use of resources. &easibility study focuses on three !uestions"

Ste)s in &easibility analysis' -easibility Analysis in"ol"es 5 ste)s' ;. H. K. L. A. =. ?. @. &orm a project team . appoint a project leader. %repare system flowcharts. $numerate potential candidate system. Describe . identify characteristics of candidate systems. Determine . evaluate performance . cost effectiveness of each candidate system. *eigh system performance . cost data. Select the best candidate system. %repare . report final project directive to management.

-orm a )ro e!t team & a))oint a )ro e!t lea#er' The concept behind a project team is that future system users should be involved in its design . implementation. Their 'nowledge . experience in the operations area are essential to the success of the system. The analyst . an assistant is sufficient for small projects but for complex studies project team is re!uired. Team consists of analyst . the user staff. An outside consultant . information specialist may also join the team. The senior system analyst, the most experienced analyst in the team, is appointed as project leader. Ce has to conduct regular meetings to 'eep up the momentum . accomplish the mission 4selection of the best candidate system5. A record is 'ept of the progress made in each meeting.
% ,* %

System Analysis & Design

KSOU

8re)are system &lo4!1arts' The next step is to prepare generali#ed system flowcharts for the system. In the initial investigation stage information7oriented charts . data flow diagrams prepared . they are reviewed in this stage also. The main reason to prepare system flowcharts is that they bring up the importance of inputs, outputs . data flow among 'ey points in the existing system. All the flowcharts needed for detailed evaluation are completed at this point.

Enumerate )otential !an#i#ate system' In this step identification of the candidate systems that are capable of producing the outputs will be carried out, which are included in the generali#ed flowcharts. This is nothing but transformation from logical to physical system model. In this step consideration of hardware that handles the total system re!uirement is also done. An important aspect of hardware is processing . main memory. (ecause there are large numbers of computers with different processing si#es, main memory capabilities, . software support. The project team may also contact vendors for information on the processing capabilities of the system available. Des!ribe & i#enti&y !1ara!teristi!s o& !an#i#ate systems' The candidate systems are considered. 9ow from this the team begins a preliminary evaluation in an attempt to reduce them to a manageable number. Technical 'nowledge . expertise in the hardwareBsoftware area are critical for determining what each candidate system can . cannot do. Determine & e"aluate )er&orman!e & !ost e&&e!ti"eness o& ea!1 !an#i#ate system' In this step the performance of each candidate system is evaluated against the system performance re!uirements set prior to the feasibility study. There has to be
% ,+ %

System Analysis & Design

KSOU

a close match as practicable, although the trade7offs is necessary to select the best system. The cost encompasses both designing . installing the system, which includes user training, updating the physical facilities . documenting. System performances are evaluated against the cost of each system to determine which system is li'ely to be the most cost effective as well as meets the performance re!uirements. osts are more easily determined when the benefits of the system are tangible . measurable. An additional factor to consider is the cost of study design . development. The cost of the study phase is a fixed cost 4sun' cost5. The analyst can plot the performance criteria . costs for each system to determine how each fare. @eig1 system )er&orman!e & !ost #ata' The performance . cost data of each candidate system show which system is best choice. This outcome terminates the feasibility study. Some times the performanceBcost evaluation matrix is used to clearly identify the best system. So in this step weight the importance of each criterion by applying a rating figure. &inally the candidate system with the highest total is selected. T1e )ro!e#ure &or 4eig1ting !an#i#ate system is as &ollo4s'% ;. Assign a weighting factor to each evaluation criterion based on the criterionFs effect on the success of the system. H. Assign a !uantitative rating to each criterionFs !ualitative rating. K. ,ultiply the weight assigned to each category by the relative rating to determine the score. L. Sum the score column for each candidate system. Sele!t t1e best !an#i#ate system' The system with the highest total score is judged the best system. This assumes the weighting factors are fair . the rating of each evaluation criterion is accurate.
% ,, %

System Analysis & Design

KSOU

8re)are & re)ort &inal )ro e!t #ire!ti"e to management' The report is a formal document for management use, brief enough . non7 technical to be understandable, but has to be detailed enough to provide the basis for system design. There is no standard format for preparing feasibility reports. 1sually the analyst decide on a format that suits a particular user . system. T1e re)ort !ontains t1e &ollo4ing se!tions'% ;. Co"er letter 7 formally presents the report . briefly indicates to management the nature, general findings . recommendations to be considered. H. Table o& !ontents 7 specifies the location of the various parts of the report so that management can !uic'ly refer to the sections that concern them. K. O"er"ie4 7 is an explanation of the purpose . scope of the project, the reason for underta'ing feasibility study, the department involved or affected by the candidate system. 9ames of the persons who conducted the study, when it began, other information that explains the circumstances surrounding the study. L. Detaile# &in#ings 7 the methods used in the present system, systemFs effectiveness . efficiency, operating costs, descriptions of the objectives, general procedures of the candidate system, a discussion of output reports, cost . benefits gives management a feel for the pros . cons of the candidate system.

% ,. %

System Analysis & Design

KSOU

A. E!onomi! usti&i!ation 6 point7by7point cost comparisons, preliminary cost estimates for the development . operation of the candidate system. A return on investment 4-)I5 analysis of the project is also included.

=. ;e!ommen#ations & !on!lusions 6 suggest to management the most beneficial . cost7effective system. Any conclusions from the study may be included. ?. A))en#i>es 6 document all the memos . data compiled during the investigation. They are placed at the end of the report for reference. If the feasibility team has maintained good rapport with the user . staff it ma'es the recommendations easier to approve. Disapproval of the feasibility report is rare if it has been conducted properly. The report is only a recommendation, but it is an authoritative. ,anagement has to finally approve. Approval of feasibility report is re!uired before system design is initiated. Ty)es o& &easibility stu#y' A feasibility study assesses the operational, technical, human factors, legal, economic merits of the proposed project. There are six types of feasibility" Technical feasibility $conomic feasibility )perational feasibility Cuman &actors &easibility 2egal and %olitical &easibility Schedule &easibility Te!1ni!al &easibility assesses whether the current technical resources are sufficient for the new system. &ocused on understanding the technical resources and their applicability to the needs of the proposed system
% ,0 %

System Analysis & Design

KSOU

6 6 6

Cardware parts re!uired for the proposed system 4candidate system5. Software necessary for the proper wor'ing of the candidate system. )perating environments 6 the environment in which the proposed system has to be operated.

If they are not available, can they be upgraded to provide the level of technology necessary for the new system. The technical resources needed to develop, purchase, install, or operate the system. The feasibility study has to ensure that the company have the necessary hardware, software, and networ' resources, have the needed technical expertise, the hardware and software environment be reliable, the system should be able to handle future transaction volume and company growth. E!onomi! &easibility determines whether the time and money are available to develop the system. $conomic &easibility means that the projected benefits of the proposed system outweigh the estimated costs usually considered the total cost of ownership 4T )5. Determine whether the proposed system will provide positive economic benefits to the organi#ation. $conomic feasibility analysis is the most fre!uently used method for evaluating the effectiveness of a candidate system. ,ost commonly 'nown as cost%#enefit analysis& This study is carried out to determine the benefits and savings that are expected from a candidate system and compare them with costs. If the benefits outweigh cost, then the decision is made to design and implement the system. )therwise further justifications or alterations have to be made to the proposed system. This is an ongoing effort that improves accuracy at each phase of system development life cycle. In this analysis the expensesBfinance provided to people, including IT staff and users, hardware and e!uipments, software, formal and informal training, licenses and fees, consulting expenses, facility costs, and the estimated cost of not developing the system or postponing the project are considered.

% ,5 %

System Analysis & Design

KSOU

O)erational &easibility means that a proposed system will be used effectively after it has been developed. 1sers that do not want a new system may prevent it from becoming operationally feasible. &ocused on whether the proposed project will be used effectively after it has been developed i.e., Schedule and 1sability. This analysis determines whether the management or the users support the projects, users see the need for change, the system result in a wor' force reduction or not, the training is re!uired for users to operate the system, customers experience adverse effect in anyway, either temporarily or permanently. Buman &a!tors &easibility is focused human resources that are re!uired in during system development. It focuses on the managers, company staff and end users, degree of resistance from users, degree of change to usersF wor'ing environment, current state of human resources etc.. Legal an# 8oliti!al &easibility analy#es the potential legal ramification of the new system. 1nderstanding of the 'ey sta'eholders within the organi#ation. In this analysis consideration of legal issues li'e rules and regulations of government, mar'et issues, political factors etc. has to be done. onsulting legal advisors during this process of the system development is must. S!1e#ule &easibility means that a project can be implemented in an acceptable time. The company or the IT team control the factor that effect schedule feasibility. onditions that are to be satisfied during the development of the system. <erify that an accelerated schedule pose any ris'. Identify and weed out the systems re!uests that are not feasible. &easibility analysis is an ongoing tas' that must be performed throughout the systems development process.

&easibility assessment category

Description

% ,7 %

System Analysis & Design

KSOU

Determines the relationship between the Technical present technology resources of the organi#ation and the expected technology needs of the proposed project. $conomic Assesses the costBbenefit relationship of the proposed project and its net value contribution to the organi#ation. Determines the relationship between the Cuman &actors present human resource base of the organi#ation and the expected human resource needs of the proposed project. )perational Determines the degree to which the proposed development project fits with the existing business environment and objectives with regard to development schedule, delivery date, corporate culture, and existing business processes. 2egal and %olitical Identifies any potential legal ramifications resulting from the construction and implementation including infringements, of the new or of system patent existing copyright violation

antitrust laws, foreign trade restrictions, or any existing contractual obligations of the organi#ation. Table A.;. ategories of &easibility study

UNIT . SYSTEM ANALYST

% .9 %

System Analysis & Design

KSOU

Ob e!ti"es' E>)lain t1e nee# o& System analyst Dis!uss t1e "arious roles )laye# by system analyst 41ile #e"elo)ing a )ro e!t< Cere we shall go through in detail about who is the system analyst . the various roles played by the system analyst. @1o is a Systems AnalystA Systems analysts are people who understand both business and computing. Systems analysts study business problems and opportunities and then transform business and information re!uirements of the business into the computer7based information systems and computer applications that are implemented by various technical specialists including computer programmers. /ey individuals in the system development process. The organi#ational role most responsible for the analysis and design of information systems. A structured framewor' . a disciplined approach to solving problems are a part of analysis. Designing . implementing systems to suit organi#ational needs are the functions of the system analyst. Analyst plays a major role in seeing business benefit form computer technology. The analyst is a person with the uni!ue s'ills. A system analyst is a person who conducts a methodical study . evaluation of an activity such as a business to identify its desired objectives in order to determine procedures by which these objectives can be gained. The tas' of the system analyst is to elicit needs . resource constraints . to translate these into a viable operation. Analysts must be ethical with users and customers ,any organi#ations consider information systems and computer applications as essential to their ability to compete or gain competitive advantage. Information has become a management resource e!ual in importance to property, facilities, employees, and capital. All wor'ers need to participate in the development of these
% .$ %

System Analysis & Design

KSOU

systems and applications 6 not just the computer and information specialists. (ut one specialist plays a special role in systems and applications development, the systems analyst. A systems analyst4s5 facilitates the development of information systems and computer applications. The systems analyst performs systems analysis and design. The system analyst bridges the communications gap between those who need the computer and those who understand the technology. Systems analysis is the study of a business problem domain for the purpose of recommending improvements and specifying the business re!uirements for the solution. Systems #esign is the specification or construction of a technical, computer7based solution for the business re!uirements identified in a systems analysis. 49ote" Increasingly, the design ta'es the form of a wor'ing prototype.5. Assesses how businesses function by examining the inputting and processing of data and the outputting of information with the intent of improving organi#ational processes is the responsibility of a system analyst. System analyst is catalyst for change 4i.e., improvements to the business that can be done via information systems5.

Ma or ty)es o& system analysts' 7 )utside consultants to businesses 4organi#ation5. 7 Cired specifically to address information systems issues within a business 4organi#ation5. 7 Supporting experts 4within a business you are regularly employed5 A systems analyst interacts with users at different levels in the organi#ation 7 user managers, operations wor'ers, systems managers, systems designers, programmers etc.
% .( %

System Analysis & Design

KSOU

A &ormal De&inition A systems analyst facilitates the study of the problems and needs of a business to determine how the business system and information technology can best solve the problem and accomplish improvements for the business. The product of this activity may be improved business processes, improved information systems, or new or improved computer applications fre!uently all three. *hen information technology is used, the systems analyst is responsible for" N The efficient capture of data from its business source N The flow of that data to the computer N The processing and storage of that data by the computer N The flow of useful and timely information bac' to the business and its people A systems analyst is a business problem solver, who sells change, sells business management and computer users the services of information technology. A systems analyst helps the business by solving its problems using system concepts and information technology. A systems analyst performs the following tas's" Interacting with the customers to 'now their re!uirements, with designers to convey the possible interface of the software. InteractBguide the codersBdevelopers to 'eep trac' of system development.

%erform system testing with sampleBlive data with the help of testers. Implement the new system.

%repare high !uality documentation which is necessary during the development of proposed candidate system
% .* %

System Analysis & Design

KSOU

A systems analyst is also responsible for researching, planning, coordinating and recommending software and system choices to meet an organi#ationGs business re!uirements. The systems analyst plays a vital role in the systems development process. A successful systems analyst must ac!uire four s'ills" analytical, technical, managerial, and interpersonal. Analytical s'ills enable systems analysts to understand the organi#ation and its functions, which helps himBher to identify opportunities and to analy#e and solve problems. Technical s'ills help systems analysts understand the potential and the limitations of information technology. The systems analyst must be able to wor' with various programming languages, operating systems, and computer hardware platforms. ,anagement s'ills help systems analysts manage projects, resources, ris', and change. Interpersonal s'ills help systems analysts wor' with end users as well as with analysts, programmers, and other systems professionals. ;oles o& system analyst' The role of the system analyst has been emerging with changing technology. The roles that an analyst performs are"7 hange Agent Investigator . ,onitor Architect %sychologist Salesperson ,otivator %olitician

C1ange Agent' The analyst may be viewed as an agent of change. A candidate system is designed to introduce change and reorientation in how the user organi#ation handles information or ma'es decisions. It is important then that the user accept change. The way to secure
% .+ %

System Analysis & Design

KSOU

user acceptance is through user participation during design and implementation. In the role of a change agent, the system analyst may select various styles to introduce change to the user organi#ation. *hen drastic changes are re!uired, it may be necessary to adopt the confronter or even the imposer style, no matter what style is used, however, the goal is the same, to achieve acceptance of the candidate system with minimum resistance. In"estigator an# Monitor' The analyst pieces together the information gathered to determine why the present system does not wor' well and what changes will correct the problem. This wor' is similar to that of an investigator extracting the real problems from the existing system and creating information structures that uncover previously un'nown brands, that may have a direct impact on the organi#ation. -elated to the role of the investigator is the role of the monitor, to underta'e and complete a project successfully. The analyst must monitor programs in relation to time, cost and !uality. If time gets away, the project suffers from increased costs and wasted human resources. Moti"ator' The motivational approach in system development states that the candidate system should satisfy the userGs needs if they are going to use it. There are two types of relationships the first relationship is between effort and performance, the user determines the probability that a certain level of motivation or effort will improve job performance. The second important relationship is between performance and rewards to the extent that rewards are contingent upon performance motivation may be enhanced. 8oliti!ian' Since information is a source of organi#ational power, the process of system development may be viewed as a contest for power where analysts have the initial advantage. System development is often viewed as a bargaining process where analysts and users attempt to enhance their power positions. A system that is simple to
% ., %

System Analysis & Design

KSOU

explain and easy to understand is more readily accepted than a technical presentation. The political factor prompts the analyst to honestly assess the motives of allergies involved and attempt to remove barriers that lead to system failure. System analyst s:ill set' An analyst must posses various s'ills to effectively carry out the job. Specially they are divided into following categories"7 Analytical S'ills B %roblem Solver Technical S'ills Interpersonal ommunication S'ills ,anagerial S'ills (usiness S'ills

Analyti!al S:ills' Analytical s'ill is the ability to visuali#e, articulate, and solve complex problems and concepts, and ma'e decisions that ma'e sense based on available information. Such s'ills include demonstration of the ability to apply logical thin'ing to gathering and analy#ing information, designing and testing solutions to problems, and formulating plans. To test for analytical s'ills one might be as'ed to loo' for inconsistencies in an advertisement, put a series of events in the proper order, or critically read an essay. 1sually standardi#ed tests and interviews include an analytical section that re!uires examine to use their logic to pic' apart a problem and come up with a solution. There is no !uestion that analytical s'ills are essential, other s'ills are e!ually re!uired. &or instance in systems analysis the systems analyst should focus on four set of analytical s'ills" systems thin'ing, organi#ational 'nowledge, problem identification, and problem analy#ing and solving.

% .. %

System Analysis & Design

KSOU

A successful analyst is a team player. Cas the capacity to understand the organi#ation. Ce should be an efficient problem7solver. Ce should have system thin'ing ability. The ability to examine a complex set of components without losing sight of the bigger picture is essential to an analystFs success. Te!1ni!al S:ills' 1nderstanding of potential and limitations of technology is one among the important technical s'ill that an analyst must have. Ce should have general s'ills as well. Ce should 'now various techni!ues that are used in system development. /nowledge about various tools those are available to carryout development process. Dynamic interface, reativity is also re!uired to perform efficiently. Dynamic interface is nothing but blending technical and non technical considerations in functional specifications and general design. Creativity will help in modeling the ideas into concrete plans and developing candidate systems to match user re!uirements. 0uestioning attitude and in!uiring mind are the !ualities of an efficient analyst. These !ualities will help analyst in 'nowing the what, when, why, where, who and how a system wor's. Technical S'ill is a wor'ing 'nowledge of the technology in the areas of database management, data networ's, telecommunications, operating systems, distributed architectures, object technology, languages and protocols, etc. Inter)ersonal Communi!ation S:ills' $ffective written and oral communication s'ills. A successful analyst is a good communicator. Includes the ability to !uestion, listen, interview and observe. $ffectively conduct oral and written presentations. *or'ing alone and with a team. &acilitate groups, and be a team player. Systems analysts wor' in teams composed of IS professionals, end7users, and management.
% .0 %

System Analysis & Design

KSOU

(eing able to cooperate, to comprise, and to function as part of a team, is critical for success in most projects. (ecause development teams include people with dramatically different levels of education and experience, group dynamics is an important s'ill to develop. ,anaging expectations of the user as well as management is the top most responsibility of the analyst and interpersonal communication s'ills will play a very important role in meeting these expectations. Selling ideas . promoting innovations in problem solving. Teaching or educating others in use of computer system, selling system to users . giving support when needed. It refers to mental and communicative algorithms applied during social communications and interactions in order to reach certain effects or results. The term :interpersonal s'ills: is used often in business contexts to refer to the measure of a personGs another. Caving positive interpersonal s'ills increases the productivity in the organi#ation since the number of conflicts is reduced. In informal situations, it allows communication to be easy and comfortable. %eople with good interpersonal s'ills can generally control the feelings that emerge in difficult situations and respond appropriately, instead of being overwhelmed by emotion. (ecause they must write user re!uests into technical specifications, the systems analysts are the liaisons between vendors and the IT professionals of the organi#ation they represent. They may be responsible for developing cost analysis, design considerations, and implementation time7lines. They may also be responsible for feasibility studies of a computer system before ma'ing recommendations to senior management. Managerial S:ills' ability to operate within business organi#ations through social communication and interactions. Interpersonal s'ills are how people relate to one

% .5 %

System Analysis & Design

KSOU

,anagerial s'ills includes business domain 'nowledge, resource management, project management, ris' management, change management etc. Management in all business and human organi#ation activity is simply the act of getting people together to accomplish desired goals and objectives. ,anagement comprises planning, organi#ing, staffing, leading or directing, and controlling an organi#ation 4a group of one or more people or entities5 or effort for the purpose of accomplishing a goal. -esourcing encompasses the deployment and manipulation of human resources, financial resources, technological resources, and natural resources. ,anagement activities involves scheduling, performing well under time constraints, coordinating team efforts and managing costs and expenditures. Cusiness S:ills' Systems analysts have broader s'ills than computer scientists. *hat you need to 'now about your organi#ation. Ce must 'now how to identify a problem, how to analy#e it and give best solution. ;es)onsibilities o& a system analyst' onduct re!uirement analysis and system design.

%repare project document deliverables including re!uirement specification, functional design specification, test plan . case, training materials and related documents .

Develop application or customi#ation, and ensure user re!uirements fulfillment.

Testing of application features and customi#ation.

Support user to perform user acceptance test.


% .7 %

System Analysis & Design

KSOU

%rovide user training and support production rollout B system migration .

%rovide ongoing support and maintenance after system rollout.

The fundamental activity of the modern systems analyst is that of problem identification and solution development.

Analyst ;ole %rogrammerBAnalyst Systems Analyst Independent Analyst )utsource %rovider Systems onsultant Software developer

;elations1i) to Organi?ation $mployee of the organi#ation $mployee of the organi#ation ontractor to the organi#ation $mployee of outsourcing contractor ontractor to the organi#ation ,anufacturer or supplier of software

Table =.;. Typical Analyst7)rgani#ation -elationships

Mo#ule * Unit 0
% 09 %

System Analysis & Design

KSOU

In&ormation Gat1ering Te!1ni2ues % I


Information gathering is an art and a science. The approach and manner in which information is gathered re!uire persons with sensitivity, common sense, and a 'nowledge of what an when to gather and what channels to use in securing information. The information gathering is neither easy nor routine. ,uch preparation, experience and training are re!uired. This section addresses the categories and sources of information and the functions, uses and relevance of 'ey information7gathering tools during the phases of system analysis. The phases are" ;. &amiliarity with the present system through available documentation, such as procedures manuals, documents and their flow, interviews of the user staff, and on7site observation. H. Defining the decision ma'ing with managing system. This is because for the determining what information is re!uired of the system. onducting interviews clarifies the decision points and how decisions are made in the user area. K. After identifying the decision points, a series of interviews are conducted to define the information re!uirements of the user. Analysis and documentation of the information gathered will be carried out. Identification of discrepancies between decision system and information gathered form information system are also done. This concludes the analysis and sets the stage for system design.

Sam)ling"

% 0$ %

System Analysis & Design

KSOU

Sampling is a techni!ue for obtaining an estimate from a population by studying, measuring, or interviewing a subset 4or sample5 of that population. In this chapter we will discuss basic sampling concepts. Sampling is a process of collecting a representative sample of documents, forms, and records. *hich involves organi#ation chart, memos and other documents that describe the problem, standard operating procedures for current system, completed forms, manual and computeri#ed screens and reports, samples of databases, flowcharts and other system documentation. Sampling is a process of systematically selecting representative elements of a population. Sampling is a fact7finding techni!ue that involves a large number of observations ta'en at random intervals. A well7selected sample yields an estimate of the target parameters in much less time and at much less cost than studying, measuring, or interviewing the entire population 4conducting a census5. It is often impossible to achieve ;>> percent response because some of the entities to be studied, measured, or interviewed are unavailable or do not respond. A sample is sometimes more accurate than a census because obtaining numerous measurements introduces errors owing to fatigue, inaccurate or inconsistent data entry, and the use of less !ualified personnel. The sample answer, called an estimate, is almost never exactly the same as the corresponding population value. 4This difference is called error&5 Additionally, before a statistically valid sample can be selected, a great deal of information about the population must be available. (efore conducting a sample, it is necessary to define the specific information being sought and the population from which the sample will be drawn. &or example, if an analyst needs information about perceived wea'nesses in the existing sales order trac'ing system, the population would consist of all the people who utili#e the existing system. Sampling can be used to select the subset of a population to be interviewed the members of a 8AD 48oint Application Development5 team, or the members of an inspection team. Sampling is an effective way to study an existing system by selecting the entities, transactions, occurrences, or personnel to be observed and measured. Sampling is an effective tool for estimating population characteristics when using such mathematical
% 0( %

System Analysis & Design

KSOU

tools as simulation and !ueuing theory. During the testing phase of the system development life cycle, sampling is used to generate test data and select the specific events to be monitored. During the operation and maintenance phase, sampling is an effective tool for evaluating and monitoring performance and for implementing system controls. &or example, !uality control is often implemented by ta'ing random samples of a process. Sometimes the estimates generated by sampling a process are plotted on a control chart to determine if the process is in control. @1y sam)leA $very year, Consumer 'eports maga#ine conducts tests on new automobiles and reports its findings to its readers. 3iven the 4literally5 millions of automobiles that roll off the assembly lines every year, testing the entire population would be incredibly time consuming, prohibitively expensive, and practically impossible, so the test results are based on a sample. In many cases, testing a sample is actually more accurate than testing the entire population. A testerFs reactions and perceptions are li'ely to change between the first car and the tenth car, if only because of fatigue. ,ultiple tests mean considerable data, and data entry errors are inevitable. ,ultiple tests also imply multiple testers, not all of whom are e!ually s'illed. &inally, the test conditions and criteria will almost certainly change over time. &or example, if enough cars are crashed into a barrier, the barrier will eventually be deformed, thus changing the test conditions. Sampling comes before interviews and includes loo' for the organi#ation chart, investigate project history, loo' for high level mission or policies, charters for each organi#ation affected, processes and procedures in use. Nee# &or sam)ling' N N N N N The reasons systems analysts do sampling are -eduction of costs Speeding up the data7gathering process Improving effectiveness -eduction of data7gathering bias

% 0* %

System Analysis & Design

KSOU

If the sample is drawn properly, it is reasonable to assume that the sample estimate reflects the population. The balance of this chapter discusses the process of drawing a good sample. Sam)ling Design Ste)s To design a good sample, a systems analyst needs to follow four steps" Determining the data to be collected or described Determining the population to be sampled hoosing the type of sample

Deciding on the sample si#e

Sam)le si?e an# sam)ling error The difference between the sample estimate and the true population value is called error. As a general rule, the sampling error decreases as the sample si#e increases. &or example, assuming a JA percent confidence interval, a sample of ;,>>> voters might predict the outcome of an election with an error of slightly more than plus or minus K percent. Increase the sample si#e to L,>>>, and the error drops to plus or minus ;.A percent, while a sample si#e of ;>,>>> reduces the error to less than plus or minus ; percent. A useful formula for computing the sample si#e is" n O 4$HPH5 B(H, 4J.;5 where $ is a number from the normal distribution table that corresponds to the desired confidence interval, P is the standard deviation of the population as estimated by the sample standard deviation, and ( is the maximum acceptable error between the sample mean and the actual population mean. &or a JA percent confidence interval, use $ O ;.J=. &or a JJ percent confidence interval, use $ O H.A?A. As a practical matter, one7fifth the sample range can be used as an estimate of the standard deviation. &or example, suppose you want to estimate the average amount of money a state university student spends on food and beverages in an average wee'. The maximum acceptable error is QH. (ased on a preliminary sample, P is estimated to be Q@. The desired confidence interval is JA percent. %lugging those numbers into $!uation 4J.;5 suggests a sample si#e of"
% 0+ %

System Analysis & Design

KSOU

n O R4;.J=H54@H5S B HH O =H.LH= or =K students. 4It is impossible to sample a fractional student, and rounding up yields a confidence interval slightly higher than JA percent.5 Assuming the students answer truthfully, averaging the wee'ly food expenditures of =K randomly selected university students will yield a value that is within QH of the population average with JA percent confidence. To put it another way, there is a >.JA probability that the sample mean will lie within QH of the true mean. 4 )ote* A real statistician would probably argue that the last statement is not technically correct, but in most cases it is a reasonable way to visuali#e a confidence interval.5 De!i#ing Sam)le Si?e &or Attribute Data Steps to determine sample si#e Determine the attribute to sample 2ocate the database or reports where the attribute is found $xamine the attribute and estimate p+ the proportion of the population having the attribute ,a'e the subjective decision regarding the acceptable interval estimate, i hoose the confidence level and loo' up the confidence coefficient 4 $ value5 in a table alculate ,p, the standard error of the proportion as follows"

Tp O iB # Determine the necessary sample si#e, n, using the following formula" n O 4p4;7p5 B TpH5 U ;

Sam)le Si?e &or Data on =ariables The steps to determine the sample si#e when sampling data on variables are Determine the variable you will be sampling 2ocate the database or reports where the variable can be found $xamine the variable to gain some idea about its magnitude and dispersion

% 0, %

System Analysis & Design

KSOU

It would be useful to 'now the mean to determine a more appropriate interval estimate and the standard deviation, s to determine sample si#e 4in the last step5 ,a'e a subjective decision regarding the acceptable interval estimate, i hoose a confidence level and loo' up the confidence coefficient 4$ value5 alculate Tx, the standard error of the mean as follows" Tp O iB # n O 4s% TxH5H U ; Ty)es o& sam)ling There are four types of sampling onvenience

Determine the necessary sample si#e, n, using the following formula"

%urposive Simple random Con"enien!e onvenience samples are unrestricted. They are non7probability samples. It is easy to arrange and most unreliable. 8ur)osi"e This type of sampling is based on judgment. Analyst chooses group of individuals to sample. This is purely based on criteria. This is also a non7probability sample and it is moderately reliable. Cias Any factor that systematically favors some members of the population over others when a sample is drawn. Simply selecting the right sample si#e is not enough, however. &or example, a sample ta'en outside an expensive restaurant and a sample ta'en outside a food ban' will almost certainly yield two very different 4and e!ually invalid5 estimates of the wee'ly food
% 0. %

omplex random

System Analysis & Design

KSOU

expenditures of university students because those samples are li'ely to be biased. A biased sample systematically favors some members of the population over others. To cite another example, if a telephone boo' is used to select a sample, people with unlisted numbers, people who have recently moved into that telephone mar'et, and people with no telephone are automatically excluded from the sample. 9on7response bias occurs when one or more members of the selected group are not included in the sample. A survey that includes information only from people who answer their telephones at a certain time of day excludes one subset of the population. Dismissing or excluding people who refuse to answer certain !uestions is another source of non7response bias. (e aware of non7 response bias. (efore ta'ing a sample, study the sampling process, identify subsets of the population that might be excluded or choose not to participate, and adjust the sampling process as necessary.

;an#om sam)ling )ne relatively easy way to avoid introducing bias is to sample randomly. A sample is considered random if each member of the population has the same chance of being selected. -andom samples yield unbiased estimates. 3enerally, an unbiased estimate is high about half the time and low about half the time. There are two commonly used techni!ues for selecting a random sample. If the population is small, the members 4or slips of paper representing each member5 can be mixed thoroughly and the sample selected directly 4li'e bingo mar'ers or lottery tic'ets5. &or larger populations, assign each member a number and use a random number generator or a table of random numbers to select the sample. Sim)le ran#om (ased on a numbered list of the population. $ach person or document has an e!ual chance of being selected. As the name specifies it easy and simple type of sampling. Com)le> ran#om This sampling type again has three forms7 Systematic sampling
% 00 %

System Analysis & Design

KSOU

Stratified sampling luster sampling Systemati! sam)ling This is the simplest method of probability sampling, which chooses every kth person on a list to perform the sampling. 9ot good if the list is ordered. Cluster sam)ling In this type of sampling first selection of group of documents or people to study then select typical groups that represent the remaining ones. ;an#om%li:e sam)les In cases where it is impossible or inconvenient to select a true random sample, the objective is to generate estimates that behave as though they were based on a random sample. The 'ey to successful, almost random sampling is to avoid introducing bias. &or example, imagine a grocer inspecting a shipment of fruit. An estimate based on a sample ta'en from a single box or even from the tops of several boxes is unli'ely to accurately reflect the !uality of all the fruit. Cowever, if the grocer selects several boxes and then selects fruit from the top, the middle, and the bottom of each, the sample is li'ely to be random7li'e. )n an assembly line, selecting every tenth, hundredth, or thousandth item 4generally, every nth item5 as it flows by might be an effective way to select a random7li'e sample. An option is to select every m V nth item5, where n is a random number 4for example, every ;>> V Ath item. Avoid predictability when sampling human beings, however, because it often introduces bias. &or example, if the boss wal's through the wor' area every hour on the hour, he or she is li'ely to find everyone hard at wor'. If another boss were to use a random number table to define the times for random visits to the wor' area, he or she is li'ely to gain a more accurate picture of the employeesF wor' habits.

Strati&ie# ran#om sam)ling


% 05 %

System Analysis & Design

KSOU

This sampling begins with identifying subpopulations or strata, then selecting objects or people for sampling from the subpopulation. After this important to the systems analyst. *ith stratified random sampling, a population of si#e ) is divided into m subgroups. $ach subgroup is called a stratum, and each member of the population must lie in exactly one stratum. &or example, dividing a group of people by sex yields two strata 4male and female5M dividing a group of voters into Democrat, -epublican, Independent, and Socialist yields four strataM and comparing the products produced on the first, second, and third shifts calls for three strata. Samples are ta'en randomly within each stratum. Stratified random sampling is important if the different strata have different means andBor different levels of variability. &or example, suppose the newer, relatively inexperienced employees who wor' the third shift produce mar'edly more errors than the people who wor' the other two shifts. In such cases, stratified sampling tends to yield more accurate estimates than simple random sampling. 8ro)ortional allo!ation )ne techni!ue for distributing a sample across several strata is called proportional allocation. If H>> employees are distributed over three shifts with ;>> on first shift, => on second shift, and L> on third shift, a reasonable sample distribution might be A> percent first shift, K> percent second shift, and H> percent third shift. O)timal allo!ation If one stratum exhibits significantly more variability than the others, proportionally more samples should be ta'en from the inconsistent stratum. Also, if one stratum is more costly to measure or interview than another, proportionally fewer samples should be ta'en from the expensive stratum. )ptimal allocation is a techni!ue for distributing a sample across several strata that considers variability and cost. The optimum allocation formula is" 4niB n5 O R-iPiB 4Ci;BH5S B P R-iPi B 4Ci;BH5S, 4J.H5
% 07 %

ompensates for a

disproportionate number of employees from a certain group will ta'e place. This is most

System Analysis & Design

KSOU

where ni is the number of samples in stratum i, n is the total sample si#e, -i is the percentage of the population in stratum i+ Pi is the standard deviation of stratum i, and Ci is the cost to sample stratum i. The formula calculates a relatively larger sample si#e for a given stratum if its variability 4measured by P i5 is higher than average or if the cost of sampling from that stratum is lower than average. &or example, suppose n+ the total sample si#e, is A>>. The population is divided among three strata, with costs to sample of QK, QL, and QA per item for strata ;, H, and K respectively 4 C; O QK, CH O QL, and CK O QA5. Stratum ; contains A> percent of the population 4 -; O >.A5, stratum H contains K> percent of the population 4-H O >.K5, and stratum K contains H> percent of the population 4-K O >.H5. &inally, the estimated standard deviations for the three strata are P; O ;.A, PH O H, and PK O H.A. &irst calculate P4-iPiB4Ci;BH55 O R-;P;B4C; ;BH5S U R-H PHB4CH ;BH5S U R-KPKB4CK ;BH5S O R>.A4;.A5 B 4K;BH5S U R>.K4H5 B 4L;BH5S U R>.H4H.A5 B 4A;BH5S >.LKK U > .K>> U >.HHL O >.JA?. 9ext, compute n;Bn O >.LKKB>.JA? O >.LAH nHBn O >.K>>B>.JA? O >.K;L nKBn O >.HHLB>.JA? O >.HKL. Those numbers suggest that n; 4the stratum ; sample si#e5 should be LA.H percent 4or HH= units5 of the total sample si#e 4A>> items5, nH should be K;.L percent 4or ;A? units5, and nK should be HK.L percent 4or ;=? units5.

@or:&lo4 Analysis *or'flow analysis may reveal signs of larger problems, such as 7 data or information doesnFt flow as intended, bottlenec's in the processing of forms, access to online forms is cumbersome, unnecessary duplication of wor' occurs because employees are unaware that information is already in existence, employees lac' understanding about the interrelatedness of information flow.
% 59 %

System Analysis & Design

KSOU

Scope of Data always depends on the type, what type of data and amount, !uantity of the data. So identify the population and determine sample characteristics

onvenience Sample " 9o criteriaM non7-andom selection Simple -andom Sample " 9o criteriaM -andom selection %urposeful Sampling " riteriaM non7-andom selection omplex 4Stratified5 -andom Sampling " riteriaM -andom

If you 'now a lot about the consistency of data, can use statistical sampling techni!ues 7 N N A random sample should be truly random, not just convenient. A stratified sample may be used to avoid important special cases.

-esearch . site visits N -esearch may use various sources, such as" 6 6 6 6 N The Internet 4e.g. for vendors5 Trade and professional journals 4AIT%, AIS, I$$$, A ,, etc.5 ompany7specific intranets 3overnment agencies 4S$I, STS , etc.5

Site visits are to see the existing system

)bservation of the wor' environment involves the participation of, or watch the existing system being used, should determine what 'ind of data to collect, when, and how 4what forms5, should already understand the process being observed somewhat, and can use sampling for large numbers of observations. Determine who, what, where, why, and how, obtain permission from supervisor, inform subject of reason for visit, 'eep a low profileM donFt interrupt, ta'e copious notes, and review them, focus on important activities, donFt ma'e assumptions.

% 5$ %

System Analysis & Design

KSOU

In"estigation %reliminary Investigation, the purpose of carrying out this is to decide whether to continue the project or not. )bjectives for a preliminary investigation are" ;. 1nderstand the problem. H. Define the project scope and constraints. K. Identify the benefits. L. $stimate the time and costs. A. -eport to management 7 Interaction with managers and users.

Ste)s in t1e 8reliminary In"estigation Step ;" 1nderstand the problem, identify the true nature of the problem and the reason for the systems re!uest, stated problem may not be the real problem, clear statement defines the investigation scope. Step H" Define the project scope and constraints. %roject scope involves defining the range or extent of the project, setting project boundaries. mandatory vs. desirable. Step K" %erform fact finding. It is a process of analy#ing organi#ation charts, conducting interviews, observing operations and carry out a user survey. Step L" Determine feasibility 7 determining operational, technical, and economic feasibility.
% 5( %

onstraints is nothing but identifying

conditions, restrictions, or re!uirements 7 present vs. future, internal vs. external,

System Analysis & Design

KSOU

Step A" $stimate time and cost to continue development. This step involves determining of what information is needed, identifying the sources of information, decide whether to use interviews, if so how many, and what time needed. decide whether to use surveys, if so who to complete it, and what time needed, estimate the cost of gathering, analy#ing, and reporting the information to management< Step =" %resent results and recommendations to management. This step is the final tas' in the preliminary investigation. The 'ey elements of this step are 7 $valuation of systems re!uest, $stimate of costs and benefits, -ecommendations, oral and written presentations submitted to management. Things to be gleaned from Documents N N N N N Symptoms and causes of problems %ersons in organi#ation who have understanding of problem (usiness functions that support the present system Type of data to be collected and reported by the system 0uestions that need to be covered in interviews

Obser"ation &act7finding techni!ues wherein the systems analyst either participates in or watches a person perform activities to learn about the system. )bservation 3uidelines N N N N Determine the who, what, where, when, why, and how of the observation. )btain permission from appropriate supervisors. Inform those who will be observed of the purpose of the observation. /eep a low profile.
% 5* %

System Analysis & Design

KSOU

N N N N N

Ta'e notes. -eview observation notes with appropriate individuals. DonGt interrupt the individuals at wor'. DonGt focus heavily on trivial activities. DonGt ma'e assumptions.

Inter"ie4ing' Interviewing is an important method for collecting data on information system re!uirements. A face7to7face meeting between two 4or more5 people in which one person obtains information from another by as'ing !uestions. It is a fact7finding techni!ue whereby the systems analysts collect information from individuals through face7to7face interaction. During the problem definition, feasibility study, and analysis stages, interviewing is one of the analystFs most important sources of information about the present system and the userFs re!uirements. The purpose of this brief introduction is to provide some suggestions for planning and conducting an interview. Interviews reveal information about 7 Interviewee opinions, Interviewee feelings, About the current state of the system, )rgani#ational and personal goals, Informal procedures. Interview process starts with determining of the people to interview, then establishing objectives for the interview, developing interview !uestions, preparing for the interview, conduct the interview, document the interview, and evaluate the interview. The personal interview is generally recogni#ed as the most important and most often used fact7finding techni!ue. Systems analysts spend a great deal of time tal'ing with people. ,uch of that time is spent conducting interviews. *ritten documentation often provides a one7dimensional view of the problem. Interviews, in contrast, give the analyst the opportunity to sit down face to face with the affected people, investigate their opinions, feelings, and goals 4as well as the facts5, observe nonverbal behavior, and probe for additional feedbac'. An interview can serve as an effective entry point to the problem definition and analysis stages, identifying relevant
% 5+ %

System Analysis & Design

KSOU

personnel and specific topics that must be investigated in more depth. Interviews are excellent tools for achieving user involvement in the system development process and for verifying information collected using other tools. Interviewing is time consuming and costly. Its effectiveness is a function of the interviewerFs s'ill. 9ot all subjects are comfortable being interviewed, and many people react negatively or defensively to an interviewerFs !uestions. Interviewing is not particularly effective for uncovering technical or operational details. Interviews can be used in virtually any stage of the system development life cycle. Interviewing is often one of the first tas's performed during the information gathering and problem definition stage. Interviews are often performed as part of conducting a survey. During the problem definition, feasibility study, and analysis stages, interviewing is one of the analystFs most important sources of information about the present system and the userFs re!uirements. The purpose of this brief introduction is to provide some suggestions for planning and conducting an interview. 8lanning t1e Inter"ie4 &ive steps in planning the interview are -eading bac'ground material $stablishing interview objectives Deciding whom to interview %reparing the interviewee Deciding on !uestion types and structure 8re)aring &or t1e inter"ie4 %eople resent interviewers who waste their time, so do your homewor'. 3ood interviewers do not just Dwing it.E $ffective interviewing re!uires careful preparation. Study the userFs environment. Identify the people responsible for the problem area. Study
% 5, %

System Analysis & Design

KSOU

the organi#ation chart and learn what those people do. &amiliari#e yourself with the available reports, documents, and procedures, note unanswered !uestions, missing pieces, and ambiguities, and develop a specific set of objectives for the interview. 1nless you 'now what you want to learn 4more accurately, unless you 'now what you do not 'now5, you cannot as' intelligent !uestions. %repare for the Interview by following some of the interview !uestion guidelines" N N N N N Schedule a specific day and time %lace a reminder call Send a memo to managers Send a list of essential !uestions to an interviewee ahead of time 1se clear and concise language. DonFt include your opinion as part of the !uestion. Avoid long or complex !uestions. Avoid threatening !uestions. DonFt use DyouE when you mean a group of people

3iven a set of objectives, the next step is to select the person 4or the group5 to be interviewed. The organi#ation chart is a good starting point. Interview the responsible manager first, get an overview of the problem, re!uest the names of the people who 'now the details, and re!uest permission to interview them. &ailing to obtain appropriate authori#ations for an interview is usually a mista'e.

S!1e#uling t1e inter"ie4 Interviews should be scheduledM do not simply drop in unannounced and expect cooperation. -emember that you are the one who needs information and that you are as'ing another person to give up his or her time to help you achieve your goals, so you must be willing to meet at the subjectFs convenience. Also, limit the length of the interview to no more than an hourM half an hour is better. (efore you meet the subject,
% 5. %

System Analysis & Design

KSOU

prepare a list of !uestions you hope to answer. The purpose of the list is to help you remember your objectives and to help you prevent the interviewee from dragging the interview off topic. Interviewees will tal' about the details of their jobs, and it is easy to become distracted. In the beginning of the Interview to create comfortable atmosphere sha'e hands, remind them of your name and why you are there, ta'e out note pad, tape recorder, ma'e sure tape recorder is wor'ing correctly.

T1e Inter"ie4 Itsel& EInter"ie4 Con#u!tionF %rocedure to onduct an Interview ;. Select Interviewees N N $nd users 2earn about individual prior to the interview

H. %repare for the Interview N K. interview guide

onduct the Interview N N N Summari#e the problem )ffer an incentive for participation As' the interviewee for assistance

L. &ollow 1p on the Interview N ,emo that summari#es the interview

A well7conducted interview has four parts" an opening, a body, a closing, and follow7up. T1e o)ening
% 50 %

System Analysis & Design

KSOU

(e on time. If you 'now you are going to be late, call and give the subject the option to reschedule. The point of the opening is to establish rapport and to encourage the subject to respond freely. Identify yourself, the topic to be discussed, the purpose of the interview, and how long you expect the interview to last. Tell the subject why he or she was selected for the interview. *here appropriate, identify the manager or managers who authori#ed the interview. In an attempt to establish a relaxed atmosphere, many good interviewers begin with a period of small tal'. *hile this techni!ue can be effective, it can also bac'fire. Avoid wasting the subjectFs time. *hen in doubt, get to the point. )pening 0uestions 7 Start with pleasant conversation, open7ended !uestions, listen closely to early responses, and loo' for metaphors.

T1e bo#y Wou are conducting the interview, so you are responsible for getting things going. Cave your first !uestion prepared. ,any interviewers li'e to start with an open7ended !uestion, such as" *hen I read the documentation for this system, I had some trouble with 4mention the part or section5. an you explain it to me+ During the Interview 7 The interview should not exceed LA minutes to one hour, ma'e sure that you understand what the interviewee is telling you, as' for definitions if needed, use probing !uestions. onsider as'ing the subject how his or her job relates to the project. Another good opener is to as' the subject to wal' you through some process or to explain how he or she uses the data in a report. 2isten to the answer. A good techni!ue is to say something li'e, D2et me see if I understand what youFre saying,E and then offer a brief summary. If you are wrong, the subject will probably tell you. If you can paraphrase correctly, you establish that communication is ta'ing place. hec' your list of !uestions occasionally. As the subject responds to an open7ended !uestion, he or she will answer some of them before they are as'ed. 1nanswered !uestions tell you what to as' next. 1se follow7up !uestions, such as, D*hy+E or D an you give me an example+E to probe for additional details. 2isten for the answers to !uestions you did not include on your list, too. )ne advantage of starting with an open7ended !uestion is that 4almost by definition5 the subject 'nows more about the topic than you do.
% 55 %

System Analysis & Design

KSOU

onse!uently, your prepared !uestions might focus on the wrong issues or force the subject to cover 'ey points in the wrong order. If you can get the subject to tell you what you should 'now, you can learn a great deal very !uic'ly. X 9ot all interviewers are comfortable with open7ended !uestions, however, and the interviewee might be nervous or even hostile. In such cases, it might be better to start with closed7ended !uestions that can be answered with a few words. 4A forced7choice survey is an extreme example.5 The answers to those !uestions, in turn, might suggest more open follow7up !uestions. 3enerally, s'illed interviewers start with open7ended !uestions for their initial interviews, particularly with higher7level managers. As they learn more about the system and begin to hone in on specific issues, the !uestions become more closed and specific. (eginners, on the other hand, should consider preparing 4perhaps with the help of an experienced interviewer5 a list of closed !uestions, and let the responses suggest follow7up !uestions. During the interview, be careful not to concentrate so intently on your next !uestion that you miss the answer to the current one. 4This is a common beginnerFs mista'e.5 Wour list of prepared !uestions should be used as a guide or as a memory jog, not as a script. 2isten to the answers. Delete !uestions that seem unimportant. S'ip !uestions you 'now your subject cannot or will not answer. (ypass !uestions that have already been answered. Avoid needlessly complex or multi7part !uestionsM as' one clear !uestion at a time. (e flexible. Try to stic' to the subject, and do not allow the interviewee to drag the interview off topic, but do allow a certain amount of spontaneity. Wou might learn something. Avoid technical jargonM ta'e the time to learn the subjectFs application specific language. An interview is not a trial. As' probing !uestions, but do not conduct a cross7 examination. &inally, avoid attac'ing the subjectFs credibility or implying that you 'now more about the topic than the interviewee. 4If the assumption is true, why conduct the interview+5 Wou will sit through an occasional useless interview. An early closing might be in order, but always act professionally in spite of your disappointment. 1nless you have an incredible memory, ta'e notes. )ne suggestion is to leave space for notes on your list of !uestions or your interview outline. Do not ta'e dictation, however. *hen you try to write down every word, you miss the spea'erFs meaning, and you cannot as' probing follow7up !uestions if your attention is focused on a piece of paper. (e honest with
% 57 %

System Analysis & Design

KSOU

yourself. If you feel compelled to ta'e dictation, re!uest permission to tape the interview or bring a secretary with you. T1e !losing %ay attention to the time. If the interview runs longer than expected, as' permission to continue and offer to reschedule a follow7up interview. *hen you have the information you need, as' if there is anything you missed. 4At this point, let the subject ta'e the lead.5 *hen the interview ends, than' the subject for cooperating and offer to ma'e your written summary available for review. If you anticipate a follow7up or subse!uent interview, say so. Some interviewers li'e to Dwind downE with a brief period of casual conversation. If you feel comfortable with this approach, use it. Do not force it, though. -emember" avoid wasting the subjectFs time. losing the Interview 7 Always as' DIs there anything else that you would li'e to add+E, summari#e and provide feedbac' on your impressions, as' whom you should tal' with next, set up any future appointments, than' them for their time and sha'e hands.

-ollo4%u) As soon as possible after the interview, transcribe your notes. Ideally, they should identify 'ey pointsM use your memory to fill in the details. 4DonFt wait too long, you might forget something important.5 If you recorded the interview, listen to the tape and compile a set of selective notes. If appropriate, prepare a transcript. Type the summary. Identify the person, the date, the place, and the primary topic. )ffer to share your summary with the subjectM it is good public relations and it provides an excellent opportunity for correcting misunderstandings and errors. Also, the subject might add something you forgot. )ne or more follow7up interviews might be necessary. onsider using e7mail or the telephone to as' a !uestion or two. If you need more than five minutes, schedule an appointment. In order to ma'e successful interview we need to dress to match interviewee, Arrive on time, )r early if need to confirm room setup, )pen interview by than'ing interviewee, State purpose and length of interview and how data will be used, ,onitor the time, As' follow7up !uestions 7 %robe until you understand and As' about exception conditions 4:what if...:5
% 79 %

System Analysis & Design

KSOU

The step7by7step analysis of interview process" Ste) $' Determine t1e 8eo)le to Inter"ie4 Informal structures Select the right people onsider informal structures

Ste) (' Establis1 Ob e!ti"es &or t1e Inter"ie4 Determine the general areas to be discussed 2ist the facts you want to gather Solicit ideas, suggestions, and opinions Ste) *' De"elo) Inter"ie4 6uestions reating a standard list of interview !uestions helps to 'eep you on trac' and avoid unnecessary tangents Avoid leading !uestions /eep !uestions consistent )pen7ended !uestions encourage spontaneous and unstructured responses losed7ended !uestions restrict the response -ange7of7response !uestions as' the person to evaluate something

Ste) +' 8re)are &or t1e Inter"ie4 areful preparation is essential because interview is an important meeting and not just a casual chat 2imit the interview to no more than one hour Send a list of topics As' the interviewee to have samples available Ste) ,' Con#u!t t1e Inter"ie4 Develop a specific plan for the meeting. (egin by introducing yourself describing the project explain interview objectives
% 7$ %

System Analysis & Design

KSOU

2isten carefully 7 practice engaged listening Allow the person enough time to thin' about the !uestion After interview, summari#e the session and see' a confirmation Summari#e the main points $xplain the next course of action Introduce yourself Describe the project $xplain your objectives As' !uestions in order Ste) .' Do!ument t1e Inter"ie4 9ote ta'ing should be 'ept to a minimum After the interview, record the information !uic'ly Allow time between interviews After the interview, than' the interviewee with a memo expressing appreciation, including the main points discussed so the interviewee has a written summary and can offer additions or corrections. 9ote the date, time, location, and purpose -eview the main points discussed Ste) 0' E"aluate t1e Inter"ie4 In addition to recording the facts obtained in an interview, try to identify any possible biases. Determine whether interviewees have necessary experience Unsu!!ess&ul Inter"ie4s 9ot all interviews are successful 9o matter how well you prepare for interviews, some are not successful &ind a way to conclude an unsuccessful meeting onsider alternatives

Ty)es o& Inter"ie4s


% 7( %

System Analysis & Design

KSOU

Unstru!ture# inter"ie4 6 An unstructured interview is conversational.

onducted with

only a general goal or subject in mind and with few, if any, specific !uestions. The interviewer counts on the interviewee to provide a framewor' and direct the conversation. Stru!ture# inter"ie4 6 A completely structured interview is planned and the plan is strictly followed. losed !uestions are the basis of structured interviews. Interviewer has a specific set of !uestions to as' of the interviewee. Ten Tradeoffs" Structured and 1nstructured Interviews $valuation Amount of time re!uired Training re!uired Spontaneity allowed -eliability &lexibility Interviewee insight provided Interviewer control %recision (readth and depth

6uestion Ty)es There are two basic types of interview !uestions" )pen7ended losed

O)en%En#e# 6uestions

% 7* %

System Analysis & Design

KSOU

)pen7ended interview !uestions allow interviewees to respond how they wish, and to what length they wish. )pen7ended !uestions are appropriate when the analyst is interested in breadth and depth of reply. This type of !uestions allows the interviewee to respond in any way. %rovide more personal information about body language, inflection, tone, etc. Ta'e a lot more time, but are often li'ed. It can be structured or unstructured 4rare5, Close#%En#e# 2uestion A !uestion that restricts answers to either specific choices or short, direct responses. responses. losed ended interview !uestions limit the number of possible losed interview !uestions are appropriate for generating precise,

reliable data which is easy to analy#e. The methodology is efficient, and it re!uires little s'ill for interviewers to administer. Advantages of )pen7$nded 0uestions %utting the interviewee at ease Allowing the interviewer to pic' up on the intervieweeGs vocabulary -eflect education, values, attitudes, and beliefs %roviding richness of detail -evealing avenues of further !uestioning that may have gone untapped ,ore interesting for the interviewee Allows more spontaneity ,a'es phrasing easier for the interviewer 1seful if the interviewer is unprepared 3ive analyst opportunity to motivate interviewee to respond freely and openly Allow analyst to probe for more feedbac' %ermit analyst to adapt or reword !uestions for each individual an observe nonverbal communication

Disadvantages of )pen7$nded 0uestions


% 7+ %

System Analysis & Design

KSOU

,ay result in too much irrelevant detail %ossibly losing control of the interview ,ay ta'e too much time for the amount of useful information gained %otentially seeming that the interviewer is unprepared %ossibly giving the impression that the interviewer is on a :fishing expeditionE Time7consuming Success highly dependent on analystGs human relations s'ills ,ay be impractical due to location of interviewees

(enefits of losed Interview 0uestions Six benefits are Saving interview time $asily comparing interviews 3etting to the point /eeping control of the interview overing a large area !uic'ly

3etting to relevant data

Disadvantages of losed Interview 0uestions &our drawbac's of closed interview !uestions include (oring for the interviewee &ailure to obtain rich detail ,issing main ideas &ailing to build rapport between interviewer and interviewee

% 7, %

System Analysis & Design

KSOU

Ci)olar 6uestions (ipolar !uestions are those that may be answered with a XyesF or XnoF or XagreeF or XdisagreeF. (ipolar !uestions should be used sparingly. 8robing 6uestions %robing !uestions elicit more detail about previous !uestions. The purpose of probing !uestions is 7 to get more meaning, to clarify, to draw out and expand on the intervieweeGs point. 6uestion 8it&alls Avoid leading !uestions, those that imply an answer. 2eading !uestions tend to guide interviewees into responses apparently desired by the interviewer. These !uestions should be avoided to reduce bias and improve reliability and validity. Avoid double7 barreled !uestions, as'ing two !uestions at once. These !uestions should be avoided because interviewees may answer only one !uestion, leading to difficulties in interpretation. 6uestion Se2uen!ing There are three basic ways of structuring interviews" ;. %yramid structure 6 starts with closed !uestions and wor'ing toward open7 ended !uestions. It begins with very detailed, often closed !uestions. $xpands by allowing open7ended !uestions and more generali#ed responses. Is useful if interviewees need to be warmed up to the topic or seem reluctant to address the topic. H. &unnel structure 7 starts with open7ended !uestions and wor'ing toward closed !uestions. It begins with generali#ed, open7ended !uestions. oncludes by narrowing the possible responses using closed !uestions. %rovides an easy,
% 7. %

System Analysis & Design

KSOU

non7threatening way to begin an interview. Is useful when the interviewee feels emotionally about the topic K. Diamond 7 starts with closed, moving toward open7ended, and ending with closed !uestions. A diamond7shaped structure begins in a very specific way. Then more general issues are examined. oncludes with specific !uestions. Is useful in 'eeping the intervieweeGs interest and attention through a variety of !uestions. ;e!or#ing t1e Inter"ie4 Interviews can be recorded with tape recorders or notes. Audio recording should be done with permission and understanding. Advantages of Audio -ecording the Interview The four advantages are" %roviding a completely accurate record of what each person said &reeing the interviewer to listen and respond more rapidly Allowing better eye contact and better rapport Allowing replay of the interview for other team members Disadvantages of Audio -ecording the Interview The four disadvantages are" %ossibly ma'ing the interviewee nervous and less apt to respond freely %ossibly ma'ing the interviewer less apt to listen since it is all being recorded Difficulty in locating important passages on a long tape Increasing costs of data gathering
% 70 %

System Analysis & Design

KSOU

Advantages of 9ote Ta'ing During Interviews /eeping the interviewer alert Aiding recall of important !uestions Celping recall of important interview trends Showing interviewer interest in the interview Demonstrating the interviewerGs preparedness Disadvantages of 9ote Ta'ing During Interviews 2osing vital eye contact 2osing the train of conversation ,a'ing the interviewee hesitant to spea' when notes are being made ausing excessive attention to facts and too little attention to feelings and opinions (efore conducting the Interview contact the interviewee and confirm the interview, dress appropriately, arrive a little early, affirm that you are present and ready to begin the interview. Inter"ie4ing DoIs an# DonIts Do N N N N N N N N N Dress appropriately (e courteous 2isten carefully ,aintain control of the interview %robe )bserve mannerisms and nonverbal communication (e patient /eep interviewee at ease ,aintain self7control
% 75 %

System Analysis & Design

KSOU

N DonGt N N N N N N N

&inish on time

Assume an answer is finished or leading nowhere -eveal verbal and nonverbal clues 1se jargon -eveal personal biases Tal' more than listen Assume anything about the topic or the interviewee Tape record 4ta'e notes instead5

Co#y language 6 the nonverbal information we communicate. N N N &acial disclosure $ye contact %osture

-a!t &in#ing % The first step is to identify the information you need. Develop a fact7 finding plan. Software helps you gather and analy#e factsM however, it cannot perform fact7finding for you. *ho, *hat, *hen, *here, and Cow+ *ho performs the procedures within the system+ *hat is being done+ *here are operations being performed+ *hen is a procedure performed+ Cow is a procedure performed+ Another important !uestion *hy+

Inter"ie4 ;e)ort A report consists of the entire details about the interview should be generated for further references.
% 77 %

System Analysis & Design

KSOU

*rite as soon as possible after the interview %rovide an initial summary, then more detail -eview the report with the respondent

Unit 5 In&ormation Gat1ering Te!1ni2ues % II


6uestionnaires A special7purpose document that allows the analyst to collect information and opinions from respondents. 0uestionnaires are useful in gathering information from 'ey organi#ation members about 6 attitudes, beliefs, behaviors, characteristics. 0uestionnaires are valuable if organi#ation members are widely dispersed, many members are involved
% $99 %

System Analysis & Design

KSOU

with the project, exploratory wor' is needed, problem solving prior to interviews is necessary. 6uestionnaire #esign )ne of the best ways to reduce error when conducting a sample survey is to carefully design the !uestionnaire to be used. There are several important considerations that must be 'ept in mind when designing a !uestionnaire. 0uestionnaires are an inexpensive way to gather data from a potentially large number of respondents. )ften they are the only feasible way to reach a number of reviewers large enough to allow statistically analysis of the results. A well7designed !uestionnaire that is used effectively can gather information on both the overall performance of the test system as well as information on specific components of the system. If the !uestionnaire includes demographic !uestions on the participants, they can be used to correlate performance and satisfaction with the test system among different groups of users. It is important to remember that a !uestionnaire should be viewed as a multi7stage process beginning with definition of the aspects to be examined and ending with interpretation of the results. $very step needs to be designed carefully because the final results are only as good as the wea'est lin' in the !uestionnaire process. Although !uestionnaires may be cheap to administer compared to other data collection methods, they are every bit as expensive in terms of design time and interpretation. The steps re!uired to design and administer a !uestionnaire include" Defining the )bjectives of the survey Determining the Sampling 3roup *riting the 0uestionnaire Administering the 0uestionnaire Interpretation of the -esults

% $9$ %

System Analysis & Design

KSOU

This document will concentrate on how to formulate objectives and write the !uestionnaire. (efore these steps are examined in detail, it is good to consider what !uestionnaires are good at measuring and when it is appropriate to use !uestionnaires. @1at !an 2uestionnaires measureA 0uestionnaires are !uite flexible in what they can measure, however they are not e!ually suited to measuring all types of data. *e can classify data in two ways, Sub e!ti"e "s< Ob e!ti"e and 6uantitati"e "s< 6ualitati"e. *hen a !uestionnaire is administered, the researchers control over the environment will be somewhat limited. This is why !uestionnaires are inexpensive to administer. This loss of control means the validity of the results are more reliant on the honesty of the respondent. onse!uently, it is more difficult to claim complete objectivity with !uestionnaire data then with results of a tightly controlled lab test. &or example, if a group of participants are as'ed on a !uestionnaire how long it too' them to learn a particular function on a piece of software, it is li'ely that they will be biased towards themselves and answer, on average, with a lower than actual time. A more objective usability test of the same function with a similar group of participants may return a significantly higher learning time. ,ore elaborate !uestionnaire design or administration may provide slightly better objective data, but the cost of such a !uestionnaire can be much higher and offset their economic advantage. In general, !uestionnaires are better suited to gathering reliable subjective measures, such as user satisfaction, of the system or interface in !uestion. 0uestions may be designed to gather either !ualitative or !uantitative data. (y their very nature, !uantitative !uestions are more exact then !ualitative. &or example, the word :easy: and :difficult: can mean radically different things to different people. Any !uestion must be carefully crafted, but in particular !uestions that assess a !ualitative measure must be phrased to avoid ambiguity. 0ualitative !uestions may also re!uire more thought on the part of the participant and may cause them to become bored with the !uestionnaire sooner. In general, we can say that !uestionnaires can measure both !ualitative and !uantitative data well, but that !ualitative !uestions re!uire more care in design, administration, and interpretation.
% $9( %

System Analysis & Design

KSOU

@1en to use a 2uestionnaireA There is no all encompassing rule for when to use a !uestionnaire. The choice will be made based on a variety of factors including the type of information to be gathered and the available resources for the experiment. A !uestionnaire should be considered in the following circumstances. @1en resour!es an# money are limite#< A 0uestionnaire can be !uite inexpensive to administer. Although preparation may be costly, any data collection scheme will have similar preparation expenses. The administration cost per person of a !uestionnaire can be as low as postage and a few photocopies. Time is also an important resource that !uestionnaires can maximi#e. If a !uestionnaire is self7administering, such as a e7mail !uestionnaire, potentially several thousand people could respond in a few days. It would be impossible to get a similar number of usability tests completed in the same short time. @1en it is ne!essary to )rote!t t1e )ri"a!y o& t1e )arti!i)ants< 0uestionnaires are easy to administer confidentially. )ften confidentiality is the necessary to ensure participants will respond honestly if at all. $xamples of such cases would include studies that need to as' embarrassing !uestions about private or personal behavior. @1en !orroborating ot1er &in#ings< In studies that have resources to pursue other data collection strategies, !uestionnaires can be a useful confirmation tools. ,ore costly schemes may turn up interesting trends, but occasionally there will not be resources to run these other tests on large enough participant groups to ma'e the results statistically significant. A follow7up large scale !uestionnaire may be necessary to corroborate these earlier results. 6uestion or#ering The order in which !uestions are as'ed can affect the responses to the !uestions. )ne reason for this is that respondents try to answer !uestions in a consistent fashion. As an
% $9* %

System Analysis & Design

KSOU

example, we consider an example originally discussed. An experiment involved as'ing two !uestions" .& Do you think the /nited tates should let Communist newspaper reporters from other countries come in here and send #ack to their papers the news as they see it0 1& Do you think a Communist country like 'ussia should let 2merican newspaper reporters come in and send #ack to 2merica the news as they see it0 In surveys conducted in ;J@>, when !uestion ; was as'ed first, AL.? percent of respondents answered yes to !uestion ; and =K.? percent answered yes to !uestion H. *hen !uestion H was as'ed first, ?L.= percent answered $rrors of non7observation occur because the elements in a sample are respondentsF sense of fair play led more respondents to approve of ommunist reporters being allowed to report news in the 1nited States as they see it when they had first approved of 1.S. reporters doing the same in ommunist countries. *e should also point out that a respondentFs reaction to a !uestion can be set by as'ing preliminary !uestions dealing with the same topic and that the first !uestion as'ed is often thought of differently from !uestions that follow. &or instance, the responses to a !uestion about government spending might be very favorable to increased government spending if the !uestion is preceded by several !uestions emphasi#ing useful services provided by the government. In contrast, the responses might be opposed to increased government spending if the !uestion is preceded by several !uestions emphasi#ing government waste and inefficiency. As an example of how the first !uestion as'ed can be thought of differently from the !uestions that follow, when !uestions as' the respondent to supply ratings, the first !uestion tends to be given the most extreme rating. &or instance, when people are as'ed to rate the appeal of resort hotels based on descriptive materials, if the first hotel seems appealing it would li'ely be rated higher than other appealing hotels that are subse!uently rated. )n the other hand, if the first hotel is not appealing, it would li'ely be rated lower than other e!ually unappealing hotels that are subse!uently rated. In addition, the ordering of !uestion responses can also influence survey results. )ften, the first choice 4or first several choices5 in a list of choices are more li'ely to be selected than are later choices.
% $9+ %

System Analysis & Design

KSOU

,oreover, if a choice is long, complicated, or difficult to understand or interpret, the choice that precedes the difficult choice is li'ely to be selected. In order to reduce the impact of !uestion ordering and response ordering, one strategy is to vary the orders of !uestions andBor responses presented to different respondents. Another approach is to carefully describe the context in which each survey !uestion was as'ed in the analysis of the survey results.

@riting t1e 6uestionnaire If the preceding steps have been faithfully executed, most of the !uestions will be on obvious topics. ,ost !uestionnaires, however, also gather demographic data on the participants. This is used to correlate response sets between different groups of people. It is important to see whether responses are consistent across groups. &or example, if one group of participants is noticeably less satisfied with the test interface, it is li'ely that the interface was designed without fair consideration of this groupGs specific needs. This may signify the need for fundamental redesign of the interface. In addition, certain !uestions simply may only be applicable to certain 'inds of users. &or example, if one is as'ing the participants whether they find the new tutorial helpful, we do not want to include in our final tally the responses of experienced users who learned the system with an older tutorial. There is no accurate way to filter out these responses without simply as'ing the users when they learned the interface. Typically, demographic data is collected at the beginning of the !uestionnaire, but such !uestions could be located anywhere or even scattered throughout the !uestionnaire. )ne obvious argument in favor of the beginning of the !uestionnaire is that normally bac'ground !uestions are easier to answer and can ease the respondent into the !uestionnaire. )ne does not want to put off the participant by jumping in to the most difficult !uestions. *e are all familiar with such 'inds of !uestions. It is important to as' only those bac'ground !uestions that are necessary. Do not as' income of the respondent unless there is at least some rational for suspecting a variance
% $9, %

System Analysis & Design

KSOU

across income levels. There is often only a fine line between bac'ground and personal information. Wou do not want to cross over in to the personal realm unless absolutely necessary. If you need to solicit personal information, phrase your !uestions as unobtrusively as possible to avoid ruffling your participants and causing them to answer less than truthfully.

6uestion Ty)es 0uestions are designed as either )pen7ended or losed

O)en 2uestions an# !lose# 2uestions *hen an open !uestion is posed, the respondent is allowed to formulate any answer that he or she wishes. )pen !uestions try to anticipate the response you will get. *ell suited for getting opinions and useful in explanatory situations. )n the other hand, a closed !uestion re!uires one of several predetermined choices 4such as a, b, c, or d5 or re!uires a single numerical response 4such as the number of years a respondent has spent in his or her current job position5. losed !uestions are used when losed all the options may be listed and when the options are mutually exclusive. such !uestions 4especially when a computer is used5. )n the other hand, open !uestions allow the respondent to express ideas and nuances that the designer of the !uestionnaire may not have considered. Cowever, it might be very difficult to summari#e and interpret the responses to open !uestions because the responses cannot be easily !uantified. yes to !uestion ; and @;.J percent answered yes to !uestion H. @1at :in# o& 2uestions #o 4e as:A
% $9. %

!uestions are advantageous because it is easy to summari#e and analy#e the responses to

System Analysis & Design

KSOU

In general, there are two types of !uestions one will as', o)en &ormat or !lose# &ormat< )pen format !uestions are those that as' for unprompted opinions. In other words, there are no predetermined set of responses, and the participant is free to answer however he chooses. )pen format !uestions are good for soliciting subjective data or when the range of responses is not tightly defined. An obvious advantage is that the variety of responses should be wider and more truly reflect the opinions of the respondents. This increases the li'elihood of you receiving unexpected and insightful suggestions, for it is impossible to predict the full range of opinion. It is common for a !uestionnaire to end with and open format !uestion as'ing the respondent for her unabashed ideas for changes or improvements. )pen format !uestions have several disadvantages. &irst, their very nature re!uires them to be read individually. There is no way to automatically tabulate or perform statistical analysis on them. This is obviously more costly in both time and money, and may not be practical for lower budget or time sensitive evaluations. They are also open to the influence of the reader, for no two people will interpret an answer in precisely the same way. This conflict can be eliminated by using a single reader, but a large number of responses can ma'e this impossible. &inally, open format !uestions re!uire more thought and time on the part of the respondent. *henever more is as'ed of the respondent, the chance of tiring or boring the respondent increases. losed format !uestions usually ta'e the form of a multiple7choice !uestion. They are easy for the respondent, give. There is no clear consensus on the number of options that should be given in an closed format !uestion. )bviously, there needs to be sufficient choices to fully cover the range of answers but not so many that the distinction between them becomes blurred. 1sually this translates into five to ten possible answers per !uestions. &or !uestions that measure a single variable or opinion, such as ease of use or liability, over a complete range 4easy to difficult, li'e to disli'e5, conventional wisdom says that there should be an odd number of alternatives. This allows a neutral or no opinion response. )ther schools of thought contend that an even number of choices is best because it forces the respondent to get off the fence. This may induce the some inaccuracies for often the respondent may actually have no opinion. Cowever, it is
% $90 %

System Analysis & Design

KSOU

e!ually arguable that the neutral answer is over utili#ed, especially by bored !uestionnaire ta'ers. &or larger !uestionnaires that test opinions on a very large number of items, such as a music test, it may be best to use an even number of choices to prevent large numbers of no7thought neutral answers. losed format !uestions offer many advantages in time and money. (y restricting the answer set, it is easy to calculate percentages and other hard statistical data over the whole group or over any subgroup of participants. ,odern scanners and computers ma'e it possible to administer, tabulate, and perform preliminary analysis in a matter of days. losed format !uestions also ma'e it easier to trac' opinion over time by administering the same !uestionnaire to different but similar participant groups at regular intervals. &inally closed format !uestions allow the researcher to filter out useless or extreme answers that might occur in an open format !uestion. *hether your !uestions are open or closed format, there are several points that must by considered when writing and interpreting !uestionnaires" $< Clarity' This is probably the area that causes the greatest source of mista'es in !uestionnaires. 0uestions must be clear, succinct, and unambiguous. The goal is to eliminate the chance that the !uestion will mean different things to different people. If the designers fails to do this, then essentially participants will be answering different !uestions. To this end, it is best to phrase your !uestions empirically if possible and to avoid the use of necessary adjectives. &or example, it as'ing a !uestion about fre!uency, rather than supplying choices that are open to interpretation such as" <ery )ften )ften Sometimes -arely 9ever

It is better to !uantify the choices, such as"


% $95 %

System Analysis & Design

KSOU

;. $very Day or ,ore H. H7= Times a *ee' K. About )nce a *ee' L. About )nce a ,onth A. 9ever There are other more subtle aspects to consider such as language and culture. Avoid the use of collo!uial or ethnic expressions that might not be e!ually used by all participants. Technical terms that assume a certain bac'ground should also be avoided.

(< Lea#ing 6uestions' A leading !uestion is one that forces or implies a certain type of answer. It is easy to ma'e this mista'e not in the !uestion, but in the choice of answers. A closed format !uestion must supply answers that not only cover the whole range of responses, but that are also e!ually distributed throughout the range. All answers should be e!ually li'ely. An obvious, nearly comical, example would be a !uestion that supplied these answer choices" ;. Superb H. $xcellent K. 3reat L. 3ood A. &air =. 9ot so 3reat A less blatant example would be a WesB9o !uestion that as'ed" Is this the best AD interface you have every used+ In this case, even if the participant loved the interface, but had an favorite that was preferred, she would be forced to answer 9o. following choices" ;. Totally Agree
% $97 %

learly, the negative response covers too

wide a range of opinions. A better way would be to as' the same !uestion but supply the

System Analysis & Design

KSOU

H. %artially Agree K. 9either Agree or Disagree L. %artially Disagree A. Totally Agree This example is also poor in the way it as's the !uestion. ItGs choice of words ma'es it a leading !uestion and a good example for the next section on phrasing.

*< 81rasing' ,ost adjectives, verbs, and nouns in $nglish have either a positive or negative connotation. Two words may have e!uivalent meaning, yet one may be a compliment and the other an insult. onsider the two words :child7li'e: and :childish:, which have virtually identical meaning. hild7li'e is an affectionate term that can be applied to both men and women, and young and old, yet no one wishes to be thought of as childish. In the above example of :Is this the best AD interface you have every used+: clearly :best: has strong overtones that deny the participant an objective environment to consider the interface. The signal sent the reader is that the designers surely thin' it is the best interface, and so should everyone else. Though this may seem li'e an extreme example, this 'ind of superlative !uestion is common practice. A more subtle, but no less troublesome, example can be made with verbs that have neither strong negative or positive overtones. onsider the following two !uestions" Do you agree with the 3overnorGs plan to oppose increased development of wetlands+ Do you agree with the 3overnorGs plan to support curtailed development of wetlands+ They both as' the same thing, but will li'ely produce different data. )ne as's in a positive way, and the other in a negative. It is impossible to predict how the outcomes will vary, so one method to counter this is to be aware of different ways to word !uestions and provide a mix in your !uestionnaire. If the participant pool is very large, several versions may be prepared and distributed to cancel out these effects. +< Embarrassing 6uestions' $mbarrassing !uestions dealing with personal or private matters should be avoided. Wour data is only as good as the trust and care that your respondents give you. If you ma'e them feel uncomfortable, you will lose their trust. Do not as' embarrassing !uestions.
% $$9 %

System Analysis & Design

KSOU

,< By)ot1eti!al 6uestions' Cypothetical are based, at best, on conjecture and, at worst, on fantasy. I simple !uestion such as" If you were governor, what would you do to stop crime+ This forces the respondent to give thought to something he may have never considered. This does not produce clear and consistent data representing real opinion. Do not as' hypothetical !uestions. .< 8restige Cias' %restige bias is the tendency for respondents to answer in a way that ma'e them feel better. %eople may not lie directly, but may try to put a better light on themselves. &or example, it is not uncommon for people to respond to a political opinion poll by saying they support Samaritan social programs, such as food stamps, but then go on to vote for candidates who oppose those very programs. Data from other !uestions, such as those that as' how long it ta'es to learn an interface, must be viewed with a little s'epticism. %eople tend to say they are faster learners than they are. There is little that can be done to prevent prestige bias. Sometimes there just is no way to phrase a !uestion so that all the answers are noble. The best means to deal with prestige bias is to ma'e the !uestionnaire as private as possible. Telephone interviews are better than person7to7person interviews, and written !uestionnaires mailed to participants are even better still. The farther away the critical eye of the researcher is, the more honest the answers. ;es)onse o)tions an# s!reening 2uestions *hen a !uestion is posed, sometimes the respondent would li'e to answer by stating that he or she has no opinion or does not 'now how to answer. Therefore, when constructing a !uestionnaire, one must decide whether a no opinion option will be included among the responses to the various !uestions. 3enerally, no opinion responses provide little useful information, and, therefore, such responses are often not allowed. )n the other hand, it does not seem reasonable to re!uire a response when the respondent may not have the information needed to intelligently formulate a response.
% $$$ %

System Analysis & Design

KSOU

As a general rule, when a !uestion re!uests an opinion about a subject that everyone 4or almost everyone5 is familiar with, a no opinion option is not allowed. &or instance, a !uestion about whether federal income taxes are too high might be posed without a no opinion option. )n the other hand, a !uestion whose answer re!uires a speciali#ed bac'ground or very specific 'nowledge might be posed with a no opinion option. &or example, a !uestion about a little 'nown and seldom used tax provision would probably include a no opinion option. A common strategy is to use screening !uestions. Such !uestions are posed in order to determine whether or not a respondent has enough 'nowledge or information to answer the main !uestion. If a respondent does not 'now enough to answer the main !uestion, the main !uestion is s'ipped. If a respondent does have the needed bac'ground, he or she is as'ed to answer the main !uestion and this main !uestion is posed without a no opinion option. (esides deciding whether to include a no opinion option, one must decide how many options will be employed. (ecause middle ground responses often give respondents an easy out, !uestions are often posed without a middle ground or neutral option. &or instance, the !uestion" &or instance, in a mar'et research study we might as' the open !uestion" attempts to elicit a response on one side of the taxation issue or the other with no neutral response allowed. If we believe that it will be too difficult for many respondents to choose one side or the other, then more response options should be included. In general, however, it is a good idea to 'eep the number of response options as small as possible. @or#ing o& 2uestions The language and phrasing used in constructing !uestions is also an important consideration. Seven basic principles of !uestion construction" ;. (e clear and precise. A !uestion must be understandable and must elicit a precise answer. &or instance, the !uestion 3ow many cola drinks do you consume0 is too vague. A better version would be" 3ere is a .4 ounce #ottle of a cola drink& 5f all of the cola you
% $$( %

System Analysis & Design

KSOU

drink came in .4 ounce #ottles+ how many would you consume in a week0 tate a num#er& H. -esponse choices should not overlap The response choices should not overhand should be exhaustive. lap and should cover all relevant possibilities. K. 1se natural and familiar language. 0uestions should be phrased using words and expressions that respondents will understand. &or instance, the !uestion, Do you think that every pu#lic #uilding should #e equipped with a #u##ler0+ will be understood in *isconsin because in that state a water fountain is called a bubbler, but this !uestion will not be understood elsewhere in the 1nited States. L. Do not use words or phrases that Do not use wordings that suggest what show bias. the answer to a !uestion should be 4that is, do not use loaded questions5. In addition, !uestions should be as'ed in a balanced way. &or instance, the !uestion, Do you favor the death penalty0 should be as'ed in the more balanced form, Do you favor or oppose the death penalty0 A. Avoid double7barreled !uestions. Double7barreled !uestions are !uestions that as' the respondent to answer two !uestions at the same time. 5n your opinion+ are ta6es in the /nited tates too high or too low0 slow paced and are too e6pensive0+ contains two !uestions. They should be separated. =. State explicit alternatives. &or instance, if we wish to investigate the desirability of DSS satellite systems, the !uestion, -ould you purchase a D and D satellite television were availa#le to you+ would you* satellite system only+ satellite system& satellite system0+ does not supply as much information as the !uestion, 5f you currently su#scri#e to ca#le television .& su#scri#e to ca#le only+ 1& purchase a D 7& su#scri#e to ca#le and purchase a D

?. 0uestions should meet criteria of 0uestions must measure what the validity and reliability. researcher is trying to measure 4validity5 and responses should be able to be replicated by other researchers 4reliability5. *hen designing !uestions one must 'eep in
% $$* %

System Analysis & Design

KSOU

mind that people do not emember facts very well. Also, people do not determine fre!uencies by counting. -ather, they determine a rate for a shorter period and then multiply 4for instance, I consume K cases of soft drin's per month, which when multiplied by ;H gives a yearly consumption of K= cases5. &inally, people telescope easily remembered events so that they believe that they occurred in a shorter period of time than they actually did. )n the other hand, events that are difficult to remember are believed to have occurred longer ago than they actually did. The speed of completion of open7ended !uestions are slow, where as close7ended !uestions are fast. $xploratory nature of the open7ended !uestions are high compared to closed !uestions. (readth and depth of the closed !uestions are low, but for open7ended !uestions they are high. $ase of operation is easy in open7ended, where as for closed it difficult. $ase of analysis if difficult for open7ended where as for closed it is easy. 0uestionnaire language should be simple, specific, free of bias, not patroni#ing, technically accurate, addressed to those who are 'nowledgeable, appropriate for the reading level of the respondent. 0uestionnaires must be valid and reliable. -eliability of scales refers to consistency in response, getting the same results if the same !uestionnaire was administered again under the same conditions. <alidity is the degree to which the !uestion measures what the analyst intends to measure. -ormatting t1e 6uestionnaire 3ood response rates can be achieved with consistent control of !uestionnaire &ormat Style ,eaningful ordering lustering of !uestions

0uestionnaire format when designing 7 allow ample white space, allow enough space for responses to be typed for open7ended !uestions, as' respondents to clearly mar' their answers, use objectives to help determine format, be consistent in style. ,eaningful ordering of !uestions is must. ,ost important !uestions go first, similar topics should be
% $$+ %

System Analysis & Design

KSOU

clustered together, randomi#ation of !uestions tries the patience of respondents, and controversial !uestions should be positioned after less controversial !uestions. @eb -orm 6uestionnaires ontrols 4fields5 used on *eb forms Single line text box Scrolling text box, used for one or more paragraphs of text hec' box for yes7no or true7false answers

-adio button for mutually exclusive yes7no or true7false answers Drop7down menu for selection from a list Submit or lear buttons Met1o#s o& A#ministering t1e 6uestionnaire ,ethods of administering the !uestionnaire include onvening All concerned respondents together at one time

%ersonally administering the !uestionnaire Allowing respondents to self7administer the !uestionnaire ,ailing !uestionnaires Administering over the *eb or via email Ele!troni!ally Submitting 6uestionnaires Administering a !uestionnaire electronically has many benefits -educed costs ollecting and storing the results electronically

-ree%&ormat 2uestionnaire

% $$, %

System Analysis & Design

KSOU

A !uestionnaire designed to offer the respondent greater latitude in the answer. A !uestion is as'ed, and the respondent records the answer in the space provided after the !uestion. -i>e#%&ormat 2uestionnaire A !uestionnaire containing !uestions that re!uire selecting an answer from predefined available responses. N N N N an be efficient for large audiences (ut hard to guarantee responses, or fairness an use free format, but hard to analy#e &ixed format may include" 6 6 6 Advantages N N N N N )ften can be answered !uic'ly %eople can complete at their convenience -elatively inexpensive way to gather data from a large number Allow for anonymity -esponses can be tabulated !uic'ly ,ultiple choice 4WB9 or AB(B B..5 -ating 4A7point from strongly agree to strongly disagree5 -an'ing 4importance, or Y or time5

Disadvantages N N N N N -eturn rate is often low 9o guarantee that an individual will answer all !uestions 9o opportunity to reword or explain misunderstood !uestions annot observe body language Difficult to prep

Types of &ixed7&ormat 0uestions


% $$. %

System Analysis & Design

KSOU

N N N

,ultiple7choice !uestions -ating !uestions -an'ing !uestions

-an' the following transactions according to the amount of time you spend processing them. PPPYnew PPP Y order cancellations PPP Y order modifications PPP Y payments customer orders

The implementation of !uality discounts would cause an increase in customer orders. PPPStronglyAgree PPP Agree PPP 9o opinion PPPDisagree PPP Strongly disagree

Is

the

current

accounts

receivable

report

that

you

receive

useful+ PPPWes

PPP 9o

De"elo)ing a 6uestionnaire ;. Determine what facts and opinions must be collected and from whom you should get them. H. (ased on the facts and opinions sought, determine whether free7 or fixed7format !uestions will produce the best answers. K. *rite the !uestions. L. Test the !uestions on a small sample of respondents.
% $$0 %

System Analysis & Design

KSOU

A. Duplicate and distribute the !uestionnaire.

0uestionnaire design is a long process that demands careful attention. A !uestionnaire is a powerful evaluation tool and should not be ta'en lightly. Design begins with an understanding of the capabilities of a !uestionnaire and how they can help your research. If it is determined that a !uestionnaire is to be used, the greatest care goes into the planning of the objectives. 0uestionnaires are li'e any scientific experiment. )ne does not collect data and then see if they found something interesting. )ne forms a hypothesis and an experiment that will help prove or disprove the hypothesis. 0uestionnaires are versatile, allowing the collection of both subjective and objective data through the use of open or closed format !uestions. ,odern computers have only made the tas' of collecting and extracting valuable material more efficient. Cowever, a !uestionnaire is only as good as the !uestions it contains. There are many guidelines that must be met before you !uestionnaire can be considered a sound research tool. The majority deal with ma'ing the !uestionnaire understandable and free of bias. ,indful review and testing is necessary to weed out minor mista'es that can cause great changes in meaning and interpretation. *hen these guidelines are followed, the !uestionnaire becomes a powerful and economic evaluation tool.

% $$5 %

System Analysis & Design

KSOU

Unit 7 In&ormation Gat1ering Te!1ni2ues % III


The art of prototyping has evolved from the use of pen7and7paper layout charts to being the basis for $volutionary %rototyping, a full methodology for developing software systems. *hile prototyping is discussed in introductory systems analysis and design courses, students gain a better appreciation of the techni!ue by actually developing different types of prototypes. &or example, prototyping is an excellent vehicle for demonstrating the overlapping of phases in the SD2 . This paper reviews the ways in which prototyping may be used in the system development life cycle and then presents examples of how prototyping can be infused into an undergraduate course in systems analysis and design. Students can develop discovery and user7interface prototypes using CT,2 and 8avaScript modules. The development of functional prototypes using a scripting language and ,S Access is also presented. 8rototy)ing A prototype is a wor'ing physical model of a system or a subsystem. 3enerally, the analystFs 4or information consultantFs5 objective is to gather information about the userFs re!uirements from the bottom up by allowing the user to interact with the prototype. In effect, the prototype serves as a preliminary version of the system or component from which re!uirements are extracted and on which subse!uent versions are based. A prototype is an excellent tool for analy#ing and designing an interactive application andBor a user interface and to support object7oriented system development. During the analysis stage, prototyping can be used to replace or supplement logical modeling, particularly when the users are uncomfortable with abstract models. %rototyping is valuable on projects with long development times because the user gets to see something physical. %rototyping is an excellent tool when the re!uirements are highly uncertain or
% $$7 %

System Analysis & Design

KSOU

too abstract to specify, or when no comparable system has been previously developed. 3enerally, if reaching a solution calls for simulation, experimentation, or incremental evaluation, prototyping might be a reasonable choice. During the analysis stage, prototyping can be used to replace or supplement logical modeling. <ariations on the standard prototyping approach include evolutionary prototyping, incremental prototyping, and middle7out prototyping reating a large, complex system from the bottom up can be very difficult, and integrating subsystem prototypes can prove almost impossible because there is no clear way 4short of a parallel top7down logical or data model5 to visuali#e subsystem relationships. %rototyping is not a good choice for algorithm7driven projects that involve heavy calculation. %rototyping can bias the systems analysis process in subtle ways. (ecause the prototype is developed on a computer, the system will almost certainly be implemented on a computer and manual alternatives are unli'ely to be considered. (ecause it is a wor'ing model, people will inevitably thin' of the prototype as the solution. A related danger is that the system will never be developed properly because the prototype seems too good. %rototypes generally lac' security, auditing, and other controls, and data integrity may be difficult to ensure. Additionally, prototypes are often inefficient and difficult to maintain. &or example, it is difficult to trace the ripple effects that result from modifying a prototype, and that affects maintainability. $conomy of scale is another problemM prototypes that test well sometimes fail when the number of users is dramatically increased. (efore creating a prototype, it is necessary to at least partially define the problem and gather preliminary information. Also, it may be necessary to perform a preliminary analysis andBor create logical models to help plan and 4later5 to supplement the prototype. %rototyping is a powerful, bottom up alternative or supplement to logical modeling. The basic idea is to build a reasonably complete, wor'ing, physical model 4or prototype5 of the system. As a minimum, the analyst can use screen painters, menu builders, and report generators to prepare a Dslide showE of sample screens, dialogues, and reports. In a more complete prototype, preliminary wor'ing versions of the systemFs programs are created
% $(9 %

System Analysis & Design

KSOU

using a fourth7generation language, spreadsheets, database software, or a similar end7user tool. %rototype is a preliminary, wor'ing, physical model of a system, a subsystem, or a program. %rototyping is the act of creating a prototype. Dis!o"ery 8rototy)ing %rototyping, or discovery prototyping, tends to use very speciali#ed tools, and may define and refine prototypes with direct user involvement. an be part of a -AD development approach. Cighly iterativeM helps clarify re!uirements. $asy to omit !uality and performance re!uests. The act of building a small7scale, representative or wor'ing model of the usersF re!uirements in order to discover or verify those re!uirements. %rototyping is an information7gathering techni!ue. %rototypes are useful in see'ing user reactions, suggestions, innovations, and revision plans. Two main problems with the SD2 " $xtended time re!uired to go through the development life cycle. 1ser re!uirements change over time. So prototyping may be used as an alternative to the systems development life cycle. Advantages" N N N N N an experiment to develop understanding of how system might wor' Aids in determining feasibility and usefulness of system before development Serves as training mechanism Aids in building test plans and scenarios ,ay minimi#e time spent on fact7finding

Disadvantages"

% $($ %

System Analysis & Design

KSOU

N N N

Developers may need to be trained in prototyping 1sers may develop unrealistic expectations ould extend development schedule

Use o& )rototy)ing in so&t4are #e"elo)ment met1o#ologies Specification7based methodologies, such as traditional structured methodologies, use :throwaway: prototypes. Throwaway prototypes are developed for a specific, limited purpose and then discarded. This type of prototype can be used for different purposes in each of the phases of software development. In the %lanning %hase Demonstration prototypes are developed to portray the user interface of the proposed system. The purpose is to provide a :vivid demonstration: of proposed software to managers and customers to garner support for the project. In the Analysis %hase Discovery prototypes are used as an aid in determining user re!uirements. Allowing users to experiment with a prototype interface helps to refine re!uirements that were specified as the basis for the prototypeGs construction and elicit new re!uirements that may have been overloo'ed. Feasi#ility prototypes also are used in the analysis phase to evaluate new technology such as new software development tools or aspects of the proposed system architecture. In the Design %hase /ser8interface prototypes are used to design the format of screens and reports and to design the human7computer dialogue. Feasi#ility%Performance prototypes are used to evaluate the design of system components such as database systems and schema, networ' architecture, algorithms, and system controls. These types of prototypes are particularly valuable when developing an innovative system or when using a new technology. In the Implementation %hase Feasi#ility%Performance prototypes are used for the same purposes as in the design phase but would typically be more finely focused. %rototypes can also be used in the implementation phase to begin training users before the system is fully functional and to cross7test system components by comparing system test results to those obtained from corresponding prototypes.
% $(( %

System Analysis & Design

KSOU

%rototype7based methodologies are centered on the development of an evolutionary prototypethat would initially contain a minimal set of high priority features and then :is augmented and changed as new re!uirements are discovered: R;L, p.;?LS. The prototype ultimately becomes the system. These methodologies perform :the analysis, design, and implementation phases concurrently and all three phases are performed repeatedly in a cycle until the system is completed: RL, p. ;;S. $xamples of this type of methodology are (oehmGs Spiral ,odel and -apid Application Development 4-AD5. In addition to developing an evolutionary prototype, prototype7based methodologies can incorporate throwaway prototypes much the same as the specification7based methodologies. In prototype7based methodologies throwaway prototypes 4most li'ely Feasi#ility%Performance prototypes5 would be constructed for special purposes as adjuncts to the evolutionary prototype. T1e )rototy)ing )ro!ess The prototyping process can be viewed as a loop. &ollowing problem definition and preliminary analysis, a first draft of the prototype is created. The user then interacts with the prototype and identifies its strengths and wea'nesses. Assuming that the first draft is less than totally acceptable, the prototype is modified to reflect the userFs suggestions and the user interacts with the new, improved version. The refine7and7test cycle continues until the user is satisfied that the prototype meets his or her re!uirements. During the refine7and7test cycle, the emphasis is on !uic' turnaround, with changes made on the spot or within at most a few days. Instead of conceptuali#ing needs, the users wor' with and react to the prototype and the analyst observes and interprets their reactions. To many people, manipulating a wor'ing model seems more natural than answering !uestions in an interview or trying to lin' an abstract model to reality. Sometimes, the prototyping process continues until a finished system emerges. 1sually, however, the purpose of the prototype is to clarify the systemFs re!uirements. The tas's and !ueries performed by the prototype demonstrate what the system must do and translate into processes. Screens, dialogues, menus, reports, files, and databases map to the re!uired logical data structures. )nce the re!uirements are defined, design begins and the
% $(* %

System Analysis & Design

KSOU

prototype is discarded. <ariations on the standard prototyping approach include evolutionary prototyping, incremental prototyping, and middle7out prototyping. 8rototy)e De"elo)ment Gui#elines 3uidelines for developing a prototype are" *or' in manageable modules. (uild the prototype rapidly. ,odify the prototype in successive iterations. Stress the user interface. The basic steps are" ;. Identify the userFs information and operating re!uirements. H. Develop a wor'ing prototype that focuses on only the most important functions, using a basic database. K. Allow the user to use the prototype, discuss re!uested changes, and implement the most important changes. L. -epeat the next version of the prototype with further changes incorporated until the system fully meets the user re!uirements.

Identify user re!uirements

Analy#e prototype input, processing, output

Implement prototype

&inal conversion

%ost Implementation

-evise through iterative process

,aintenance

% $(+ %

System Analysis & Design

KSOU

&igure J.; System development life cycle with %rototyping

The 8rototy)ing Mo#el was developed on the assumption that it is often difficult to 'now all of your re!uirements at the beginning of a project. Typically, users 'now many of the objectives that they wish to address with a system, but they do not 'now all the nuances of the data, nor do they 'now the details of the system features and capabilities. The %rototyping ,odel allows for these conditions, and offers a development approach that yields results without first re!uiring all information up7front. *hen using the %rototyping ,odel, the developer builds a simplified version of the proposed system and presents it to the customer for consideration as part of the development process. The customer in turn provides feedbac' to the developer, who goes bac' to refine the system re!uirements to incorporate the additional information. )ften, the prototype code is thrown away and entirely new programs are developed once re!uirements are identified. There are a few different approaches that may be followed when using the %rototyping ,odel" N creation of the major user interfaces without any substantive coding in the bac'ground in order to give the users a :feel: for what the system will loo' li'e. N development of an abbreviated version of the system that performs a limited subset of functions, development of a paper system 4depicting proposed screens, reports, relationships etc.5, or N use of an existing system or system components to demonstrate some functions that will be included in the developed system. %rototyping is comprised of the following steps" N ;e2uirements De&initionHColle!tion< Similar to the to a subset of the complete system re!uirements. N Design< )nce the initial layer of re!uirements information is collected, or new information is gathered, it is rapidly integrated into a new or existing design so that it may be folded into the prototype.
% $(, %

onceptuali#ation phase of the

*aterfall ,odel, but not as comprehensive. The information collected is usually limited

System Analysis & Design

KSOU

N 8rototy)e CreationHMo#i&i!ation< The information from the design is rapidly rolled into a prototype. This may mean the creationBmodification of paper information, new coding, or modifications to existing coding. N Assessment< The prototype is presented to the customer for review. suggestions are collected from the customer. N 8rototy)e ;e&inement< Information collected from the customer is digested and the prototype is refined. The developer revises the prototype to ma'e it more effective and efficient. N System Im)lementation< In most cases, the system is rewritten once re!uirements are understood. Sometimes, the Iterati"e process eventually produces a wor'ing system that can be the cornerstone for the fully functional system. -our Kin#s o& 8rototy)es' The four conceptions of prototypes are " %atched7up prototype. 9on7operational scale model. &irst7of7a7series4&irst full7scale model5. %rototype that contains only some of the essential system features. 8at!1e#%u) )rototy)e This is a wor'ing model with all the features but is inefficient 1sers can interact with the system Storage and retrieval of data may be inefficient *or'able but inefficient ,ay contain only basic features Non%o)erational s!ale mo#el
% $(. %

omments and

System Analysis & Design

KSOU

A non7operational scale mode is one which is not operational, except for certain features to be tested %rototype input and output -irst &ull%s!ale mo#el reate a pilot system

An operation model 1seful when many installations of the same information system are planned An example is a system to be installed in one location, tested and modified as necessary, and later implemented in other locations

Sele!te# -eatures 8rototy)e %rototype which contain only some of the essential system features An operational model that includes some, but not all, of the final system features *ith the acceptance of these features, later essential features are added Some menu items are available System is built in modules These are part of the actual system

%rototype advantages %otential for changing the system early in its development )pportunity to stop development on an unwor'able system %ossibility of developing a system that closely addresses users needs and expectations %rototype disadvantages
% $(0 %

System Analysis & Design

KSOU

,anaging the prototyping process is difficult because of its rapid, iterative nature. -e!uires feedbac' on the prototype Incomplete prototypes may be regarded as complete systems. 8roblemsHC1allenges asso!iate# 4it1 t1e 8rototy)ing Mo#el riticisms of the %rototyping ,odel generally fall into the following categories" N 8rototy)ing !an lea# to &alse e>)e!tations< %rototyping often creates a situation where the customer mista'enly believes that the system is :finished: when in fact it is not. ,ore specifically, when using the %rototyping ,odel, the pre7implementation versions of a system are really nothing more than one7dimensional structures. The necessary, behind7 the7scenes wor' such as database normali#ation, documentation, testing, and reviews for efficiency have not been done. Thus the necessary underpinnings for the system are not in place. N 8rototy)ing !an lea# to )oorly #esigne# systems< (ecause the primary goal of %rototyping is rapid development, the design of the system can sometimes suffer because the system is built in a series of :layers: without a global consideration of the integration of all other components.

Initial User ;ea!tions -eactions must be gathered from users There are three types 1ser suggestions Innovations -evision plans T1e UserIs ;ole The userFs role is honest involvement. Three ways the user is involved"
% $(5 %

System Analysis & Design

KSOU

$xperimenting with the prototype. 3iving open reactions to the prototype. Suggesting additions to andBor deletions from the prototype.

8rototy)e E"aluation Systems analysts must wor' systematically to elicit and evaluate usersG reactions to the prototype Three ways the user is involved $xperimenting with the prototype 3iving open reactions to the prototype 1se a prototype evaluation form Suggesting additions to andBor deletions from the prototype 8rototy)ing on t1e @eb %rototyping on the *eb can help to facilitate the prototyping process by Allowing users at a distance review the prototype and send comments Allowing users to review the prototype when they have time, and on any machine that has Internet capabilities The analyst does not have to install the software on the userFs computer

8rototy)ing "s< !on"entional a))roa!1es onventional systems analysis and design relies on various models of the system, and the logical analysis and physical design stages are clearly distinguished. %rototypes, in contrast, are generally created using a fourth generation language4&ourth7generation language7 A non7procedural language that generates the appropriate source or executable code from a programmerFs definition or description of a logical operation.5 or an application generator4Application generator 4generator, program generatorF % A program that starts with information in graphical, narrative, list, or some other logical form and generates the appropriate source or executable code.5 using a mix of programming and
% $(7 %

System Analysis & Design

KSOU

systems analysis s'ills because analysis, design, and programming activities are often intermixed and difficult to distinguish. %rototyping is 4by its very nature5 iterative. The process starts with a set of partial re!uirements, and new or expanded re!uirements are continuously incorporated into the system based on user feedbac'. onse!uently, %rototyping is a cyclic process. The re!uirements can be viewed as floating, or dynamic. In contrast, conventional systems analysis and design calls for a full and complete set of re!uirements, and the re!uirements are typically fro#en at the end of each stage in the system development life cycle. )ver the last decade prototyping has become a very valuable techni!ue in software development methodologies. It is important that information systems students understand the various types of prototypes used and the roles they play in a SD2 . This paper suggests that this goal is better achieved by having students develop various types of prototypes. A set of prototypes to be developed as assignments in an undergraduate course in systems analysis and design and the software re!uired for their implementation was presented.

UNIT 10

SWST$, A9A2WSIS T))2S 7 ;


Data &lo4 #iagram
Today, systems design focuses on function of the system and later deciding the re!uirements for the physical implementation the system. Data flow diagram 4D&D5 is one of the tools used by systems analyst for system analysis. It represents the essential functions of an information processing system in a highly abstract way using a minimum set of symbols. A data flow diagram are used to represent several components of any system including its sources, destinations, processes, data storages as well interaction between these

% $*9 %

System Analysis & Design

KSOU

components. Data flow diagrams can be used both to describe existing system and to design new system. In other words, a data flow diagram is a process7oriented graphical representation of a system. According to Coffer, 3eorge and <alacich, a D&D :is a picture of the movement of data between external entities and the processes and data stores within a system.: The data flow diagrams are the basis of structured systems analysis. A data flow diagram acts as a bridge between users and systems developers. Thus a data flow diagram is a" 3raphical representation that eliminates thousands of wordsM 2ogical representations that represents *CAT a system does, rather than physical models showing C)* it does itM Cierarchical representation illustrating systems at any level of detail and 8argonless representation that allow user to clearly understand and review the system. Data flow diagram being one of the most popular analysis tools avoids the cost of" 1serBdeveloper misunderstanding of a system, resulting in a need to redo systems or in not using the system. Caving to start documentation from scratch when the physical system changes since the logical system, *CAT gets done, often remains the same when technology changes. Systems inefficiencies because a system gets :computeri#ed: before it gets :systemati#ed:. (eing unable to evaluate system project boundaries or degree of automation, resulting in a project of inappropriate scope.

Data -lo4 Diagram Symbols


A data flow diagram uses four basic symbols external entity, data flow, process and data store. There are two conventions in for data flow diagram. )ne developed by Wourdon

% $*$ %

System Analysis & Design

KSOU

and De ,arco and the other developed by 3ane and Sarson. The only difference between them is the symbols used. The 3ane and Sarson convention uses labelled straight arrows 4vectors5 for the data. It uses rectangles with rounded corners and a vertical long axis for the processes. %rocesses may have a reference number at the top in a small ruled off section. A data store is an open7ended rectangle with the long axis hori#ontal. Sources B sin's are shadowed s!uares, with a bold blac' outline behind them. This representation is also called the 2ST method. The Yourdon convention use circles for the process, and the term process bubble has arisen from this use; the extra identification information given in LST is often absent. A straight heavy line (sometimes double) is a used data store. The data flow lines are arched and free flowing, again with arrowheads for direction. Table 10.1 illustrates these conventions. DeMar!o & Your#on Con"ention Gane & Sarson Con"ention

$xternal $ntity

3.1

%rocess

Data &low

Data Store

Table 10.1: DFD Symbols % $*( %

System Analysis & Design

KSOU

E>ternal Entity
$xternal entity refers to any person, place or anything that performs the activity of sending or receiving data from the system without performing any information processing. $xternal entity can be a source or a sin'. A source is an entity from which data is received into the system. A cler' who enters data into a (illing system is a source. A sin' is an entity, which receives data from the system. A customer who receives an invoice from an (illing system is a sin'. Cowever, in some cases the same entity can be both a source and a sin'. &or example, a customer is the source of an order and a sin' for an invoice. In simpler terms, external entities are called sources if they are external to the system and provide data to the system, and sin' if they are external to the system and receive information from the system. $ntity name should be represented through a noun.

Data -lo4
Data flow represents the flow of data between processes, data stores and external entities. A data flow also depicts direction of data flow within system, which is indicated by the arrowhead with the name that uni!uely describes the contents of the flow next to it. Data flows cannot go between data store and data stores because some processing needs to be carried out before data can be stored in a data store 7 this may be simple processing li'e validation or updating records but it must be processed before it can be moved from one data store to another. Data flows cannot go between external entity and data store because it needs to be processed 7 we do not want a situation where people from outside of the organi#ation can access or change data in our data stores directly without going

% $** %

System Analysis & Design

KSOU

through our processes 7 we may want external users to be able to access certain parts of our data but we will always want to control the way they do it. Thus, Data can flow from external entity to process, process to external entity, process to store and bac' and finally from process to process. Similarly data cannot flow from external entity to external entity, external entity to store, store to external entity and store to store

% $*+ %

System Analysis & Design

KSOU

8ro!ess
%rocess is the main building bloc' of a data flow diagram. A process depicts the activities within a system that transforms data. Data may either exist within the system, or has just been received from an external entity. Thus, a processes represent data oriented activities performed within the organi#ation. %rocess name should be represented through a verb, which clearly indicates what processing ta'es place on the data received by the process. &or a process to be complete, it needs to have both an input and an output. Data Store A data store illustrates where information is held within the system. Data stores are represented using open7ended rectangles, which contain an identifier and the data storeFs name. A data store can be viewed as a computer file, a manual record in a filing cabinet, a pile of documents of one type, or a wall chart. It is a collection of related information 7 a telephone boo', patient records, student records even a shopping list can all be viewed as data stores. Data stores receive information for storing and also provide data for further processing. Direct flows of information between two data stores are not possible. A data store is passive. It does not suddenly jump up and throw data to another data store.

Logi!al an# 81ysi!al Data -lo4 Diagram


A logical data flow diagram describes the processes or activities that occur within the given system and the flow of data into and out of these processes. A logical data flow diagram does not specify by whom, how and where the activities have been conducted. A logical data flow diagram focuses on the business and how the business operates. It is not concerned with how the system will be constructed.
% $*, %

System Analysis & Design

KSOU

A physical data flow diagram shows how the system will be implemented including the hardware, software, files, and people involved. A physical data flow diagram extends the information portrayed in context diagram by including all the internal entities participate in the processes. Thus, a logical data flow diagram contains information about the business and the physical data flow diagram contains information about the computeri#ed system.

% $*. %

System Analysis & Design

KSOU

De"elo)ing logi!al an# )1ysi!al #ata &lo4 #iagrams


The logical data flow diagram should be composed before the physical data flow diagram. The data flow diagram from the old system can be used as a basis for creating the data flow diagram for the new system to ensure that important features from the old system remain in the new one. )nce the logical data flow diagram for the new system is created, it can be used as a basis to create a physical data flow diagram for the new system. The physical data flow diagram should be created after the logical data flow diagram. It should contain the following information" ,anual processes %rocesses for adding, deleting, changing, and updating records Data entry and verifying processes. <alidation processes for ensuring accurate data input Se!uencing processes to rearrange the order of records %rocesses to produce every uni!ue system output Intermediate data stores Actual file names used to store data ontrols to signify completion of tas's or error conditions.

Advantages of logical data flow diagram include" It provides better communication with users because it is centered on the business activities the wor'ers are involved with. It is more stable systems because the they are based on business events and not on a specific technology It helps analyst to have a better understanding of the business It is both flexible and easy to maintain because the technologies behind the new system will change more often than the technologies used to power the system. Advantages of physical data flow diagram include"
% $*0 %

System Analysis & Design

KSOU

It helps in categori#ing manual and automated processes. The processes are defined in detail. The processes are se!uenced. 9ames of files and printouts are identified.

%hysical data flow diagrams are usually more complex than logical data flow diagrams because of the many data stores present in a system.

% $*5 %

System Analysis & Design

KSOU

A#"antages an# #isa#"antages o& #ata &lo4 #iagram


The advantages of data flow diagram include" ;. It helps technical and non7technical users to easily understand systems design. H. It helps in validating the correctness of the system. It is therefore easy to determine whether re!uirements are correct. The probability of a better system is increased. K. It allows the analyst to abstract to whatever level of detail is re!uired so that it is possible to examine a system in overview and at a more detailed level. L. It specifies the system at a logical level rather than a physical level i.e. it shows what the system will do rather than how it will be done. A. It helps to understand the inter7relatedness of systems and subsystems of the system. =. It provides a means of analysis of a proposed system to determine if the necessary data and processes have been defined.

The disadvantages of data flow diagram include"


;. If the system to be deigned is a large system then, it is time consuming and complex tas' to produce all necessary levels of data flow diagram to represent such a system.

H. It can be difficult to read, understand and appreciate the flow of data and processing activities at a first glance. K. 9o standardi#ation of the symbols has been made. Thus different models use different symbols for structuring a data flow diagram.

% $*7 %

System Analysis & Design

KSOU

Ste)s &or !onstru!ting a #ata &lo4 #iagram


The steps for constructing a data flow diagram are" Identify and list all external entities providing inputs to the system and B or receiving outputs from system. Identify the central objective of the system. reate a context diagram with the central objective of the system being at centre . Indicate external entities sending and receiving data flows to the system. Identify different processes, data flows and data stores to be included within the system boundary for further decomposition. Identify the data connections between different processes. onfirm the identified re!uirements through the concerned personnel. Trace and record what happens to each of the data flows entering the system 4data movement, data storage, data transformationBprocessing5 <erify all data flows have a source and destination. <erify data coming out of a data store goes in. -edraw the to simplify the design if possible. -eview the constructed and simplified diagram.

De!om)osing H Le"elling a #ata &lo4 #iagram


A complex system such as the real systems used in industries cannot be described in a single data flow diagram. Instead analysis of such systems can be done through a hierarchically related set. The set depicts the decomposition of the system into successively finer detail. Thus the whole system represented through a single data flow diagram often called a context diagram is further partitioned into lower7level diagrams that are uni!uely identified by number. The numbering scheme follows these conventions" $ach child diagram ta'es the number of the corresponding bubble on its parent diagram.
% $+9 %

System Analysis & Design

KSOU

(ubbles on the child diagram are identified through a decimal point and a se!uential number to the diagram number. Thus every bubble number shows its place in the hierarchy of transformations and permits its ancestry to be traced to the top.

The process of dividing or portioning a single data flow diagram into number of lower7 level diagrams is called levelling or decomposition.

Conte>t #ata &lo4 #iagram A context data flow diagram or context diagram is the broadest data flow diagram. A ontext data flow diagram represents a system at a high level of detail in terms of its inputs from external entities and its outputs to external entities. It is also 'nown as an )verview or 2evel > D&D. A context diagram comprises one process 4bubble5 for the entire system, together with the external entities and the data flows that pass between them and the system. The context diagram does not contain any data stores. The main objective of the context diagram is to identify and examine the interfaces between the external entities and the system. The context diagram is considered to be the most general diagram and the broadest possible conceptuali#ation of the system. Note' Some authors consider the context diagram to differ from level > i.e. the next level. In such cases level > diagram is also called a physical data flow diagram and the lower levels i.e. level7;, level7H, etc, are called logical data flow diagrams. Le"el $ #ata &lo4 #iagram A level ; data flow diagram depicts the system in more detail form as represented by a context data flow diagram. It depicts how input enters the system, how processes transform the input and how the output leaves the system. A level ; diagram must have
% $+$ %

System Analysis & Design

KSOU

exactly the same inputs and outputs as the context diagram. The data stores and all external entities are included in the 2evel ; Diagram. In a level ; data flow diagram flows are connected to and from the actual processes. It can also include lower7level data flows. Thus, a level ; diagram represents a brea'down of the activities that ma'e up the system. $ach of the processes are numbered as ;, H, K, L and so on. Le"el ( #ata &lo4 #iagram A level H diagram may exist for every or some of the processes of a level ; diagram. It represents the process of a level ; diagram at a more detailed level. In appearance it is the same as a level ; diagram but differs in notation. If the level ; process being considered has the identifier ;, then the level H processes will be identified as ;.;, ;.H, ;.K, ;.L, etc. A level H diagram cannot produce output or receive input that are not produced or received by the corresponding process at level ;. In other words, all the inputs and output received and sent by a process at level ; must also be shown by a corresponding process of level H.

% $+( %

System Analysis & Design

KSOU

Note The levelling or decomposition of a data flow diagram can be done until the processes represented are logically simple 4until they cannot further be bro'en down5. A#"antages o& le"elling The advantages of levelling or decomposing a data flow diagram are" It enhances the readability. It is easier to identify errors before design. It reduces clustering. It represents a system at re!uired degree of detail.

DFD Levelling Example -1 %recision Tools sells a line of high7!uality woodwor'ing tools. *hen customers place orders on the companyFs *eb site, the system chec's to see if the items are in stoc', issues a status message to the customer, and generates a shipping order to the warehouse, which fills the order. *hen the order is shipped, the customer is billed. The system also produces various reports, such as inventory reports for Accounting. Draw a context diagram for the order system Draw a level > diagram for the order system

Identify Entities, Process, Data Stores & Data Flow


Entities ustomer *arehouse Accounting

Processes hec' Status Issue Status ,essages


% $+* %

System Analysis & Design

KSOU

3enerate Shipping )rder ,anage Accounts -eceivable %roduce -eports

Data Stores D; %ending )rders DH Accounts -eceivable

% $++ %

System Analysis & Design

KSOU

Data

Flows )rder In7Stoc' -e!uest )rder Data Status Data Status ,essage Shipping )rder )rder Data Invoice Shipping onfirmation %ayment Accounting Data Accounts -eceivable Data )rder Data Inventory -eports

% $+, %

System Analysis & Design

KSOU

Fig. 10.2 Level 0 DFD for Order System

% $+. %

System Analysis & Design

KSOU

DFD Levelling Example A system is re!uired which allows a user to input an unordered list of integer numbers into a computer. The system will store these numbers in the main store of the computer where they are to be sorted by the system into ascending numeric order and re7stored. &inally the system is to print out the list for the user. 4a5 Draw a context diagram for this problem. 4b5 Draw a level ; data flow diagram for this problem.

1nordered 2ist of 9umbers

1ser

9umber System

%rinted )rdered 2ist of 9umbers

1ser

Fig 1!"#$ %ontext DFD for &'m(er System

1nordered 2ist of Integer 9umbers 1ser

3et 2ist
;

%rint 2ist
K

%rinted )rdered 2ist of 9umbers

1ser

of
; 1nordered 2ist of 9umbers 9umbers H

of
)rdered 2ist of 9umbers 9umbers

Sort 9umbers
H

into
Fig 1!")$ Level 1 DFD for &'m(er System

Ascendin g %)rder % $+0

System Analysis & Design

KSOU

DFD Levelling Example *# onsider a typical D<D rental system. Assuming the re!uired external entities, data stores, processes and data flows 4a5 Draw a context diagram for this system. 4b5 Draw a level ; data flow diagram for this sytem.

Cire ustomer Invoice %ayment

> D<D -ental System

hec' Available D<D Store Issue Invoice

Fig 1!"-$ %ontext DFD for D,D rental system

<ideo B audio Store

SendB-eceive re!uest Cire ustomer ;.> hec'B-ep ly for availability Available D<D Store -eply Available

Invoice

H.> %ayment Details

ash

%ayment

redit card

Fig 1!"+$ Level 1 DFD for D,D rental system % $+5 %

System Analysis & Design

KSOU

DFD Levelling Example *) 3iven a context data flow diagram for an order processing system as illustrated in figure ;>.?, construct a level ; data flow diagram for the same.

Order

Order Reject Notice Payment Invoice

Picking List

Completed Order

Commission

Bank Deposit

Cash Receipts Entry

Fig 1!".$ %ontext DFD for /rder processing system

% $+7 %

System Analysis & Design

KSOU

&or the above given context diagram the level ; data flow diagram is illustrated below in figure ;>.@

Fig 1!"0$ Level 1 DFD for /rder processing system

% $,9 %

System Analysis & Design

KSOU

Gui#elines &or Constru!ting Data -lo4 Diagrams


Data flow diagrams are constructed using a top7down approach. In the top7down approach, analyst begins at a broadest level and then explodes each piece of the preceding level until the system is completely specified. Today, most of the systems are being designed using reuse based engineering techni!ues i.e. system development are based on a system already in operation. Therefore, in the majority of cases it is impractical to ignore totally the existing system. &or the systems analyst, examining the existing system offers an opportunity to become familiar with current practice, and also to gain the userGs confidence. The development of a D&D will assist with this understanding. A current physical D&D shows what happens to data within the current system, how it is processed, where and by whom. Gui#elines &or Constru!ting a Conte>t Diagram -ead the problem from start to end a finite number of times and analy#e what the system actually does. ,a'e a list of external entities. An external entity may be a person or place. The external entities either provide some input to the system or receive some output from the system. Cowever not all persons and places mentioned in problem be external entities. )nce external entities are identified, establish the flows that need to be sent and received to or from the system. )nce all the above steps are followed, the context diagram can be drawn for the given problem.

Gui#elines &or Constru!ting a Le"el $ Data &lo4 Diagram Ta'e each sentence of the problem and decide if it is bac'ground information or if it is an activity that must be represented by a process in the diagram. <erbs in a sentence represent a process. ,a'e a list of all processes that exist in the problem. 3roup the processes so that you end up with approximately K to ;> processes. A level ; or level H data flow diagram must contain a minimum of K processes and a
% $,$ %

System Analysis & Design

KSOU

maximum of ? to J processes. In most of the situations, a level ; diagram will rarely contain less than A processes while a level H diagram will have fewer. Identify and list all the data flows. The data flows are normally documents. Cowever, some times they can also be phone calls, physical items. Identify and list data stores& Data stores are normally the files or databases used to store the information. )nce all the above said components are identified a level ; data flow diagram can be drawn. After drawing the level ; diagram, ma'e sure that it is fully connected. &inally, validate the level ; diagram against the context diagram to ensure that they are consistent. Gui#elines &or Constru!ting a Le"el ( Data &lo4 Diagram &or each level ; process ma'e a list of sub7processes, each one of which will become a process on the corresponding level H diagram. )nce all the components re!uired for a level H diagram are identified a level H data flow diagram can be drawn. <alidate the level H diagram against the level ; diagram to ensure that they are consistent.

Ste) by ste) D-D Constru!tion / An E>am)le


In the following example, a data flow diagram will be created after reading each sentence about (ebop -ecords o.Fs method of receiving and filling orders. (ebop -ecords is a mail7order company that distributes Ds and tapes at discount price to record7club members. *hen an order7processing cler' receives an order form, he or she verifies that the sender is a club member by chec'ing the ,ember file. If the sender is not a member, the cler' returns the order along with a membership application form. If the customer is a member, the cler' verifies the order item data by chec'ing the Item file. Then the cler' enters the order data and saves it to the Daily )rders file. The cler' also prints an invoice and shipping list for each order, which are forwarded to )rder &ulfillment.

% $,( %

System Analysis & Design

KSOU

-I;ST SENTENCE' (ebop -ecords is a mail7order company that distributes Ds and tapes at discount price to record7club members. -$S12T" initial title

(ebop -ecords

SECOND SENTENCE' *hen an order processing cler' receives an order form, he or she verifies that the sender is a club member by chec'ing the ,ember file.

;
$ $ 7; - e c o r d lu b , em ber
o rd e r

< e r if y m e m b e r s ta tu s ) le r '

m em ber d a ta

D 7;

, e m b e r , a s te r

$ $ 7H u s to m e r 4n o n 7m e m b e r5

% $,* %

System Analysis & Design

KSOU

TBI;D SENTENCE' If the sender is not a member, the cler' returns the order along with a membership application form.

-OU;TB SENTENCE' If the customer is a member, the cler' verifies the order item data by chec'ing the Item file.

% $,+ %

System Analysis & Design

KSOU

-I-TB SENTENCE' Then the cler' enters the order data and saves it to the Daily )rders file.

% $,, %

System Analysis & Design

KSOU

SIJTB SENTENCE' The cler' also prints an invoice and shipping list for each order, which are forwarded to )rder &ulfillment.

% $,. %

System Analysis & Design

KSOU

Errors in #ata &lo4 #iagram !onstru!tion


ommon errors that arise in constructing a data flow diagram include" -orgetting to in!lu#e a #ata &lo4 or )ointing an arro41ea# in t1e 4rong #ire!tion' This would lead to a process lac'ing either input or output. -emember that processes must have both input and output. Conne!ting Data stores an# e>ternal entities to ea!1 ot1er' Data stores and external entities cannot be connected directly. If re!uired, they must be connected only through a process. This is analogous to a database that does not interact directly with the user without the help of an intermediary program. The user may input data, but the data will always be processed before it is stored or outputted. In!orre!tly labeling )ro!esses or #ata &lo4' The labeling of process and data flows should be done as specified in the standards listed earlier in the unit. In!lu#ing more t1an nine )ro!esses on a #ata &lo4 #iagram' A data flow diagram not should have more than seven to nine processes. This creates a cluttered diagram. If more than nine are re!uired, the diagram will have to be exploded further into another child diagram. Omitting #ata &lo4' If a process re!uires input from multiple data sources, ma'e sure all of the sources are included. Not 1a"ing t1e same in)ut an# out)ut in t1e !1il# #iagram t1at is in t1e )arent #iagram' During decomposition all the inputs and output received and sent by a process at level ; must also be shown by a corresponding process of level H. E"aluating Data -lo4 Diagrams &or Corre!tness Data flow diagrams can be evaluated to determine the correctness. $rrors, omissions and inconsistencies can occur for several reasons, including mista'es in drawing the diagrams. (ut the presence of what appears to be an error may in fact point out a deficiency in the system or a situation in which users are not aware of how certain processes operate. These !uestions are useful in evaluating data flow diagrams"

% $,0 %

System Analysis & Design

KSOU

Are there any unnamed components in the data flow diagram 4data flows, processes, stores, inputs or outputs5+ Are there any data stores that are input but never referenced+ Are there any processes that do not receive input+ Are there any processes that do not produce output+ Are there any processes that serve multiple purposes+ If so, simplify by exploding them into multiple processes that can be better studied5. Are there data stores that are never referenced+ Is the inflow of data ade!uate to perform the process+ Is there excessive storage of data in a data store 4more than the necessary details5+ Is the inflow of data into a process too much for the output that is produced+ Are aliases introduced in the system description+ Is each process independent of other processes and dependent only on the data it receives as input+

UNIT 11

SWST$, A9A2WSIS T))2S 6 H ase Studies


%ase St'dy 1$ /rder Processing System %recision Tools sells a line of high7!uality woodwor'ing tools. *hen customers place orders on the companyFs *eb site, the system chec's to see if the items are in stoc', issues a status message to the customer, and generates a shipping order to the warehouse, which fills the order. *hen the order is shipped, the customer is billed. The system also produces various reports, such as inventory reports for Accounting. Draw a context diagram for the order system Draw a level > diagram for the order system
% $,5 %

System Analysis & Design

KSOU

To draw a context diagram the first step is to identify $ntities, %rocesses, Data Stores . Data &lows of the given system. Accordingly, by reading the case study of the %recision Tools, we can identify the following $ntities, %rocess, Data Stores . Data &low"

Entities ustomer *arehouse Accounting

Processes hec' Status Issue Status ,essages 3enerate Shipping )rder ,anage Accounts -eceivable %roduce -eports

Data Stores D; %ending )rders DH Accounts -eceivable

% $,7 %

System Analysis & Design

KSOU

Data -lo4s )rder In7Stoc' -e!uest )rder Data Status Data Status ,essage Shipping )rder )rder Data Invoice Shipping onfirmation %ayment Accounting Data Accounts -eceivable Data )rder Data Inventory -eports

&or the above 4&igure ;;.;5 context diagram, the e!uivalent level > data flow diagram is illustrated in figure ;;.H

% $.9 %

System Analysis & Design

KSOU

Fig. 11.2 Level 0 DFD for Order System

% $.$ %

System Analysis & Design

KSOU

%ase St'dy $ /nline 1niversity 2egistration System The system should enable the staff of each academic department to examine the course offered by their department, add and remove course, and change the information about them 4e.g., the maximum number of students5. It should permit students to examine currently available courses, add and drop courses to and from their schedules, and examine the course for which they are enrolled. Department staff should be able to print a variety of reports about the courses and the students enrolled in them. The system should ensure that no student ta'es too many course and that students who have any unpaid fees are not permitted to register. 4Assume that a fees data store is maintained by the universityGs financial office that the registration system accesses but does not change.5 &or the above case study draw a context diagram and illustrate the process of levelling of the context diagram.

Conte>t #iagram

>
ourse information Department Staff ourse -egistration System $nrollment information

ourse offerings

Student schedules

Students

% $.( %

System Analysis & Design

KSOU

Fig. 11.3 Context diagram Online Registration System

% $.* %

System Analysis & Design

KSOU

Le"el 9 #ata &lo4 #iagram

ourse )ffering hanges ; ourse )ffering 2ist ,aintain department course offerings ourse )ffering 1pdates ourse enrollment re!uest Available courses Available course re!uest H Available courses ,aintain student enrollments ourse enrollment Student schedule Students

ourse )fferings

DH Dept Staff Student $nrollment -eport -e!uest Student $nrollment -eport

ourse )fferings ourse information

Student schedule &ee %ayment Cistory

DK

$nrollments

K
ourse $nrollment -eports $nrollment information D; &ees

Fig. 11.4 Level 0 DFD for Online Registration System

% $.+ %

System Analysis & Design

KSOU

Le"el $ #ata &lo4 #iagram &or )ro!ess $


Department ID ourse )ffering 2ist -e!uest ;.; %roduce course offering list ourse offering list Department ID ;.H Add new course 9ew ourse

9ew ourse information Dept. Staff ;.K Delete course

DH ourse to delete ourse to delete

ourse )fferings

;.L ourse modifications ,odify existing courses

$xisting ourse information

ourse modifications

Fig. 11.5 Level 1 DFD for Online Registration System - 1

% $., %

System Analysis & Design

KSOU

Le"el $ #ata &lo4 #iagram &or )ro!ess (


Available ourse -e!uest

H.; %roduce course offering list

Available courses

Available ourses

H.H Add course to schedule

DH ourse enrollment add

ourse )fferings

ourse to add to enrollment H.K Delete course from schedule

&ee payment history D; ourse enrollment add &ees

Students

ourse to delete

ourse to delete

DK H.L urrent schedule re!uest Student schedule )btain current schedule Student enrollment information

$nrollments

Fig. 11.6 Level 1 DFD for Online Registration System - 2 % $.. %

System Analysis & Design

KSOU

Le"el $ #ata &lo4 #iagram &or )ro!ess *

K.; -eport -e!uest )btain report type

-eport type ourse offering information DH ourse )fferings

Dept. Staff

K.H 3enerate re!uested report

-e!uested report

$nrollment information

DK

$nrollments

Fig. 11. Level 1 DFD for Online Registration System - 2 % $.0 %

System Analysis & Design

KSOU

Case stu#y * % Boosier CurgerKs &oo# or#ering system


Coosier (urger is a well7'nown restaurant. It has decided to use an information system that ta'es customer orders. After collecting the orders it sends that information to 'itchen. The current inventory levels in the 'itchen are monitored for the status. &inally, reports are generated by the system for restaurant manager. &or the above case study draw a context diagram and illustrate the process of levelling of the context diagram into level >.

Conte>t #iagram

% $.7 %

System Analysis & Design

KSOU

% $09 %

System Analysis & Design

KSOU

Le"el 9 #iagram

ustomer

/itchen

ustomer )rder

;.> -eceive and transform customer order

&ood )rder

-eceipt

H.> -eceive and transform customer order 3oods Sold Inventory Data

K.> -eceive and transform customer order

&ormatted goods sold data DH 3oods Sold &ile

&ormatted inventory data

D;

Inventory &ile

Daily goods sold amount

L.>

Daily inventory depletion amount ,anagement -eports

%roduce management reports

-estaurant ,anager

% $0$ %

System Analysis & Design

KSOU

%ase St'dy )$ 3 2eal Estate Inc" 432EI5 A -eal $state Inc. 4A-$I5 sells houses. %eople who want to sell their houses sign a contract with A-$I and provide information on their house. This information is 'ept in a database by A-$I and a subset of this information is sent to the citywide multiple7listing service used by all real estate agents. A-$I wor's with two types of potential buyers. Some buyers have an interest in one specific house. In this case, A-$I prints information from its database, which the real estate agent uses to help show the house to the buyer 4a process beyond the scope of the system to be modeled5. )ther buyers see' A-$IFs advice in finding a house that meets their needs. In this case, the buyer completes a buyer information form that is entered into a buyer database, and A-$I real estate agents use its information to search A-$IFs database and the multiple7listing service for houses that meet their needs. The results of these searches are printed and used to help the real estate agent show houses to the buyer. &or the above scenario draw a context diagram and a level > data flow diagram. > (uyer information Conte>t #iagram Couse information Sellers A-$I Couse System information

(uyers

Couse Information

Couse Information

% $0( %

,ultiple 2isting Service

System Analysis & Design

KSOU

% $0* %

System Analysis & Design

KSOU

Le"el 9 #ata &lo4 #iagram


$ Sales Contra!t Maintain 1ouse seller in&ormation Sales Contra!t

D(

Sales Contra!ts

Sellers Bouse in&ormation

Bouse in&ormation

Bouse in&ormation D$ Multi)le Listing Ser"i!es -ile Bouse in&ormation ( Bouse in&ormation re2uest Cuyer in&ormation &orm Bouse in&ormation Generate re2ueste# re)ort

D *

O&&ere# Bouses

Bouse in&ormation

Cuyers

Cuyer D+ in&ormation

Cuyers

% $0+ %

Case stu#y , / A)artment ;ental System


onsider a Apartment -ental System. The context diagram for such a system is given below 4fig 5. Draw a level > data flow diagram, level ; data flow diagram for process H and level H data flow diagram for process H.;

-eceipts, 9otices

> Tenant

2ease ash -eport

$xternal ,anager

2ease, %ayments

Apartment -ental System

(an' Deposit

(an'

System Analysis & Design

KSOU

Le"el 9 #ata &lo4 #iagram opy of lease

Tenant Info

D ;

Tenant &ile

; 2ease 9ew Tenant %roces s (an' Deposit (an ' H %ayments 9otice ollection %rocess

Tenant

-eceipt

ash -eport

1npaid harges Tenant Info K D ; Tenant &ile Delin!uencies Delin!uent %rocess


% $00 %

$xternal ,anager Delin!uency -eport

System Analysis & Design

KSOU

Le"el $ #ata &lo4 #iagram &or )ro!ess ( H.; Deposit hec's ollect Security Deposit (an' Deposit Deposit -eceipts

Tenant Info

D ;

Tenant &ile

Tenant Info H.H -ent hec's

(an' Deposit

%ayment -eceipts ollect -ent ash -eport 1npaid harges

% $05 %

System Analysis & Design

KSOU

Le"el ( #ata &lo4 #iagram &or )ro!ess (<$ UNIT 12

SYSTEM ANALYSIS TOOLS % *


Data Di!tionary
Deposit hec' H.;.; (an' Deposit ,a'e . A data dictionary is one of the techni!ues used by system analyst to analy#e the data (an' flows and data stores inDeposi data7oriented systems. A data dictionary can be considered to be t reference wor' of data about data itself i.e. a data dictionary is a metadata. A data dictionary not only collects the data but also coordinates and confirms what a data Deposit Info term means to different hierarchy of users in an enterprise or organi#ation. Data dictionary can be enormous in si#e. A data dictionary can be used invaluable resource to H.;.H design for the a variety of reasons, some of them include" 1pdate Info D Tenant &ile 1pdate It is used as a means of documentation. ; Tenant It can be used to eliminate redundancy. &ile It can be used to process specification. Data flow diagram constructed can be verified by using it.

Its servers as an initial guideline or base for developing input forms, output H.;.K screens and reports. Tenant Info -eceipt reate -eceipt Thus, a data dictionary is a catalogue of all data used in an application, which acts as a single point reference of data repository of an organi#ation.

Data ;e)ository

A data repository is a central storehouse of the system. It used to store information about the systemFs data. Apart from holding information about system data, a data repository also contains project information including"
C<Te!1 ECSEF % $07 %

System Analysis & Design

KSOU

%roject re!uirements and deliverables. %rocedural logic used. Screen and report design. -elationships between the different entries.

The each piece of data stored in the data repository is called a data element. It can also be referred to as a data item or field. Data elements can be combined to form records. -ecords are also called data structures. A record is a meaningful combination of related data elements that is included in a data flow or retained in a data store. $very data element in the data dictionary is used to provide comprehensive information about the data and processes that ma'e up the system.

Thus a data repository defines and describes all data elements and meaningful combinations of data elements. $very data dictionaries contains a data flow, data structures, data elements and data stores. Data flow $very data flow in the systems must be defined with descriptive information and its composite structure or elements. Defining a data flow should include information li'e" ID, which is an identification number used to identify each data flow. 2abel or a data flow name, a text that should appear on the data flow diagram i.e the data flow label used on a data flow diagram. (rief descriptions of the data flow. Source or origin of the data flow. The source or origin of the data flow may be an external entity or a process or a data flow from a data store. Sin' or Destinations of the data flow, which can be an external entity or a process or a data flow into a data store.

C<Te!1 ECSEF

% $59 %

System Analysis & Design

KSOU

The type of the data flow. A data flow may be a record that enters into a system or leaves a file i.e. the input. It can also contain a report or a form. Sometimes, a data flow can be used internally between processes within the system also.

Alternate name4s5 of the data element or data structure. The volume and fre!uency per unit of time. &or instance records per wee', per month, yearly, etc. omments and further description or notations about the data flow.

&or example consider an order processing system. A data repository may contain the following information about a customer order data flow as illustrated in table ;H.;. 9ame Description customer master and item files and to produce an order record. Source B )rigin Destination Type Data Structure <olumeBTime omments $xternal $ntity, ustomer %rocess ;.>, Add ustomer )rder Screen )rder Information HA per hour An order record contains information for one customer order. The order may be received by mail, fax, or by telephone.
Table $(<$' Data re)ository entries &or !ustomer or#er #ata &lo4

ustomer )rder ontains customer order information and is used to update the

C<Te!1 ECSEF

% $5$ %

System Analysis & Design

KSOU

Data Stru!tures A data structure is a combination of related data elements that is included in a data flow or retained in a data store. In simpler terms, data structures are a group of smaller structures and elements. Data structures are represented using algebraic notations. Some of the commonly used algebraic notations are depicted in table ;H.H. Symbol O 4$!ual to5 U 4%lus5 Z [ 4 urly braces5 R S 4S!uare braces5 45 4%arentheses 5 onsists of And -epeating element or group of elements $itherBor situation )ptional element
Table $(<(' Algebrai! notation

Meaning

A data structures may be either logical data structure or physical data structure. A logical data structures is used to indicate the composition of the data familiar to the user. A physical data structure includes elements and information necessary to implement the system. &or example, data structure for the Delivery 9ote can be represented as Delivery 9ote O )rder 9umber U )rder Date U Z)rder Items[ U Total U 4Tax5 U Shipping U )rder Total U <endor 9umber U <endor 9ame U Address U Telephone A data structure may also contain smaller structural records. &or example name can be further defined as first name, middle name and last name. Similarly address can be further defined as door no, street no, city, state, country, #ip code. Data Elements

C<Te!1 ECSEF

% $5( %

System Analysis & Design

KSOU

A data element, also called a data item or field, is the smallest piece of data in a data repository. Data elements can be together to form records or data structures. The attributes recorded in the data repository for each data element includes" ID, which is an identification number used to identify data element. It is an optional attribute. Data element name or label, it should be what the element is commonly called in most programs or by the major user of the element . Alias, synonyms for data elements.

C<Te!1 ECSEF

% $5* %

System Analysis & Design

KSOU

(rief descriptions of the data element. Type, which indicates whether data element is base or derived. A base element is one that has been initially 'eyed into the system. A derived element is one that is created by a process, usually as the result of a calculation or some logic.

2ength of the data element. Some data elements li'e social security number, #ip code and telephone number can be of fixed length. *hile some data elements li'e name of customer, item, etc can be of variable length. Default value for the data element can be specified. It is an optional attribute. Acceptable values which includes the domain and validity rules of the data elements .

&or example consider an order processing system. A data repository may contain the following entries about order number data element as illustrated in table ;H.K. 9ame Alias Description 2ength Input &ormat )utput &ormat Default <alue ontinuousBDiscrete Type (ase or Derived 1pper 2imit 2ower 2imit omments )rder number )rder Id 1sed to identify order given to vendor @ ;> 4=5 ;> 4=5 77 ontinuous 9umeric Derived \JJJJJJ ]>>>> It is a 'ey field.
Table $(<*' Data re)ository entries &or or#er number #ata element

Cowever, if the length of the data element is too small, there are possibilities of data being truncated and inturn affects the system output. So, possible care must be ta'en
C<Te!1 ECSEF % $5+ %

System Analysis & Design

KSOU

about the length of the field. Input and output formats should be included, using coding symbols.

C<Te!1 ECSEF

% $5, %

System Analysis & Design

KSOU

Data Store A data store typically contains both base elements and derived elements. Data stores are created for each different data entity. 9ormally, the data flow base elements are grouped together and a data store is created for each uni!ue group. A data flow depicts only a part of the collective data 'nown as the user view. Cowever, this view cannot be used to test different data flow structures to arrive at a complete data store description. Cence documenting the data store information is essential. Typical characteristics of a data store that are stored in the data repository includes" ID, which is an identification number used to uni!uely identify a data store.

Data store name or label, a descriptive text that should appear on data store. Alias, synonym or alternate name for the data store file. A short description of the data store. &ile Type, which indicates whether data store is manual or computeri#ed. &ile format, It is applicable only if the file is computeri#ed, the file format designates whether the file is a database file or the format of a traditional flat file.

-ecord si#e

,aximum . average si#e of the record. %ercentage growth B year. This is used to predict the re!uired storage space. Data set name, used to specify the file or table name if 'nown. Data structure name %rimary and secondary 'ey data elements found in the data structure omments and further description about the data store.

C<Te!1 ECSEF

% $5. %

System Analysis & Design

KSOU

&or example consider an order processing system. A data repository may contain the following entries about ustomer ,aster data store as illustrated in table ;H.L. ID 9ame Alias Description &ile type &ile format -ecord si#e ,aximum Si#e Average Si#e Y 3rowth B year Data Set Data Structure %rimary 'ey Secondary 'ey omments DS; ustomer ,aster lient &ile ontains customer information omputer Database A>> LA,@>> L;,A>> @Y ustomer ustomer record ust id ust name, ust addr It is a 'ey file that 'eeps trac's of customer data.
Table $(<+' Data re)ository entries &or !ustomer master #ata store

C<Te!1 ECSEF

% $50 %

System Analysis & Design

KSOU

Stru!ture# Englis1

Structured $nglish is the use of the $nglish language with the syntax of structured programming. In other words, Structured $nglish is a techni!ue used to describe algorithmic procedures and is sometimes considered an alternative to flowcharts. Structured $nglish aims at getting the benefits of both the programming logic and natural language. %rogram logic helps to attain precision while natural language helps in getting the convenience of spo'en languages. Thus, structured $nglish is a rigid subset of the $nglish language omitting adjectives, adverbs, compound and complex sentences, all verb modes except imperative and most punctuation. Common :ey4or#s use# in Stru!ture# Englis1 STA-T, ($3I9, $9D, ST)%, D), *CI2$, D) *CI2$, &)-, 19TI2, D) 19TI2, -$%$AT, $9D *CI2$, $9D 19TI2, $9D -$%$AT, I&, I& TC$9, $2S$, I& $2S$, $9D I&, TC$9, $2S$ TC$9, $2S$ I&, S), AS$, $01A2, 2T, 2$, 3T, 3$, 9)T, T-1$, &A2S$, A9D, )-, ^)-, 3$T, *-IT$, %1T, 1%DAT$, 2)S$, )%$9, -$AT$, D$2$T$, $^IT, &I2$, -$AD, $)&, $)T

Stru!ture# Englis1 Control Constru!ts Structured $nglish li'e any other programming language posesses three standard control constructs namely

se!uence selection iteration


% $55 %

C<Te!1 ECSEF

System Analysis & Design

KSOU

Apart from these it also has primitive actions. These constructs permit the specification of any system. 8rimiti"e A!tions %rimitive Actions are used to inform the reader of what must #e done as opposed to when it is to be done . 9ormally primitive actions are expressed as imperative statements, E>am)le ' -$AD7&I2$ ST) /7D$TAI2S. %rimitive actions should be concise in that it should avoid usage of vague words 4e.g. process B handle5 rather it must contain a strong verb to identify the function and must explicitly state the object of the statement, which is selected from the data dictionary

Se2uen!es Se!uences represent actions ta'ing place in se!uence without interruption. They are defined by the successive appearance of a set of primitive actions Sele!tion !onstru!ts Selection constructs are used to describe a series of alternative policies from which only one is selected. &or example I&.. $2S$ and AS$ are two commonly used selection constructs. Synta> I& \condition] TC$9\statement 4s5] $2S$ \statement 4s5]
C<Te!1 ECSEF % $57 %

System Analysis & Design

KSOU

$9DI& S$2$ T \$xpression] AS$ ; I& \condition] TC$9 \statements] AS$ H I& \condition] TC$9 \statements] Examples Example 1$ Simple IF""67E& and IF""67E&""ELSE I& overtimePhours are greater than HL TC$9 as' the supervisor to review the employeePtimePcard $9D7I& I& a customerPorderPtotal is greater than QL>> TC$9 I& customerPbalance is ] => days past due TC$9 hold the customerPorder send reminder letter $2S$ process the customer order $9D7I& $2S$ process the customer order $9D7I& E>am)le (' CASE S$2$ T the dollar amount that applies" AS$ ; I& the planned expenditure ] Q;>,>>> TC$9 send expensePjustification to corporate head!uarters AS$ H I& the planned expenditure ]O Q;>>> and \O Q;>,>>> TC$9 send expensePjustification to plant manager AS$ K I& the planned expenditure \ Q;>>> TC$9 send expensePjustification to area supervisor Iteration Constru!t Iteration construct are used to repeatedly perform a series of within some bounds. D)_ *CI2$, D)_ 19TI2 construct or a -$%$AT _ 19TI2 construct are the two commonly used iterative constructs. Synta>
C<Te!1 ECSEF % $79 %

System Analysis & Design

KSOU

D) \statement 4s5] 19TI2 \condition] -$%$AT 19TI2 \ condition] \statement 4s5] $9D7 -$%$AT 19TI2 D) *CI2$ \condition] \statement 4s5] $9D7D) *CI2$

Examples Example 1$ D/""1&6IL D) -$AD next Inventory -ecord ($3I9 I& If 0uantity in stoc' is less than reorder point TC$9 3$9$-AT$ )rder $9D I& 19TI2 end of file 4Inventory5

Example $ D/""87ILE D)7*CI2$ there are overtimePpayPrecords -ead a record Add overtimePhours to overtimePhoursPtotal Add overtimePpay to overtimePpayPtotal $9D7D)7*CI2$

E>am)le *' ;E8EAT%UNTIL -$%$AT719TI2 all invoice line7items are extended ,ultiply !uantityPshipped by itemPcost to get itemPextendedPcost Add itemPextendedPcost to total
C<Te!1 ECSEF % $7$ %

System Analysis & Design

KSOU

$9D7-$%$AT719TI2 NOTE' &ormat of Structured $nglish uses indentation used in programming languages. Structured $nglish does not initiali#e variables, open and close files, or find related records in separate files.

Gui#elines &or 4riting Stru!ture# Englis1

The following guidelines can be used when writing Structured $nglish"


Statements should be clear and unambiguous 1se one line per logical element All logic should be expressed in operational, conditional, and repetition bloc's 2ogical bloc's should be indented to show relationship /eywords should be capitali#ed

In"entory 8ro!essing / An Stru!ture# Englis1 Case Stu#y


3iven a level ; data flow diagram for a maintain inventory process of an inventory processing system as illustrated in figure ;H.;. *rite the corrosponding Structured $nglish for all the process specified in the D&D.

C<Te!1 ECSEF

% $7( %

System Analysis & Design

KSOU

;.; Supplier %roducts 1pdate Inventory Added 0ty Added D ; Inventory

;.H 1pdate Inventory 1sed

Amounts 1sed

ounts

Stoc' on Cand

-igure $(<$' Le"el $ D-D &or maintain in"entory

Stru!ture# Englis1 &or 8ro!ess $< $ ' U)#ate In"entory A##e# D) -$AD next invoice7item7record 4info from supplier5 &ind matching inventory7record Add 0uantity from invoice item record to !uantity in stoc' on inventory7record 19TI2 end of file 4invoice7item from supplier5 Stru!ture# Englis1 &or 8ro!ess $< ( ' U)#ate In"entory Use# D) -$AD next Stoc'7item7record 4from stoc' list5 &I9D matching inventory7record S1(T-A T 0uantity7used from Stoc'7item7record from !uantity in stoc' on inventory7record 19TI2 end of file 4stoc' list5

C<Te!1 ECSEF

% $7* %

System Analysis & Design

KSOU

De!ision table
Structured $nglish is not suitable to represent complicated logic having several different conditions because it becomes difficult to understand. To overcome this drawbac' decision tables are used. A decision table is a matrix representation of the logic of a decision. It specifies all the possible conditions and the resulting actions in a tabular form. It is best suited for ma'ing complicated decision logic. Thus, a decision table can be viewed as tabular with conditions and actions and an indication under which conditions, which actions must be performed. Decision tables are typically divided into four !uadrants as depicted in the table ;H.A.

Con#ition Stub a list of all possible conditions that can arise within the process A!tion Stub a list of all possible actions that occur within the process

;ules contains selectors which identify A!tion Entries indicators which select the actions to be performed

Table $(<, ' De!sion table stru!ture

$ach decision in the condition stub corresponds to a variable, relation or predicate whose possible values are listed among the condition alternatives i.e rules. $ach action is a procedure or operation to be performed based on the rules. The action entries specify whether or in what order the action is to be performed for the set of condition alternatives the entry corresponds to.

C<Te!1 ECSEF

% $7+ %

System Analysis & Design

KSOU

Decision tables vary widely in the way the condition alternatives and action entries are represented. Some decision tables use simple trueBfalse values to represent the alternatives to a condition i.e similar to an if7then7else strcuture, some tables may use numbered alternatives i.e similar to an switch case strcuture and some tables even use fu##y logic or probabilistic representations for condition alternatives. Similarly, action entries can simply represent whether an action is to be performed or in more advanced decision tables, the se!uencing of actions to perform.

C<Te!1 ECSEF

% $7, %

System Analysis & Design

KSOU

8ro!e#ure &or Creating De!ision Tables

9ame the conditions and values each condition can assume. &or instance some conditions values can be just DyesE or DnoE and some may have many values called an extended entry. 9ame all possible actions that can occur reate exhaustive set of rules considering every possible combination of conditions must be represented. Some rules may be redundant or ma'e no sense that can be altered later. Total number of rules is the product of number of values for all the conditions. i.e. 9umber of rules O number of values for condition . J number of values for condition 1 J _..J number of values for condition n

Define the actions for each rule. If an action doesnFt ma'e sense create an DimpossibleE row for that action. If the action is not 'nown place a + for that rule. Simplify the table by removing any rules with impossible actions

CannerIs restaurant / A #e!ision table !ase stu#y (annerFs restaurant has two categories of employees. &irst, an employee who will be paid based on monthly salary 4S5. Second, who based on hours wor'ed 4C5. There are three types of hours wor'ed, less than L>, exactly L> and more than L>. If 4S5 employees who wor' for L> hours or less than L> hours or more than L> hours, they will be paid on monthly7based. If 4C5 employees and wor' less than L> hours, the system will calculate hourly wage and an absence report must be produced. If 4C5 employees who has wor'ed exactly L> hours, the system will pay hourly wage. If 4C5 employees and wor' more than L> hours, the system will hourly calculate wage and also calculate for overtime. The decision table for the above case study is illustrated in table ;H.=.

C<Te!1 ECSEF

% $7. %

System Analysis & Design

KSOU

;ules Con#ition ; $mployee type Cours wor'ed A!tion %ay base salary alculate hourly wage alculate overtime %roduce absence report ^ ^ ^ ^ ^ ^ ^ ^ S \L> H C \L> K S L> L C L> A S ]L> = C ]L>

Table $(<. ' De!sion table &or CannerIs restaurant

The above table can further be simplified as illustrated in the table ;H.?.

;ules Con#ition $mployee type Cours wor'ed A!tion %ay base salary alculate hourly wage alculate overtime %roduce absence report
C<Te!1 ECSEF % $70 %

; S 7

H C \L>

K C L>

L C ]L>

^ ^ ^ ^ ^ ^

System Analysis & Design

KSOU

Table $(<0 ' Sim)li&ie# #e!sion table &or CannerIs restaurant

C<Te!1 ECSEF

% $75 %

System Analysis & Design

KSOU

De!ision table "ariants


There are three variants of the decision table. They are

2imited $ntry Decision Table ,ixed $ntry Decision Table $xtended $ntry Decision Table

A limited entry decision table contains only the binary selectors Wes 4W5 . 9o 495 and the catch all selector in the rules !uadrant. In the action entries, it contains only the action selector symbol ^. A mixed entry decision table contains only the binary selectors Wes 4W5 . 9o 495 and the catch all selector in the rules !uadrant. In the action entries !uadrant, indicators other than symbol ^ appear. A extended entry decision table contains selectors in the rules !uadrants that are no longer simply binary 4Wes 4W5 or 9o 4955 but may ta'e on specific values or ranges of values. Note' Decision tables can also be used to specify additional decision7related information li'e"

If actions for a rule are more complicated and canFt be conveyed in one or two lines of text. If some conditions depend on other conditions i.e. nested conditions. 1se numbers to indicate se!uence rather than just ^s where rules and action stub intersect.

A#"antages o& a #e!ision table

Simple and easy to understand.


% $77 %

C<Te!1 ECSEF

System Analysis & Design

KSOU

$nhances readability. Alternatives are shown side by side. ause . effect relationship is shown, thus permitting easier user validation. %ossible to chec' that all combinations of conditions have been considered thereby ensuring the completeness. Decision tables allow you to chec' for the completeness, consistency, and redundancy of logic. Aids in analysis of structured decisions.

De!ision tree
A decision tree is a decision support tool that uses a tree7li'e model of decisions and their possible conse!uences, including chance event outcomes, resource costs, and utility. Decision trees are used when complex branching occurs in a structured decision process. They are also useful when it is essential to 'eep a string of decisions in a particular se!uence. Another use of decision trees is as a descriptive means for calculating conditional probabilities. A decision tree can be used as an alternative to decision table. It uses a tree structure which show conditions and actions within a problem. The root of the tree represents the name of the processM the nodes represent the conditions and the leaves represents the actions to be performed. A decision tree consists of three types of nodes Decision nodes which are represented by s!uares hance nodes represented by circles $nd nodes represented by triangles

Ste)s to buil# a #e!ision tree


C<Te!1 ECSEF % (99 %

System Analysis & Design

KSOU

Draw the decision tree using s!uares to represent decisions and circles to represent uncertainty. $valuate the decision tree to ma'e sure all possible outcomes are included. alculate the tree values wor'ing from the right side bac' to the left. alculate the values of uncertain outcome nodes by multiplying the value of the outcomes by their probability 4i.e., expected values5.

C<Te!1 ECSEF

% (9$ %

System Analysis & Design

KSOU

The following figure ;H.H illustrates the structure of a decision tree.

ion t i d on ;

ion t i d on K

Action H

Action ;

K
on di L tion

;
on di H tion

Action L

= A
-igure $(<(' De!ision tree stru!ture

Action K

A )oli!y &or 8remium Airlines ' A!!umulating Miles -or A4ar#s3 as e>)laine# by Glen Curtis Emar:eting managerF % A #e!ision tree !ase stu#y DThe traveler will be awarded the miles actually flown. If the actual mileage for the leg was less than A>> miles, the traveler will get A>> miles credit. If the leg was exactly or more than A>> miles and the trip was made on Saturday, the actual mileage will be multiplied by H. If the trip was made on Tuesday, the multiplication factor is ;.A. If this is the ninth leg traveled during the calendar month, the mileage is doubled no matter what day, and if it is the seventeenth leg traveled, the mileage is tripled.E &igures ;H.K and ;H.L illustrates the decision tree for the above case study. 9ote figure ;H.L is simplified vesrion of decision tree in figure ;H.K

C<Te!1 ECSEF

% (9( %

System Analysis & Design

KSOU

( Mileage &or t1e leg M,99 $ NL ,99

Cre#it ,99 miles Double mileage

+ Yes * No

Satur#ayA *

. Yes

$<, times Double mileage Tri)le mileag e $9 L L Yes 7 $0 leg In mont1A


t1

5 , Tues#ay Tri)A , No 0 7t1 leg in mont1A 0 No Yes

No

-igure $(<*' De!ision tree stru!ture &or 8remium Airlines

$$

Normal mileage

C<Te!1 ECSEF

% (9* %

System Analysis & Design

KSOU

Cre#it ,99 miles ( Mileage &or t1e leg Double mileage M,99 $ NL ,99 * Not Satur#ay , Not Tues#ay Tues#a y 5 7t1 leg in mont1 0 Not 7t1 leg in mont1 7
-igure $(<+' De!ision tree stru!ture &or 8remium Airlines ESim)li&ie#F

Satur#a y

$<, times . Double mileage

Tri)le mileage
$9

$0t1 leg In mont1


$$

Not $0t1 leg In mont1

Normal mileage

C<Te!1 ECSEF

% (9+ %

System Analysis & Design

KSOU

A#"antages & #isa#a"antages o& a #e!ision tree The advantages of using decision tree include

It is easy to understand and interpret It can map nicely to a set of business rules It can be applied to any real world problems It ma'es no prior assumptions about the data It has ability to process both numerical and categorical data It can be combined with other decision techni!ues.

The disadvantages of using decision tree include


)utput attribute must be categorical 2imited to one output attribute Decision tree algorithms are unstable Trees created from numeric datasets can be complex

A#"antages o& #e!ision tree o"er #e!ision table &irst, it ta'es advantage of the se!uential structure of decision tree branches so that the order of chec'ing conditions and executing actions is immediately noticeable. Second, onditions and actions of decision trees are found on some branches but not on others, which contrasts with decision tables, in which they are all part of the same table. Those conditions and actions that are critical are connected directly to other conditions and actions, whereas those conditions that do not matter are absent. In other words it does not have to be symmetrical.

Third, compared with decision tables, decision trees are more readily understood by others in the organi#ation. onse!uently, they are more appropriate as a communication tool.

Deciding 3mong t9e 3nalysis 6ools The decision of using a particular tool for system analysis depends upon number of factors or criteria. Table ;H.@ illustrates how decision can be ta'en by analyst among

C<Te!1 ECSEF

% (9, %

System Analysis & Design

KSOU

Structured $nglish, Decision Tables, and Decision Trees. Similarly there are occasions where decision has to be made between Decision Tables and Decision Trees which is illustaed in Table ;H.J

Criteria

Stru!ture# Englis1

De!ision Tables

De!ision Trees

Determining onditions and Actions Transforming onditions and Actions into Se!uence hec'ing onsistency and ompleteness

Second (est

Third (est

(est

(est

Third (est

(est

Third (est

(est

(est

Table $(<5' De!i#ing Among Stru!ture# Englis13 De!ision Tables3 an# De!ision Trees

Criteria %ortraying complex logic %ortraying simple rules ,a'ing decisions ,ore compact
C<Te!1 ECSEF

De!ision Tables (est *orst *orst (est (est

De!ision Trees *orst (est (est *orst *orst

$asier to manipulate

% (9. %

System Analysis & Design

KSOU

Table $(<7' De!i#ing Cet4een De!ision Tables an# De!ision Trees

Mo#ule , Unit $* In)ut Design


Systems design is the process of developing specifications for a candidate system that meet the criteria established in systems analysis. A major step in design is the preparation of input and the design of output reports in a form acceptable to the user. Inaccurate input data are the most common cause of errors in data processing. $rrors entered by data entry operators can be controlled by input design. Input design is the process of converting user7oriented inputs to a computer 6 based format. Input Design %rocess identifies system inputs and review logical re!uirements. Select appropriate 31I controls. Design, validate and test inputs using some combination of" 2ayout tools 4e.g., hand s'etches, spacing charts, or AS$ tools5, %rototyping tools 4e.g., spreadsheet, % D(,S, L325. As necessary design source documents Data capture is the identification and ac!uisition of new data at its source. Source documents 6 forms used to record business transactions in terms of data that describe those transactions. Data entry is the process of translating the source data or document 4above5 into a computer readable format.

Data 8ro!essing
Data processing is all processing that occurs on the data after it is input from a machine readable form. In batch processing, the entered data is collected into files called batches and processed as a complete batch. In on7line processing, the captured data is processed immediately. In remote batch processing, data is entered and edited on7line, but collected

C<Te!1 ECSEF

% (90 %

System Analysis & Design

KSOU

into batches for subse!uent processing.. (atch processing simplifies data communications and other processes, but means that inventory and other reports are not accurate in real time.

In)ut Im)lementation Met1o#s / Ta>onomy


Select the best strategy to get !uality data into the system in a timely and accurate manner. That is 3ood . &ast or &ast . 3ood but almost never cheap. System boundary is the edge of accessible information. N N N N N N /eyboard ,ouse Touch Screen %oint7of7sale terminals Sound and speech Automatic data capture N )ptical mar' recognition 4),-5 N N N N N N (ar codes

)ptical character recognition 4) -5 ,agnetic In' $lectromagnetic transmission Smart cards (iometric

Ta>onomy &or Com)uter In)uts Keyboar#

C<Te!1 ECSEF

% (95 %

System Analysis & Design

KSOU

Data is usually captured on a business form that becomes the source document for input. Data can be collected real7time. Data is entered via 'eyboard. This is the most common input method but also the most prone to errors. Data can be collected into batch files 4dis'5 for processing as a batch, in old processing method. Data is processed as soon as it has been 'eyed, in new processing method.

Mouse Data is usually captured on a business form that becomes the source document for input. Data can be collected real7time. 1sed in conjunction with 'eyboard to simplify data entry. ,ouse serves as a pointing device for a screen. The use of a mouse is most commonly associated with online and real7time processing. The data is processed immediately.

Tou!1 S!reen Data is usually captured on a business form that becomes the source document for input. Data can be collected real7time. Data is entered o a touch screen display or handheld device. Data entry users either touch commands and data choices or enter data using handwriting recognition. )n % s, touch screen choices are processed same as above. )n handheld computers, data is sorted on the handheld for later processing as a remote batch.

C<Te!1 ECSEF

% (97 %

System Analysis & Design

KSOU

8oint o& Sale Data captured as close to the point of sale as humanly possible. 9o source documents Data is often entered directly by the customer or by an employee directly interacting with the customer Data is almost always processed immediately as a transaction or in!uiry

Soun# S)ee!1 Data is captured as close to the source as possible, even when the customer is remotely located Data 4and commands5 is spo'en. This technology is not as mature and is much less reliable and common than other techni!ues. Data is almost always processed immediately as a transaction or in!uiry. Data is captured as close to the source as possible, even when the customer is remotely located Data is entered using touch7tones 4typically from a telephone5. 1sually re!uires rigid command menu structure and limited input options. Data is almost always processed immediately as a transaction or in!uiry.

O)ti!al Mar: Data is recorded on optical scan sheets as mar's or precisely formed letter, numbers, and punctuation

C<Te!1 ECSEF

% ($9 %

System Analysis & Design

KSOU

It eliminates the need for data entry. Data is almost always processed as a batch.

Magneti! In: Data usually prerecorded on forms that are completed by the customer. The customer records additional information on the form. A magnetic in' reader reads the magneti#ed data. The customer7added data must be entered using another input method. Data is almost always processed as a batch.

Ele!tromagneti! Data is recorded directly on the object to be described by data. Data is transmitted by radio fre!uency Data is almost always processed immediately.

Smart Car# Data is recorded directly on a device to be carried by the customer, employee, or other individual that is described by that data. Data is read by smart card readers. Data is almost always processed immediately.

Ciometri! 1ni!ue human characteristics become data

C<Te!1 ECSEF

% ($$ %

System Analysis & Design

KSOU

Data read by biometric sensors. %rimary applications are security and medical monitoring Data is processed immediately.

In)ut Design Ob e!ti"es an# Gui#elines


Data Input Techni!ues includes capture and validate data at source, reduce the information float 4time from beginning of apture to end of $ntry5, -educe input volume 4codes, scanners5, Streamline data entry if hard to scan, S/1 must be 'eyed. e.g. poor !uality labels, heavy boxesBfixed counter scanner. /ey Tas's in Input Design are list system inputs with data content. $xamine the output re!uirements. Design and prototype input methods include, input controls . security, Identify devices and mechanisms.

Define the appropriate format and media for a computer input. $xplain the difference between data capture, data entry, and data input. Identify and describe several automatic data collection technologies. Apply human factors to the design of computer inputs. Design internal controls for computer inputs. Select proper screen7based controls for input attributes that are to appear on a 31I input screen. Design a web7based input interface. In)ut Design Ob e!ti"es ! The !uality of system input determines the !uality of system output. ! *ell7designed input objectives" ! ! ! ! ! ! $ffectiveness. Accuracy. $ase of use. onsistency. Simplicity. Attractiveness.

ontrol the amount of input" minimi#e the !uantity of data for input 4labor costs5 and avoid duplication in data collection 4several forms containing the same data5 and data entry.

C<Te!1 ECSEF

% ($( %

System Analysis & Design

KSOU

Avoid processing delays 4lengthy credit approval5 due to extra steps in data preparation and entry 4computing sales totals5, by designing appropriate procedures, source documents, and turnaround documents and data entry methods. Avoid errors in data" ensure accuracy through controlling the amount of input, designing forms that ensure accurate completion, selecting the appropriate data entry medium, and using input validation techni!ues. /eep the process simple" do not include too many error controls.

In)ut Design Gui#elines apture only variable data, not data that can be loo'ed up. Do not capture data that can calculate or stored in computer programs as constants. $xtended %rice, &ederal *ithholding, etc. 1se codes for appropriate attributes.

-orm Design
Data provide the basis for information systems. *ithout data there is no system, but data must be provided in the right form for input and the information produced must be in a format acceptable by the user. &orm design follows analy#ing forms, evaluating present documents, and creating new or improved forms. Since the purpose of a form is to communicate effectively through forms design, there are several re!uirements7 Include instructions for completing the form. ,inimi#e the amount of handwriting. Data to be entered 4'eyed5 should be se!uenced top7to7bottom and left7to7right. 1se designs based on 'nown metaphors. &orm Design ma'e forms easy to fill out" to reduce errors, speed completion, facilitate data entry, form flow 4top to bottom, left to right5, form sections" logical grouping of info, form captions" aptions tell the person completing the form what to put on a blan' line, space, or box. $nsure that forms meet the intended purpose" effectiveness 4specialty forms5, assure accurate completion" 4row . column totals5, 'eep forms attractive" uncluttered, enough space to fill, fonts and line weights to separate categories, as' each item of data only once. The seven sections of a form are" Ceading, Identification and access, Instructions, (ody, Signature and verification, Totals, omments. aptions may

C<Te!1 ECSEF

% ($* %

System Analysis & Design

KSOU

be line caption, putting the caption on the same line or below the line, boxed caption, providing a box for data instead of a line, vertical chec' off, lining up choices or alternatives vertically, hori#ontal chec' off, lining up choices or alternatives hori#ontally. Gui#elines &or goo# &orm #esign ,a'e forms easy to fill out $nsure that forms meet the purpose for which they are designed Design forms to assure accurate completion /eep forms attractive

To ma'e forms easy to fill out, &irst, design forms with proper flow, from left to right and top to bottom, second, group information logically using the seven sections of a form, third, provide people with clear captions. aptions tell the person completing the form what to put on a blan' line, space, or box. To reduce error rates associated with data collection, forms should be designed to assure accurate completion. Design forms to ma'e people do the right thing with the form. To encourage people to complete forms, systems analysts should 'eep forms attractive. To be more attractive, forms should loo' uncluttered, and elicit information in the expected order. Aesthetic forms or usage of different fonts within the same form can help ma'e it more attractive. omputer printer entries re!uire a minimum of ;B=7inch spacing between lines. Candwritten entries re!uire approximately ;BL inch. *hen forms are completed by either hand or by a printer, allow about ;BK7inch intervals between lines. ,a'e sure that each form in use fulfills its specific purpose. The specified purpose is integral to organi#ational functioning. %revent duplication of information collected and the forms that collect it. Designing effective forms, deciding on how to get forms reproduced in the most economical way, establishing stoc' control and inventory procedures that ma'e forms available when needed, at the lowest possible cost forms a good form design. To be more attractive, forms should loo' uncluttered, and elicit information in the expected order. Aesthetic forms or usage of different fonts and line weights within the same form can help ma'e it more attractive. 9umerous microcomputer form design software is available. &eatures of electronic form design software" Ability to design paper, electronic, or *eb7 based forms. &orm design using templates. &orm design by cutting and pasting familiar shapes and objects. &eatures of electronic form design software, facilitates completion through the use of software enables broadcasting of electronic forms, permits se!uential routing of forms,

C<Te!1 ECSEF

% ($+ %

System Analysis & Design

KSOU

assists form trac'ing, encourages automatic delivery and processing, and establishes security for electronic forms.

S!reen Design
Source Document Design &low follows data capture se!uence, internal vs $xternal Document 0uality and appearanceM ost of using a document is greater than the cost of the form itself. Screen follows &orm, &orm follows &unction. Screens should be attractive 7 not too much stuff at one time. Information displayed in a logical order 7 follow the form. Screens should be consistent 7 titles, layout, & 'eys, buttons, terms. ,essages should be specific 7 help, not error messages. ,essages stay on screen until next user input. 1se special effects sparingly 4no blin'ing`5. &eedbac's regarding delays are important 6 e.g. progress bar. %rototype screens with users 6 usability testing. * Ty)es o& S!reen Design Data $ntry %rocess ontrol 3raphical 1ser Interfaces Data Entry S!reen Design -estrict user access. %rovide a caption for every field. Show sample formats for values. -e!uire an ending 'eystro'e for every field7 except for single character fields+ 7 may brea' rule for high volume data entry. DonFt re!uire use of special characters. DonFt re!uire leading #eroes to fill or trailing #eroes for decimals. Display default values and be careful using them` Display acceptable values whenever possible 6 e.g. on screen help, pull down lists, chec' boxes, buttons. %rovide method to exit without recording values. %rovide opportunity to confirm action 6 for non7recoverable, low volume transactions only. %rovide means to move among fields 6 cursor defaults to left7right, top7bottom. Wou can override this. Design screen layout to match source document. Allow for people to ma'e mista'es and change their minds. Allow for searching.

8ro!ess Control S!reen Design 1sers can enter commands using interactive input , ,enu Screens, %rompt Screens, Gra)1i!al User Inter&a!es

C<Te!1 ECSEF

% ($, %

System Analysis & Design

KSOU

1ses graphics such as windows, menus and boxes to allow users to communicate with the system Double clic'ing_, -ight clic'ing_, /eyboard shortcuts for expert users, To reap advantage, must have common loo' and feel. Gui#elines &or goo# s!reen #esign &irst, 'eep the screen simple Second, 'eep the screen presentation consistent Third, facilitate user movement among screens &inally, create an attractive screen

Displaying a few necessary basic commands using windows or hyperlin's is another way to 'eep screens simple. &or the occasional user, only A> percent of the screen should contain useful information. &or the regular user, up to J> percent of the screen may contain information. Simplistic design includes maximi#ing or minimi#ing the window si#e as needed. lic'ing the right mouse button is often used to display more options for the window. onsistency is achieved by displaying information in the same area or by grouping information logically. onsistency means using the same terms and acronyms on several screens Gui#elines &or &a!ilitating mo"ement in!lu#e' Scrolling the screen bac' and forth alling up another screen for more detail 1sing onscreen dialogue through the prompts *eb pages may use buttons or commands to facilitate scrolling and screen movement haracter7based screens scroll by displaying new screens, using standard function 'eys 31I screens should not scroll *eb screens often scroll

C<Te!1 ECSEF

% ($. %

System Analysis & Design

KSOU

To ma'e the screen attractive use different thic'ness of separation lines between subcategories, Inverse video and blin'ing cursors. Icons which are pictorial onscreen representations symboli#ing computer actions. Different combinations of colors, Different type fonts, Icons are used in graphical screens to run programs and execute commands. 3raphical 1ser Interface 431I5 is used in conjunction with a mouse for ma'ing selections and entering data.

GUI !ontrols
ommon 31I ontrols 1ses Text boxes o *hen the input data values are unlimited in scope -adio buttons o *hen data has limited predefined set of mutually exclusive values hec' boxes o *hen value set consists of a simple yes or no value 2ist boxes o *hen data has a large number of possible values Drop down lists o *hen data has large number of possible values and screen space is too limited for a list box ombination boxes o To provide user with option of selecting value from a list or typing a value that may or may not appear in the list Spin boxes o *hen need to navigate through a small set of choices or directly typing a data value.

Advanced ontrols 4mostly *indows interfaces5 are" Drop down calendars Slider edit controls

C<Te!1 ECSEF

% ($0 %

System Analysis & Design

KSOU

,as'ed edit controls $llipsis controls Alternate numerical spinners hec' list boxes hec' tree boxes

The five most legible foregroundBbac'ground color combinations for display monitors are (lac' on yellow, 3reen on white, (lue on white, and *hite on blue, and Wellow on blac'.

E>ten#ing In)ut Design to @eb


Gui#elines &or !reating intranet an# Internet in)ut )ages 1se a variety of text boxes, push buttons, radio buttons, drop7down lists, and other 31I features %rovide clear instructions Include radio buttons when users must ma'e a bipolar choice 1se chec' boxes to test conditions to true or untrue 1se a logical entry se!uence for fill7in forms Include two basic buttons" Submit and lear reate a feedbac' screen that lists error messages if a form has not correctly been filled out %rovide a scrolling text box if you are uncertain how much text will be entered If the form is lengthy, divide it into several simpler forms on separate pages

In)ut !ontrols
C<Te!1 ECSEF % ($5 %

System Analysis & Design

KSOU

The number of inputs should be monitored to minimi#e ris' of lost transactions. &or batch processing, 1se batch control slips. 1se one7for7one chec's against post7processing detail reports. &or on7line systems, 2og each transaction as it occurs to a separate audit file. <alidate all data $xistence chec's, Data7type chec's, Domain chec's, ombination chec's, Self7chec'ing digits, &ormat chec's. Input ontrol ensure data is correct, complete, secure, audit trail7 transaction logging in computer file 7 initials, stamps in paper documents 7 control number references, wor'flow 7 2otus 9otes, computer security 7 access to programs . files, physical security 7 paper, tapes, microfilm, etc. 7 access and borrowing privileges 7 offsite storage . records retention. Input ontrols /eep trac' of the number of inputs. Account for each input document, ross chec' totals where possible, save transactions to a log file in case of disaster. <alidate Data ma'e sure re!uired fields have been entered, 2imit . -ange chec's, &ield -elationship chec's, hec' digits, &ormat chec's. Screen7(ased ontrols are 2abels, Text (oxes, )ption (uttons, hec' (oxes, 2ist (oxes, ombo (oxes. 2abel ontrols Displays text. The user cannot enter text. 1se 2abel ontrols when you want to present information that the user will not be able to change. $xamples" 2abels for other ontrols, alculated &ields that should not be altered by the user. Text (oxes 7 The user types the data. 1se text boxes when you canFt provide the user with a meaningful list of values from which to choose or when values are unlimited. $xamples" ustomer 9ame, Temperature to onvert to elsius, %roduct 9umber. If text data is large, such as a product description, use ,emo (ox. )ption (utton ontrols Also called -adio (uttons. 1ser selects one option from a small number of predefined, mutually7exclusive options. )ne of the options will be the default option when the control first appears. $xamples" 9umber of Apartment (edrooms. hec' (ox ontrols7 1ser selects one of only two options" Wes or 9o 4 hec' ,ar' or 9o hec' ,ar'5. )ne of the options will be the default option when the control first appears. ,a'e sure hec' (ox options are truly WesB9o and create captions that clearly indicate this. $xamples" DoctorFs )ffice !uestions_ Cave you ever had measles+ Cave you ever had meningitis+ Are you now or have you ever been a ommunist+ 2ist (ox ontrols 7select from a list of predefined, mutually7exclusive options. 1se when number of items in list is too large for a group of option buttons or when limited screen space prohibits the use of a group of option buttons. Scroll bars appear when list is too long. Default list item is usually highlighted. $xamples" 1.S. States, aodiac Sign.

C<Te!1 ECSEF

% ($7 %

System Analysis & Design

KSOU

ombo (ox controls combination of a 2ist (ox . a Text (ox. 1se ombo (oxes when the user can choose from a list of possible options )- type an option of his choosing. $xamples" &ont Si#es, &avorite Ice ream &lavor. &or Screen7(ased ontrols, &ocus on &ewer $rrors 7 which control is li'ely to cause fewest input errors+ 3roup related controls, align them vertically, and give them a clear caption. %rovide ToolTips whenever possible. 1se Drop7Down 2ist (oxes when screen space is limited. ,a'e sure hec' (ox options are truly WesB9o. Adhere to industry screen design standards. ontrolling forms include ma'ing sure that each form in use fulfills its specific purpose, Deciding on reproduceing forms in the most economical way, establishing stoc' control and inventory procedures that ma'e forms available when needed, at the lowest possible cost, preventing duplication of information collected and the forms that collect it, designing effective forms. Input <alidation hec'ing the transaction" to ensure that the transaction is not invalid 4incomplete, unauthori#ed, out of order5 (atch ontrols" batch si#e, batch count, batch totals Transaction <alidation

Inventory system should not accept the addition of a new item with the same stoc' number as an existing one. Transactions having no relation to the system may also be submitted 4payroll transaction to inventory system5. Acceptable input may be submitted by an unauthori#ed user

! Se!uence Tests" serial numbers to identify ! ,issing items 4che!ues5 ! The order of transactions 4deposits vs withdrawals5 ! ompleteness Tests" automatic guidance in %)S systemsM 'eyboard loc's or systems waits indefinitely until correct data are entered.
% ((9 %

C<Te!1 ECSEF

System Analysis & Design

KSOU

hec'ing the transaction data ! $xistence Tests" ! Some fields are designed not to be left blan' 4!uantity of item in a sales order5, whilst others can be empty 4patient insurance number5. ! 2imit and -ange Tests" to verify the reasonabless of data. 2imit tests validate either minimum or maximum valuesM range tests validate both.

ombination Tests" validate that several items jointly have acceptable valuesM the value of one element determines whether other values are correct. Duplicate %rocessing" process data more than once, either on different e!uipment or in different ways.

! ,odifying the Transaction Data ! Automatic orrection of $rrors ! hec' Digits" ! Transcription errors Ty)es o& In)ut ! Text ! 9umbers ! Selection box ! Input <alidation ! ompleteness chec'

! &ormat chec' ! -ange chec' ! ! hec' digit chec' onsistency chec'

C<Te!1 ECSEF

% (($ %

System Analysis & Design

KSOU

! Database chec'

Tools &or In)ut Design an# 8rototy)ing


There are number of old and new tools are available for input design N )ld Tools N N N -ecord 2ayout harts Display 2ayout harts

9ewer %rototyping Tools N N N N N ,icrosoft Access AS$ Tools <isual (asic $xcel <isio

Mo#ule , Unit $+ Out)ut Design


omputers output is the most important and direct source of information to the user. $fficient, intelligible output design should improve the systems relationships with the user and help in decision ma'ing. )utput Design and %rototyping )bjectives are to distinguish between internal, external, and turnaround outputs, differentiate between detailed, summary, and exception reports. Identifying several output implementation methods. Differentiate among tabular, #oned, and graphic formats for presenting information. Distinguish among area, bar, column, pie, line, radar, donut, and scatter charts and their uses. Describe several general principles that are important to output design and to design and prototype computer outputs.

C<Te!1 ECSEF

% ((( %

System Analysis & Design

KSOU

,otivation for output design is outputs, present information to system users and justification for the system. 3oals of output design are" ommunicate" ,atch the representation to the capabilities of the user 4i.e., ma'e relationships clear5 $conomi#e" Do the most with the least amount of cues 4i.e., reduce cognitive load of the user5 )rgani#e" %resent pertinent information to system users that is easy to read and easy to use

Ty)es o& Out)ut'

Internal output 6 an output intended for system owners and system users within an organi#ation. Detailed report 6 an internal output that presents information with little or no filtering o $xample" A listing of all customers Summary report 6 an internal output that categori#es information for managers o Do not have to wade through details. o Increasingly presented in graphical formats using charts o $xample" A count of customers by region $xception report 6 An internal output that filters data to report exceptions to some condition or standard. o $xample" A listing of customers with past due accounts

$xternal outputs 6 an output that leaves the organi#ation.

C<Te!1 ECSEF

% ((* %

System Analysis & Design

KSOU

Intended for customers, suppliers, partners, or regulatory agencies.

Turnaround documents 6 an external output that may re7enter the system as an input ,ost DbillsE and invoices include a stub to be returned by the customer with payment.

Im)lementation Met1o#s &or Out)uts

%rinted output Tabular output presents information in columns. aoned output places text and numbers into designated areas

Screen output 3raphic output is the use of pictorial charts to convey information and demonstrate trends and relationships that cannot be easily seen in tabular formats.

%oint7of7sale terminals ,ultimedia $7mail Cyperlin's ,icrofilm or microfiche

C1art Ty)es The different charts available are"

C<Te!1 ECSEF

% ((+ %

System Analysis & Design

KSOU

Line !1arts show one or more series of data over a period of time. They are useful for summari#ing and showing data at regular intervals. $ach line represents one series or category of data. Area !1arts are similar to line charts except that the focus is on the area under the line. That area is useful for summari#ing and showing the change in data over time. $ach line represents one series or category of data. Car !1arts are useful for comparing series or categories of data. $ach bar represents on series or category of data. Column !1arts are similar to bar charts except that the bars are vertical. Also, a series of column charts may be used to compare the same categories at different times or time intervals. $ach bar represents one series or category of data. 8ie !1arts show the relationship of parts to a whole. They are useful for summari#ing percentages of a whole within a single series of data. $ach slice represents one item in that series of data. Donut !1arts are similar to pie charts except that they can show multiple series or categories of data, each as its own concentric ring. *ithin each ring, a slice of that ring represents one item in that series of data. ;a#ar !1arts are useful for comparing different aspects of more than one series or category of data. $ach data series is represented as a geometric shape around a central point. ,ultiple series are overlaid so they can be compared. S!atter !1arts are useful for showing the relationship between two or more series or categories of data measured at uneven intervals of time. $ach series is represented by data points using either different colors or bullets.

Ta>onomy &or Com)uter%Generate# Out)uts 8rinter

C<Te!1 ECSEF

% ((, %

System Analysis & Design

KSOU

Detailed, summary, or exception information printed on hard7copy reports for internal business use. (usiness transactions printed on business forms that will eventually be returned as input business transactions (usiness transactions printed on business forms that conclude the business transactions.

S!reen Detailed, summary, or exception information displayed on monitors for internal business use. (usiness transactions displayed on monitors in forms or windows that will also be used to input other data to initiate a related transaction. (usiness transactions displayed on business forms that conclude the business transactions.

8oint%o&%Sale Terminals Information printed or displayed on special7purpose terminals dedicated to specific internal business functions. Information printed or displayed on a special7purpose terminal for the purpose of initiating a follow7up business transaction. Information printed or displayed on special7purpose terminals dedicated to customers.

Multime#ia Eau#io or "i#eoF Information transformed into speech for internal users.

C<Te!1 ECSEF

% ((. %

System Analysis & Design

KSOU

Information transformed into speech for external users who respond with speech or tone input data. Information transformed into speech for external users.

E%mail

Displayed messages related to internal business information. Displayed messages intended to initiate business transactions Displayed messages related to business transactions.

By)erlin:s *eb7based lin's to internal information that is enabled via CT,2 or ^,2 formats. *eb7based lin's incorporated into *eb7based input pages to provide users with access to additional information. *eb7based lin's incorporated into *eb7based transactions.

Mi!ro&i!1e Archival of internal management reports to microfilm that re!uires minimal physical storage space. 9ot applicable unless there is an internal needs to archive turnaround documents. 9ot applicable unless there is an internal need for copies of external reports.

Out)ut Design Gui#elines

C<Te!1 ECSEF

% ((0 %

System Analysis & Design

KSOU

)utputs should be simple to read and interpret. o Include a title, Date and time stamp. Include sections and headings to segment information. learly label all fields and columns. Include legends for all abbreviations. Include only re!uired information. )nline provide methods to expand and contract information. -eport the information in a format that does not have to be manually edited. Information should be balanced across the page or screen. %rovide for easy navigation. Avoid computer jargon and error messages. The timing of outputs is important. o This can affect how the output is designed an implemented

The distribution of 4or access to5 outputs must be sufficient to assist all relevant users. o The choice of implementation method affects distribution.

)utputs must be acceptable to the system users who will receive them. o Systems analyst must understand how the recipient plans to use the output

Out)ut Design 8ro!ess Identify system outputs and review logical re!uirements. Specify physical output re!uirements. As necessary, design any preprinted forms. Design, validate and test outputs using some combination of" 2ayout tools 4e.g., hand s'etches, spacing charts, or AS$ tools, %rototyping tools 4e.g., spreadsheet, % D(,S, L325, ode generating tools 4e.g., report writer5& )utput (ias )nce a project is completed, the systems analyst signs off, but hisBher influence is long lasting. ,ostly the information on which the decision ma'ers base their decisions is determined by what the analysts perceive is important to the business. The presentations of output can be unintentionally biased in the following three ways"

Cow information is sorted


% ((5 %

C<Te!1 ECSEF

System Analysis & Design

KSOU

e.g. items at the beginning of an alphabetically sorted list receives more attention.

Setting of acceptable limits may bias output if the

limit is too low or too high, or is the range of exceptions output too narrow or too wide, e.g. if bK days lateG payment is considered bbadG, then the number of bbadG customers would be very high.

hoice of graphics"

(ias can occur in the selection of the graphic si#e, its colour, the scale used, and the type of graphic.

Met1o#s &or A"oi#ing Cias

*or' with users, so they can point out the bias. (e aware of the sources of bias. 1se interactive design of output for greater flexibility. Train users to rely on multiple output for conducting breality testsG on system output.

;e)ort Design

-eport Design %rinciples and Design Issues are" %age Si#e 7 Today the page si#es of choice are standard 4@c: x ;;:5 and legal 4@c: x ;L:5. %age )rientation7 %ortrait orientation is often preferred because it is oriented the way we orient most boo's and reportsM however, landscape is often necessitated for tabular reports because more columns can be printed. %age Ceadings7 At minimum, page headers should include a recogni#able report title, date and time, and page numbers.

C<Te!1 ECSEF

% ((7 %

System Analysis & Design

KSOU

-eport 2egends 7 A legend is an explanation of abbreviations, colors, or codes used in a report. In a printed report, a legend can be printed on only the first or last page. )n a display screen, a legend can be made available as a pop7up dialogue box. olumn Ceadings 7 olumn headings should be short and descriptive. Avoid abbreviations or include a -eport 2egend. Ceading Alignments 7 Alignment should be tested with users for preferences with a special emphasis on the ris' of misinterpretation of the information. olumn Spacing 7 If columns are too close, users may not properly differentiate between the columns. If they are too far apart, the user may have difficulty following a single row. -ule of thumb is to use K7A spaces between each. -ow Ceadings 7 The first one or two columns should identify data that differentiates each row. -ows should be se!uenced in a fashion that supports their use. &re!uently rows are sorted on a numerical 'ey or alphabetically. &ormatting 7 Data is often stored without formatting characters to save storage space. )utputs should reformat data to match the usersF norms. ontrol (rea's 7 3roups of rows should be logically grouped in the report. The transition from one group to the next is called a control brea' and is fre!uently followed by subtotals for the group. $nd of -eport 7 The end of a report should be clearly indicated to ensure that users have the entire report.

8a)er 2uality3 ty)e an# si?e

C<Te!1 ECSEF

% (*9 %

System Analysis & Design

KSOU

Ste)s in #esigning out)ut re)orts 4it1 a Com)uter%Ai#e# so&t4are tool

7Determine the need for the report. 7Determine the users. 7Determine the data items to be included. 7$stimate the si#e of the report. 7Determine the report title. 79umber the pages of the report. 7Include the preparation date on the report. 72abel each column of data appropriately. 7Define variable data. 7-eview prototype reports. Screen )utput Design 3uidelines to facilitate the screen design are as follows " /eep the screen simple"

C<Te!1 ECSEF

% (*$ %

System Analysis & Design

KSOU

o The display screen should be simple and show only what is necessary. reate an attractive screen" o If users find screens appealing, they are li'ely to be more productive, to need less supervision and to ma'e fewer errors. /eep the screen presentation consistent" o Screens can be 'ept consistent by locating information in the same area each time a new screen is accessed. o Information that logically belongs together should be consistently grouped together. &acilitate user movement among screens" o ,a'e it easy to move from one screen to another. o *eb based forms facilitate movement with the use of hyperlin's. Design an attractive screen.

Screen Design onsiderations are" Si#e 7 The designer should consider the Dlowest common denominator.E The default window si#e should be less than or e!ual to the worst resolution display in the user community. Scrolling 7 )n7line outputs have the advantage of not being limited by the physical page. This can also be a disadvantage if important information such as column headings scrolls off the screen. If possible, free#e important headings at the top of a screen. 9avigation 7 1sers should always have a sense of where they are in a networ' of on7line screens. 1sers also re!uire the ability to navigate between screens. %artitioning 7 In *indows, #ones are forms within forms. )n the Internet, frames are pages within pages. Information Ciding 7 )n7line applications offer capabilities to hide information until it is either needed or becomes important. Techni!ues include drill7down and pop7up dialogue boxes. Cighlighting 7 Cighlighting can call usersF attention to erroneous data, exception data, or specific problems. Cighlighting can also be a distraction if misused. %rinting7 Always provides users the option to print a permanent copy of the report.

C<Te!1 ECSEF

% (*( %

System Analysis & Design

KSOU

)bjectives T1e ob e!ti"es o& s!reen out)ut #esign are $ffectiveness Accuracy $ase of use onsistency Simplicity Attractiveness

E&&e!ti"eness' &orms are created to serve one or more purposesM recording, processing, storing and retrieving information for business. A!!ura!y' $rror rates associated with collecting data drops sharply if the forms are designed to ensure accurate completion.

Ease o& Use'

To reduce errors, speed completion and facilitate the entry of data, it is essential that forms be easy to fill in. &orms should be designed with proper flow 4from left to right and top to bottom5. 2ogical grouping of information ma'es it easy for people to fill out forms correctly. The seven main sections of a strong form are" ;. H. K. L. A. =. ?. Ceading Identification and Access Instructions (ody Signature and verification Totals omments

C<Te!1 ECSEF

% (** %

System Analysis & Design

KSOU

ontrolling &orms (usinesses often have a forms specialist who controls forms. (asic duties for controlling forms" ,a'e sure that each form fulfils a specific purpose. %revent duplication of the information that is collected and of the forms that collect it. Deciding how to get forms reproduced in the most economical way. $stablishing stoc' control and inventory procedures that ma'e forms available when needed at the lowest possible cost. A uni!ue form number and revision date should be included on each form.

&orm Design 3uidelines ,a'e forms easy to fill out. $nsure that the forms meet the purpose for which they are designed. Design the forms to ensure accurate completion. /eep the forms attractive.

olor can draw attention for form design to communicate organi#ation, indicate status, reveal relationships, add accents to an uninteresting display facilitate subtle discriminations in complex displays, and evo'e emotional reactions. Cuman vision" rods 4peripheral5 and cones 4fovea, or center5, blue and yellow more visible further out than redBgreen.

Color Gui#elines

1se color conservatively 2imit the number and amount of colors 4LB? rule5 -ecogni#e the power of color to speed or slow tas's olor coding should appear automatically to support the tas' olor coding should be under user control (e consistent in color coding (e alert to common expectations about color codes

C<Te!1 ECSEF

% (*+ %

System Analysis & Design

KSOU

1se color changes to indicate status changes 1se color in graphic displays for greater information density Avoid confusing color pairs such as redBgreen, redBblue, yellowBpurple, magentaBgreen Ceavy use of saturated colors can cause afterimages, shadows or depth effects (rown and green are poor choices for bac'ground colors )rangeBred and orangeByellow are easy to confuse *arm colors appear larger than cool colors olor in combination with blac' or white is often better than H colors 1se light, saturated colors to emphasi#e, dar'er destructed colors to de7emphasi#e (lac' on white more readable than white on blac'.

I!on Design An icon is an image, picture, or symbol representing a concept. Icons are small, usually =L^=L pixels 4actual si#e depends on screen resolution5. Icons ta'e advantage of powerful human visual pattern perception. laims for superiority of icons not universally accepted. Icons for objects are more intuitive than icons for actions. Too many different icons can be distracting and confusing. Icons that are too complex can be distracting and confusing. Icon design should be considered in context of overall screen appearance and complexity growing use of Tool (ars 4employing even smaller icons5. -epresent the object or action in a familiar manner. ,a'e icons stand out from the bac'ground. $nsure a selected icon is visible from unselected icons. Design the movement animation. Icons combined with text labels are most effective. E>ten#ing out)ut #esign to 4eb Design principles must be used when designing *eb sites. These include" 1sing professional tools, Studying other sites, 1sing *eb resources, $xamining the sites of professional *eb site designers<

3uidelines for creating intranet and Internet input pages 1se a variety of text boxes, push buttons, radio buttons, drop7down lists, and other 31I features

C<Te!1 ECSEF

% (*, %

System Analysis & Design

KSOU

%rovide clear instructions Include radio buttons when users must ma'e a bipolar choice 1se chec' boxes to test conditions to true or untrue 1se a logical entry se!uence for fill7in forms Include two basic buttons" Submit and lear reate a feedbac' screen that lists error messages if a form has not correctly been filled out %rovide a scrolling text box if you are uncertain how much text will be entered If the form is lengthy, divide it into several simpler forms on separate pages

C<Te!1 ECSEF

% (*. %

System Analysis & Design

KSOU

9odule : /)5T .: Data#ase or File Design


A Data Is a Known facts that can be recorded and have an implicit meaning. A database is a computerized collection of information that is arranged in a manner which makes it easy to retrieve information. A DBM is a set of software programs that controls the organization! storage! management! and retrieval of data in a database. DBM are categorized according to their data structures or types. It is a set of prewritten programs that are used to store! update and retrieve a Database. "he DBM accepts re#uests for data from the application program and instructs the operating system to transfer the appropriate data. $hen a DBM is used! information systems can be changed much more easily as the organization%s information re#uirements change. &ew categories of data can be added to the database without disruption to the e'isting system. (rganizations may use one kind of DBM for daily transaction processing and then move the detail onto another computer that uses another DBM better suited for random in#uiries and analysis. (verall systems design decisions are performed by data administrators and systems analysts. Detailed database design is performed by database administrators. Database servers are computers that hold the actual databases and run only the DBM and related software. Database servers are usually multiprocessor computers! with generous memory and )AID disk arrays used for stable storage. *onnected to one or more servers via a high+speed channel! hardware database accelerators are also used in large volume transaction processing environments. DBM s are found at the heart of most database applications. ometimes DBM s are built around a private multitasking kernel with built+in networking support although nowadays these functions are left to the operating system. "he database systems are re#uired for data management problem.

Data#ase Design
Database design is the process of creating a design for a database that will support the organi#ationFs operations and objectives.

C<Te!1 ECSEF

% (*0 %

System Analysis & Design

KSOU

A data base system should have built+in capabilities to meet the ob,ectives of data independence! reliability! compatibility! structural adaptability! integrity! recoverability! and security. "hese re#uirements are ma,or constraints on database design. Design ;#<ectives A good database design enables performance! security! correctness! and a presents the user with an illusion of intelligence. "his may sound like a set of high e'pectations for a database. If you are the only one using your database! then you can certainly rela' your standards. -owever! this article will attempt to e'plain how security and correctness can be including in the design of any database. &o standard e'ists to compare one database structure with another to evaluate the #uality of a given design. "here is no reference database design or popular handbook of database structural solutions. "his lack of a standard creates a common dilemma. large amounts of time and money are spent to produce a computer program only to find it is supported by an inade#uate database design. "he only recourse for this dilemma is to redesign the database and hopefully produce a better design or live with the design you have. "he good news is! modern hardware will cover most design flaws by simply covering over the problem with amazing speed. 2ll good D"9 =s should guarantee the following attri#utes* Atomicity hould not be able to e'ecute half of an operation

/ither all or none of the effects of a transaction are made permanent *onsistency "here should be no surprises in the world! e.g.! gpa 0 1.2! balance 3 2! cats should never have more than 4 tail5 "he effect of concurrent transactions is e#uivalent to some serial e'ecution

6se constraints! triggers! active DB elements 7conte't+free8 Isolation *oncurrency control "ransactions should not be able to observe the partial effects of other transactions 6se locks 7whole relations or individual tuples98

Durability

C<Te!1 ECSEF

% (*5 %

System Analysis & Design

KSOU

If power goes out! nothing bad should happen (nce accepted! the effects of a transaction are permanent 7until! of course! changed by another transaction8 6se logs

;elational Database Design 81ases ;. (uilding the logical data model 7 process of constructing a model of the information used in an organi#ation based on the relational data model but independent of a particular D(,S or other physical considerations H. (uilding the physical database design 7 process of producing a description of the implementation of the database on a particular D(,S Ob e!ti"es o& Goo# ;elational Database Design' There are many distinct objectives that you must achieve in order to design a good, sound, structured database. Wou can avoid many of the problems you may encounter by 'eeping the following objectives in mind and constantly focus on these whilst designing your database. -epresent the data and the relationships between data re!uired from the database application. %rovide a data model that supports any transactions re!uired on the data. Specify a minimal design that is appropriately structured to achieve the stated performance re!uirements for the database application.

The database supports both re!uired and ad hoc 4unplanned5 information retrieval. The database must be designed to store the data necessary to support information re!uirements defined during the design process and any possible ad hoc !ueries that may be posed by the users. The tables are constructed properly and efficiently & $ach table in the database must represent a single subject only and should be composed of relatively distinct fields which 'eep redundant data to an absolute minimum and should be identified throughout the database by a field with uni!ue values. Data integrity is imposed at the field, table and relationship levels & These levels of integrity help guarantee that the data structures and their values will be valid and as accurate as possible at all times. The database should support business rules relevant to the organi#ation it is designed for. The data must provide accurate information that is always meaningful to the business. The database should lend itself to future growth and development & The database structure should be easily modifiable and expendable as the information re!uirements of the business continue to change and grow.

C<Te!1 ECSEF

% (*7 %

System Analysis & Design

KSOU

Wou may find it difficult at times to fulfill all of these objectives, but youGll certainly be pleased with your final database design structure once youGve met them.

Cene&its o& Goo# Database Design The time that you invest in designing a sound, well structured database is time well spent. 3ood database design saves you time in the long run because you do not have to spend time constantly revamping a !uic'ly and poorly designed structure. Wou gain the following benefits when you apply good design techni!ues"

The database structure is easy to modify and maintain & ,odifications you ma'e to a table or field will not adversely affect other tables or fields in the database. The data is easy to modify. hanges that you ma'e to the value of a given field will not adversely affect the values of other fields within the table. &urthermore, a well7designed database 'eeps duplicate fields to an absolute minimum, so you typically modify a particular data value in one field only. Information is easy to retrieve& Wou should be able to create !ueries easily due to well constructed tables and the relationships between them are correctly established. $nd71ser applications are easy to develop and build& Wou can spend more time on programming and addressing the data manipulation tas's at hand, instead of wor'ing around the inevitable problems that will arise when you wor' with a poorly designed database.

8roblems ;esulting &rom 8oor Design A myriad of problems can manifest themselves as a result of poor database design" The database andBor application may not function properly. Data may be unreliable or inaccurate. %erformance may be degraded. &lexibility may be lost.

onventional files and D(,S

C<Te!1 ECSEF

% (+9 %

System Analysis & Design

KSOU

All information systems create, read, update and delete data. The data are stored in files and in databases. &iles are collections of similar recordsM a database is the collection of interrelated files. Therefore, the records in each file must allow for some representation of the relationship between files d thin' of them as :pointers: d to records in other files. In a file environment, data storage is built around the applications that will use the files such as a mail programM in a database environment, applications will be built around the integrated database. onventional files are relatively easy to design and implement because they are normally based on a single application or information system. Cowever, such files may duplicate data stored elsewhere. &iles are also often inflexible, and difficult to scale up if needs change. Cistorical collections of files that are used but may not be useful for current needs called a :legacy system: are candidates for :re7engineering: d that is converting the data into a more flexible, appropriate model, such as that provided by a database system. The advantages of a database model are the ability to share the same data across multiple applications and systems. The data base technology independent of the actual interrelated collection of files is more flexible in storing and updating data. As such, the end7user may be able to use the data in new ways, not specifically designed into the database is e!ual to :data independence:. Additionally, new data 4new fields, even5 can be added without affecting existing programs. *ith this increased power come some drawbac's. Database technology is often more complex than file technology. To address this concern, special software, called a database management system 4D(,S5 is re!uired. 1sing a D(,S will increase the cost of a project because it re!uires greater analysis and programming to be effective 4hence more time spent by analysts, database administrators, and programmers to learn and use the D(,S5. Sharing data means more people can have access to themM as well as submitting the data to more communications technology. &ailures or problems can be introduced by the greater number of people using the data 4by accident or design5 and technology if not applied correctly can add problems 4such as the :deadly embrace: when two peopleFs computers believe each has exclusive use of the data and the computer ends up loc'ing everyone out5. To be effective and efficient, then, a database must be carefully designed. The end product, the technical blueprint of the design, is called a database schema. The design phase translates the data models that were developed for the system users during into data structures supported by the chosen database technology. Subse!uent to the database design phase, system builders will construct those data structures using the language and tools of the selected technology. A file contains groups of records used to provide information for operations, planning, management and decision ma'ing.

C<Te!1 ECSEF

% (+$ %

System Analysis & Design

KSOU

Types of files are"


,aster files Table files Transaction files *or' files -eport files

&iles can be used to store data for an indefinite period of time or temporarily for a specific purpose. ,aster files and table files are used to store data for a long period. Temporary files are usually called transaction files, wor' files or report files. *hen records are physically in order in a file, then the file is called se!uential. *hen files are stored on direct7access devices 4e.g dis'5, then the options are expanded. -ecords can be sorted logically using lin'ed lists. 2in'ed lists are obtained by using a set of pointers. Direct7access devices permit access to a record by going directly to its address. Bas1ing is the process of calculating an address from the record 'ey. An in#e> is different from a pointer, since it is stored in a file separate from the data file. &iles can be organi#ed in the following ways"

Se!uential organi#ation. 2in'ed lists. Cashed file organi#ation. Indexed organi#ation. Indexed7Se!uential organi#ation.

The Pros and Cons of Conventional Files


%ros"

onventional files are relatively easy to design and implement because they are normally based on a single application or information system. Cistorically, another advantage of conventional files has been processing speed. ons"

Duplication of data items in multiple files is normally cited as the principal disadvantage of file7based systems.

C<Te!1 ECSEF

% (+( %

System Analysis & Design

KSOU

A significant disadvantage of files is their inflexibility and non7 scalability.

Database Con!e)ts

Anyone who wor's with databases should be fluent in the terminology. (elow is a list of major concepts that one should 'now. ;eality The real world itself is referred to as reality. Data It is the piece of information collected about people, places or events. Meta#ata It is the information that describes data. Entity An object or event about which the data is collected is called an entity. ;elations1i)s These are associations between entities. Attribute It is some characteristic of an entity. -iel#s &ields are common both to files and databases. A &iel# is the implementation of a data attribute. &ields are the smallest unit of meaningful data to be stored in a file or database. There are four types of fields" %rimary 'eys, Secondary 'eys, &oreign 'eys Descriptive 'eys.

%rimary 'eys are fields whose values identify one and only one record in a file. These are uni!ue values. Secondary 'eys are alternative identifiers for a databaseM a single file in a database may have only one primary 'ey, but it may have several secondary 'eys

C<Te!1 ECSEF

% (+* %

System Analysis & Design

KSOU

&oreign 'eys are pointers to the records of a different file in a database. &oreign 'eys are how the database lin's the records of one type to those of another type. Descriptive fields are any other fields that store data.

;e!or#s &ields are organi#ed into a unit, called a record. 2i'e fields, records are common to files and databases. A record is a collection of fields arranged in a predefined format. During systems design, records will be classified either as fixed7length or variable7length records. ,ost database systems impose a fixed7length record structure, meaning that each record instance has the same fields, same number of fields, and same logical si#e. <ariable7 length record structures allow different records in the same file to have different length. (ecause there is more programming involved and more possible danger to the data, variable7length fields are to be avoided in the traditional D,(S. *hen a computer programs reads a record in a database, it actually is retrieving a group or bloc' of records at a time. This means the computer does not have to access the hard drive as often 4which is very time consuming for a computer5. A bloc'ing factor is the number of logical records included in a single read or write operation. The bloc' is also called a physical record. Today, the bloc'ing factor is usually determined and optimi#ed by the chosen database technology, but in some situations the programmer may be allowed to fine tune that bloc'ing factor for better performance.

Key Data items used to identify records. Some $ntity7-elationship Diagrams 4$7- diagram5

C<Te!1 ECSEF

% (++ %

System Analysis & Design

KSOU

Cere a rectangle represents an entity and a diamond represents a relationship b;G or b,G indicates that whether the relationship is one or many. Using an E%; Diagram to represent the relationships between the %hysicians, %atients, Treatments and %rescriptions.

-iles an# Tables Similar records are organi#ed into groups called :files:. A file is the set of all occurrences of a given record structure. In a database system, a file corresponds to a set of similar records, usually called a table. A table is the relational database e!uivalent of a file.

C<Te!1 ECSEF

% (+, %

System Analysis & Design

KSOU

Some special purpose files are master files that contain records that are relatively permanent, not li'ely to change. The values of the fields that are the specific data in a field may change over its lifetime, but the individual records are li'ely to remain permanently. A transaction file contains records that describe the organi#ation events such as logon and use records. These data have a limited utility" when useful theyFre available on7line, when no longer useful, they are :archived: d stored to some permanent medium and removed from active systems. Some organi#ations may 'eep copies of useful historical data called :document files:M :audit files: are special records of updates to other files, especially mater and transaction files. &or example, say a payroll system has been adjusted without authority. The audit file helps trac' down the differences between the original, correct version and the new, altered one. Databases Databases provide the technical implementation of entities and relationships. Thin' of a database as the collection of everything an organi#ation considers valuable, represented in some form permitted by the technology. Such important objects need to be protected and managed. Data Architecture" an organi#ationFs data architecture is comprised of the files and databases that store all of the organi#ationFs data, the file and database technology used to store the data, and the organi#ational structure set up to manage the data resource. )perational Databases support specifically the day7to7day operations and transactions of the information system. &or example, in a library setting, circulation records are a form of operational database. To control access to and manipulation of files, some organi#ations spin off selected fields into a :data warehouse: that end7users can access. To use the data in the warehouse effectively, there are special software applications 4fourth7generation programming languages, !uery tools 4e.g., (rio5, and decision support tools5 are used to generate reports and analyses from the data warehouse. In larger organi#ations, there may be a staff of database specialists administered by different people, depending on their role. A data administrator is responsible for data planning, definition, architecture and management. Database architecture refers to the database technology including the database engine, database management utilities, database AS$ tools for analysis and design, and database application development tools. The control center of the architecture is its D(,S. The D(,S 4database management system5 is speciali#ed computer software to create, access, control, and manage the database. The core of the database is its :database engine: d the actual algorithms and programming that ma'e it possible create, read, update, search, and delete records.

C<Te!1 ECSEF

% (+. %

System Analysis & Design

KSOU

The systems analyst, or database analyst, designs the structure of the data in terms of record types, fields contained in those record types, and relationships that exist between record types. These are defined in the D(,S using its own special language, called a data definition language or D22. The D22 is used by the D,(S to establish the physical record types, fields, and structural relationships. Additionally, the DD2 defines the :views: of the database. <iews restrict the portion of the database that may be used or accessed by different users and programs. DD2s record the definitions in a permanent data repository that end7users usually cannot access. onsider a payroll database. The manager of the payroll unit may have access to every staff memberFs employment record. Cowever, we do not want to let everyone see each otherFs salary history or even let all members of the payroll staff see the data that isnFt necessary to their job. Thus the managerFs view might be all fields and all tablesM the payroll staff may see only an otherFs pay rate 4and not annual salary5M while the same system may permit staff members to see all of their own record but none of another personFs. Some data dictionaries include formal, special software that helps the database specialist trac' metadata d the data about the data d such as record and field definitions, synonyms, data relationships, validation rules, help message, and so on. &inally, the manipulation of the data in the database is formali#ed according to a data manipulation language or D,2. The D,2 is used to create, read, update, and delete records in the database, and to navigate between different records and types of records. The D(,S and D,2 hide the details concerning how records are organi#ed and allocated to dis'. &or example, when the end7user clic's on a button that says :9ext -ecord: the user does not 'now what happens on the dis' d the :next record: could actually be stored at another location or be assembled from several databases. The user will see only a single record on screen, without having to be informed of all the other behind7the7scenes wor' performed by the computer to create the record. ;elational Databases There are several models of organi#ing data that can be called :databases.: $arly forms of D(,S used hierarchies of files or networ's with indexes to organi#e the files. A relational database is different" it is built on a mathematical model of data as if all data were stored in a spreadsheet styled file of columns and rows. &iles are seen as having :two7dimensional tablesE, rows and columns 'nown as relations. All rows are recordsM all columns are fields. The D(,S is the top7level concept of data. A DD2 defines what data and what types of data are valuable to a company 4e.g., :2ast name: should have up to HA characters and be stored in a field called :lastname:5. A D,2 determines what can happen to the data in the computer 4:delete all records for lastname is XSmithF:M add a new record for a person whose lastname is X8onesF5. *hen someone loo's for data, the two7dimensional data relationship permits the user to as' !uestions of the database. &or instance, the -D(S

C<Te!1 ECSEF

% (+0 %

System Analysis & Design

KSOU

permits users to say :list all people whose salary is greater than QA>,>>> and who live in hicago:. To the computer, this !uestion is interpreted as :retrieve all rows from the file where the column XcityF is e!ual to X hicagoF and the column XsalaryF is greater than QA>,>>>.: There are many database software products" so many that the industry has moved towards a common language for users, called S02 or Structured 0uery 2anguage. S02 executes the D,2 and D22 for the user. S02 supports !ueries by the user, as well as creating, deleting, and maintenance of databases. Some more powerful S02 software products permit saving common user commands as :stored procedures: d mini programs embedded in a table that can be called by the application program. Similarly there is the :trigger: which is embedded within a table and it will automatically update the data if related data are updated. Data Analysis Successful databases are those which serve the end7userFs information needs, are stable, can be manipulated, are robust, shared, and are computationally efficient. These goals constitute :good data: models. As a general rule, the data attributes that describe an entity such as :employee personal information:, :monographs:, etc. should describe only that entity, not :employeeFs wor' department:. A good data model is essentially non7 redundant meaning that each data attribute describes at most only one entity other than foreign 'eys to which the entity is related. &inally a good model is flexible" it can adapt to future needs without significant impact on current needs. Therefore we must study exactly which data interests us d in a process call data analysis. Data analysis is a process that prepares a data model for implementation in a simple, non7 redundant, flexible, and adaptive database. The specific techni!ue is called normali#ation. 9ormali#ation is a techni!ue that organi#es data attributes such that they are grouped together to form a stable, flexible, and adaptive entities. There are multiple steps in normali#ation. An entity is in"

&irst normal form or ;9& if there are no attributes that can have more than one value for a single instance of the entity Second normal form or H9& if it is already in ;9&, and if the values of all non7 primary 'ey attributes are dependent on the full primary 'ey d not just part of it Third normal form or K9& if it is already in H9& and if the values of its non7 primary 'ey attributes are not dependent on any other non7primary 'ey attributes.

There are about @ normal forms but for most of our purposes, K9& is sufficient. Steps in database normali#ation"

-emove all repeating groups and identify the primary 'ey. $nsure that all non7'ey attributes are fully dependent on the primary 'ey.

C<Te!1 ECSEF

% (+5 %

System Analysis & Design

KSOU

-emove all transitive dependencies. The networ' data structure can be seen as an extended form of the hierarchic data structure. In a hierarchic data structure, a child record has exactly one parentM while in a networ' structure, a child record can have any number of parents 4including #ero5.

Two types of records"


parent child

A child record occurrence must have a parent record occurrenceM deleting a parent record occurrence re!uires deleting all its child record occurrences.

-ile Design The most fundamental entities for a data model would be designed as :master: or :transaction: record. A master file is typically fixed7length records. :Associative entities: from the data model are typically joined into the transaction records for form variable length records 4based on the one7to7many 4;",5 relationship5. )ther files are added as necessary to fill7out the organi#ationFs information need. 9ote that file access and organi#ation are important decisions for the designer. Should the file be accessed :se!uentially: or :randomly:+ This decision will impact the overall design and use of the system. Database Design The data model may have to be divided into multiple data models 4recall the idea of :decomposition:5 to reflect database distribution and database replication decisions < Data Distribution refers to the distribution of specific tables, records andBor fields to different physical databases. Data -eplication refers to the duplication of specific tables, records, andBor fields to multiple physical databases. 9ote that in the logical design of the system, each sub7model or view should reflect the data to be stored on a single server. Database S!1ema The design of the database is depicted in a model called the database schema. The database schema is the physical model or blueprint of the database. It represents the technical implementation of the logical data model. The -D(,S schema defines the

C<Te!1 ECSEF

% (+7 %

System Analysis & Design

KSOU

database structure in terms of tables, 'eys, indexes, and integrity rules. It should include details about the capabilities, terminology, and constraints of the selected D(,S. Transforming the logical data model into a physical relational database schema rules and guidelines includes the following" $ach fundamental, associative, and wea' entity is implemented as a separate table" The primary 'ey is identified and implement as an index into the table The secondary 'eys are implemented as their own index into the table $ach foreign 'ey will be implemented as such Attributes will be implemented with fields The fields correspond to columns in the table.

&or each attribute you will want to identify the data type 4alphanumeric, (oolean, logical, numeric 4integer, double, float55, si#e of the field 4eg., HA characters5M null or non7null 4if a field have a value before the record can be stored to dis', it is a :non7null: field, otherwise it may be a :null:5M domains 4identify the D,(S that can automatically edit data to ensure that fields contain legal data5, and default 4what is the default value to be set automatically by the program if the user does not enter a value+5. In a data dictionary, each of these elements is defined. Some fields, such as salary, will have acceptable ranges pre7programmed to avoid no salary or illegal ones. This 'ind of range chec'ing during input is called :data validation: or :domain integrity:. The data files themselves have relationships among each others which must be maintained. This is called data and referential integrityM three types are considered here. /ey integrity means each table should have a primary 'ey 4which may be concatenated5. &or example, in a staff list, the :lastname: field may be the 'ey. RA concatenated primary 'ey might be :lastname: U :firstname: U :middleinitial: fields.S %rimary 'eys are never null. Domain integrity means controls are designed into the system to ensure that no field ta'es on a value that is outside the legal values. -eferential integrity exists when a foreign 'ey value in one table has no matching primary 'ey in the related table. The mutual7reference between tables must be maintained. To preserve referential integrity, there are different 'inds of deletion rules. :9o restriction: means any record in the table may be deleted without regard for other tables.

C<Te!1 ECSEF

% (,9 %

System Analysis & Design

KSOU

:Delete" ascade: means deletion of a record in the table must automatically be followed by the deletion of a matching record in a related table. &or instance, if a person retires from a position, the human resources database will show the termination, but so should any related tables, such as payroll, par'ing permits, telephone directories, and so on. :Delete" -estrict: means the records in matching tables must first be deleted before the data in this table can be deleted. &or example, a libraryFs main collection may delete a holding 4say when a boo' is transferred to a rare materials collection5. irculation records and shelf lists may need to be changed first before the primary database that records the boo'Fs existence in the main collection is altered to show the transfer. :Delete" Set9ull: means all dependent records are set to :9122:. To help clarify the names of fields 4something done in the Data Dictionary5, some organi#ations insist that no two fields, regardless of location, have the same name. This is called the role name. A role name is an alternative name for a foreign 'ey that clearly distinguishes the purpose that the foreign 'ey serves in the table.

8lanning an# 8rototy)ing


%rototyping a database system is the s'etching out of main ideas to help shape a schema. It is not a replacement to carefully prepared database schemas. Some software applications will let the designer s'etch out the database idea and then help formali#e the prototype. Storing t1e Data )ne reason the data dictionary outlines the si#e, type and location of all data is because the database administrator must estimate the si#e of dis' capacities for the project. Database capacity planning can be easily calculated. ;. &or each table, sum the field si#es. This creates the record si#e for the table. H. &or each table, multiply the record si#e times the number of entity instances to be included in the table. This creates the table si#e. K. Sum the table si#es. This ma'es the database si#e. L. )ptionally, add a slac' capacity buffer 4e.g., ;>Y5 to account for unanticipated factors or inaccurate estimates. This is called the anticipated database capacity.

Database )rgani#ation
A database, unli'e a file, is intended to be shared by many users. There are three main types of logically structured databases" o -elational o Cierarchical o 9etwor' ;elational Databases A relational database is perceived by the user as a collection of time varying, normali#ed relations.
C<Te!1 ECSEF % (,$ %

System Analysis & Design

KSOU

Time varying means that the set of tuples in any given relation change with time. $ach file contains only one record type. The fields have no particular order, left to right. The records have no particular order, top to bottom. $very field is single valued. The records have a uni!ue identifier field or field combination called the primary 'ey.

Bierar!1i!al Data Stru!tures A hierarchic database consists of an ordered set of trees. *hat is a tree+

Trees in the form of a family tree or genealogical tree trace the ancestry of an individual and show the relationships among the parents, children, cousins, uncles, aunts and siblings. A tree is thus a collection of nodes. )ne node is designated as the root nodeM the remaining nodes form trees or sub trees. An ordered tree is a tree in which the relative order of the sub trees is significant. This relative order not only signifies the vertical placement or level of the sub trees but also the left to right ordering.

A hierarchical tree can have any number of record occurrences for each record type at each level of the hierarchical tree.

The hierarchical data model has the following constraints"


$ach hierarchical tree can have only one root record type and this record type does not have a parent record type. The root can have any number of child record types, each of which can itself be a root of a hierarchical 4sub5 tree.

C<Te!1 ECSEF

% (,( %

System Analysis & Design

KSOU

$ach child record type can have only one parent record typeM thus many7 to7many relationships can not be directly expressed between two record types. Data in a parent record applies to all its childrenGs records. $ach occurrence of a record type can have any number of occurrences of each of its child record types.

The Cierarchical Data ,odel 4CD,5 uses the tree concept to represent data and the relationship among data. The nodes of the tree are the record types representing the entity sets and are connected by pointers or lin's. The relationship between the entities is represented by the structure of the resulting ordered tree.

Database #esign gui#elines

&rom this basic description, the following database design rules emerge"

$ach record should contain a uni!ue identifier as the primary 'ey such as an employee ID, a part number, or a customer number. The primary 'ey is typically the column used to maintain each recordGs uni!ue identity among the tables in a relational database. Databases allow you to use multiple columns for the primary 'ey. *hen you define a column, you define a S02 data type for the column, such as allowing only numeric values to be entered in the salary column. Assessing user needs and incorporating those needs in the database design is essential to a successful implementation. A well7designed database accommodates the changing data needs within an organi#ation. $ach separate data entity should create a master file. A specific data field should exist only on one master file. $ach master file or database relation should have programs to reate, -ead3 1pdate and Delete the records.

The following are the steps used for the retrieval and presentation of a data"

hoose a relation from the database. 8oin two relations together. %roject columns from the relation. Select rows from the relation. Derive new attributes.

C<Te!1 ECSEF

% (,* %

System Analysis & Design

KSOU

Index on sort and rows. alculate totals and performance measures. %resent data.

eeeeeeeeeeeeee

UNIT 16

%-)8$ T ,A9A3$,$9T
8ro e!t De&inition
A project is a uni!ue set of coordinated activities, with definite starting and finishing points underta'en by an individual or organi#ation to achieve some specific objectives within defined time, cost and performance constraints. A project is a group of milestones 4or phases or activities or tas's5 to accomplish some well7defined objective. %roject can also be defined as a temporary endeavor underta'en to create a uni!ue product, service or result.

C<Te!1 ECSEF

% (,+ %

System Analysis & Design

KSOU

A project ends when its objectives have been reached or the project has been terminated. %rojects can be large or small and ta'e a short or long time to complete. A project can also be viewed as a se!uence of uni!ue, complex, interrelated activities having a goal or purpose that must be completed by a specific time, within budget and according to specifications or re!uirements of end users. %rojects are different from standard business activities as they Are uni!ue in nature. They do not involve repetitive processes. $very project differs from other project carried out by the same or different organi#ation. Cave finite time duration. %rojects have well7defined start and end dates identified in the beginning phase of the project itself. Cave an approved budget. The organi#ation allocates certain budget for the finical expenditures during the project. 1se limited resources. The organi#ation allocates re!uired amount of systems, e!uipments, programmers, labors, etc at the early stage of the project itself. Involve some level of ris'. )ften projects entail certain level of uncertainty which inturn leads to ris'. An activity or tas' is the smallest unit of wor' effort within the project and consumes both time and resources which are under the control of the project manager. A project is a se!uence of activities that has a definite start and finish, an identifiable goal and an integrated system of complex but interdependent relationships. A schedule allocates resources to accomplish the activities within a timeframe. schedule sets priorities, start times and finish times. $very project is constrained by the following three goals as illustrated in figure ;=.;" Scope goals that tell what wor' will be done+ Time goals that tell how long should it ta'e to complete the project+ ost goals that tell what should it cost+ The

C<Te!1 ECSEF

% (,, %

System Analysis & Design

KSOU

Scope

ost

Time
-ig $.<$' 8ro e!t Constraints

It is the responsibility of the project manager to balance these three often7competing goals in the organi#ation to succeed in the project. -eatures o& )ro e!ts %rojects are often carried out by a team of people who have been assembled for that specific purpose. manager. The activities of this team may be coordinated by a project

%roject teams may consist of people from different bac'grounds and different parts of the organi#ation. In some cases project teams may consist of people from different organi#ations.

%roject teams may be inter7disciplinary groups and are li'ely to lie outside the normal organi#ation hierarchies. The project team will be responsible for delivery of the project end product to some sponsor within or outside the organi#ation. The full benefit of any project will not become available until the project as been completed.

C<Te!1 ECSEF

% (,. %

System Analysis & Design

KSOU

%roject Management
%roject ,anagement is the process of planning, monitoring and controlling all aspects of a project. It also involves motivation of the individuals involved in achieving the project objectives on time as per the specified cost, !uality and performance. It is a dynamic process that utili#es the re!uired resources of the organi#ation in a structured manner, to achieve the set goals. It is always conducted within a defined set of constraints. Thus, %roject management is the application of s'ills, tools and management process to project activities to meet project re!uirements. %roject ,anagement comprises of A set of s'ills, speciali#ed 'nowledge and re!uired amount of experience to eliminate or at least reduce the level ris' within the project and to enhance the li'elihood of its success. A suite of tools such as planning tools, documentation tools, testing tools, etc., to help project managers to effectively manage the project. A series of management process inorder to monitor and control various activities, resources, cost and !uality of the project. Different authors, organi#ations, project managers, $)Fs give different definition for %roject ,anagement. Some of these include" The techni!ues . tools used to describe, control . deliver a series of activities with given deliverables, timeframes . budgets. The methods and disciplines used to define goals, plan and monitor tas's and resources, identify and resolve issues, and control costs and budgets for a specific project. %rocess of managing or coordinating all elements of a project from start to finish. %roject ,anagement is the discipline of organi#ing and managing resources in such a way that these resources deliver all the wor' re!uired to complete a project within defined scope, !uality, time and cost constraints.
C<Te!1 ECSEF % (,0 %

System Analysis & Design

KSOU

A controlled process of initiating, planning, executing, and closing down a project. A set of well7defined methods and techni!ues for managing a team of people to accomplish a series of wor' tas's within a well7defined schedule and budget.

%roject management is the planning and control of events that, together, comprise the project. It aims to ensure the effective use of resources and delivery of the project objectives on time and within cost constraints. Different sta'eholders are involved project management. Sta'eholders are people who are involved in or affected by project activities. Some of the sta'eholder includes" %roject sponsor %roject manager %roject team Support staff ustomers 1sers Suppliers )pponents to the project

The purpose of project management is to achieve successful project completion with the resources available. A successful project is one which" has been finished on time is within its cost budget performs to a technicalBperformance standard which satisfies the end user.

Im)ortan!e o& 8ro e!t Management The importance of project management can be visuali#ed from the following two perspectives"

C<Te!1 ECSEF

% (,5 %

System Analysis & Design

KSOU

It effectively 'eeps trac' or measures the progress achieved towards the objective that needs to be accomplished. It is also used as an aid to optimally use the resources to accomplish our goals.

It enables project manager to map out a course of action or wor' plan It helps all project team members to thin' systematically and thoroughly $ffective project management helps to complete wor' within time bound.

8ro e!t management &un!tions


/nowledge areas are the core to any project management. /nowledge areas are basically those that describe the 'ey competencies that project managers must develop and implement them in the project in order to succeed as a successful project manager. There are nine such 'ey 'nowledge areas that a project manager must master. The nine 'nowledge areas can be classified into three categories. &irst category includes four core 'nowledge areas leading to specific project objectives. These include scope management, time management, cost management, and !uality management. &irst category includes four facilitating 'nowledge areas through which the project objectives are achieved. The four facilitating 'nowledge areas are human resources management, communication management, ris' management and procurement management. &inally the third category includes one 'nowledge area called project integration management that affects and is affected by all of the other 'nowledge areas. The figure ;=.H illustrates these 'nowledge areas.

C<Te!1 ECSEF

% (,7 %

System Analysis & Design

KSOU

8ro e!t ob e!ti"es s)e!i&i! :no4le#ge areas

Scope ,anagement

Time ,anagement

ost ,anagement

0uality ,anagement

8ro e!t Integration Management

8ro e!t &a!ilitating :no4le#ge areas Cuman -esource ,anagement ommunication -is' ,anagement ,anagement ,anagement
-igure $.<( Nine Kno4le#ge Areas &o!using 8ro e!t Management -un!tions

%rocurement

8ro e!t ob e!ti"es s)e!i&i! &un!tions


S!o)e Management Defining and managing all the wor' re!uired to successfully complete the project. harters should be developed for each project. A formal process should be developed for change management including the estimate in cost of ma'ing the change. Scope of the project needs to be clearly defined in the project charter. To avoid scope creep, any changes to scope must be documented and a formal approval must be obtained before changing the scope of the project. 9eed to determine who can ma'e decisions and differentiate based on magnitude

of decision. 9ot every project decision should go to the Steering ommittee. Time Management $stimating how long it will ta'e to complete wor', develop project schedule, and ensure completion.

C<Te!1 ECSEF

% (.9 %

System Analysis & Design

KSOU

8ro e!t S!1e#ule 6 &or each project a project schedule should be defined early on. Tas's should be identified down to the tas'Bperson level. %roject schedule templates 4plans for software upgrades, software development etc_5 should be developed so that project managers have a DpoolE to pull from. All projects that have more than A resources and have duration of longer than ; month should utili#e ,icrosoft %roject to develop a project schedule. -e!uirements should be done prior to development wor'. In areas where business changes are needed, significant time should be allotted to do this. Include entire project team in planning. This will help minimi#e tas's being overloo'ed in the plan. (rea' the project into small pieces. 9ot all functionality has to be delivered with one release. Time needed for the project by the various resources needs to be better identified. )ften the time is underestimated. Cost Management %reparing and managing a budget (udget guidelines need to be established prior to project 9eed to determine who has the authority to ma'e certain budget decisions A budget identifying the total cost of ownership of an application should be developed. Some costs that need to be identified and budgeted for are" o onsultants 6 as we continue to purchase more applications. )ur dependency

on consultants will continue. This needs to be budgeted as a recurring cost with each upgrade. o ,aintenance agreements will be a recurring cost of owning purchased applications. o Travel and professional development 6 the s'ills needed to support these new applications re!uires staff to learn new technology as well as develop

C<Te!1 ECSEF

% (.$ %

System Analysis & Design

KSOU

partnerships with other institutions utili#ing the same software. This is a recurring cost and should be budgeted for accordingly. 6uality Management $nsures the project will satisfy stated or implied needs A formal customer sign7off process is needed. $nsure the scope statement has specific measures of success so that it is easier to determine if a project has been successful at meeting the objectives.

Pro:ect facilitating f'nctions Buman ;esour!e Management ,a'ing effective use of people. /nowledgeable resources should be identified for the project team and involved as soon as possible. If staffs are unable to devote time necessary, then tas's should be prioriti#ed. $nd users should be involved early in the project and updated throughout. If a project re!uires some special s'ills 4i.e. 'nowledge of S02 etc..5, staff need to have the training made available at the right time. This may be something that should be included in the project plan 6 training assessments of project team. Staff should be given release time for participating in projects spanning a long time or re!uiring significant staff effort. learly define staff roles and responsibilities.

Communi!ations Management 3enerating, collecting, disseminating, storing project information.


C<Te!1 ECSEF % (.( %

System Analysis & Design

KSOU

A communication plan should be developed to outline what gets communicated to whom and who is responsible for the communication. &or example, what information gets communicated to the Steering ommittee+

Sponsor ,eetings 7 regular meetings should be established with sponsor to ensure they are aware of project status. &re!uency should be based on project si#e and turnaround time. The larger the project, the more infre!uent 4monthly5 the meetings should be. &ormat of agenda should be consistent.

Team ,eetings 7 regular meetings should be established with project team to ensure tas's completed, that they are aware of important deadlines etc_Agendas should be developed and minutes should be completed with action items.

%oint of

ontacts 6 %) s should be identified for major groups 4i.e. IT, testers,

business areas etc_5. Sometimes it is difficult to ensure if people read email regarding important dates etc_The %) is responsible for ensuring their area is aware of information relating to them. ,ajordomo 7 mail lists may also be developed so that the project team can communicate freely with each other.

;is: Management Identifying, analy#ing, and responding to ris's -is's need to be identified prior to project. In addition, procedures on how to handle these ris's if they arise need to be documented. A

Staff turnover will most li'ely occur on projects spanning a long time.

management plan needs to be devised on how new staff will be brought up to speed. 8ro!urement Management

C<Te!1 ECSEF

% (.* %

System Analysis & Design

KSOU

Ac!uiring or procuring goods and services that are needed from outside the organi#ation. It may be necessary to hire outside consultants for larger projects. This may allow implementations to run smoother as the consultants can alert us to issues.

8ro e!t Integration Management )verarching function that affects and is affected by all other 'nowledge areas. lose interaction with vendor is needed to understand changes with new versions 4i.e. what current functionality wonFt exist in new version5. %roject %lan should be developed and include" )verview of the project 7 description, sponsors, sta'eholders, deliverables )rgani#ational structure of the project 6 authority of project manager and steering committee, responsibilities and communication for the project, reporting structure of project ,anagement and technical approaches 6 management objectives, project controls 4status reports, how to handle changes5, ris' management, project staffing plan, technology methodologies Scope management plan 6 *(S 4wor' brea'7down structure5 or high level tas' list, 'ey deliverables %roject schedule 6 summary and detailed (udget 6 summary and detailed, assumptions A project should be bro'en down into small manageable pieces rather than implementing everything at once. %eriodic reviews should occur to determine if the project should continue. Mis!ellaneous -un!tions Testing

C<Te!1 ECSEF

% (.+ %

System Analysis & Design

KSOU

Should be detailed 6 scripts should be developed for minimal testing. This doesnFt mean that other testing is not also needed.

%arallel testing 6 when at all possible, it is best to be able to test the old version in conjunction wB the new version. This helps identify gaps.

Issue list should be maintained throughout project to ensure issues are resolved before implementation or at least be aware that those issues exist.

Instances 40ABD$<B%roduction5 6 when testing, instances need to be compatible to ensure the needed functionality is transferred from one version to the next.

Issues found after testing should be included in test scripts to detect in future upgradesBenhancements to the system.

Training $valuations may be needed to determine if there is additional training that is needed. (e careful in assumptions regarding 'nowledge level of the users. Ade!uate time should be allowed for training. A common theme in all

feedbac' was that there wasnFt enough time for testing. 9eed to identify a Drule of thumbE for project managers to use as a guide. 0A instance needs to be Dfro#enE when training material development starts.

Pro:ect S'ccess Factors A project is teamwor'. Therefore its success is dependent on several factors. Some of the 'ey factors that can lead a project to be successful include" Top management or executive support to the project team. 1ser involvement in specifying clear, unambiguous re!uirements and during testing stages.

C<Te!1 ECSEF

% (., %

System Analysis & Design

KSOU

$xperienced project manager who has sound managerial and leadership s'ills re!uired for project. lear business objectives. %roject having a minimi#ed narrow scope rather than a maximi#ed broader scope. 1sage of standard software infrastructure. $nough amount of resource that are re!uired. 1sage of formal methodology for system development. -eliable estimates. A good project team having proper coordination.

Apart from the above 'ey factors, other factors such as small milestones, proper planning, competent staff, and ownership are e!ually important for the project to succeed.

Causes o& 8ro e!t -ailure


Inspite of having project manager, team members and user involvement some projects do not succeed. Some of the causes that lead to project failure are" &ailure to establish upper7management commitment to the project. 2ac' of organi#ationFs commitment to the formal methodology of project development. Ta'ing shortcuts through or around the formal methodology that may lead to incorrect results. %oor expectations from management resulting from
o o &eature creep Scope creep

%remature commitment to a fixed budget and schedule. 1sage of improper planning and estimation techni!ues. Inexperienced project manager or project manager with inade!uate people management s'ills.

C<Te!1 ECSEF

% (.. %

System Analysis & Design

KSOU

&ailure to adapt to business change. Insufficient resources to carry out the project. Ambiguous or incorrect re!uirement specification. %oor design, due to lac' of technically sound team members. Improper ris' management.

A#"antages o& 8ro e!t Management


In built ,onitoringB Se!uencing $asy and $arly identification of (ottlenec's Activity based costing Identification and Addition of missing and new activities %reempting unnecessary activityBexpenditure Timely ompletion Assigning tas's -eporting

(etter control of financial, physical, and human resources. Improved customer relations. Shorter development times. 2ower costs. Cigher !uality and increased reliability. Cigher profit margins. Improved productivity. (etter internal coordination. Cigher wor'er morale 4less stress5.

C<Te!1 ECSEF

% (.0 %

System Analysis & Design

KSOU

8ro e!t Manager %roject manager is the person responsible for supervising a systems project from initiation to conclusion. %roject manager wor's with project sponsors, project teams, and other people involved in projects to meet project goals. A major role of a project manager is to ensure that the project succeeds. ;es)onsibilities o& t1e 8ro e!t Manager To plan thoroughly all aspects of the project, soliciting the active involvement of all functional areas involved, in order to obtain and maintain a realistic plan that satisfies their commitment for performance. To control the organi#ation of manpower needed by the project. To control the basic technical definition of the project, ensuring that :technical: versus :cost: trade7offs determine the specific areas where optimi#ation is necessary. To lead the people and organi#ations assigned to the project at any given point in time. Strong positive leadership must be exercised in order to 'eep the many disparate elements moving in the same direction in a co7operative. To monitor performance, costs and efficiency of all elements of the project and the project as a whole, exercising judgement and leadership in determining the causes of problems and facilitating solutions. To complete the project on schedule and within costs, these being the overall standard by which performance of the project manager is evaluated.

Pro:ect ;anager S<ills %roject managers need both hard and soft s'ills. Card s'ills include product 'nowledge and 'nowing how to use various project management tools and techni!ues. Soft s'ills include being able to wor' with various types of people. Some of the s'ills re!uired include" ommunication s'ills to listen and communicate ideas and tas's. )rgani#ational s'ills li'e planning, goal setting and problem domain analysis. Team7building s'ills li'e motivation, showing empathy, etc. 2eadership s'ills li'e lead by examples, providing vision, wor' delegation, etc.

C<Te!1 ECSEF

% (.5 %

System Analysis & Design

KSOU

oping s'ills li'e being flexible, creative, patient and persistent. Technology s'ills li'e domain expertise, tool s'ills, programming s'ills, experience, project 'nowledge, etc.

$ffective project managers provide leadership by example. A leader focuses on long7term goals and big7picture objectives while inspiring people to reach those goals. A manager deals with the day7to7day details of meeting specific goals. Thus project managers often ta'e on both leader and manager roles. 8ro e!t Management Tools & Te!1ni2ues Gantt C1art Cenry 2aurence 3antt 4;@=;7;J;J5 a mechanical engineer, management consultant and industry advisor developed a tool for displaying the progression of a project in the form of a speciali#ed chart called 3antt charts in the second decade of the H> th century. 3antt charts are being used as a visual tool to show scheduled and actual progress of projects. A 3antt chart is a hori#ontal bar or line chart which will commonly include the following features"

Activities identified on the left hand sideM Time scale is drawn on the top 4or bottom5 of the chartM A hori#ontal open oblong or a line is drawn against each activity indicating estimated durationM Dependencies between activities are shownM At a review point the oblongs are shaded to represent the actual time spent 4an alternative is to represent actual and estimated by H separate lines5M A vertical cursor 4such as a transparent ruler5 placed at the review point ma'es it possible to establish activities which are behind or ahead of schedule.

A basic sample of 3antt chart is illustrated in figure ;=.K

C<Te!1 ECSEF

% (.7 %

System Analysis & Design

KSOU

Tas' Duration 8an &eb ,ar Apr ,ay 8un 8ul Aug Sep )ct 9ov Dec ; H K L A = H mo. H mo. H mo. H mo. H mo. H mo.

-ig< $.<* Gantt C1art -ormat

The hori#ontal axis of the 3antt chart is a time scale, expressed either in absolute time or in relative time referenced to the beginning of the project. The time resolution depends on the project 7 the time unit typically is in wee's or months. -ows of bars in the chart show the beginning and ending dates of the individual tas's in the project. In the above example, each tas' is shown to begin when the tas' above it completes. Cowever, the bars may overlap in cases where a tas' can begin before the completion of another, and there may be several tas's performed in parallel. &or such cases, the 3antt chart is !uite useful for communicating the timing of the various tas's. &or larger projects, the tas's can be bro'en into subtas's having their own 3antt charts to maintain readability.

C<Te!1 ECSEF

% (09 %

System Analysis & Design

KSOU

The strength of the 3antt chart is its ability to display the status of each activity at a glance. *hile often generated using project management software, it is easy to construct using a spreadsheet, and often appears in simple AS II formatting in e7mails among managers. In the ;J@>s, personal computers eased the creation and editing of elaborate 3antt charts. These des'top applications were intended mainly for project managers and project schedulers. In the late ;JJ>s and early H>>>s, 3antt charts became a common feature of web7based applications, including collaborative groupware. Some of the poject management tools incorporating 3antt harts include %-I9 $, ,ac%roject and ,icrosoft %roject. Although a 3antt chart is useful and valuable for small projects that fit on a single sheet or screen, they can become !uite unwieldy for projects with more than about K> activities. 2arger 3antt charts may not be suitable for most computer displays. A related criticism is that 3antt charts communicate relatively little information per unit area of display. That is, projects are often considerably more complex than can be communicated effectively with a 3antt chart. 3antt charts only represent part of the triple constraints of projects, because they focus primarily on schedule management. ,oreover, 3antt charts do not represent the si#e of a project or the relative si#e of wor' elements, therefore the magnitude of a behind7 schedule condition is easily miscommunicated. If two projects are the same number of days behind schedule, the larger project has a larger impact on resource utili#ation, yet the 3antt does not represent this difference. Although project management software can show schedule dependencies as lines between activities, displaying a large number of dependencies may result in a cluttered or unreadable chart. (ecause the hori#ontal bars of a 3antt chart have a fixed height, they can misrepresent the time7phased wor'load 4resource re!uirements5 of a project. A related criticism is that all activities of a 3antt chart show planned wor'load as constant. In practice, many activities 4especially summary elements5 have front7loaded or bac'7loaded wor' plans, so a 3antt chart with percent7complete shading may actually miscommunicate the true schedule performance status.

@or: brea:#o4n stru!ture E@CSF

C<Te!1 ECSEF

% (0$ %

System Analysis & Design

KSOU

The wor' brea'down structure 4*(S5 is a 'ey document in the project it forms the basis of much of the planning, setting budgets, financial control, defining the organi#ation and assigning responsibilities. (rea'ing the wor' into manageable units is 'ey to controlling the project. <iewing the project, as a whole can be overwhelming, therefore, brea'ing the project into small chuc's ma'es it more appealing. It is also possible to identify and delegate wor' to other members of the project team. The wor' brea'down structure is illustrated in figure ;=.L %roject

Tas' ;

Tas' H

Tas' 9

Sub Tas' ;.;

Sub Tas' ;.H

*or' %ac'age ;.;.;

*or' %ac'age ;.;.H


-ig $.<+' @or: Crea:#o4n Stru!ture Diagram

$ach level of the *(S is often called a tas'. Cow many levels you have will vary by project, generally the bigger the project the more levels. 1p to about A is fine. If you have more than this, you should thin' about initiating sub7projects to deal with legs of the *(S. Anything over ;> levels and the project scope is probably flawed and needs rechec'ing. At the higher level 4top5 appear the phases of the project 4usually the phases in the project plan5. (eneath this are all the tas's that have to be performed to complete the phase.

C<Te!1 ECSEF

% (0( %

System Analysis & Design

KSOU

The following figure ;=.A illustrates a *(S for %ublish Series.

Publish Series

PREPROD!C"ION Improve man script Design jacket

PROD!C"ION Design layo t Print

ROLL O!" $ales drive #dvertising campaign

-ig $.<,' @CS &or 8ublis1 Series

Since *(S is a hierarchical structure, it may also be conveyed in outline form as" Le"el $ Tas' ; Subtas' ;.; *or' %ac'age ;.;.; *or' %ac'age ;.;.H *or' %ac'age ;.;.K Subtas' ;.H *or' %ac'age ;.H.; *or' %ac'age ;.H.H *or' %ac'age ;.H.K Tas' H Subtas' H.; *or' %ac'age H.;.; Le"el ( Le"el *

C<Te!1 ECSEF

% (0* %

System Analysis & Design

KSOU

*or' %ac'age H.;.H *or' %ac'age H.;.K $ach organi#ation uses its own terminology for classifying *(S components according to their level in the hierarchy. &or example, some organi#ations refer to different levels as tas's, sub7tas's, and wor' pac'ages, as shown in the above outline. )thers use the terms phases, entries, and activities. The wor' brea'down structure is the foundation of project planning. It is developed before dependencies are identified and activity durations are estimated. The *(S can be used to identify the tas's in the %, and %$-T project planning models. 8rogram E"aluation an# ;e"ie4 Te!1ni2ue ,ost of the projects are complex in nature. They re!uire a series of activities, some of which must be performed se!uentially and others in parallel with other activities. The collection of series and parallel tas's can be modeled as a networ'. In ;JA? the ritical %ath ,ethod 4 %,5 was developed as a networ' model for project management and was first used to assist in the development and building of chemical plants within the Du%ont orporation. %, is a deterministic method that uses a fixed time estimate for each activity. *hile %, is easy to understand and use, it does not consider the time variations that can have a great impact on the completion time of a complex project. The %rogram $valuation and -eview Techni!ue 4%$-T5 is one of the most commonly used networ' model for project management designed to analy#e and represent the tas's involved in completing a given project. %$-T was introduced in ;JA@ following research within the Special %rojects )ffice of the 1S 9avy. It was initially used to plan and control the %olaris missile programme which involved the coordination of thousands of contractors. The use of %$-T in this case was reported to have cut eighteen months off the overall time to completion. It has the potential to reduce both the time and cost re!uired to complete a project.

C<Te!1 ECSEF

% (0+ %

System Analysis & Design

KSOU

%$-T is a method to analy#e the involved tas's in completing a given project, especially the time needed to complete each tas', and identifying the minimum time needed to complete the total project. %$-T simplify the planning and scheduling of large and complex projects. It incorporates uncertainty by ma'ing it possible to schedule a project while not 'nowing precisely the details and durations of all the activities. It is an event7oriented techni!ue rather than start7 and completion7oriented, and is used more in projects where time, rather than cost, is the major factor. It is applied to very large7scale, one7time, complex, non7routine infrastructure and -esearch and Development projects. In any project before beginning the current activity all of its predecessor activities must be completed. %roject networ' models represent activities and milestones by arcs and nodes. %$-T originally was an activity on arc 4A)A5 networ', in which the activities are represented on the lines and milestones on the nodes. )ver time, some people began to use %$-T as an activity on node 4A)95 networ'. A %$-T chart can have multiple pages with multiple sub7tas's. The milestones generally are numbered so that the ending node of an activity has a higher number than the beginning node. The activities can be labeled with letters along with the expected time re!uired to complete the activity. There are six stages common to both %$-T and %," Define the project and specify all activities or tas's. Develop the relationships amongst activities. Decide upon precedence. Draw networ' to connect all activities. Assign time andBor costs to each activity. alculate the longest time path through the networ'" this is the :critical path:. 1se networ' to plan, monitor and control the project.

De&ine t1e )ro e!t an# s)e!i&y all a!ti"ities or tas:s In a project an activity is a tas' that must be identified and performed to complete the project. The milestones are the events mar'ing the beginning and end of one or more activities. Cence as a first step we need to specify all activities and milestones.

C<Te!1 ECSEF

% (0, %

System Analysis & Design

KSOU

De"elo) t1e relations1i)s amongst a!ti"ities )nce all the activities are identified, the relationship or the order in which the activities must be se!uenced for execution are to be identified. The precedence among similar 'ind of activities must also be identified. This step may be combined with the activity identification step since the activity se!uence is evident for some tas's. Dra4 net4or: to !onne!t all a!ti"ities Draw a networ' diagram using the activity relationship information. The networ' diagram must illustrate the se!uence activities that are serial and parallel. In an activity7 on7arc model, the activities are represented using an arrowed lines and milestones are represented through circles or bubbles. If done manually, several drafts may be re!uired to correctly portray the relationships among activities. Software pac'ages simplify this step by automatically converting tabular activity information into a networ' diagram. Assign time an#Hor !osts to ea!1 a!ti"ity )nce the all activities are connected and represented using networ' diagram, the time and optionally cost can be indicated. Time is commonly indicated using wee' 4s5 as the representational unit for activity completion, but any consistent unit of time can be used. A distinguishing feature of %$-T is its ability to deal with uncertainty in activity completion times. &or each activity, the model usually includes three time estimates"

)ptimistic time" It is the shortest time in which the activity can be completed. )ptimistic times are specified to be three standard deviations from the mean so that there is approximately a ;Y chance that the activity will be completed within the optimistic time. ,ost li'ely time" It is the completion time having the highest probability. ,ost li'ely time is different from the expected time. %essimistic time" It is the longest time that an activity might re!uire. Three standard deviations from the mean is commonly used for the pessimistic time.

C<Te!1 ECSEF

% (0. %

System Analysis & Design

KSOU

%$-T assumes a beta probability distribution for the time estimates. &or a beta distribution, the expected time for each activity can be approximated using the following weighted average" $xpected time O 4)ptimistic U L ^ ,ost li'ely U %essimistic5 B = This expected time may be displayed on the networ' diagram. To calculate the variance for each activity completion time, if three standard deviation times were selected for the optimistic and pessimistic times, then there are six standard deviations between them, so the variance is given by" R4%essimistic 7 )ptimistic5 B =SH

Cal!ulate t1e Criti!al 8at1 The critical path is determined by adding the times for the activities in each se!uence and determining the longest path in the project. The critical path determines the total calendar time re!uired for the project. If activities outside the critical path speed up or slow down 4within limits5, the total project time does not change. The amount of time that a non7 critical path activity can be delayed without delaying the project is referred to as slack time. The objective of critical path analysis is to determine times for the following" ES L Earliest Start Time. This is the earliest time an activity can be started, allowing for the fact that all preceding activities have been completed. LS L Latest Start Time. This is the latest time an activity can be started without delaying the start of following activities which would put the entire project behind schedule. E- L Earliest -inis1 Time. The earliest time an activity can be finished. L- L Latest -inis1 Time. The latest time that an activity can finish for the project to remain on schedule. S L A!ti"ity Sla!: Time. The amount of slippage in activity start or duration time which can be tolerated without delaying the project as a whole. If $S and 2S for any activity is 'nown, then one can calculate values for the other three times as follows"
C<Te!1 ECSEF % (00 %

System Analysis & Design

KSOU

$& O $S U t 2& O 2S U t S O 2S 7 $S or S O 2& 7 $& Analysis of the project normally involves" ;. Determining the ritical %ath. The critical path is the group of activities in the project that have a slac' time of #ero. This path of activities is critical because a delay in any activity along it would delay the project as a whole. alculating the total project completion time, T. This is done by adding the activity times of those activities on the critical path.

H.

The steps in critical path analysis are as follows" a5 Determine $S and $& values for all activities in the project" the &orward %ass through the networ'. b5 alculate 2S and 2& values for all activities by conducting a (ac'ward %ass through the networ'. c5 Identify the critical path which will be those activities with #ero slac' 4i.e." $SO2S and $&O2&5. d5 alculate total project completion time. Since the critical path determines the completion date of the project, the project can be accelerated by adding the resources re!uired to decrease the time for the activities in the critical path. Such a shortening of the project sometimes is referred to as pro<ect crashing. Use net4or: to )lan3 monitor an# !ontrol t1e )ro e!t 1se the above constructed networ' model to plan, monitor and control the project so that triple constraints of the projects are satisfied. ,a'e adjustments if needed in the %$-T chart as the project progresses. &or instance in cases where there are delays, additional resources may be needed to stay on schedule and the %$-T chart may be modified to reflect the new situation.

C<Te!1 ECSEF

% (05 %

System Analysis & Design

KSOU

8E;T E>am)le' A project has been defined to contain the following list of activities along with their re!uired times for completion" A!ti"ity No ;. H. K. L. A. =. ?. @. E>)e!te# !om)letion time -e!uirements collection A Screen design = -eport design ? Database design H 1ser documentation = %rogramming A Testing K Installation ; A!ti"ity

De)en#en!y % ; ; H,K L L = A,?

a< Dra4 a 8E;T !1art &or t1e a!ti"ities< b< Cal!ulate t1e earliest e>)e!te# !om)letion time< !< S1o4 t1e !riti!al )at1<

C<Te!1 ECSEF

% (07 %

System Analysis & Design

KSOU

a< 8E;T C1art !onstru!tion 1sing information from the table the %$-T chart in figure ;=.= show the se!uence of activities.

b< Earliest e>)e!te# !om)letion time !al!ulation 1sing information from the table, indicate expected completion time for each activity.

TE L $$ ( . TE L , $ , TE L $( * 0 TE L $+ + (

TE L (9 , .

TE L (* 5 $

TE L $7 . ,

TE L (( 0 *

alculate earliest expected completion time for each activity 4T$5 and the entire project. Cint" the earliest expected completion time for a given activity is determined by summing the expected completion time of this activity and the earliest expected completion time of the immediate predecessor. -ule" if two or more activities precede an activity, the one with the largest T$ is used in calculation 4e.g., for activity L, we will use T$ of activity K but not H since ;H ] ;;5.

C<Te!1 ECSEF

% (59 %

System Analysis & Design

KSOU

!< Criti!al )at1 i#enti&i!ation


TE L $$ ( . TE L , $ , TE L $( * TE L $+ + ( TE L $7 . , TE L (( 0 * TE L (9 , . TE L (* 5 $

The critical path represents the shortest time, in which a project can be completed. Any activity on the critical path that is delayed in completion delays the entire project. Activities not on the critical path contain slac' time and allow the project manager some flexibility in scheduling.

Mo#ule . Unit $0 System Design


Intro#u!tion (ased on the user re!uirements and the detailed analysis of a new system, the new system must be designed. This is the phase of system #esigning. It is a most crucial phase in the development of a system. 9ormally, the design proceeds in two stages" %reliminary or general design Structure or detailed design

%reliminary or general design" In the preliminary or general design, the features of the new system are specified. The costs of implementing these features and the benefits to be derived are estimated. If the project is still considered to be feasible, we move to the detailed design stage.

C<Te!1 ECSEF

% (5$ %

System Analysis & Design

KSOU

Structure or Detailed design" In the detailed design stage, computer oriented wor' begins in earnest. At this stage, the design of the system becomes more structured. Structure design is a blue print of a computer system solution to a given problem having the same components and inter7relationship among the same components as the original problem. Input, output and processing specifications are drawn up in detail. In the design stage, the programming language and the platform in which the new system will run are also decided.

This chapter introduces techni!ues for the design of interfaces, menus, and databases, based on the re!uirement specification wor'ed out during the analysis phase 4functioning diagram, relationship diagram, data flow diagram...5. At the end of this phase, you need to identify the borderline between the computer system and human being and find the answer to the !uestion of how to attain the systemGs objectives. &ocused on the final design specification and the construction, development, and implementation of the solution proposed during analysis and deemed best among any alternatives available.

T1e o"erall #esigning s)e!i&i!ations (y definition, analysis and design are two separate activities. Cowever, in practice, the two development activities are so intertwined that no one can say exactly when analysis ends and design begins. &or example, design ideas are often conceived during the preparation of documents such as &unctioning diagrams, Data flow diagrams, $ntity relationship diagrams, Data dictionaries, Specification process from the formal specification of user re!uirements. The design of an appropriate information system re!uires that analysts understand the goals and objectives of management. They must also be sensitive to changes that may occur to these goals and objectives over time in response to shifts in the competitive environment.

O"er"ie4 o& stru!ture# #esign'

C<Te!1 ECSEF

% (5( %

System Analysis & Design

KSOU

The lofty goals of Structured design are accomplished through the consistent implementation of specific philosophical views. )ne of these, functionality, is stressed throughout the practice of Structured design. At the heart of this method is the notion that a program, a group of programs, or a group of systems is nothing more than a collection of functions. Structured design is the result of a desire on the part of its authors to formali#e what they consider to be good programming practice. A beneficial side effect for the software engineering is that what is easy to maintain is also relatively easy and inexpensive to construct. Thus, Structured Design is a software design method which closely parallels the current trend in technology toward systems which are once easy to maintain and inexpensive, or at least cost7effective, to construct. The designer must at first Xsee throughF the programs, modules, and routines and examine relationships. )ne must temporarily forget about how the systems at hand might be implemented and treat it as a collection of abstractions7logical functions. This gives the software designer a maximum freedom in examining relatively system architectures. The mapping logical functions in to physical modules are delayed until the late stages of design effort. The outstanding uni!ue aspect of Structured Design is that it includes several different ways of evaluating a design. 4Another is that only one the design !uality criteria into it may be applied to any software design, not just those produced using this method. Structured DesignGs evaluation criteria challenge software engineers in three ways" The suppression of coding issues, ma'ing these issues subservient to design principles. Acceptance of system view and not the local view as 'ey indicator of success or failure -esolution of issues related to XfinishingF the design though application of predetermined value systems. Structured design provides two effective means of evaluating software design decisions. )ne measures the relative effect of the decision on module !uality, while the other measures the relative effect of the decision on the relationship between modules. The introduction of Structured Design can only wor' when it provides all concerned with a common value system, that is, a uniform view of what is or is not desirable in a system. Although the approach may differs from organi#ation to organi#ation, followings are

C<Te!1 ECSEF

% (5* %

System Analysis & Design

KSOU

some guidelines to maximi#e the benefit of introducing Structured Design into an organi#ation" ,a'e it clear from the start that Structured Design is not a remedy for any problems of the organi#ation )btain support from anyone who may be affected by this change $mphasi#e the flexibility that Structured Design provides and downplay the misconception that it is restrictive Structured Design development passes through two primary phases" 2ogical Design development and %hysical Design development. 2ogical Design transforms the dataflow diagrams developed during the Structured Analysis phase into refining the design to reflect the 'inds of !uality attributes that Structured Design encourages. %hysical Design phase involves the modification of the 2ogical design to accommodate whatever changes necessary As a process, design goes through the following stages" Transformation of the problem model into an initial solution model $mbellishment of initial design to include necessary features Transformation of the structured $nglish into pseudocode $valuation and refinement of the !ualities of the design -evise the design to accommodate implementation constraints Design is an exact blueprint of what will be built and a basis for the configuration and content of that blueprint.

System Design Goals an# Ob e!ti"es' Improve 0uality and reduce the ris' of system failure $stablish concrete re!uirements documentation &ocus on -eliability, &lexibility, and ,aintainability of system specifications and complete re!uirements

C<Te!1 ECSEF

% (5+ %

System Analysis & Design

KSOU

The design objectives specified in the user implementation model are the !uality of the design. The ability of the programmers to implement a high7!uality, error7free system depends very much on the nature of the design created by the designerM also, the ability of the maintenance programmers to ma'e changes to the system after it has been put into operation and to the expanded system depends on the !uality of the design.

The field of structured design contains a number of guidelines that help designer determine which modules, and which interconnections between the modules will best implement the re!uirements specified by the systems analysis. The most important guidelines are coupling and cohesion"

Co1esion' is the degree to which the components of a module are necessary and sufficient to carry out one, single, well defined function. In practice, this means that the systems designer must ensure that they does not split essential processes into fragmented modules and the systems designer must ensure that they does not gather together unrelated processes 4represented as processes on the D&D5 into meaningless modules. The best modules are those that are functionally cohesive. The worst modules are those that are coincidentally cohesive.

Cou)ling' is the degree to which modules are interconnected with or related to one another. The stronger the coupling between modules in a system, the more difficult it is to implement and maintain the system, because a modification to one module will then necessitate careful study, as well as possible changes and modifications, to one or more other modules. In practice, this means that each module should have simple, clean interface with other modules, and that the minimum number of data elements should be shared between modules. As we have seen, the first step of designing a process is to map the essential model of user re!uirements onto a configuration of processors. Then, within each processor, the designer must decide how to allocate processes and data to different tas's. &inally, we must organi#e the processes within each tas' into a hierarchy of modules, using modeling tool.

C<Te!1 ECSEF

% (5, %

System Analysis & Design

KSOU

There are several tools and techni!ues used for designing. These tools and techni!ues are"

&lowchart Data flow diagram 4D&Ds5 Data dictionary Structured $nglish Decision table Decision tree

$ach of the above tools is used for designing a system. /ey issues that are to be considered while selecting the Design Strategy" 6 6 6 6 ,ethod of ac!uisition System functionality Software development Implementations schedule

Stru!ture# Design ESDF 9ature of SD is achieved 4implemented5 by dividing the system in independent modules 4separate pieces5 that can be designed, implemented and modified with no 4or little5 effect on other modules of the system. oarse 4tho5 program structure, based on D&D, is depicted by means of a structure chart. This structure chart, which resembles an organi#ation chart, show relationships between units or modules, and how modules are combined to achieve systems 4organi#ation5 and design goals. This coarse program structure is then factored, or decomposed, into a fine structure which forms the basic for implementation. In order to choose among alternatives when dividing systems into modules, it useful to evaluate the connection between them. If there are few or no connections between modules, then it is easier to understand one module without reference to others. The notion of module independence can be described in terms of XcouplingF and XcohesivenessF. These concepts were introduced by $dward Wourdon and 2arry onstantine who are concerned with XgoodnessF of design.

C<Te!1 ECSEF

% (5. %

System Analysis & Design

KSOU

oupling is the strength of relationships between modules 4the degree to which modules are interconnected with or related to one another5. The stronger the coupling between modules in a system, the more difficult it is to implement and maintain the system, because a modification to one module will then necessitate careful study, as well as possible changes and modifications, to one or more other modules. In practice, this means that each module should have simple, clean interface with other modules, and that the minimum number of data elements should be shared between modules.

ohesion is the measure of the strength among the elements in the same module 4the degree to which the components of a module are necessary and sufficient to carry out one, single, well defined function5. In practice, this means that the systems designer must ensure that they does not split essential processes into fragmented modules and the systems designer must ensure that they does not gather together unrelated processes 4represented as processes on the D&D5 into meaningless modules. The best modules are those that are functionally cohesive. The worst modules are those that are coincidentally cohesive. Cigh cohesiveness occurs when all of the module parts contribute directly to the purpose or function which the module is supposed to accomplish.

Stru!ture# Design as )ro!ess T1e )1ases o& #esign

As discussed above, there are various techni!ues and tools being used in the analysis and design phases, however, not all of them are suitable for any systems. $ven when a modeli#ation techni!ue is employed, there are still different levels of complication of that model in different cases. If too few system development tools are used, the systemFs !uality will be worsen, and vice versa, if more tools are used than they are actually needed, resources are wasted. Thus, analysts and designers have to judge to give the right decision of what techni!ues and tools should be used and to what extent.

C<Te!1 ECSEF

% (50 %

System Analysis & Design

KSOU

The recommended percentage distribution between analysis, design, and implementation is A>Y7=>Y for the analysis and design phases and L>Y7A>Y for the implementation phase. There are three primary design stages" Initiation' This is the form the design ta'es when it has first been generated. It is usually not complete, in that some functions overloo'ed in the analysis may still be missing, error processing is missing, and details of how outputs are produced will also be missing. Abstra!tion' Derived directly from the initiation results, this design phase involves the completion of the design. All functions and necessary detail missing in the abstraction phase are incorporated into the design. This is the phase in which we apply coupling and cohesion, obtaining the best design we can given the constraints of time and talent. Instantiation' (ased on the abstract design, this phase involves the revision of the design to ma'e use of speciali#ed operating system features, the use of hardware features rather than software to provide needed services, and the incorporation of any additional functions or features that have been identified as being needed. During this stage the software engineer ma'ed rational compromises with respect to coupling and cohesion in order to attain some performance goal or to meet some external constraint.

T1ese stages are organi?e# into t4o )1ases' ,odel of Structured Design is composed of two distinct but related phases. In chronological order, the first is logical design phase and the second the physical desing phase.

Logi!al Design 81ase'

C<Te!1 ECSEF

% (55 %

System Analysis & Design

KSOU

The objective of this phase is the development of a design which is directed by an abstract machine and operating environment. This model contains the highest amount of !uality and !uality components as we were able to incorporate, with the time and talent available.

%urposes 6 6 -edesigning the existing to reflect the proposed solution Incorporate new features for the system &inal performance specification Detailed logical models

Deliverables 6 6

The activities which occur during the 2ogical design phase are the following" Develop the preliminary design" the goal of this tas' is to create a conceptual design which will reflect in the analysis pac'age and contain the amount of !uality that we can incorporate into it Define the man7machine and machine7machine boundaries on D&D" 1sing the level 7X>F dataflow diagram developed during the logical modeling phase of analysis, identifies which processes or functions will be allocated to hardware, software and manual procedures. Transform $7-7A ,odel into -elational ,odel" $ach entity and each relation is transformed into a logical relationship using the -elational Database ,odel notation and semantics. The relations are integrated into global relational schema. An $7-7A ,odel is a conceptual representation of real world, enterprise objects. It is composed of entities 4with their attributes5 and relationships between them. 9ormali#e -elational ,odel" the logical relational schema is transformed into a normali#ed schema to provide for logical data access and update integrity. %repare Database access ,odel" &or each user view a logical data access specification is created, which defines the process followed in accessing the re!uired data and the

C<Te!1 ECSEF

% (57 %

System Analysis & Design

KSOU

logical relations involved. <erify against 9ormali#ed -elational ,odel" Inability to support re!uired data access will cause the $7-7A ,odel and the logical relational ,odel to be refined appropriately. Transform leveled D&Ds into first7cut structure chart -efine structure necessary. Develop pseudo code" the pseudo code for each module describes what the module does. The basis for most pseudo code is the structured $nglish that was created during the analysis phase. -evise $vent ,odel" -efinement of this model is necessary in order to put it into a more acceptable form to accommodate the design and implementation perspectives. -evise -elational ,odel" (ring this view of the system into compliance with the other revisions and refinements that have ta'en place. 1pdate 2ifecycle Dictionary" )ne of the outcomes of transforming the analysis results into an initial design model is that new data elements have to be incorporated. Since 2ifecycle Dictionary is the repository for information, it must be updated to reflect new parts of systems, descriptions of each of the modules. %erform consistency chec' among Structure mutually supportive. harts, pseudo code, $vent ,odel, $7hart using coupling, cohesion and adding additional functions, as

diagrams, -elational ,odel. $nsure that all parts of the design are accurate and

81ysi!al Design 81ase' The objective of this phase is the creation of a blueprint of the system. This blueprint is complete and correct and accurately describes every aspect of the system to be developed.

%urposes
% (79 %

C<Te!1 ECSEF

System Analysis & Design

KSOU

6 N 6 6

onvert the logical models into a physical model %hysical specification A formal feasibility analysis

Deliverables

The activities which occur during the %hysical design phase are the following" Develop Detailed Design" It is derived from the logical Design by incorporating considerations of system si#e, timing constraint, the existence of hardware or software utilities, language features and other implementation considerations. -eview %reliminary Design %ac'age" The purpose of this tas' is twofold. )ne is to identify and correct errors and necessary refinements. The other is to ensure that all that is necessary to accomplish the physicali#ation of the design is present and of sufficient !uality to support this next phase. Develop final 4Xbuild toF5 Structure hart. 1pdate 2ifecycle Dictionary to reflect physical characteristics" The lifecycle Dictionary must include the compromises between the desired 4 Detail Design5 system and the obtainable 4 %hysical Design5 one. The primary inputs or changes at this stage are" the Xbuild toF Structure chart process, dataflow and data access specificationsM the implementation constrains from the pac'aging criteriaM the changes to the $vent ,odelM and the new D(,S data model and its operational characteristics. -evise pseudo code" update the content of the pseudo code, as necessary, in order to accommodate the changes made to the system design during the pac'aging process. %erform coupling and cohesion analysis -evise $vent ,odel -econcile all elements of module design pac'age ,ap to D(,S Data ,odel" The logical, normali#ed schema is translated into an initial D(,S schema. This schema is then refined to ta'e advantage of the uni!ue capabilities of the D(,S being used. The translation process is specific to the

C<Te!1 ECSEF

% (7$ %

System Analysis & Design

KSOU

particular D(,S Data ,odel. $ach translation starts with a logical relation and converts it into an appropriate D(,S structure. )ptimi#e D(,S schema access costs" ost models are to determine optimal access

paths to support the user data view re!uirements. Any modifications to the D(,S schema are verified against the logical relational schema. -evise implementation estimates" This supports the concepts of iterative estimation refinement that is used in most engineering fields.

E>am)le' &rom the above library management case study, we reali#e that the system analysis stage focuses on the logical aspect of the system. It does not consider at all the implementations of the re!uirements. (y contrast, the system design phase immediately considers the ways to set up the professional re!uirements by using computer.

The inputs of system design phase are the specific re!uirements which were built in the system analysis phase, including" &unction Cierarchy Diagram Data &low Diagram $ntity -elationship Diagram

In the system design phase, we have to" ;. Define which functions have to be done by human, and which functions have to be carried out by computer, so we have D&D system 4half7physical5 H. Design database K. Design the humanBcomputer interface

C<Te!1 ECSEF

% (7( %

System Analysis & Design

KSOU

1nli'e the system analysis phase which needs a few tools and techni!ue, mainly for structure building, in the design phase, the choose of using a tool is very flexible. Some tools are used in detail and closely, some other are used more flexibly, and some may never be used. It depends on the re!uirement of the problem and the experience of the system designer.

*ith the library management system, the system design phase concentrates on the following main parts" to determine the computer system, to design modules and to design the database. Elements o& Stru!ture# Design'

"ssential #odel "nvironmental #odel $e%avioral #odel

&m'lementation #odel
&igure $lements of structured design Essential Mo#el' ,odel of what the system must do.

C<Te!1 ECSEF

% (7* %

System Analysis & Design

KSOU

Does not define how the system will accomplish its purpose. Is a combination of the environmental and behavioral model.

En"ironmental Mo#el' Defines the scope of the proposed system. Defines the boundary and interaction between the system and the outside world. omposed of" Statement of %urpose, ontext Diagram, and $vent 2ist.

Ce1a"ioral Mo#el' ,odel of the internal behavior and data entities of the system. ,odels the functional re!uirements. omposed of Data Dictionary, Data &low Diagram, $ntity -elationship Diagram, %rocess Specification, and State Transition Diagram. Im)lementation Mo#el' ,aps the functional re!uirements to the hardware and software. ,inimi#es the cost of development and maintenance. Determines which functions should be manual vs. automated. an be used to discuss the costs7benefits of functionality with the usersBsta'eholders. Defines the Cuman7 omputer Interface. Defines non7functional re!uirements. Tool" Structure harts

C<Te!1 ECSEF

% (7+ %

System Analysis & Design

KSOU

"nvironmental #odel
Statement of +,r'ose -onte.t Diagram "vent List Data Di*tionary "RD DFD +ro*ess S'e*ifi*ation State (ransition Diagram Str,*t,re -%arts

$e%avioral #odel &m'lementation #odel

;elations1i) bet4een system analysis an# #esign' A big advantage of using Structured Analysis as a precursor to Structured Design is that nothing developed during the analysis is wasted. $ach of the major deliverables from analysis 4i.e., dataflow diagrams, data dictionary, structured $nglish, and entity7 relationship diagrams5 is used in the Structured Design phase to develop one of its major deliverables 4i.e., structure charts, design data dictionary, pseudo code, and database design5 A poor analysis job is going to cause problems, whether it was done by the same person doing the design or not. Some of the most common failings during structured analysis are shown in figure together with the symptoms they produce during design

C<Te!1 ECSEF

)*tivity

(ime

8roblem Dataflow diagram not balanced X&u##yF process name 9o dictionary Dictionary not correlated with dataflow diagrams

E&&e!t on Design Interface %roblems 9eed to repartitioning Duplicates and aliasing Duplicates and aliasing and interface problems

% (7, %

System Analysis & Design

KSOU

Dataflow diagrams not correlated with dictionary %seudo code not validated %seudo code dictionary not correlated with

Duplicates and aliasing and interface problems 2ogic errors Data aliases, interface problems

Table %roblems effecting design process

C<Te!1 ECSEF

% (7. %

System Analysis & Design

KSOU

Development phase Type of model %rocess Structured Analysis Data&low Diagrams Dictionary %seudocode Information $ntity7-elationship Diagram Dictionary $vent $vent ,odel Dictionary $vent ,odel Dictionary Structured Design Structure hart Dictionary %seudocode Database Design Dictionary Implemented Database Dictionary 0ueuing ,odel Dictionary Implementation ode Dictionary

T1e stages o& system #esign' The activity of design involves developing a series of models, in much the same way that the systems analyst develops models during the systems analysis phase. The most important models for the designer are the systems implementations model and the program implementation model. The systems implementations models divide into a processor model and a tas' model

The processor model" At this level, the systems designer decides how the essential model should be allocated to different processors and how those processors should communicate with one to another.

As processes must be assigned to appropriate hardware components, data stores must be similarly allocated. Therefore, the designer must decide whether a store will be implemented as a database on this processor or another. Since most stores are shared by many processes, the designer may also have to decide whether duplicate copies of the store need to be assigned to different processors. An important point for designer" processor to processor communication is generally very much slower than communication between processes within the same processor. Thus, the system designer
C<Te!1 ECSEF % (70 %

System Analysis & Design

KSOU

will generally try to group processes and stores that have a high volume of communication within the same processor.

During designing a process, the systems designer should raise the following major issues"

Cost' Depending on the nature of the system, the systems designer must choose the most economical solution for each practical case" a single processor implementation or group of processors. E&&i!ien!y' The systems designer is generally concerned with the response time for computer systems. Therefore, the designer must choose processor and data storage devices that are fast enough and powerful enough to meet the performance re!uirements specified in the user implementation model. Se!urity' The end user may have security re!uirements that dictate the placement of some processor and sensitive data in protected location. ;eliability' The end user will normally specify reliability re!uirements for a new systemM these re!uirements may be expressed in terms of mean time between failure or mean time to repair, or system availability. Alternatively, the designer may decide to implement redundant copies of processes andBor data on multiple processors, perhaps even with spare processors that can ta'e over in the event of a failure. 8oliti!al an# o)erational !onstraints' The hardware configuration may also be influenced by political constraints imposed directly by the end user, by other levels of management in the organi#ation and operating all computer system. Tools an# Te!1ni2ues o& #esign The design of information systems re!uires that systems analysts understand how information flow in an organi#ation, how it relates decision ma'ing, and how it contributes to organi#ational goals and objectives. That is why systems analysis and systems design is inextricably lin'ed. *hile data are being collected on the problem environment and the analyst is learning about the information needs of the user, rough ideas about the way to improve the information function are being formulated in the analystFs mind. The analyst may begin to s'etch these ideas as flow charts or data flow diagrams. Cowever, not until all data are collected and information problems are thoroughly analy#ed can preliminary ideas about the design of the new system be refined.

C<Te!1 ECSEF

% (75 %

System Analysis & Design

KSOU

The analyst can then focus on design specifies such as inputBoutput subsystems, processing, and data base design. ,ost analyst continue to use structured techni!ues to help them plan system components and their structure, choosing appropriate tools and techni!ues to aid them in the design process. The completed design should lead efficiency in satisfying users needs and also facilitate maintenance during the life cycle of the system. $ach design tool has good features and bad. Selection of design methodology will depend on the bac'ground and experience of analysts 4designer5, the si#e of the development time, resources allocated to development, the time allowance for the project, and the type of application under development. *hen choosing a specific tool for a specific tas' at hand, the following main !uestions should be considered" *ill it help the team arrive at an understanding of the system under developmentM Is it easy to learn+ $asy to use+ *ill it serve user7analyst communication+ *hat does it cost+ *hat data structures does it use+ *hat data flow and control features does it have+ Is the techni!ue manageable+

There are many ways to approach system design and many tools and techni!ues that contribute to the design process. In this part we will find a discussion of still other methodologies that are comely used by analysts. ,any of these are complex, so what appears here is merely a brief introduction to their features, benefits and limitations. 1nfortunately, the scope here limits the number of design methodologies that can be presented. In the system development process, many design methodologies already exist, but one of the challenges of systems design is to select tools and techni!ues that are appropriate for an application under development from the wide range of available options. The main selection that follow" ISD)S, %seudo code, Structured design, the 8ac'son Design methodology, CI%), *arnier 6 or methodology, SADT, *al'throughs, $ntity -elationship model, Data Structure Diagrams, Semantic Data ,odel and AS$e,ethod 4)racle5.

Ob e!t%Oriente# Design EOODF'


C<Te!1 ECSEF % (77 %

System Analysis & Design

KSOU

ombination of process7 and data7oriented approaches. )bject7oriented techni!ues wor' well in situations where complicated systems are undergoing continuous maintenance, adaptation, and design. There are two ways to model object7oriented systems 6 6 oad and Wourdon methodology The 1nified ,odeling 2anguage

Six ideas characteri#e object7oriented programming" An ob e!t, which represents a real7world thing or event. An object is an instance or occurrence of a class. There are five general types of objects" Tangible things, -oles, Incidents, Interactions, Specifications details. A !lass, or group of related objects. lass refers to a template for a group of

individual objects with common attributes and common behavior. The difference between an )bject and a lass is that the class defines shared attributes and behaviors of objects Messages, sent between objects. Interface means the behavior of a class or component that is noticeable from outside the class or component En!a)sulation, only an object ma'es changes through its own behavior. $ncapsulation changes the manner in which data is updated by programs because data can only be changed via the services that encapsulate the data In1eritan!e, a new class created from another class. The two types of classes are involved in any inheritance relationship are the base class and the derived class. ,ultiple inheritance means there will be multiple occurrences of the base type of class in the inheritance relationship. %olymorphism only occurs where there is inheritance.

C<Te!1 ECSEF

% *99 %

System Analysis & Design

KSOU

8olymor)1ism, meaning that a derived class behavior may be different from the base class. )bject oriented design is based on a five7layer model" lassBobject layer notes the classes and objects one7to7many relationships and inheritance Attribute layer details the attributes of classes Service layer notes messages and object behaviors Subject layer divides the design into implementation units or team assignments riteria to determine whether a new class of objects is justified There is a need to remember the object. There is a need for certain behaviors of the object. An object has multiple attributes. A class has more than one object instantiation. 1nless it is a base class. Attributes have a meaningful value for each object in a class. Services behave the same for every object in a class. )bjects implement re!uirements that are derived from the problem setting. )bjects do not duplicate attributes and services that could be derived from other objects in the system. There are two basic types of structures that might be imposed on classes and objects" 3enerali#ation7Speciali#ation structure 43en7Spec5, which connect class7 to7class *hole7%art structure which are collections of different objects that compose another whole object

Structure layer captures various structures of classes and objects, such as

C<Te!1 ECSEF

% *9$ %

System Analysis & Design

KSOU

Instance connections are references between objects such as associations or relationships indicated by a single line between objects using the same cardinality notation as *hole7%art structures Ma or Com)onents o& Ob e!t%Oriente# Design A!ti"ities' )bject7oriented design activities are grouped into four major components" The problem domain component The human interface component The data management component The tas' management component Met1o#s Services 4or methods or procedures5 must be analy#ed. Activities are )bject state analysis, showing changes of state Service specification" creating, storing, retrieving, connecting, accessing, and deleting objects ,essage specification, consisting of control and data flow

Stru!ture !1arts' The structure chart is an important techni!ue that helps the analyst design the program for the new system. There are three components in the structured chart" modules, connections between modules, and communication between modules.

Stru!ture !1art elements'

C<Te!1 ECSEF

% *9( %

System Analysis & Design

KSOU

,odule" Denote a logical piece of program 2ibrary" Denote a logical piece of program that is repeated in a structure chart 2oop" A module is repeated onditional 2ine" Subordinate modules are invo'ed by control modules based on some conditions. ontrol ouple" ommunicates that a message or system flag is being passed from one module to another Data ouple" ommunicates that data is being passed from one module to another )ff %age" Identifies when the part of the diagram are continued on another page of structure chart. )n %age" Identifies when the part of the diagram are continued somewhere else on the same page of the structure

Creating a stru!ture !1art &rom a D-D

C<Te!1 ECSEF

% *9* %

System Analysis & Design

KSOU

&ollowing the hierarchy of the D&Ds, simply hang modules below their parent modules.. ;. Identify ,odules and 2evels H. Identify Special onnections K. Add ouples L. -evise Structure hart

In&ormation Engineering' The purpose of the information engineering is to investigate the data and data relationships among different disciplines, and then organi#e those data to match the corporation>s goals and objectives. A user7driven system is then developed using a top7 down approach. The information engineering methodology relates well to the corporate mission. The analyst is expected to relate all the essential information system components and match those functions to corporate objectives before performing data analysis. The lin' to the corporationFs goals and objectives adds a high7level, executive, strategic perspective to the methodology. The methodology has a strong data orientation, leading to clearly7 defined and documented data and data relationships. It enforces data normali#ation, which greatly reduces data redundancy and, hence, increases the accuracy and reliability of the database. Information engineering is not a good candidate for designing real7time systems or systems in which the data have a strong time dimension because the methodology is based on a static data model.

C<Te!1 ECSEF

% *9+ %

System Analysis & Design

KSOU

The information engineering methodology can be viewed as a special case of the system development life cycle introduced in. -elevant tools are covered in problem analysis paradigms, systems analysis, and component design.

Doint A))li!ation De"elo)ment EDAD F I(, coined the term joint application design 48AD5 in ;J?>, but some experts prefer joint application development& The 'ey idea to organi#e a team consisting of major users, managers, and systems analysts 4or information consultants5 and to charge that team with !uic'ly determining, in an intensive session, the re!uirements for a proposed new or replacement information system. N N (ring together the users, managers, and technical personnel to conduct a series of structured intensive information7gathering wor'shops $nhance the development of a shared understanding among the system sta'eholders 8AD Session N N N 1sually held at a location other than the typical wor'place Avoid distracting environment Detailed agenda is a necessity

8AD Team N N N N N 8AD &acilitator ,anagement Sponsor Information Specialists Scribe $nd 1sers

C<Te!1 ECSEF

% *9, %

System Analysis & Design

KSOU

8AD Session Tas's and )bjectives N N N N N N Identify all sta'eholders and clarify executive goal. Scope out general re!uirements from each of the usersG perspectives. -econcile and then summari#e each userGs view of the product with the executive goal. Define interaction of the product with users, other products or systems, and the organi#ation. oncur on business justification, time box, and cost box for project. Define ways in which users will interact with or use the new product. 6 6 N N N ollect samples of desired inputs and outputs from users. Stic' to business processes first, then drill down for data needed and 'nown. %rioriti#e user interaction scenarios by collective user preference and ris'. <alidate and review the user interaction scenarios. )rgani#e the interactions scenarios, constraints, assumptions, and other re!uirements into a rigorous Software -e!uirements Specification. 8AD Advantages N N N reate a sense of involvement Allow for the simultaneous gathering and consolidating of information -esolve discrepancies at early stage

8AD disadvantages N N N $xtreme commitment of a large number of employees ,ight still exclude some important personnel 2ac' of diplomacy and communication s'ills among employees

C<Te!1 ECSEF

% *9. %

System Analysis & Design

KSOU

The cost and time associated with data collection, analysis, and re!uirements definition can be significantly reduced by using the 8AD techni!ue. The input from numerous people provides different perspectives on the desired system and often generates creative ideas. (ecause all interested parties are represented on the 8AD team, conflicts and discrepancies can be identified and resolved during the problem definition stage. (ecause they are involved in system planning, the participants feel a sense of system ownership. 8AD is particularly suited to projects that face tight time and scheduling constraints, and it is an excellent choice for developing a system from scratch. Sometimes, so many ideas are generated that additional sessions and meetings are needed to resolve the conflicts. Strong or influential users can easily dominate a session, leading to a s'ewed sense of the usersF needs. 8AD is not a good techni!ue for systems with relatively few inputs and outputs or for highly computational, process7oriented systems. 8AD is used to determine the system re!uirements during the problem definition 4or information gathering5 phase of the system development life cycle. )ften, a preliminary problem definition proceeds the 8AD session. 8AD can also be used to perform feasibility analysis, costBbenefit analysis, and ris' analysis. )ften, such design specifications as data flow diagrams, entity relationship diagrams, and system flow diagrams are generated during the 8AD session. 8oint application design 48AD5, also 'now as joint application development, is a techni!ue for !uic'ly determining system re!uirements by obtaining input from a representative cross section of interested parties. An ad hoc team composed of major users, managers, and systems analysts 4or information consultants5 is assembled. The team then meets in an intensive session to gather data, brainstorm, discuss ideas, reconcile differences, identify and prioriti#e re!uirements, and generate desirable alternative solutions.

C<Te!1 ECSEF

% *90 %

System Analysis & Design

KSOU

The members of a 8AD team consist of end users from the relevant business functional areas, managers from those same functional areas, systems analysts or information consultants, and appropriate systems specialists. The moderator or session leader is usually the senior systems analyst or information consultant. A scribe ta'es notes, records all discussions, and organi#es and compiles the necessary documents. De"elo) t1e DAD 4or:boo: The 8AD wor'boo' consists of a management definition guide, information relevant to the project, any special criteria or constraints, any assumptions, an overview of existing technology and standards, a statement of the systemFs scope and objectives, and information about the existing system andBor relevant new technology. The purpose of the wor'boo' is to help the team members understand the proposed project. The design of the wor'boo' should facilitate note ta'ing. DAD 8arti!i)ants' 6 6 6 6 6 6 6 ession leader /ser 9anager Pro<ect sponsor 2nalyst cri#e 5 staff

C<Te!1 ECSEF

% *95 %

System Analysis & Design

KSOU

DAD 8arti!i)ant Session 2eader 7 7 7 7 1ser ,anager %roject Sponsor Analyst Scribe IS Staff 7 7 7 7 7 7 7

Des!ri)tion o& ;ole organi#es and runs the actual 8AD session remains neutral on all issues and does not contribute ideas or opinions sets the agenda for the meeting concentrates on 'eeping to agenda, resolving conflicts, and generating dialogue from participants represents end usersF perspective with regard to proposed system represents managementFs perspective with regard to proposed system represents all parties responsible for funding and supporting the development effort analyst participation is limited to observation and listening to better understand the needs of the users and managers responsible for ta'ing notes and recording important information and events relevant to the 8AD proceedings responsible for providing clarification on technical !uestions and issues contribute ideas on technical feasibility of and limitations of proposed system components

Table =.; Description of -ole of each 8AD %articipant

C<Te!1 ECSEF

% *97 %

System Analysis & Design

KSOU

Consi#er ;AD 41enO

Avoid -AD when_

The software application will run standalone without other system interactions.

Application must interact with existing system applications. )ptimal performance is mission critical.

Application performance is not mission critical.

Application development cannot ta'e advantage of high7end IS tools 4i.e., Lth generation programming languages!&

Application distribution will be narrow 4in7house or controlled vertical mar'et5.

Application distribution will be wide 4hori#ontal or mass mar'et5. %roject involves building operating systems 4reliability target too high for -AD5, or computer games 4performance target too high for -AD5.

%roject scope is significantly constrained.

Application reliability is not mission critical.

Technical feasibility is low due to use of :bleeding: edge technology.

System can be subdivided into multiple independent modules.

The application is mission7 or life7 critical.

The re!uired technology is considered The system cannot be modulari#ed 4defeats mature 4more than one year5. parallel development approach5.

Table =.H Tells when to use and when not to use -AD.

C<Te!1 ECSEF

% *$9 %

System Analysis & Design

KSOU

Lo!ate t1e DAD &a!ilities As a minimum, a conference room large enough to accommodate all the team members and e!uipped with whiteboards or chal'boards, an overhead projector, and a slide projector must be available. *ith the emergence of the electronic meeting systems 4$,S5, group decision support systems 43DSS5, and computer aided software engineering 4 AS$5 tools, additional re!uirements might include computers for conducting an electronic meeting, teleconferencing facilities, and a master station e!uipped with AS$ software. Con#u!t t1e DAD session A 8AD session is an intensive 4typically5 two7 or three7day meeting of the complete 8AD team. Team members are expected to give the 8AD session their complete attention, scheduling no other conflicting activities. 8re)aration (efore the 8AD session begins, the responsible systems analysts or information consultants must" N Define the system scope. N Identify the problems, limitations, and constraints. N $stimate the resource needs 4time, budget, personnel5 for developing the system. N Identify preliminary costs, benefits, ris's, and impacts of the project. N Identify the nature and major attributes of the project, the project dependencies, and the project interrelationships. N Identify appropriate sub7projects. 4The project is sometimes, decomposed into several sub7projects owing to the timing andBor budgetary constraints.5

C<Te!1 ECSEF

% *$$ %

System Analysis & Design

KSOU

N %erform the bac'ground analysis necessary to define such 'ey parameters as the number of users, the si#e of the database, the re!uired throughput, and the minimum acceptable response times. N %lan the 8AD session. T1e session A 8AD session begins with an overview of the material collected during the preparation stage. )nce the participants understand the problem, the process of identifying the problemFs dimensions, possible causes, re!uirements, and alternative solutions begins. During a 8AD session, it is the moderator Xs responsibility to effectively manage session time, to ensure that the team stays focused on the agenda items, to encourage all team members to participate, and to resolve any conflicts generated during the session. (ecause the team is composed largely of non7technical personnel, it is important that the systems analysts or information consultants minimi#e the use of technical terms. Crainstorming The process of soliciting ideas often involves brainstorming. A specific !uestion is raisedM for example, the moderator might as' the 8AD team to suggest possible causes of a specific problem or sub7problem. The participants are then invited to suggest ideas, and as suggestions are made they are posted for all to see. Ideally, at some point in the brainstorming session, a synergy begins to emerge, with one participantFs contribution eliciting new and creative suggestions from other participants. The time allocated to a brainstorming session is limited to 4perhaps5 half an hour, and the time limit is announced to all participants before the session begins. The focus is on soliciting and listing ideas, not on attac'ing, defending, or investigating those ideas. )ften, targets are setM for example, a brainstorming group might be challenged to list HA possible 4direct or contributing5 causes of the problem under study. Sometimes, the 8AD team is divided into several brainstorming sub7teams, and a friendly competition is launched to see which sub7team can list the most ideas.

C<Te!1 ECSEF

% *$( %

System Analysis & Design

KSOU

&ollowing a brainstorming session, the 8AD team divides into sub7groups to investigate the ideas on the various lists. <ague or unclear ideas are refined and rephrased. Similar or redundant ideas are categori#ed and consolidated, and the resulting meta7ideas are reconciled. ,eanwhile, other sub7groups might conduct additional brainstorming andBor discussion sessions to consider other sub7problems or identify and resolve conflicts within and between the meta7ideas until, eventually, a consensus is reached. The consensus ideas are then tabulated and distributed to the 8AD team members for feedbac'. The session ends with a presentation of the final results. -inali?e t1e DAD re)ort After the 8AD session is concluded the responsible systems analysts or information consultants update the necessary documents and prepare a final report that summari#es all discussions, facts, findings, and conclusions. They then construct a plan for action and a schedule for developing the system. If follow7up sessions are re!uired, they collect the re!uired additional information. There is no standard format for a 8AD report.

;a)i# A))li!ation De"elo)ment E;ADF' -apid application development 4-AD5 is a system development methodology that employs joint application design 4to obtain user input5, prototyping, application generators, and similar tools to expedite the design process. Application Development with -AD Approach N N N 1se of small, well7trained development teams onstruction and review of iterative, evolutionary prototypes -eliance on integrated development tools that support modeling, prototyping, and component re7usability 4 AS$5 AS$ technology,

C<Te!1 ECSEF

% *$* %

System Analysis & Design

KSOU

N N N

onstruction and maintenance of a central repository Ceavy reliance on interactive re!uirements and design wor'shops 48AD5 Adherence to rigid limits on development time frames

;AD a!ti"ities N N N %rocess ,odel Data ,odel %arallel Development

;e2uirements 8lanning ,odel 8rimary A!ti"ity prototype re!uirements Define Data Con"ersion

User Constru!tion and omplete application development Implement conversion plan Cuto"er Install application

Design and ,odel prototype design

data %lan and design Develop data data conversion conversion modules Design onduct user testing %roduce training materials

re!uirements

Testing Define training En#%user Training re!uirements

application test plan Design training plan

onduct end7 user training

Table =.K Shows various activities involved in -AD

-ely on the use of AS$ tools and prototyping approach


C<Te!1 ECSEF % *$+ %

System Analysis & Design

KSOU

A series of techni!ues to compress the analysis, design, build, and test phases into a series of short, iterative development cycles -apid application development promotes fast, efficient, accurate program andBor system development and delivery. ompared to other methodologies, -AD generally improves userBdesigner communication, user cooperation, and user commitment, and promotes better documentation. (ecause rapid application development adopts prototyping and joint application design, -AD inherits their strengths and their wea'nesses. ,ore specifically, -AD is not suitable for mathematical or computationally oriented applications. (ecause rapid application development stresses speed, !uality indicators such as consistency, standardi#ation, reusability, and reliability are easily overloo'ed. -apid application development is an alternative to the traditional system development life cycle. The -AD methodology incorporates joint application design and prototyping. AS$ technology is often used to speed the development process. -apid application development 4-AD5 is a system development methodology that employs joint application design 4to obtain user input5, prototyping, AS$ technology, application generators, and similar tools to expedite the design process. Initially suggested by 8ames ,artin, this methodology gained support during the ;J@>s because of the wide availability of such powerful computer software as fourth7generation languages, application generators, and cost. Com)onents -apid application development focuses on four major components" tools, people, methodology, and management. urrent, powerful computing technology is essential to support such tools as application generators, screenBform generators, report generators, AS$ tools, and the need to develop information systems more !uic'ly. The primary objectives include high !uality, fast development, and low

C<Te!1 ECSEF

% *$, %

System Analysis & Design

KSOU

fourth7generation languages, relational or object7oriented database tools, and AS$ tools. %eople include users and the development team. The methodology stresses prototyping and joint application design. A strong management commitment is essential. (efore implementing rapid application development, the organi#ation should establish appropriate project management and formal user sign7off procedures. Additionally, standards should be established for the organi#ationFs data resources, applications, systems, and hardware platforms. 81ases &our phases to implement rapid application development" re!uirements planning, user design, construction, and cutover. ;e2uirements )lanningis much li'e traditional problem definition and systems analysis. -AD relies heavily on joint application design 48AD5 sessions to determine the new system re!uirements. During the user #esign )1ase, the 8AD team examines the re!uirements and transforms them into logical descriptions. AS$ tools are used extensively during this phase. The system design can be planned as a series of iterative steps or allowed to evolve. During the !onstru!tion )1ase, a prototype is built using the software tools described earlier. The 8AD team then exercises the prototype and provides feedbac' that is used to refine the prototype. The feedbac' and modification cycle continues until a final, acceptable version of the system emerges. In some cases, the initial prototype consists of screens, forms, reports, and other elements of the user interface, and the underlying logic is added to the prototype only after the user interface is stabili#ed. The !uto"er )1ase is similar to the traditional implementation phase. /ey activities include training the users, converting or installing the system, and completing the necessary documentation.

C<Te!1 ECSEF

% *$. %

System Analysis & Design

KSOU

=ariations There are several variations andBor extensions to the rapid application development methodology. An evolutionary approach in which Dprogressive designsE go through Dmultiple, minimum7length cyclesE in which Dsuccessive versions of the system under construction are utili#ed by the end user.E is also called middle7out, bread7boarding, and the iterative design approach. The essence of the evolutionary approach is to have the user 4or the manager5 and the builder agrees on a small but significant sub7problem, and then to design and develop an initial system to support that immediate need. After a short period of use 4a few wee's for instance5, the system is evaluated, modified, and incrementally expanded. This cycle is repeated three to six times over the course of a few months until a relatively stable system that supports a cluster of related tas's evolves. The word relatively is important because, although the fre!uency and extent of system change will decrease or even cease, the system will never be truly stable. In effect, constant change is a conscious strategy. 9ote that the evolutionary approach re!uires an unusual level of user 4or management5 participation. The user is actually the designer, and the system analyst merely implements re!uired changes or modifications. 9ote also that this approach differs from traditional prototyping because the initial system is real, live, and usable, not just a pilot test. The !uic'7hit approach is designed to ta'e advantage of recogni#ed high payoff application tas's for which a system can be built very !uic'ly. The basic idea is to gain user cooperation and confidence by rapidly developing a highly usable system. &or example, imagine that a company is losing mar'et share to a rival. Imagine further that a preliminary study suggests that the primary factors contributing to the problem are product !uality, after7sale service, and brand recognition. %erhaps a simulation model that focuses on those factors can be designed and constructed !uic'ly, yielding information that can help management correct the problem. 9ote that the system is designed !uic'ly to hit the main pointsM hence the name quick hit approach& According to Sprague, the !uic'7hit approach is low ris' and has a high potential short run payoff.

C<Te!1 ECSEF

% *$0 %

System Analysis & Design

KSOU

Mo#ule . Unit $5 6uality Assuran!e

6uality assuran!e, or 6A for short, refers to planned and systematic production processes that provide confidence in a productGs suitability for its intended purpose. It is a set of activities intended to ensure that products 4goods andBor services5 satisfy customer re!uirements in a systematic, reliable fashion. Two 'ey principles characteri#e 0A" :fit for purpose: 4the product should be suitable for the intended purpose5 and :right first time: 4mista'es should be eliminated5. 0A includes regulation of the !uality of raw materials, assemblies, products and componentsM services related to productionM and management, production and inspection processes. It is important to reali#e also that quality is determined by the intended users, clients or customers, not by society in general" it is not the same as GexpensiveG or Ghigh !ualityG. $ven goods with low prices can be considered !uality items if they meet a mar'et need. Total 6uality Management ET6MF' Total 0uality ,anagement 4T0,5 is a management approach to long7term success through customer satisfaction. In a T0, effort, all members of an organi#ation participate in improving processes, products, services and the culture in which they wor'. A core concept in implementing T0, is DemingFs ;L points, a set of management practices to help companies increase their !uality and productivity" ;. K. reate constancy of purpose for improving products and services. ease dependence on inspection to achieve !uality. by wor'ing with a single supplier.
C<Te!1 ECSEF % *$5 %

H. Adopt the new philosophy. L. $nd the practice of awarding business on price aloneM instead, minimi#e total cost

System Analysis & Design

KSOU

A. Improve constantly and forever every process for planning, production and service. =. Institute training on the job. ?. Adopt and institute leadership. @. Drive out fear. J. (rea' down barriers between staff areas. ;>. $liminate slogans, exhortations and targets for the wor'force. ;;. $liminate numerical !uotas for the wor'force and numerical goals for management. ;H. -emove barriers that rob people of pride of wor'manship, and eliminate the annual rating or merit system. ;K. Institute a vigorous program of education and self7improvement for everyone. ;L. %ut everybody in the company to wor' accomplishing the transformation. Total 6uality Management 4T6M5 Total 0uality ,anagement 4T0,5 is a business management strategy aimed at embedding awareness of !uality in all organi#ational processes. T0, has been widely used in manufacturing, education, hospitals, call centers, government, and service industries, as well as 9ASA space and science programs. Definition Total 0uality ,anagement is the organi#ation7wide management of !uality. ,anagement consists of planning, organi#ing, directing, control, and assurance. Total !uality is called total because it consists of two !ualities" quality of return to satisfy the needs of the shareholders, or quality of products. T0, is a management approach for an organi#ation, centered on !uality, based on the participation of all its members and aiming at long7term success through customer satisfaction, and benefits to all members of the organi#ation and to society.

C<Te!1 ECSEF

% *$7 %

System Analysis & Design

KSOU

In the ;J@>s to the ;JJ>s, a new phase of !uality control and management began. This became 'nown as Total 0uality ,anagement 4T0,5. Caving observed 8apanFs success of employing !uality issues, western companies started to introduce their own !uality initiatives. T0,, developed as a catchall phrase for the broad spectrum of !uality7 focused strategies, programs and techni!ues during this period, became the center of focus for the western !uality movement. A typical definition of T0, includes phrases such as" customer focus, the involvement of all employees, continuous improvement and the integration of !uality management into the total organi#ation. Although the definitions were all similar, there was confusion. It was not clear what sort of practices, policies, and activities needed to be implemented to fit the T0, definition. The term DTotal 0uality ,anagementE has lost favor in the 1nited States in recent years" D0uality managementE is commonly substituted. DTotal 0uality ,anagement,E however, is still used extensively in $urope. Casi! 8rin!i)les o& Total 6uality Management ET6MF The basic principles for the Total 0uality ,anagement 4T0,5 philosophy of doing business are to satisfy the customer, satisfy the supplier, and continuously improve the business processes. 0uestions we need to include"

Cow do you satisfy the customer+ *hy should you satisfy the supplier+ *hat is continuous improvement+

The first and major T0, principle is to satisfy the customer 7 the person who pays for the product or service. service they purchase. ustomers want to get their moneyGs worth from a product or

C<Te!1 ECSEF

% *(9 %

System Analysis & Design

KSOU

Deep analysis of 0A practices and premises used about them is the most necessary inspection control of all in cases, where, despite statistical !uality control techni!ues or !uality improvements implemented, sales decrease. The major problem which leads to a decrease in sales was that the specifications did not include the most important factor, D*hat the specifications have to state in order to satisfy the customer re!uirements+E. The major characteristics, ignored during the search to improve manufacture and overall business performance were"

-eliability ,aintainability Safety Strength

6uality Control 0uality ontrol was introduced to detect and fix problems along the production line to

prevent the production of faulty products. Statistical theory played an important role in this area. In the ;JH>s, Dr *. Shewhart developed the application of statistical methods to the management of !uality. Ce made the first modern control chart and demonstrated that variation in the production process leads to variation in product. Therefore, eliminating variation in the process leads to a good standard of end products. Statistical 0uality ontrol"

focuses on product and the detection and control of !uality problemsM involves testing samples and statistically infers compliance of all productsM is carried out at stages through the production processM and relies on trained production personnel and !uality control professionals.

ShewartFs wor' was later developed by Deming, Dodge and -oming. Cowever, manufacturing companies did not fully utili#e these techni!ues until the late ;JL>s.
C<Te!1 ECSEF % *($ %

System Analysis & Design

KSOU

6uality met1o#s There are also many !uality methods, such as just7in7time production, variability reduction, and po'e7yo'e that can improve processes and reduce waste. The principles of Total 0uality ,anagement are to see' to satisfy the external customer with !uality goods and services, as well as your company internal customersM to satisfy your external and internal suppliersM and to continuously improve processes by wor'ing smarter and using special !uality methods. 6uality Management (enchmar'ing is the use of standard measurements in a service or industry for comparison to other organi#ations in order to gain perspective on organi#ational performance. ontinuous Improvement, in regard to organi#ational !uality and performance, focuses on improving customer satisfaction through continuous and incremental improvements to processes, including by removing unnecessary activities and variations. &ailure ,ode and $ffects Analysis is an approach that helps identify and prioriti#e potential e!uipment and process failures. IS)J>>> is an internationally recogni#ed standard of !uality, and includes guidelines to accomplish the IS)J>>> !uality standard. )rgani#ations can be optionally audited to earn IS)J>>> certification. 0uality management can be considered to have three main components" !uality control, !uality assurance and !uality improvement. 0uality management is focused not only on product !uality, but also the means to achieve it. 0uality management therefore uses !uality assurance and control of processes as well as products to achieve more consistent !uality.

C<Te!1 ECSEF

% *(( %

System Analysis & Design

KSOU

0uality assurance versus !uality control 0uality control emphasi#es testing of products to uncover defects, and reporting to management who ma'e the decision to allow or deny the release. *hereas !uality assurance attempts to improve and stabili#e production, and associated processes, to avoid, or at least minimi#e, issues that led to the defects in the first place To prevent mista'es from arising, several 0A methodologies are used. Cowever, 0A does not necessarily eliminate the need for 0 " some product parameters are so critical that testing is still necessary. 0 activities are treated as an integral part of the overall 0A processes 0uality Assurance in software development The following are examples of 0A models relating to the software development process. Mo#els an# stan#ar#s IS) ;?>HA is an international standard that specifies the general re!uirements for the competence to carry out tests and or calibrations. There are ;A management re!uirements and ;> technical re!uirements. These re!uirements outline what a laboratory must do to become accredited. ,anagement system refers to the organi#ationGs structure for managing its processes or activities that transform inputs of resources into a product or service which meets the organi#ationGs objectives, such as satisfying the customerGs !uality re!uirements, complying with regulations, or meeting environmental objectives. The ,,I 4 apability ,aturity ,odel Integration5 model is widely used to implement 0uality Assurance 4%%0A5 in an organi#ation. The ,,I maturity levels can be divided in to A steps, which a company can achieve by performing specific activities within the organi#ation. 0uality terms

0uality Improvement can be distinguished from 0uality achieving an outcome.

ontrol in that 0uality

Improvement is the purposeful change of a process to improve the reliability of

C<Te!1 ECSEF

% *(* %

System Analysis & Design

KSOU

0uality

ontrol is the ongoing effort to maintain the integrity of a process to

maintain the reliability of achieving an outcome.

0uality Assurance is the planned or systematic actions necessary to provide enough confidence that a product or service will satisfy the given re!uirements for !uality.

So&t4are 2uality assuran!e 4S6A5 consists of a means of monitoring the software engineering processes and methods used to ensure !uality. The methods by which this is accomplished are many and varied, and may include ensuring conformance to one or more standards, such as IS) J>>> or ,,I. S0A encompasses the entire software development process, which includes processes such as software design, coding, source code control, code reviews, change management, configuration management, and release management. The American Society for 0uality offers a ertified Software 0uality $ngineer 4 S0$5 certification with exams held a minimum of twice a year.

Testing
Testing is the process of determining whether or not the systemB software fulfills the endures re!uirements. In other words it is the process of verifying that the desired goal as stated in the problem definition have been achieved through the system B software. Several factors contribute to the importance of ma'ing testing a high priority of any software development effort. These include"

-educing the cost of developing the program. $nsuring that your application behaves exactly as you explain to the user. -educing the total cost of ownership. Developing customer loyalty and word7of7mouth mar'et share.

There are three types of testing done w.r.t to software namely

C<Te!1 ECSEF

% *(+ %

System Analysis & Design

KSOU

1nit B module testing Integration B system testing Acceptance testing

Unit testing" 1nit testing deals with testing a unit as a whole. It is also referred to as function or module testing because it would test the interaction of many functions but confine the test within one unit. The primary goal of unit testing is to ta'e the smallest piece of testable software in the application, isolate it from the remainder of the code, and determine whether it behaves exactly as you expect. $ach unit is tested separately before integrating them into modules to test the interfaces between modules. 1nit testing has proven its value in that a large percentage of defects are identified during its use. &or example, if you have two units and decide it would be more cost effective to glue them together and initially test them as an integrated unit, an error could occur in a variety of places"

Is the error due to a defect in unit ;+ Is the error due to a defect in unit H+ Is the error due to defects in both units+ Is the error due to a defect in the interface between the units+ Is the error due to a defect in the test+

Integration Testing Integration testing is the activity of software testing in which individual software modules are combined and tested as a group. It occurs after unit testing and before acceptance testing.

C<Te!1 ECSEF

% *(, %

System Analysis & Design

KSOU

Thus, Integration testing is a logical extension of unit testing. In its simplest form, two units that have already been tested are combined into a component and the interface between them is tested. Cere a component refers to an integrated aggregate of more than one unit. In a realistic scenario, many units are combined into components, which are in turn aggregated into even larger parts of the program. The idea is to test combinations of pieces and eventually expand the process to test your modules with those of other groups. Integration testing can be done in a variety of ways but the following are three common strategies"

The top7down approach to integration testing re!uires the highest7level modules be test and integrated first. The bottom7up approach re!uires the lowest7level units be tested and integrated first. The third approach, sometimes referred to as the umbrella approach, re!uires testing along functional data and control7flow paths.

A!!e)tan!e Testing' Acceptance testing is the process of testing system 4e.g. software, lots of manufactured mechanical parts, or batches of chemical products5 prior to its delivery. A system is mainly developed for an enduser normally a customer of the organi#ation. A system is said to be accepted if and only if the user of the system is satisfied. In this perspective acceptance testing is widely used the to prove that system performs as per the re!uirements. In acceptance testing the customers provides the input data to validate the system operation. It is also 'nown as functional testing, blac'7box testing, release acceptance, 0A testing, application testing, confidence testing, final testing, validation testing, or factory acceptance testing

C<Te!1 ECSEF

% *(. %

S-ar putea să vă placă și