Sunteți pe pagina 1din 41

1

Software Life Cycle Models

The goal of Software Engineering is to provide models and processes that lead to the production of well-documented maintainable software in a manner that is predictable.

Software Life Cycle Models

Choice of Process Models Process means the way in which the software is produced. A major part of planning will be choosing development methods and slotting them into an overall process models.
3

Software Life Cycle Models

The period of time that starts when a software product is conceived and ends when the product is no longer available for use. The software life cycle typically includes a requirement phase, design phase, implementation phase, test phase, installation and check out phase, operation and maintenance phase, and sometimes retirement phase.

Build & Fix Model


!! Product is constructed without specifications or any attempt at design !! Adhoc approach and not well defined !! Simple two phase model
Build Code

Fix

Build & Fix Model

!! !! !! !! !!

Suitable for small programming exercises of 100 or 200 lines Unsatisfactory for software for any reasonable size Code soon becomes unfixable & unenhanceable No room for structured design Maintenance is practically not possible

Waterfall Model
The image cannot be displayed. Your computer may not have The image cannot be displayed. Your computer may have not have enough memory to open the image, or the image may been The image cannot be displayed. Your computer not enough memory to open the image, or the image may corrupted. Restart your computer, and then open the le have again. If The image cannot be displayed. Your computer may have memory to open the image, or the image been corrupted. Restart your computer, and then open the le the red x enough still appears, you may have to delete the image and The cannot be displayed. Your computer not have enough to open the image, orand the may have been Restart your computer, again. If the red xcorrupted. stillmemory appears, you may have to delete the then insert it image again. The image be displayed. Your may not have enough memory to open the image may have been corrupted. Restart your then open the le cannot again. If the red x still appears, you image and then insert it again. The image cannot be displayed. Your computer may not have enough memory to image, the image may have been corrupted. computer, and then open the le again. If the red x may have toor delete the image and then insert it again. The cannot be displayed. computer may not have enough open theimage image, or the image may have Restart your computer, and open the le and still appears, you may have to then delete the image The image cannot be displayed. Your computer may not have memory to open the image, or the been corrupted. Restart your computer, andto again. If the red x still appears, you may have then insert it again. The image cannot be Your computer may not have enough memory to open the image may have been corrupted. then open the le again. If the red x still delete the image and then insert it again. The image cannot be displayed. Your computer enough memory to open the image, or the image may have been Restart your computer, and then open appears, you may have to delete the image The image cannot displayed. Your may not have enough image, or Restart the image may have corrupted. your computer, the le again. If the red x still appears, and then insert it again. The be displayed. Your computer may not memory to image open the image, been corrupted. Restart your and then open the le again. If the you may have to delete the image and The may cannot be computer may not enough memory or the image have computer, and then open the red x have still appears, you may have to then insert it again. The image displayed. have to open the image, or been corrupted. Restart le again. If enough the red x still delete the image and then insert it T imag cannot be Your memory to open the image may have your computer, and then appears, you may have to delete again. e h or displayed computer may the image, the been corrupted. open the le then again. If the the image and insert it e have cann . your Your not have image may Restart computer, red x still appears, you may again. ot be the le computer enough been corrupted. and then open have to delete the image displ may not memory to Restart your again. If the red x still and then insert it again. have open theand computer, appears, you may have open le to then delete the the image and then insert it

Re !q !u !! ir !e !m !e !n ! t!!

Analysis & Specication!

