System Development Life Cycle (SDLC), which is also known as Application Development Life Cycle, is a term used in system that describes the process of planning, creating, testing and deploying an information system.
All organizations have several types of information systems. At any point of time, varying degrees of these information systems may be computer based. For example, an organization’s payroll information system may be computer based, but its strategic planning information system may be processed manually.
As the time passes, organizational processes change. The organization’s information systems must change in response to the changing needs of an organization. When this occurs, management usually initiates some form as systems development life cycle (SDLC) to address the problem.
During software development or system development for organizations, a common process framework is established, defining a small number of framework activities that are applicable to all software projects, regardless of their size complexity. For a better paradigm of a software process, several models are designed and implemented. It is the choice of system analyst which model is used to achieve the goal. The different models are:
We are going to discuss waterfall model or linear sequential or classic mode in this section. The original waterfall model was proposed by Winston Royce. Although, it made provisions for feedback loops, the vast majority of an organization that applies this process model treats it as if it was strictly linear. The various steps are illustrated by the following diagram.
The prototyping Model is a System Development Method (SDM) in which a prototype (an early approximation of final system or product) is built, tested and then reworked as necessary until an acceptable prototype is finally achieved from which the complete system or product can now be developed.
This model works best in scenarios where not all of the project requirements are known in detail ahead of time. It is an iterative, trial-and-error process that takes between the developers and the users.
This is a software development process that allows usable systems to be built in as little as for 60-90 days, often with some compromises. RAD is a linear sequential software development process model that emphasise an extremely short development cycle using a component based construction approach.
If the requirements are well understood and defined, and the project scope is a constraint, the RAD process enables a development team to create a fully functional system within a very short time period.
Incremental model is an evolution of waterfall model. The product is designed, implemented, integrated and tested as a series of incremental builds. It is a popular model software evolution used by many commercial software companies and system vendor.
Incremental software development model may be system vendor.
The spiral model is a system development life cycle methodology that combines feature of prototyping with the waterfall methodology. The spiral model is often favored for large, complex projects.
Iterates cycle of these project phases:
Steps in the spiral model include:
When to use Spiral Model
Since, there are possibilities of repetition in the system development as a new problem may arise. This situation can be represented diagrammatically below:
The initial step of system development cycle is the identification of new problems. In some cases, it can be considered as new opportunities. For example, a wholesale distributor receives customer complaints concerning late deliveries of goods. These late delivery result in loss of customer goodwill. The action is necessary to implement. To clearly understand the exact nature of the problem requires a thorough analysis and understanding of the existing system.
In the above example, the management may initiate a project team or task force to analyze the existing order-processing system. This project is headed by a team leader called system analyst. Analysis of the existing system consists:
As soon as the deficiencies in the information system have been determined, solutions to those deficiencies can be designed. It is important that the solutions relate to improving workflow and the decisions being made must be related to the solutions. In other words, solutions should improve productivity.
The design of information and processing requirements establishes the criteria for identifying alternative means for solution achievement. That is, the previous step defines what is desired. This step defines how to do it.
Variable technologies and personnel are identified that, if included in the system, it can be structured to support the solution defined in the previous step. Generally, several alternatives offering varying degrees of solution achievement are available.
At this point, the desired solutions and the means of achieving them have been identified. Specifically, inclusion and structure decisions are established for the information and technology of the new system. The actual structuring or development and testing of the system are now possible. This step consists of installing an additional hardware or software required and coding and testing computer programs where necessary.
After a new system has been developed and tested, conversion from the old system to the new system is required. The actual implementation process can be expressed in terms of the continum that ranges from parallel to discrete. In a parallel system, the old and new systems are concurrently processed until the new system stabilizes. The parallel implementation reduces risk when implementing a new system.
After a new system has been implemented, it is important to review how effectively and efficiently the solutions to the new problems and opportunities have been achieved. Evaluation, therefore, consists of accessing the degree of variation between planned and actual system performance.
Khanal, R.C. Khanal, R.C. Computer Concept for XII. Pashupatigriha Marga, Thapathali, Kathmandu, Nepal: Ekta Books Distributors Pvt. Ltd., 2010. 13-17.
Adhikari,Deepak Kumar et.,al,Computer science XII Asia Publication Pvt.Ltd
Different models of SDLC are: