Page 1
THE SYSTEMS DEVELOPMENT LIFE CYCLE LECTURE NOTES DEVELOPING INFORMATION SYSTEMS SOLUTIONS The Systems Development Cyle!
The systems approach can be applied to the solution of many types of problems. When this involves the development of information system solutions to business busines s problems, problems, it is called called inform information ation systems develop development ment or application application development. development. Most computer-based information systems are conceived, designed, and implemented implemented using some form of systematic development process. process . In this process, end users and information specialists design information systems based on an analysis of the information information requirements of an org organization. anization. Thus, a major part of this process is no!n as systems analysis and design. When the systems approach is applied to the development of information system solutions, a multistep multistep process or cycle emerges. This is frequently called the information systems development cycle, also no!n as the systems development life cycle "#$%&'. #teps involved and products produced in the traditional information systems development cycle( ). #ystems investigation - *roduct( +easibility #tudy . #ystems analysis - *roduct( +unctional equirements
Page 2
. #ystems design - *roduct( #ystems #pecifications /. #ystems implementation - *roduct( 0perational #ystem 1. #ystems maintenance - *roduct( Improved #ystem ).
2ll the activities involved are highly related and interdependent.
.
#everal developmental activities can occur at the same time.
.
$ifferent parts of a development project can be at different stages of the development cycle.
/.
2nalysts may recycle bac at any time to repeat previous activities in order to modify and improve a system being developed.
1.
$evelopments such as computer-aided systems and end user development are automating and changing some of the activities of information systems development. These developments are improving the quality of systems development and maing it easier for I# professionals, !hile enabling more end users to develop their o!n systems.
St"#t$n% the Systems Development P#oess!
The first step in the systems development process is the systems investigation stage. This step may involve consideration of proposals generated by an information systems planning process. The investigation stage also includes the preliminary study of proposed information system solutions to end user business problems. The three steps of the systems investigation stage involve(
Page 3
&'
Dete#m$ne (hethe# " )*s$ness p#o)lem o# oppo#t*n$ty e+$sts'
$efining *roblems and 0pportunities( To solve a problem or pursue an opportunity requires a thorough understanding of the situation at hand. This requires separating problems from symptoms, determining objectives and constraints, and, more important, vie!ing the problem or opportunity in a systems conte3t. •
*roblem( - is a basic condition that is causing undesirable results.
•
0pportunity( - is a basic condition that presents the potential for desirable results.
•
,'
#ymptoms( - are merely signals of an underlying cause or problem. Con-*t " .e"s$)$l$ty st*-y to -ete#m$ne (hethe# " ne( o# $mp#ove$n.o#m"t$on system $s " .e"s$)le sol*t$on
/'
Develop " p#o0et m"n"%ement pl"n "n- o)t"$n m"n"%ement "pp#ov"l'
Fe"s$)$l$ty St*-$es
4ecause the process of developing a major information system can be costly, the systems investigation stage frequently requires a preliminary study called a feasibility study. 2 feasibility study is a preliminary study !hich investigates the information needs of prospective users and determine the resource requirements, cost, benefits, and feasibility of a proposed project. #teps of a feasibility study(
Page 4
).
5ather information6data for a feasibility study.
.
+ormalize a !ritten report including the preliminary specifications and a developmental plan for the proposed system.
.
#ubmit the report management for approval.
/.
4egin system analysis "if management approves the recommendations of the feasibility study'.
The goal of feasibility studies is to( ). 7valuate alternative systems . *ropose the most feasible and desirable systems for development. +easibility of a system can be evaluated in terms of four major categories( ).
0rganizational +easibility - focuses on ho! !ell a proposed information system supports the objectives of the organization and its strategic plan for information systems.
.
7conomic +easibility - focuses on !hether the tangible costs and benefits of the proposed system !ill e3ceed the costs of developing and operating it.
.
Technical +easibility - focuses on the reliable6capabilities of the hard!are and soft!are to meet the needs of the proposed system, and !hether they can be acquired or developed in the required time.
/.
0peration +easibility - focuses on the !illingness and ability of the management, employees, customers, suppliers, and others to operate, use, and
Page 5
support the proposed system. Cost12ene.$t An"lys$s
7very legitimate solution !ill have some advantages or benefits, and some disadvantages or costs. These advantages and disadvantages are identified !hen each alternative solution is evaluated. This process is typically called cost6benefit analysis. Tangible &osts - are costs and benefits that can be quantified "e.g., cost of hard!are and soft!are, employee salaries, and other quantifiable costs needed to develop and implement a solution'. Intangible &osts - costs and benefits that cannot be quantified "e.g., loss of customer good!ill or employee morale caused by errors and disruptions arising from the installation of a ne! system'. Tangible 4enefits - are favourable results "e.g., decrease in payroll costs caused by a reduction in personnel or a decrease in inventory carrying costs caused by a reduction in inventory' Intangible 4enefits - are hard to estimate "e.g., better customer service or faster and more accurate information for management'. System An"lys$s
#ystems analysis is an in-depth study of end user information needs !hich produces functional requirements that are used as the basis for the design of a ne!
Page 6
information system. #ystem analysis traditionally involves a detailed study of( ). The information needs of the organization and the end users. . The activities, resources, and products of any present information systems . The information systems capabilities required to meet the information needs of end users. O#%"n$3"t$on"l An"lys$s
0rganizational analysis involves evaluating the organizational and environmental systems and subsystems involved in any situation. #ystems analysis traditionally involves a detailed study of the organizations( ).
7nvironment
.
Management structure
.
*eople
/.
4usiness activities
1.
7nvironmental systems it deals !ith
8.
&urrent information systems
An"lys$s o. the P#esent System
4efore designing a ne! system, a detailed analysis of the current system "manual or automated' must be completed. 2n analysis of the present system involves analysing activities, resources, and the products. 9ou must analyse ho! the present system uses(
Page 7
).
:ard!are, soft!are, people resources to convert data resources into information products, such as reports and displays.
.
$ocument ho! the information activities if input, processing, output, storage, and control are being accomplished.
F*nt$on"l Re4*$#ements An"lys$s
This step of the systems analysis is one of the most difficult. #teps involve( ).
$etermining specific information needs
.
$etermining the information processing capabilities required for each system activity "input, processing, output, storage, and control' to meet the needs. 5oal is to identify What should be done ;0T ho! to do it.
.
$evelop functional requirements "information requirements that are not tied to the hard!are, soft!are, and people resources that end users presently use or might use in the ne! system'.
Systems Des$%n
#ystem analysis describes !hat a system should do to meet the information needs of users. #ystem design specifies ho! the system !ill accomplish this objective. #ystems design consists of design activities, !hich produce systems specifications satisfying the functional requirements developed in the systems analysis stage. These specifications are used as the basis for( ). #oft!are development
Page 8
. :ard!are acquisition . #ystem testing /. 0ther activities of the implementation stage. Use# Inte#."e5 D"t"5 "n- P#oess Des$%n
The systems design concept focuses on three major products or deliverables, that should result from the design stage. #ystem design consists of three activities( ).
The design of attractive and efficient forms of user input and output, such as easy-to-use Internet or intranet !eb pages
•
$esigning methods of converting human-readable documents to machinereadable input, such as optical scanning of business forms.
•
$esign tips to eep in mind( o
=eep it simple
o
=eep it clean
o
0rganize logically
Page 9
The data design activity focuses on the design of the structure of databases and files to be used by a proposed information system. $ata design frequently produces a data dictionary, !hich catalogues detailed descriptions of the( ).
2ttributes or characteristics of the entities "objects, people, places, events' about !hich the proposed information system needs to maintain information.
.
elationships these entities have to each other.
.
#pecific data elements "databases, files, records, etc.' that need to be maintained for each entity traced by the information system
/.
Integrity rules that govern ho! each data element is specified and used in the
Page 10
information system. P#oess Des$%n
The process design activity focuses on the design of soft!are resources, that is, computer programs and of procedures needed by the proposed information system. It concentrates on developing detailed specifications for the program modules that !ill have to be purchased as soft!are pacages or developed by custom programming. *rocess design produces( ).
$etailed program specifications and procedures needed to meet the user
interface and data design specifications that are developed. .
*roduces specifications that meet the functional control and performance
requirements developed in the analysis stage. System Spe$.$"t$ons
#ystem specification focuses on defining the systems specifications required for the proposed information system. Typically, it specifies( ).
:ard!are resources "machines and media'
.
#oft!are resources "programs and procedures'
.
;et!or resources "communications media and net!ors'
.
*eople resources "end users > information systems staff'.
/.
:o! resources !ill be used to convert data resources "stored in files and databases they design' into information products "displays, responses,
Page 11
reports, and documents'. P#ototyp$n%!
*rototyping is the rapid development and testing of !oring models, or prototypes, of ne! applications in an interactive, iterative process involving both systems analysts and end users. *rototyping maes the development process faster and easier for systems analysts, especially for projects !here end user requirements are hard to define. Thus, prototyping is sometimes called rapid application design "2$'. *rototyping has also opened up the application development process to end users because it simplifies and accelerates systems design. These developments are changing the roles of end users and information systems specialists in systems development. The P#ototyp$n% P#oess
*rototyping can be used for both large and small applications. Typically, large systems still require using the traditional systems development approach, but parts of such systems can frequently be prototyped. *rototyping combines steps of the traditional systems development cycle, and allo!s the rapid development and testing of a !oring model. The model is then repeatedly refined until it is acceptable to an end user. Implement$n% " Ne( In.o#m"t$on System!
0nce a proposed information system has been designed, it must be implemented.
Page 12
The systems implementation stage involves( ).
:ard!are and soft!are acquisition
.
#oft!are development
.
Testing of programs and procedures
/.
$evelopment of documentation
1.
Installation activities
8.
7ducation and training of end users and specialists !ho !ill operate the ne! system.
?.
&onverting from the use of the present system to the operation of a ne! or improved system.
&onverting to a ne! system may involve( *arallel #ystem - 0perating both a ne! system and an old system at the same time for a trial period. *ilot #ystem - 0perate a pilot system on a trial basis at one location. *hasing - *hasing in the ne! system one application or location at a time. *lunge "&utover' - &onverting immediately to the ne! system. M"$nten"ne o. In.o#m"t$on Systems
#ystems maintenance is the final stage of the systems development cycle. It involves the monitoring, evaluating, and modifying of a system to mae desirable or necessary improvements. This may include(
Page 13
).
*ostimplementation revie! process to ensure that the ne! system meets the
objectives established for it. .
7rror detected in the development or use of the system are corrected.
.
%ater modifications to a system may also become necessary due to changes
!ithin the business or the business environment. Comp*te#6A$-e- Systems En%$nee#$n% 7
The traditional systems development life cycle process has often been too infle3ible, time-consuming, and e3pensive for many organizations to utilize. To overcome some of the shortfalls of the #$%&, &omputer-2ided #ystems 7ngineering "&2#7' process has emerged. &2#7 involves using soft!are pacages called &2#7 tools, to perform many of the activities of the systems development life cycle. &2#7 soft!are pacages are available to help do( ).
4usiness planning
.
*roject management
.
/.
$atabase design
1.
#oft!are development.
Us$n% CASE Tools!
#ome of the capabilities of &2#7 tools can be found in the application development capabilities of end user soft!are such as electronic spreadsheet and database
Page 14
management pacages. &2#7 tools also help to automate the use of graphics tools such as flo!charts and data flo! diagram. &2#7 pacages provide tools for the front end of the systems development life cycle "planning, analysis, and design' as !ell as the bac end "implementation and maintenance'. Many pacages no! include a system repository component that e3pands the role of the data dictionary as a catalogue of data definitions. 2 system repository provides systems analysts !ith computer-aided data descriptions and other cataloguing facilities, beginning !ith their systems planning and systems analysis activities, and continuing through the design, implementation, and maintenance of the system. Thus, the repository has become a database for all the details of a system generated !ith other systems development tools. Integrated &2#7 tools are also available that can assist all of the stages of the systems development. #ome &2#7 tools support joint application design "@2$', !here a group of systems analysts, programmers, and end users can jointly and interactively design ne! applications. +inally, if the development of ne! systems can be called for!ard engineering, some &2#7 tools support bac!ard engineering. That is, they allo! systems analysts to inspect the logic of a program code for old applications and convert it automatically into more efficient programs that significantly improve system effectiveness. En- Use# Development
Page 15
In end-user development, I# professionals play a consulting role !hile you do your o!n application development. #ometimes a staff of user consultants may be available to help you and other end users !ith your application development efforts. +or instance, a user services group or information centre may provide assistance for both mainframe and microcomputer applications development. $oing 7nd