The image cannot be displayed. Your computer may not have The image cannot be displayed. Your computer may have not have enough memory to open the image, or the image may been enough The image memory cannot to open be displayed. the image, Your or the computer image may may have not corrupted. your computer, and then the le again. If The Restart image cannot be displayed. Your open computer may been have corrupted. enough memory Restart your to open computer, the image, and or then the open image the the red x still appears, you may have to delete the image and The image cannot be displayed. Your computer not have enough memory to open the image, or the le may again. have If been the red corrupted. x still be appears, Restart you your may computer, have to and delete then insert it again. The image cannot displayed. Your may not have enough memory to open the image may have been corrupted. Restart your the then image open and the then le insert again. it Ifagain. the redbeen x still appears, you The image cannot be displayed. Your computer may not have enough memory to image, or the image may have corrupted. computer, and then open the le again. If the red x may have to delete theor image and then insert it again. computer may not have enough memory open the image, the image may have been Restart your computer, and then open the le still appears, you may have to delete the image and Thered image cannot be displayed. to If open the image, or computer, the image mayhave corrupted. Restart your and then to again. the x still appears, you may then insert it again. The image cannot be Your computer may not have have been corrupted. Restart your open the le again. If the red xit still appears, delete the image and then insert again. The image cannot bethe displayed. Your computer enough memory to open computer, and then open the le again. you may have to delete the image and then image cannot displayed. Your may not have enough image, or the image may may have If the red x The still appears, you have insert it again. The beimage displayed. Your computer may not memory to image open the image, been corrupted. Restart your to delete the and then insert it The cannot be computer may not have enough memory or the image may have computer, and then open the again. The image displayed. have enough to open the image, or been corrupted. Restart le again. If the red x still T open imag cannot be Your memory to the image may have your computer, and then appears, you may have to delete h or e again. displayed computer may the image, the been corrupted. open the le If the the image and then insert it e computer, cann . your Your not have image may have Restart red x still appears, you may again. ot be computer enough been corrupted. and then open le have to delete thethe image displ may not memory to Restart your again. If the red x still and then insert it again. have open theand computer, appears, you may have image, or the open the le tothen delete the image and then insert it

Design!

This model is named waterfall model because its diagrammatic representation resembles a cascade of waterfalls.
Im !p ! l!! em !e !n ! t!! at !! io !! n! an !d ! !u !! ni !! t!t !! e! st !! in !! g!
The image cannot be displayed. Your computer may not have The image cannot be displayed. Your computer may have not have enough memory to open the image, or the image may been The image cannot be displayed. Your computer may not enough memory to open the image, or the image may corrupted. Restart your computer, and then open the le have again. If The image cannot be displayed. Your computer may have enough memory to open the image, or the image been corrupted. Restart your computer, and then open the le the red x still appears, you may have to delete the image and then The image cannot be displayed. Your computer not have enough memory to open the image, or the may have Restart yourhave computer, and again. If the been red xcorrupted. still appears, you may to delete the insert it again. The image be displayed. Your may not have enough memory to open the image may have been corrupted. Restart your then open the le cannot again. If the red x still appears, you image and then insert it again. The image cannot be displayed. Your computer may not have enough memory to image, the image may have been corrupted. computer, and then open the le again. If the red x may have toor delete the image and then insert it again. The image cannot be displayed. computer may not have enough open the image, or the image may have Restart your computer, and open leand still appears, you may have to then delete the the image The image cannot be have Your computer may not memory to open the image, or the been Restart your computer, andto again. Ifcorrupted. the red x still appears, you may have then insert it again. The image cannot bethe displayed. Your computer may enough memory to open image may have been corrupted. then open the le again. If the red x still delete the image and then insert it again. displayed. The image Your cannot computer be not have enough memory to been image, or the image may have Restart your computer, and then open appears, you The may image have to cannot delete the image may displayed. not have Your enough open the image, or the image corrupted. Restart your computer, the le insert again. Ifagain. the red x still appears, image and then beThe it displayed. Your memory computer to open may the not may have been corrupted. and then open the le again. If the you may have to The delete the image and cannot be computer may not image, have or enough the image memory may Restart your computer, and red x still appears, The you may have to then insert it again. image displayed. have enough have to open been the corrupted. then open the le Timage, again. If the it delete the image imag and then or insert cannot be Your memory to open Restart the image your may have red x still appears, h or you again. e computer, displayed computer may the image, themay and been then corrupted. le and have to delete the e the image cann .open Your not have image may have again. Restart If the your red computer, x still then insert it again. ot be computer enough been corrupted. appears, and then you open may have le to displ may not memory tothe Restart your delete again. the If image the red and x still then have open the computer, and insert appears, it again. you may have image, or the then open the le to delete the image and then insert it

I! nt !! eg ! r!!at!! io !! n!a !n !! d! s! ys !! te !m ! !t!! e! st !! in !! g!

