The Code and Fix model It is a simple two phase model. In first phase: code is developed

18
The Code and Fix model It is a simple two phase model. In first phase: code is developed In second phase: fix the code until the client is not satisfied. Then deliver the product to client. 1

description

The Code and Fix model It is a simple two phase model. In first phase: code is developed In second phase: fix the code until the client is not satisfied. Then deliver the product to client. Prototype Model - PowerPoint PPT Presentation

Transcript of The Code and Fix model It is a simple two phase model. In first phase: code is developed

Page 1: The Code and Fix model It is a simple two phase model. In first phase: code is developed

• The Code and Fix model• It is a simple two phase model.

• In first phase: code is developed

• In second phase: fix the code until the client is not satisfied.

• Then deliver the product to client.

1

Page 2: The Code and Fix model It is a simple two phase model. In first phase: code is developed

• Prototype Model• It is employed when it is very difficult to obtain exact

requirements from the customer. (Unlike in other models)

• An prototype is first made based on the initial requirements

• It is early approximation of the final project.

2

Page 3: The Code and Fix model It is a simple two phase model. In first phase: code is developed

Process in prototype

3

Developer customer

Identify very basic

requirements

Intitial Prototype

Revise and enhancement

review

Initially I/O not the security,eff,perf

Input data format,msg,reports

Page 4: The Code and Fix model It is a simple two phase model. In first phase: code is developed

•Stake holders• A person ,group or organization that has interest or concern in an organization

• Stakeholders can affect or be affected by the organization's actions, objectives and policies.

• Some examples of key stakeholders are

• directors, employees,

• Government owners (shareholders)

• suppliers, unions,

• and the community from which the business draws its resources.

4

Page 5: The Code and Fix model It is a simple two phase model. In first phase: code is developed

Evolutionary Models: Prototyping

5

Constructionof prototype

communication

Quickplan

ModelingQuick design

Constructionof prototype

Deploymentdelivery &feedback

Page 6: The Code and Fix model It is a simple two phase model. In first phase: code is developed

Requirement gathering

Quick design

Build prototype

Feedback from customer

Customer/stakeholder

evolution of PT

DesignCoding

testing maintenance

Page 7: The Code and Fix model It is a simple two phase model. In first phase: code is developed

• Throw away Prototype:• Also called close-ended prototyping. Throwaway or

Rapid Prototyping refers to the creation of a model that will eventually be discarded rather than becoming part of the final delivered software.

7

Plan to throw one

PT1

Brook comments

Page 8: The Code and Fix model It is a simple two phase model. In first phase: code is developed

• Prototype Model Advantage• Reduce time and cost

• Improved and increased user involvement

• Effective for On-line System

Prototype Model Disadvantage• Insufficient analysis

• User confusion between PT and Final system

• Slow process

• Too much involvement of customer

8

Page 9: The Code and Fix model It is a simple two phase model. In first phase: code is developed

• Spiral Model

9

Page 10: The Code and Fix model It is a simple two phase model. In first phase: code is developed

• Spiral Model • Another type of evolutionary model (When changes takes place

frequently)

• Proposed by Barry Boehm in 1986 in his research paper “A Spiral Model of Software Development and Enhancement (IEEE).”

• It combines the strength of the previous models

10

Linear iterative prototype

Risk factor

UncertaintyNo risk

handeling

Spiral model

Page 11: The Code and Fix model It is a simple two phase model. In first phase: code is developed

Evolutionary Models: The Spiral

11

p1p2

p3p4

Page 12: The Code and Fix model It is a simple two phase model. In first phase: code is developed

12

Page 13: The Code and Fix model It is a simple two phase model. In first phase: code is developed

• Activities in Spiral Model in each loop

13

Finalizing objective

Development

Risk Analysis

Planning

Objectives are set for each level of loop

Risks are identified

Risks are identified

Use a SDLC model

Based on the review –a decision has to be taken whether to go

through the lopp of sprial again

Page 14: The Code and Fix model It is a simple two phase model. In first phase: code is developed

Risks involved in spiral model• Skill or knowledge ( programming skill)

• Estimation and scheduling risk

• Customer risks (Sudden growth in requirements)

• Commercial risk( competing vendors)

• External risks(Flooding, earthquake, fire etc)

• Employee turnover (When a developers leaves,)

• etc

14

Page 15: The Code and Fix model It is a simple two phase model. In first phase: code is developed

Evolutionary Models: The Spiral• It couples the iterative nature of prototyping with the controlled and systematic aspects of the waterfall model and is a risk-driven process model generator that is used to guide multi-stakeholder concurrent engineering of software intensive systems.

• Two main distinguishing features: one is cyclic approach for incrementally growing a system’s degree of definition and implementation while decreasing its degree of risk. The other is a set of anchor point milestones for ensuring stakeholder commitment to feasible and mutually satisfactory system solutions.

• A series of evolutionary releases are delivered. During the early iterations, the release might be a model or prototype. During later iterations, increasingly more complete version of the engineered system are produced.

• The first circuit in the clockwise direction might result in the product specification; subsequent passes around the spiral might be used to develop a prototype and then progressively more sophisticated versions of the software. Each pass results in adjustments to the project plan. Cost and schedule are adjusted based on feedback. Also, the number of iterations will be adjusted by project manager.

• Good to develop large-scale system as software evolves as the process progresses and risk should be understood and properly reacted to. Prototyping is used to reduce risk.

• However, it may be difficult to convince customers that it is controllable as it demands considerable risk assessment expertise. 15

Page 16: The Code and Fix model It is a simple two phase model. In first phase: code is developed

Three Concerns on Evolutionary Processes

• First concern is that prototyping poses a problem to project planning because of the uncertain number of cycles required to construct the product.

• Second, it does not establish the maximum speed of the evolution. If the evolution occur too fast, without a period of relaxation, it is certain that the process will fall into chaos. On the other hand if the speed is too slow then productivity could be affected.

• Third, software processes should be focused on flexibility and extensibility rather than on high quality. We should prioritize the speed of the development over zero defects. Extending the development in order to reach high quality could result in a late delivery of the product when the opportunity niche has disappeared.

16

Page 17: The Code and Fix model It is a simple two phase model. In first phase: code is developed

• Advantage • Introduces risk management• Prototyping controls costs• Evolutionary development• Release builds for beta testing• Good for large and mission-critical projects.• Additional Functionality can be added at a later date.

• Disadvantage• Lack of risk management experience

• Lack of milestones

• Management is dubious of spiral process

• Doesn’t work well for smaller projects.

• Prototype Vs Production

17

Page 18: The Code and Fix model It is a simple two phase model. In first phase: code is developed

18

Software benchmarks are, for example, run against compilers or database management systems etc.