Software Process Models

Software Process model

 

A simplified representation of a software process, presented from a specific perspective Process model describes the workflow How the process elements interact together.

Software Development LifeCycle (SDLC)

The steps through which the product progresses
     

Requirements Specification phase Design phase Implementation phase Integration phase Maintenance phase Retirement

.

Process Models   Waterfall model Incremental Process Models   Rapid application development model Incremental model Prototyping model Spiral model Component-Based Development Formal Method model  Evolutionary Process Models    Specialized Process Models    Comparison of life-cycle models .

Waterfall model    Requirements are reasonably understood. When work flow is linear in fashion Systematic sequential approach .

) (or (or) l de cle del o ll M ife cy al Mo fa ter cal L enti Wa ssi equ Cla ear S Lin .

.

Process Models   Waterfall model Incremental Process Models   Rapid application development model Incremental model Prototyping model Spiral model Component-Based Development Formal Method model  Evolutionary Process Models    Specialized Process Models     Unified Process Comparison of life-cycle models .

but realization may be delayed. The basic software functionality are required early .Incremental model    Evolution of waterfall model New features added to 1st Increment(core product) Incremental software development model may be applicable to projects where:   Software Requirements are well defined.

SW Functionality and features Time Inc 1 Inc 2 Inc 3 .

When team has few people by the deadline of the project.Incremental Model’s Use   Each increment product is to be delivered. .

RAD Model         Rapid Application Development Short development cycle Faster development (60-90) days High quality results Use of (CASE) Tools Component based construction System delivered in short time (2 to 3 months) Useful where requirements are well understood and scope is limited .

RAD Model (four phases) .

Process Models   Waterfall model Incremental Process Models   Rapid application development model Incremental model Prototyping model Spiral model Component-Based Development Formal Method model  Evolutionary Process Models    Specialized Process Models     Unified Process Comparison of life-cycle models .

Prototyping      Early approximation of a final system Linear and iterative Customer is unable to define the system Requirements are not freezed a prototype is built to understand the requirements .

Communication Communication Deployment Delivery & Deployment Delivery & Feedback Feedback Quick Plan Quick Plan Modeling Quick Design Modeling Quick Design Construction of Prototype Construction of Prototype .

Spiral Model  Simplified form  Waterfall model plus risk analysis Alternatives Risk analysis Evaluation Planning of next phase  Precede each phase by    Follow each phase by   .

Progress through steps Determine Objectives. Alternatives. verify Next level Product . Constraints Evaluate Alternatives. identify Resolve risks 1 p1 p2 2 Operational prototype 4 Plan nextphase 3 Develop.

.

Process Models   Waterfall model Incremental Process Models   Rapid application development model Incremental model Prototyping model Spiral model Component-Based Development Formal Method model  Evolutionary Process Models    Specialized Process Models     Unified Process Comparison of life-cycle models .

.Component Based Development  COTS  Commercial off-the-shelf software components developed by vendors who offer them as products.  Decomposition of the engineered systems into functional or logical components with well-defined interfaces used for communication across the components.

. tin g.Co De mp Mo sig one Co dul n ar nt in mp e I chi teg re nte tec rat he ge tur io ns ra e n ive tio tes n.

Formal Methods Model   Mathematically based techniques for representing and analysis of software. Formal methods include     Formal specification Specification analysis and proof Transformational development Program verification .

Formal Methods Model      Reduces requirements errors as it forces a detailed analysis of the requirements Incompleteness and inconsistencies can be discovered and resolved Currently very time consuming and expensive Extensive training required Difficult to use this model to communicate with the customer. .

Unified Modeling Language  It was created to support the OO design and modeling.  iterative and incremental process .Unified Process   Contains features of OOA and OOD. UML.

Phases of Unified process All the phases are concurrent in nature  Inception  Elaboration  Construction  Transition  Production .

UP (contd)  Inception   Customer communication Planning  Identify resources.  Business requirements are identified   Rough architecture  . assess risks. functions and features that populate them. A tentative outline of major sub-systems. defines schedule In the form of use cases.

analysis model.UP (contd)  Elaboration     Customer communication Modeling activity Expands the use cases. Evaluate scope. implementation model and deployment model. design model. risks. Expands the architecture to:  Use case model. project delivery dates  Review plan and make modifications  .

Implement all functions and features for that increment. Conduct unit testing for the components Integrate components.UP (contd)  Construction      Develop software components (that make the use cases operational). . Complete the analysis and design models.

guidelines. Software is given to users for beta testing. installation procedures. Get user feedback The increment is now a useable software release. .UP (contd)  Transition     Create user manuals.

UP (contd)  Production    On going use of the software is monitored. Provide support Defect reports and request for changes are submitted and evaluated. .

All activities are in iterative fashion Requirements are established initially development activities are iterative.Few Differences.  Waterfall Model:   Good for project management Well constructed product.. Dealing with objects  Evolutionary Models:   Incremental Models:    Unified Process:  .

Roger S. 2002. WCB/McGraw-Hill. Pressman “Software Engineering. Object-Oriented and Classical Software Engineering 5th Edition .3.2. 6th Ed.References   Chapter 1 .A practitioner’s approach”.

Sign up to vote on this title
UsefulNot useful