1 / 28

System Development Life Cycle (SDLC)

System Development Life Cycle (SDLC). SDLC. The following is the sequence of activities in the system development life cycle. These activities can be carried out not necessarily in the same order and they may overlap as well. 1. Preliminary Investigation.

edwinh
Télécharger la présentation

System Development Life Cycle (SDLC)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. System Development Life Cycle (SDLC)

  2. SDLC • The following is the sequence of activities in the system development life cycle. • These activities can be carried out not necessarily in the same order and they may overlap as well.

  3. 1. Preliminary Investigation • SDLC initiates with a project request. • First stage is the preliminary analysis. • Aim of preliminary analysis is to identify the problem. • First, need for the new or the enhanced system is established. • Once the initial investigation is done and the need for new or improved system is established, all possible alternate solutions are chalked out. • All these systems are known as "candidate systems".

  4. All the candidate systems are then weighed and the best alternative of all these is selected as the solution system, which is termed as the "proposed system". • The proposed system is evaluated for its feasibility. • Feasibility for a system means whether it is practical and beneficial to build that system. • Feasibility is evaluated from developer and customer's point of view.

  5. The feasibility of the system is evaluated on the three main issues: 1. Technical feasibility: Can the development of the proposed system be done with current equipment, existing software technology, and available personnel? Does it require new technology? 2. Economic feasibility: Are there sufficient benefits in creating the system to make the costs acceptable? 3. Legal feasibility: It checks if there are any legal hassle in developing the system. 4. Operational feasibility: Will the system be used if it is developed and implemented? Will there be resistance from users that will undermine the possible application benefits?

  6. The result of the feasibility study is a formal document, a report detailing the nature and scope of the proposed solution. It consists of the following: • Statement of the problem • Details of findings • Findings and recommendations in concise form • The resulting document is called the software requirement specification(SRS)

  7. 2. Analysis Phase • Analysis is a detailed study of the various operations performed by the system • Relationships among the various sub-systems or functional units and finally the relationships outside the system. • Major questions under consideration during analysis are: 1. What is being done?2. How is it being done?3. Does a problem exist?4. If a problem exists, how severe is it?5. How frequently does it occur?6. What is the underlining cause for the problem?

  8. 3. Design of the system: • This phase is also called system designing. • It is a most crucial phase in the development of a system. • Normally, the design proceeds in two stages: • preliminary or general design • Structure or detailed design • 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.

  9. Structure or Detailed design: In the detailed design stage, computer oriented work 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 inter-relationship among the same components as the original problem. • Input, output and processing specifications are drawn up in detail. • Programming language and the platform in which the new system will run are also decided

  10. There are several tools and techniques used for designing. These tools and techniques are: • Flowchart • Data flow diagram (DFDs) • Data dictionary • Structured English • Decision table • Decision tree

  11. 4. Coding/programming phase: • Coding the new system into computer programming language . • This is also called the programming phase in which the programmer converts the program specifications into computer instructions, which we refer as programs. • Programs must be modular in nature

  12. 5. Testing • Performed before implementation. • Create a test plan. • Using the test data following test run are carried out: • Unit test • System test • Acceptance testing (involves the user)

  13. 6. Implementation • During this phase, all the programs of the system are loaded onto the user's computer. • After loading the system, training of the users starts. Main topics of such type of training are: • How to execute the package • How to enter the data • How to process the data (processing details) • How to take out the reports or the desired output.

  14. After the users are trained about the computerized system, manual working has to shift from manual to computerized working. • The following two strategies are followed for running the system: • Parallel run: In such run for a certain defined period, both the systems i.e. computerized and manual are executed in parallel. • Pilot 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. • When the results are found satisfactory then only other parts are implemented.

  15. 7. Maintenance • Maintenance is necessary to eliminate errors in the system during its working life and to tune the system to any variations in its working environment. • It also means the review of the system from time to time. The review of the system is done for: • knowing the full capabilities of the system • knowing the required changes or the additional requirements • studying the performance

  16. Advantages of Linear Sequential Model The Linear Sequential model offers the following advantages: • It is easy to understand and implement. • It prohibits skipping any phase in the sequence. • It is ideal for small projects and when the requirements and goals of the project are well established in advance.

  17. Disadvantages of Linear Sequential Model The following are the disadvantages using Linear sequential model: • In practical conditions ,software projects are seldom sequential. Iteration and overlapping often occur . This model is not suitable for such projects. • The working version of the software is available (late) to the customer after testing. Therefore, if there is any major error during the coding it will till end of the testing.

  18. Alternate Development ModelsPrototyping Model • In this model the developer and client interact to established the requirements of the software. • Define the broad set of objectives. • This is follow up by the quick design, in which the visible elements of the software, the input and the output are designed. • The quick design stresses the clients view of the software . • The final product of the design is a prototype. • The client the evaluates the prototype and provides its recommendations and suggestion to the analyst. • The process continues in an iterative manner until the all the user requirements are met.

  19. Phases of Prototyping Model Requirement Analysis Quick Design Prototype Implementation Testing Deliver Final Product

  20. Advantages of Prototyping Model The following are the advantages of Prototyping model: • Due the interaction between the client and developer right from the beginning , the objectives and requirements of the software is well established.Suitable for the projects when client has not clear idea about his requirements. • The client can provide its input during development of the prototype. • The prototype serves as an aid for the development of the final product.

  21. Disadvantages of Prototyping Model The prototyping model has the following disadvantages. • The quality of the software development is compromised in the rush to present a working version of the software to the client. • The client look at the working version of the product at the outset and expect the final version of the product to be deliver immediately. This cause additional pressure over the developers to adopt shortcut in order to meet the final product deadline. • It becomes difficult for the developer to convince the client as why the prototype has to be discarded.

  22. The Spiral Model • The spiral model, also known as the spiral lifecycle model, is a systems development method (SDM) used in information technology (IT). • This model of development combines the features of the prototyping model and the waterfall model. • The spiral model is intended for large, expensive, and complicated projects.

  23. The steps in the spiral model can be generalized as follows: • The new system requirements are defined in as much detail as possible. This usually involves interviewing a number of users representing all the external or internal users and other aspects of the existing system. • A preliminary design is created for the new system. • A first prototype of the new system is constructed from the preliminary design. This is usually a scaled-down system, and represents an approximation of the characteristics of the final product.

  24. A second prototype is evolved by a fourfold procedure: (1) evaluating the first prototype in terms of its strengths, weaknesses, and risks; (2) defining the requirements of the second prototype; (3) planning and designing the second prototype; (4) constructing and testing the second prototype. • At the customer's option, the entire project can be discarded if the risk is deemed too great. Risk factors might involve development cost overruns, operating-cost miscalculation, or any other factor that could, in the customer's judgment, result in a less-than-satisfactory final product. • The existing prototype is evaluated in the same manner as was the previous prototype, and, if necessary, another prototype is developed from it according to the fourfold procedure outlined above.

  25. The preceding steps are iterated until the customer is satisfied that the refined prototype represents the final product desired. • The final system is constructed, based on the refined prototype. • The final system is thoroughly evaluated and tested. Routine maintenance is carried out on a continuing basis to prevent large-scale failures and to minimize downtime.

  26. Advantages • Estimates (i.e. budget, schedule, etc.) become more realistic as work progresses, because important issues are discovered earlier. • It is more able to cope with the (nearly inevitable) changes that software development generally entails. • Software engineers can get their hands in and start working on a project earlier.

  27. Disadvantages • Highly customized limiting re-usability • Applied differently for each application • Risk of not meeting budget or schedule incase of small projects.

More Related