System Development Life Cycle (SDLC)

INTRODUCTION

To develop a systems, such as Management Information System (MIS), A General Business System, we need to carry out a detailed systems analysis and design activity. For this purpose, we shall have an overview of various stages in this process.

System development follows an iterative process that recycles through each stage and almost all stages overlap each other. This is also termed as the System Life Cycle.

SYSTEMS  ANALYSIS AND DESIGN PROCESS

The complete process of systems analysis and design may be considered as consisting of  following phases

  • Recognition of problem (Initial Investigation)
    • What is the problem or opportunity?
  • Feasibility study
    • What are the user’s needs?
    • What are the benefits?
    • How can the problem be redefined?
  • System analysis
    • What must be done to solve the problem?
    • What are the facts?
  • System design
    • How must the problem be solved?
    • What is system flow?
  • System testing
    • How ready are programs for test?
  • Implementation
    • What is the actual operation?
  • Maintenance
    • Should the system be modified?

RECOGNITION OF PROBLEM

The first stage of any project, sometimes called the preliminary assessment, is a brief investigation of the system under consideration to provide to  any project team. The idea of developing a new system occurs to the user when he recognizes that he has a problem with the means by which he currently carries out his business. This awareness marks the beginning of the recognition of problem phase, as almost all computer systems replace an existing system.

A problem is well defined very rarely. It crops out with a vague feeling such as too much delay in order processing, or  ‘We must reduce inventory cost by any means’ or ‘the existing calculation system is highly error prone’.

A system analyst’s first task  is to obtain more crucial information by interviewing and meeting concerned people. This will clarify how the problem was felt, how often it occurs, how it affects the business and which departments are suffering with this. Analyst does not do detailed investigation at this stage but he tries to define the scope of the problem; classifies it and measures its complexity to ensure that the problem is important and real enough to require further investigation.

A proper understanding of the problem and its classification enables the systems analyst to separate symptoms from the real causes It also helps the analyst to consider it as a systems problem rather than a business problem and there by increasing the chances of success in proposing solutions. Following is the major classification of the problems:

  • The existing system is slow and cannot respond to information i.e. problem of responsiveness. In this case the analyst will look to (i) find out present level of responsiveness and factors contributing to it and; (ii) consider what changes or additions in existing procedures or resources; utilization would improve responsiveness and how such changes affect the organization.
  • Originating workload is higher than the volume of workload handled i.e. problem of throughput. Here the analyst concentrates on finding the level of productiveness, its contributing factors, which further facilitates to improve productivity by better utilization of resources of by modifications to methods & resources.
  • The present services are very expensive e. problem of economy. The management intentions could be (i) to reduce cost for same productivity (ii) to increase productivity but at present cost level of (iii) discontinue unproductive operations.
  • Problem of Occurrence/ Reliability : At first, the analyst checks operations, step by step, to see when and how errors creep up & how to restrict these errors by using various clarification checks. For reliability, the system may have to be designed without any ambiguity and must be foolproof, as system failures result in loss of business.
  • There is a problem of information, where the analyst would be concerned with organization of available information, its accessibility for decision making. These types of problems have close relationship with the ways of data storage and organization.
  • Problem of efficiency. This problem is interrelated to all the above problems. The analyst must create a proper balance between all the contributing factors like response time, workload volume, cost of processing, and information needs etc.
  • Problem of security of information : Here the analyst tries to devise controls over accessibility of information.

The investigation also includes careful study of interactions between various subsystems, interrelated data usage of various subsystems etc. Only after this critical problem classification & grade the importance of problem, allocation of resources for further investigation will take place after scheduling.

The type of problems may be classified as General Business or Scientific applications. The business Applications are like Banking, Financial accounting, Inventory Control, Railway/ Airlines Reservations etc. In such applications the user has to handle a large volume of data whereas the calculations are relatively less. The scientific or engineering applications are such as design of an automobile, multi-story building, an electrical motor or a sophisticated missile. In such applications, the data is much less compared to the large and complex calculations which the user has to carry out.

FEASIBILITY STUDY

If the Study proposal is accepted by management, it will lead to an investigation of the existing system or problem area and conducted in close collaboration with user management and in sufficient depth to establish in broad terms the technical, operational and economic feasibility of proposal. Having recognised the problem areas, the next step is to carry out an overall analysis of the system requirements in terms of its :

  • The Input data
  • Type of processing needed and
  • The output reports

This needs a detailed feasibility study to be carried out by the System Analyst.

