Presentation is loading. Please wait.

Presentation is loading. Please wait.

Methodologies/Life Cycle Models

Similar presentations


Presentation on theme: "Methodologies/Life Cycle Models"— Presentation transcript:

1 Methodologies/Life Cycle Models

2 Some Advantages of a Methodology …
Ensures a consistent and repeatable process Creates traceable projects Enables better project communications Makes projects more robust with respect to personnel changes Enhances project troubleshooting and error-correcting Improves accommodation of changes in requirements © The KTP Company, 2005

3 Some Standard Life Cycle Models
The Waterfall Model (Linear Sequential Model) Prototyping Model Rapid Application Development (RAD) Model Evolutionary Development Models © The KTP Company, 2005

4 Waterfall Model The Waterfall Model (Linear Sequential Model) is the de facto standard model Uses distinct phases Deliverables of one phase provide input for next phase Walkthroughs and sign-offs at end of each phase The BCBSSC methodology is based on the Waterfall Model © The KTP Company, 2005

5 Waterfall Model (cont’d)
Analysis requirements Design program design Code/ Test coded and tested system Delivery/ Maintenance Implementation Post-Implementation © The KTP Company, 2005

6 Prototyping Life Cycle Model
May be particularly useful when: User interface is an important component of the product User interface is particularly complex Customer leaves interface design to systems analyst Requirements appear to be somewhat in doubt, i.e. not fully agreed upon by customer(s) © The KTP Company, 2005

7 Prototyping as a Complete Life Cycle
Begin Prototype Accepted Complete Implementation and Testing of Production System Determine Requirements & Design repeat this cycle Build Mockup of System Evaluate Mockup With Customer © The KTP Company, 2005

8 Hybrid Prototyping/Waterfall Model
Analysis employing prototyping requirements Design This is the most frequent use for prototyping program design Code tested system Delivery/ Maintenance © The KTP Company, 2005

9 Prototyping: Pros and Cons
Integral involvement of the customer More robust requirements Great for refining user interfaces Cons Customers may have unrealistic expectations for a quick delivery of the final system Not particularly applicable when complex processing algorithms or performance issues are important © The KTP Company, 2005

10 Hybrid Model May Be Very Useful ...
When user interface(s) are: New Complex Not fully agreed upon by customer(s) When customer: Has a history of providing poorly thought out requirements Has little experience in specifying requirements Leaves interface design to systems analysts Photo by larar © The KTP Company, 2005

11 Prototypes Can Reduce Surprises
Prototypes can help avoid customer surprises about: User interfaces Scope of the system System work flow issues How the problem is approached Photo by Benjamin Earwicker © The KTP Company, 2005

12 RAD (Rapid Application Development)
Rapid Application Development (RAD) Model may be particularly applicable when: Requirements are well understood and scope is tightly constrained Reusable software components are available System to be developed is highly modular “High speed” adaptation of the Waterfall model © The KTP Company, 2005

13 RAD Characteristics Requirements must be well understood and scope must be tightly constrained for RAD to be successful RAD teams work in parallel “Waterfall” development teams Best employed with highly modular systems Photo by Kenneth De Buck © The KTP Company, 2005

14 Evolutionary Development Models
May be useful when: Rapid development of incremental versions of the product seems desirable Not all requirements are known at the beginning and the remaining requirements must be defined over a period of time Developing “experimental products” in which design of later increments will depend on customer's acceptance of earlier increments © The KTP Company, 2005

15 Two Evolutionary Models
Incremental Model Spiral Model © The KTP Company, 2005

16 Incremental Model Modified Waterfall model
Deliverable increments of the final product are produced sequentially Phased delivery Each phase delivers a usable product Photo by N. Ghorn © The KTP Company, 2005

17 The Incremental Model -- Strategy
The first increment, or phase, is usually a “core” or high priority component/product This core is delivered, evaluated, and used by the customer Other components or phases are added incrementally Can be used to “buy” time when budgets and/or schedule will not permit the delivery of the full system at one time © The KTP Company, 2005

18 Incremental Model -- An Example
Suppose our objective is to development a word processing system. Using the Incremental model we might: Develop basic file management, document creation, and editing functions as the first deliverable (the “core” product) Refine the core and deliver more sophisticated editing capabilities in the second increment Provide spell-checking in the third increment Add page layout in the fourth increment Each increment could be developed using a methodology based on the Waterfall model or the hybrid prototype/Waterfall model © The KTP Company, 2005

19 Spiral Model Couples iterative characteristic of prototyping with the incremental model Rapid development of partially complete incremental versions of the product Spiral stairway in a Vatican museum Photo by Warren Gibb © The KTP Company, 2005

20 The Spiral Model -- Strategy
Product is developed in increments, but increments may be incomplete (prototypes, shells, etc.) Increments are delivered, then evaluated for further development More increments may be added as we learn more about what is required and what will be acceptable © The KTP Company, 2005

21 Spiral Model Illustrated
2 formulate requirements 3 1 analyze needs with customer plan increment modifications finish/accept 4 start design new and modified (more detailed) increments evaluate with customer 6 build & release next version 5 © The KTP Company, 2005

22 Group Exercise Take a moment or two to consider the following..
What are the strengths/weaknesses of the following models? Waterfall Hybrid waterfall/prototyping RAD Incremental Spiral © The KTP Company, 2005

23 Team Activity #1 You’ve been assigned to lead the analysis for a new Web-based proof-of-concept project that will provide Web “front-end” access to your company’s traditionally mainframe-based applications. This will be the company’s first foray into Web-based development. The details of the new system requirements are still a bit sketchy, but management is convinced that such systems will become increasingly important for the future of the company. The company’s primary business is financial and investment services and one of the primary benefits management expects to realize is increased customer self-service and a subsequent reduction in costs of providing a subset of the company’s services. © The KTP Company, 2005

24 Team Activity #1 (cont’d)
Following are some essential features and high-level objectives for the proof-of-concept system. The underlying philosophy for the system is one of customer self-service – a new approach for this company. The system should provide customers direct access to status information appropriate to their current accounts. The system should provide customers access to their account history with the company. The system should provide “canned” responses for frequently asked questions about investment strategies. The system should provide an opportunity for customers to pose additional questions (to be responded to later). Identify what software life cycle model(s) you think might be appropriate for this project. Explain your choice(s). © The KTP Company, 2005


Download ppt "Methodologies/Life Cycle Models"

Similar presentations


Ads by Google