The image cannot be displayed. Your computer may not have The image cannot be displayed. Your computer may have not have enough memory to open the image, or the image may been The image cannot be displayed. Your computer may not enough memory to open the image, or the image may corrupted. Restart your computer, and then open the le have again. If The image cannot be displayed. Your computer may have enough memory to open the image, or the image been corrupted. Restart your computer, and then open the le the red x still appears, you may have to delete the image and then The image cannot be displayed. Your computer not have enough to open the image, or and the may have been Restart your computer, again. If the red xcorrupted. stillmemory appears, you may have to delete the insert it again. The image be displayed. Your may not have enough memory to open the image may have been corrupted. Restart your then open the le cannot again. If the red x still appears, you image and then insert it again. The image cannot be displayed. Your computer may not have enough memory to image, the image may have been corrupted. computer, and then open the le again. If the red x may have toor delete the image and then insert it again. The cannot be displayed. computer may not have enough open theimage image, or the image may have Restart your computer, and then open the leand still appears, you may have to delete the image The image cannot be have Your computer may not memory to open the image, or the been corrupted. Restart your computer, andto again. If the red x still appears, you may have then insert it again. The image cannot bethe displayed. Your computer may enough memory to open image may have been corrupted. then open the le again. If the red x still delete the image and then insert it again. The image cannot be displayed. Your computer not have enough memory to been image, or the image may have Restart your computer, and then open appears, you may have to delete the image The image displayed. may not enough open the image, or x the image corrupted. Restart your computer, the le again. Ifhave the Your red still appears, and then insert it again. The image cannot be computer may not memory to open the may have been corrupted. and then open the le again. If the you may have to delete the image and The cannot be displayed. Your have enough memory image, or the image may Restart your computer, and red x still appears, you may have to then insert it again. Theimage, image displayed. computer may to open the or have been corrupted. then open the le again. If the it delete the image and then insert T imag cannot Your not have enough the image may have Restart your computer, red x still appears, you may again. h open e to be computer memory been corrupted. and then open the le and have to delete the image e have cann displaye may not the or the Restart your again. If image, the red x still then insert it again. ot behave d. Your enough image may computer, and then appears, you may have to compute memory been corrupted. open the le to again. If delete the image and then open the Restart your the red x still insert it again. computer, appears, you and may have to delete the

The image cannot be displayed. Your computer may not have The image cannot be displayed. Your computer may have not have enough memory to open the image, or the image may been The image cannot be displayed. Your computer may not enough memory to open the image, or the image may corrupted. Restart your computer, and then open the le have again. If The image cannot be displayed. Your computer may have enough memory to open the image, or the image been corrupted. Restart your computer, and then open the the red x still appears, you may have to delete the image and The image cannot be displayed. Your computer not have enough to open the image, or and the may have been corrupted. Restart your computer, le again. the red x memory still appears, you may have to delete then insert itIf again. The image cannot be displayed. Your may not have enough memory to open the image may have been it corrupted. Restart your you then open the le insert again. Ifagain. the red x still appears, the image and then The image cannot be displayed. Your computer may not have enough memory to image, the image may have been corrupted. computer, and then open the le again. If the red x may have toor delete the image and then insert it again. computer may not have enough open the you image, or the image may have Restart your computer, and then open the leand still appears, may have to delete the image The image cannot be displayed. memory to open the image, or the been Restart your computer, andto again. Ifcorrupted. the red x still appears, you may have then insert it again. The image cannot be Your computer may not have image may have been corrupted. thenthe open the le again. If the red x still displayed. delete image and then insert it again. The image cannot be Your computer may not have enough memory to open image, Restartyou your computer, then open appears, may have to and delete the image the The memory image cannot bethe displayed. Your computer enough to open or the image have been the le insert again.it Ifagain. the red x stillmay appears, and then displayed. Your may not have enough image, or the image may have corrupted. Restart your computer, you may have to delete the The image and image computer may not memory to open the image, been corrupted. Restart your and then open the le again. If the then insert it again. The then cannot be have enough memory or theappears, image may have computer, and open the to red x still you may have The image displayed. to open the image, or been corrupted. Restart le again. If red x still delete the image and then insert it T be imag cannot Your thecomputer, image may have your and then appears, you may have to again. h e displayed computer may been corrupted. open the le again. If the delete the image and then e computer, cann . your Your not have Restart red x appears, you may insert it still again. ot be computer enough and then open the le have to delete the image displ may not memory to again. If the red x still and then insert it again. have open the may have appears, you image, or the to delete the image and then insert it

Op !! er !! at!! io !! n!a !n !! d! ma ! i!n !! te !n !! a! nc !e !!

Waterfall Model

This model is easy to understand and reinforces the notion of define before design and design before code. The model expects complete & accurate requirements early in the process, which is unrealistic

Waterfall Model
Problems of waterfall model i.! It is difficult to define all requirements at the beginning of a project ii.! This model is not suitable for accommodating any change iii.! A working version of the system is not seen until late in the projects life iv.! It does not scale up well to large projects. v.! Real projects are rarely sequential.
9