To carry out the analysis of the existing system the system analyst may take the help of any of the following techniques:

  • Interviews
  • Questionnaires

This  would  help  him  to have an in-depth  study of  the existing  system and understand its strengths and weakness and the requirements of the new proposed system.

Three phases of feasibility study is used are as follows:

  • Technical feasibility
  • Operational feasibility
  • Economic feasibility.

The technical feasibility is concerned with the available hardware and software resources whether they meet the given requirements of the analysed system or not. It may also invoke the study of new alternatives to solve the given problem.

The operational feasibility is to take the operational staff into confidence. The success of a good system depends upon the willingness of the operating staff. They should not have any fears like uncertainty about their jobs or control over the working which develops a bias in their minds towards the computerised systems. This acts as a big barrier in the successful implementation of any project.

The economic feasibility deals with the study of cost benefit analysis. All the costs of the new proposed system are compared with the benefits which can be obtained for the management approval. The benefits may be quantitative or qualitative in nature.

The following steps are used in the complete feasibility study:

  • Study the existing system
  • Define the scope of the proposed system
  • Study the strengths and weakness of the existing system
  • Study various alternatives
  • Carry out feasibility studies
  • Get the management approvals

SYSTEM ANALYSIS

Detailed investigation should be conducted with personnel closely involved with the area under investigation, according to the precise terms of  recognisation of problem arising out of the feasibility study report.

The objectives at this stage are to provide solutions to stated problems, usually in the form of a specification to meet the users’ requirements; and to make recommendations for a new computer-based system.

Analysis is an iterative and progressive process, examining information flows and evaluating various alternative design solutions until a preferred solution emerges.

It involves an in-depth study of the existing system with to the following

  • Organisation structure
  • Sources of data origination
  • flow of data within the organisation
  • Accuracy and timeliness aspect of the data handling process.
  • The process of data storage
  • The type of data processing
  • The reports being generated at various stages
  • The new user requirements
  • Estimation of resources needed to design the new system

The system analyst should be in a position to study the complete system requirements and be ready to begin the detailed design of the computerised system which should meet the given objectives.

SYSTEM DESIGN

System design is a creative as well as a technical activity.  This stage is the most time and resource consuming. It is the real technical activity which involves the design of the system around the computer. It  includes many steps such as :

  • The preparation of system outlines chart
  • Design of input forms, validation procedures and data preparation procedures
  • Design of output reports
  • Code designing
  • Detailed file layout and file designing
  • Selection of system software and selection of programming languages or database to be used
  • Computer procedure design
  • Program development
  • Testing of the programs
  • Security and Controls

The system should be designed to cope with all likely errors, and any subsequent changes and modifications. When the user system specification is complete, it should be presented to management with a proposal which outlines the main features of the design, and provides a restatement or revision of the objectives, costs, and benefits to be expected. Management should then formally accept or revise the proposal before further development. When agreement is finally reached, a program suite specification can then be handed over to the programmers for conversion of the computer parts of the system into programs of coded instructions appropriate to the computer. Meanwhile, the systmes analyst will produce detailed User and Operations Manuals for the system.

SYSTEM TESTING

This phase involves the testing of overall system. First, it test the parts separately and finally  the system as a whole. Each subsystem or independent module and program is tested first and then through the interfaces to other subsystems the complete system is tested. This is the most important phase as the system analyst has to get the user certification for the accuracy of the system. In other words, it may also be referred as the acceptance testing by the user. Such a testing should be carried out by the user, the users representative, the system analyst, the standards group, the external systems auditor or any combination thereof. The test data is normally prepared by the user to check for all possible combination of correct data as well as the wrong data which should be trapped by the system and reported as an error.

IMPLEMENTATION

Implementation is concerned with those tasks leading immediately to a fully operational system. It involves programmers, users and operations management, but its planning and timing is a prime function of systems analysis. After the system has been certified by the user, it comes to the stage of implementation. It involves many issues like preparation for the change over to the new system and then the actual change over. Preparation of the site and installation of the facilities, training of the staff, Preparation of data files etc. are the various steps involved which might require the involvement of the system analyst, the user as well as the operational management.

Changeover : After all the preparations for the system implementation are completed, comes the stage of actual changeover. This involves the usage of new system which has been developed and thoroughly tested. There are different approaches which may be followed in this changeover. The one to be chosen for a given system may depend upon the type of  control needed to ensure error free running of the system. Some of these are as given below.

  • Direct Changeover
  • Parallel Running
  • Pilot Running