Incremental Process Models


They are effective in the situations where requirements are defined precisely and there is no confusion about the functionality of the final product. After every cycle a useable product is given to the customer. Popular particularly when we have to quickly deliver a limited functionality system.

10

Iterative Enhancement Model


This model has the same phases as the waterfall model, but with fewer restrictions. Generally the phases occur in the same order as in the waterfall model, but they may be conducted in several cycles. Useable product is released at the end of the each cycle, with each release providing additional functionality. "! Customers and developers specify as many requirements as possible and prepare a SRS document. "! Developers and customers then prioritize these requirements

"! Developers implement the specified requirements in one or more cycles of design, implementation and test based on the defined priorities.
11

Iterative Enhancement Model


Requirements specication
The image cannot be displayed. Your computer may not have enough memory to open the image, or the image may have been corrupted. Restart your computer, and then open the le again. If the red x still appears, you may have to delete the image and then insert it again.

Architectural design

The image cannot be displayed. Your computer may not have enough memory to open the image, or the image may have been corrupted. Restart your computer, and then open the le again. If the red x still appears, you may have to delete the image and then insert it again.

The image cannot be displayed. Your computer may not have enough memory to open the image, or the image may have been corrupted. Restart your computer, and then open the le again. If the red x still appears, you may have to delete the image and then insert it again.

Detailed

design
The image cannot be displayed. Your computer may not have enough memory to open the image, or the image may have been corrupted. Restart your computer, and then open the le again. If the red x still appears, you may have to delete the image and then insert it again.

Implementation and unit testing

The image cannot be displayed. Your computer may not have enough memory to open the image, or the image may have been corrupted. Restart your computer, and then open the le again. If the red x still appears, you may have to delete the image and then insert it again.

Integration and testing

Operation and Maintenance

The image cannot be displayed. Your computer may not have enough memory to open the image, or the image may have been corrupted. Restart your computer, and then open the le again. If the red x still appears, you may have to delete the image and then insert it again.

12

The Rapid Application Development (RAD) Model


o! o! o! Build a rapid prototype Give it to user for evaluation & obtain feedback Prototype is refined With active participation of users

Requirements Planning

User Description

Construction

Cut over

13

The Rapid Application Development (RAD) Model

Not an appropriate model in the absence of user participation. Reusable components are required to reduce development time. Highly specialized & skilled developers are required and such developers are not easily available.

14

Evolutionary Process Models


Evolutionary process model resembles iterative enhancement model. The same phases as defined for the waterfall model occur here in a cyclical fashion. This model differs from iterative enhancement model in the sense that this does not require a useable product at the end of each cycle. In evolutionary development, requirements are implemented by category rather than by priority. This model is useful for projects using new technology that is not well understood. This is also used for complex projects where all functionality must be delivered at one time, but the requirements are unstable or not well understood at the beginning.
15

Evolutionary Process Model


Concurrent activities Specification Initial version

Outline description

Development

Intermediate versions

Validation

Final version

16

Prototyping Model

#!

The prototype may be a usable program but is not suitable as the final software product.

#! The code for the prototype is thrown away. However experience gathered helps in developing the actual system. #! The development of a prototype might involve extra cost, but overall cost might turnout to be lower than that of an equivalent system developed using the waterfall model.

17

Prototyping Model

! Linear model ! Rapid

18

Spiral Model
Models do not deal with uncertainly which is inherent to software projects. Important software projects have failed because project risks were neglected & nobody was prepared when something unforeseen happened. Barry Boehm recognized this and tired to incorporate the project risk factor into a life cycle model. The result is the spiral model, which was presented in 1986.

19

Spiral Model

20

Spiral Model
The radial dimension of the model represents the cumulative costs. Each path around the spiral is indicative of increased costs. The angular dimension represents the progress made in completing each cycle. Each loop of the spiral from X-axis clockwise through 360o represents one phase. One phase is split roughly into four sectors of major activities. $! $! Planning: Determination of objectives, alternatives & constraints. Risk Analysis: Analyze alternatives and attempts to identify and resolve the risks involved.

$! Development: Product development and testing product. $! Assessment: Customer evaluation


21

Spiral Model
$! An important feature of the spiral model is that each phase is completed with a review by the people concerned with the project (designers and programmers) The advantage of this model is the wide range of options to accommodate the good features of other life cycle models. It becomes equivalent to another life cycle model in appropriate situations.