Direct Changeover : In this method, the old system is scrapped or withdrawn the moment new one is put into use. For example if it is a Banking System, this type of changeover would mean that the manual record keeping is stopped and is directly handled through the new computerised system. This could lead to some problems if the new system does not behave as expected. This may be the result of some unforseen situations which had not been taken care of during the system analysis and design phase. In such an eventually, since there is no manual system to fall back upon, the users may be put to serious problems and the whole effort may lead to more confusion and ultimately defeat the very purpose. In such situation, we may follow a procedure of running both system for some time as parallel running.

Parallel Running : Parallel running is a method of submitting a new system to a final acceptance test, in which data is processed using both the old and new systems simultaneously. The result of two systems are compared and any discrepancies examined to see whether the computer system is at fault.

The main drawback of this method is extra cost because the user staff will have to work with both old and new. They will have to do extra work also in cross checking the results when they are busy in learning new procedures.

Pilot Running : Pilot running is an alternative to parallel running. It consists of the allocation of a certain amount of work to be performed by the computer while the remainder is done by old method. The amount of work performed on the computer is gradually increased until the changeover is complete and the old system is discontinued.

MAINTENANCE

Once the system has settled down and been running for some time, the systems analyst may be involved in amendment procedures to adapt the system to changing conditions; in  auditing the system to check that the stated objectives of the system are still vaild in the present environment; and in evaluating the achievement of those objectives. This is an ongoing exercise after the system has been implemented. The real life would is never static. Its requirements and objectives keep changing. So shall be the system which have been designed primarily to meet those objectives. Thus the system analyst has to keep on carrying out changes and modification into the system, a stage called normally as system maintenance.

SYSTEM LIFE CYCLE (SDLC)

System development follows an iterative process that recycles through each stage and almost all stages overlap each other. This is also termed as the SYSTEM LIFE CYCLE.

 

 

System Life Cycle
System Development Life Cycle

system that they share a common life cycle pattern. As system has been in operation for a number of years. It gradually decays and becomes less and less effective because of the changing environment to which it has to adapt. For a time it is possible to overcome problems by amendments and minor modifications to the system but eventually it will be necessary to acknowledge the need for fundamental changes. At this stage the systems analyst investigates the problems and the requirements have been adequately identified, so, a new system can be designed and subsequently implemented.

PRINCIPLES OF SYSTEM DESIGN

There are some of the do’s and dint’s that help in designing an effective system. Some of these are :

Principle of modular design

The system should be broken down into smaller parts.  Then each part shall be designed as a separate module. This help in paying equal attention to all parts rather than neglecting one and over attending another.

Principle of sub system integration

The modules designed separately need to be integrated in a unified whole to provide synergetic effect only the proper integration will lead to effective working of system.

Principle of minimum information

A good system should be designed in a way that supplies minimum amount of information required for decision making to the user.  Additional amount of information will burden the system for resources.

However, if any additional information is required for better decision making, system should provide. For it may be through query system which supplies information on demand rather than on routine basis.

Principle of user based design

The system should be user friendly. It should not be rigid to supply only fixed information but should be flexible enough to give information to satisfy users.

Principle of manager-analyst co-operation

Manager is the user of information. On the other hand Analyst is the person responsible for the design of MIS. The two often fail to understand each other’s requirements and come into conflict. A good design require the active co-operation of both for which they might have to for go their biases.

Principle of cost effective design

Cost effectiveness is the most important criterion for any system, if a system cost exceeds its benefits, it will be of no use. For this purpose we will do a cost benefit analysis.

 

For any question … Leave Comment…

Published by

Gagan Deep

FOUNDER & DIRECTOR, ROZY COMPUTECH SERVICES, KUK, KURUKSHETRA (HARYANA), INDIA I am in the profession of teaching in Computer Science since 1996.  In 1996, established a professional setup “Rozy Computech Services” for providing Computer Education, computer hardware and software services. In this span of 21 years , in conjunction with Rozy’s, I also associated in Teaching with different Institutions like Assistant Professor in University College, Kurukshetra University, Kurukshetra, Guest Faculty in Directorate of Distance Education, Kurukshetra University, Visiting Faculty in University Institute of Engineering & Technology, Kurukshetra University and a Resource person in EDUSAT, Haryana. Besides, I am also serving as Guide and Mentor in various private educational institutions. Also written 7 books on computer science.

One thought on “System Development Life Cycle (SDLC)

Leave a Reply

Your email address will not be published. Required fields are marked *