$! $!

The spiral model has some difficulties that need to be resolved before it can be a universally applied life cycle model. These difficulties include lack of explicit process guidance in determining objectives, constraints, alternatives; relying on risk assessment expertise; and provides more flexibility than required for many applications.
22

The Unified Process


! Developed by I.Jacobson, G.Booch and J.Rumbaugh. ! Software engineering process with the goal of producing good quality maintainable software within specified time and budget. ! Developed through a series of fixed length mini projects called iterations. ! Maintained and enhanced by Rational Software Corporation and thus referred to as Rational Unified Process (RUP).

23

Phases of the Unified Process

Inception
Time

Elaboration

Construction

Transition

Definition of objectives of the project

Planning & architecture for the project

Initial operational capability

Release of the Software product

24

Phases of the Unified Process


! Inception: defines scope of the project. ! Elaboration - How do we plan & design the project? - What resources are required? - What type of architecture may be suitable? ! Construction: the objectives are translated in design & architecture documents. ! Transition : involves many activities like delivering, training, supporting, and maintaining the product.

25

Initial development & Evolution Cycles

V1

Inception Inception Inception

Elaboration Elaboration Elaboration

Construction Construction Construction

Transition Transition Transition


V2

Initial development Cycle

Evolution Cycle V3

Continue till the product is retired

V1=version1, V2 =version2, V3=version3


26

Iterations & Workflow of Unified Process

27

Inception Phase
The inception phase has the following objectives: $! $! $! $! Gathering and analyzing the requirements. Planning and preparing a business case and evaluating alternatives for risk management, scheduling resources etc. Estimating the overall cost and schedule for the project. Studying the feasibility and calculating profitability of the project.

28

Outcomes of Inception Phase

Prototypes Business model Vision document Inception

Project plan Initial risk assessment

Initial business case Initial Initial use case model project Glossary

29

Elaboration Phase
The elaboration phase has the following objectives: $! $! $! $! $! Establishing architectural foundations. Design of use case model. Elaborating the process, infrastructure & development environment. Selecting component. Demonstrating that architecture support the vision at reasonable cost & within specified time.

30

Outcomes of Elaboration Phase

Development plan Preliminary User manual Use case model Elaboration

Supplementary Requirements with non functional requirement

Revised risk document An executable architectural prototype Architecture Description document

31

Construction Phase
The construction phase has the following objectives: $! $! $! $! $! Implementing the project. Minimizing development cost. Management and optimizing resources. Testing the product Assessing the product releases against acceptance criteria

32

Outcomes of Construction Phase


Test Outline Documentation manuals Software product Construction Operational manuals Test Suite A description of the current release

User manuals

33

Transition Phase
The transition phase has the following objectives: $! $! $! $! $! Starting of beta testing Analysis of users views. Training of users. Tuning activities including bug fixing and enhancements for performance & usability Assessing the customer satisfaction.

34

Outcomes of Transition Phase

Transition Product release

Beta test reports

User feedback

35

! Somewhat controversial new approach ! Software development team determines the various features (Stories) ! Estimate duration and cost of each feature ! Client select features for next build using cost benefit analysis ! Each build is divided into tasks ! Test cases for task are drawn up first ! Pair programming (working with a partner on one screen) ! Continuous integration of tasks

36

! Tasks are integrated into the current version of the product ! Test cases used for the tasks are retained and utilized in all further integration testing

37

! Computers are put in center of large room lined with small cubicles ! Client representative is always present ! No individual can work overtime for 2 successive weeks ! No specialization. All members of XP team work on specifications, design, code and testing ! There is no overall design modified while the product is being built.. This procedure is known as refactoring

38

! XP has had some successes on small and medium sized projects ! Good when requirements are vague or changing ! Too soon to evaluate XP

39

! Microsofts life-cycle model ! Requirements analysisinterview potential customers and extract a list of features with priorities set up by the customers ! Draw up specifications ! Divide project into 3 or 4 builds ! First build consists of the most critical features, the second build consists of the next most critical features and so on. ! Each build is carried out by small teams working in parallel
40

! At the end of the day all the teamsput together the partially completed components and synchronize (test and debug) ! At the end of the buildstabilize (freeze build i.e. any remaining faults that have been detected are fixed). ! Repeated synchronization steps ensure that the components always work together !Developers get early insights into operation of product and can modify the requirements
41

S-ar putea să vă placă și