Software cycles
-
Upload
nikita-savchenko -
Category
Technology
-
view
1.100 -
download
0
description
Transcript of Software cycles
![Page 1: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/1.jpg)
Development cycles
Waterfall, Agile, Prototyping, Spiral
![Page 2: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/2.jpg)
Waterfall
1. History of water fall model.
2. Features of water fall model.
3. Phase of water fall model.
4. Brief description of phases.
5. Advantages.
6. Disadvantages.
![Page 3: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/3.jpg)
History of waterfall
1)The first formal description of the waterfall model is often cited as a 1970 article by Winston W. Royce
2)Royce did not use the term "waterfall" in this article.
3)Royce presented this model as an example of a flawed, non-working model.
![Page 4: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/4.jpg)
Features of waterfall model
1. A Water Fall Model is easy to flow.
2. It can be implemented for any size of project.
3. Every stage has to be done separately at the right time so you cannot jump stages.
4. Documentation is produced at every stage of a waterfall model allowing people to understand what has been done.
5. Testing is done at every stage.
![Page 5: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/5.jpg)
Waterfall model
![Page 6: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/6.jpg)
Phases of waterfall model
Waterfall model has 5 different phases, Which are following.
1. Requirement gathering and Analysis.
2. Design.
3. Coding.
4. Testing.
5. Maintenance.
![Page 7: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/7.jpg)
Brief description of phase
1) Requirement gathering and Analysis.
This is the first phase of waterfall model which includes a meeting with the customer to understand his requirements.
This is the most crucial phase as any misinterpretation at this stage may give rise to validation issues later.
The software definition must be detailed and accurate with no ambiguities.
It is very important to understand the customer requirements and expectations so that the end product meets his specifications.
![Page 8: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/8.jpg)
Brief description of phase
Requirement gathering and Analysis phase the basic requirements of the system must be understood by software engineer, who is also called ANALYST.
All this requirements are then well documented and discussed further with the customer for reviewing.
![Page 9: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/9.jpg)
Brief description of phase
2) Design.
The customer requirements are broken down into logical modules for the ease of implementation. Hardware and software requirements for every module are Identified and designed accordingly.
Also the inter relation between the various logical modules is established at this stage. Algorithms and diagrams defining the scope and objective of each logical model are developed.
In short, this phase lays a fundamental for actual programming and implementation
![Page 10: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/10.jpg)
Brief description of phase
It is a intermediate step between requirements analysis and coding.
Design focuses on program attribute such as-
1) Data Structure.
2) Software Architecture.
3) Algorithm Details etc…….The requirements are translated in some easy to
represent form using which coding can be done effectively and efficiently.
The design needs to be documented for further use.
![Page 11: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/11.jpg)
Brief description of phase
3) Coding.
Coding is a step in which design is translated into machine-readable form.
If design is done in sufficient detail then coding can be done effectively. Programs are created in this phase.
In this phase all software divided into small module then after doing coding for that small module rather than do coding whole software.
According to design programmers do code and make class and structure of whole software.
![Page 12: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/12.jpg)
Brief description of phase
4) Testing.
In this stage, both individual components and the integrated whole are methodically verified to ensure that they are error-free and fully meet the requirements outlined in the first step.
In this phase testing whole software into two parts 1) HARDWARE & 2) SOFTWARE.
Type of testing is 2-types 1) Inside test. 2) Outside test.
![Page 13: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/13.jpg)
Brief description of phase
5) Maintenance.
This is the final phase of the waterfall model, in which the completed software product is handed over to the client after alpha, beta testing.
After the software has been deployed on the client site, it is the duty of the software development team to undertake routine maintenance activities by visiting the client site.
If the customer suggests changes or enhancements the software process has to be followed all over again right from the first phase i.e requirement analysis.
![Page 14: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/14.jpg)
Brief description of phase
The usually the longest stage of the software. In this phase the software is updated to:
a) Meet the changing customer needsb) Adapted to accommodate changes in the external environmentc) Correct errors and oversights previously undetected in the testing phasesd) Enhancing the efficiency of the softwareObserve that feed back loops allow for corrections to be incorporated into the model.
![Page 15: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/15.jpg)
Advantages of waterfall model
The water fall model is easy to implementation.
For implementation of small systems water fall model is use full.
The project requires the fulfillment of one phase, before proceeding to the next.
It is easier to develop various software through this method in short span of time.
![Page 16: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/16.jpg)
Disadvantages of waterfall model
The requirement analysis is done initially and sometimes it is not possible to state all the requirement explicitly in the beginning.
The customer can see working model of the project only at the end.
If we want to go backtrack then it is not possible in this model.
It is difficult to follow the sequential flow in software development process.
![Page 17: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/17.jpg)
Spiral model
![Page 18: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/18.jpg)
•The spiral model was defined by Barry Boehm in 1988 . •It was not the first model to discuss iterative development, but it was the first model to explain why the iteration matters. •the iterations were typically 6 months to 2 yearslong.
History
![Page 19: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/19.jpg)
![Page 20: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/20.jpg)
When to use The spiral Model
• The user has experience to refine the requirements .
• Some parts of the implementation may depend on future technology
• New user requirements are anticipated but not yet known
• Some user requirements may be significantly more difficult to meet than others, and it is decided not to allow them to delay a usable delivery
![Page 21: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/21.jpg)
Spiral Model VS Waterfall Model
• Risk factor is considered in the Spiral Model but in water fall Model it is not considered.
• In Waterfall the requirements are freezed but this not happens in the Spiral Model.
• Waterfall Model is linear sequential model where Spiral Model works in loop.
• Spiral Model is costly as Risk factor is covered.
• In spiral model there is a better communication between developer and customer.
![Page 22: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/22.jpg)
Spiral Model VS prototype model• number of phases of spiral model is not
fixed-whereas in prototype model number of phases is fixed .
• Risk factor is considered in the Spiral Model but in water fall Model it is not considered
• Spiral model includes many prototype models
• Spiral model is used when requirement is not clear and needs conformation while in prototype model requirement is clear but complex
• In spiral model customer interaction continous to move together. in other hand prototype model customer interaction needs till the prototype is app
![Page 23: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/23.jpg)
![Page 24: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/24.jpg)
Quadrant 1: Determine objectives, alternatives, and constraints:
Spiral Model Description
Objectives: performance, hardware/software interface , functionality, etc.
Alternatives: design, reuse, buy, etc.
constraints : imposed on technology, cost, schedule, support, and risk.
Once the system‘s objectives, alternatives, and constraints are understood, Quadrant 2 (Evaluate alternatives, identify, and resolve risks) is performed
![Page 25: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/25.jpg)
Quadrant 2: Evaluate alternatives, identify, resolve risks:
The focus here is on risk study. Each alternative is investigated and prototyped to reduce the risk associated with the development decisions
• Study alternatives relative to objectives and constraints
• Identify risks (lack of experience, new technology, tight schedules, poor process, etc.
• Resolve risks (evaluate if money could be lost by continuing system development
![Page 26: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/26.jpg)
Quadrant 3: Develop, verify, next-level product.
Typical activities
Create a design
Review design
Develop code
Inspect code
Test product
![Page 27: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/27.jpg)
Quadrant 4: Plan next phases.
Typical activities
• Develop project plan
• Develop configuration management plan
• Develop a test plan
• Develop an installation plan
![Page 28: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/28.jpg)
![Page 29: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/29.jpg)
Summary of Spiral steps:• Each successive phase in the project as a new spiral
includes a four steps or phases.• Software requirements in the design are gradually
developed through a series of prototypes. • The exact number of spirals necessary for the
project is flexible and depends on the number of prototypes needed to reach a satisfactory design.
• Since each face requires a certain level of commitment a cumulative cost of the project represented by the width of the spiral
• Once a satisfactory design is reached the software is constructed according the final three process of the waterfall model (Programming – Integration-Delivery)
![Page 30: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/30.jpg)
Advantages
• Provides early indication of insurmountable risks, without much cost
• Users see the system early because of rapid prototyping tools
• Critical high-risk functions are developed first• The design does not have to be perfect • Users can be closely tied to all lifecycle steps• Early and frequent feedback from users• Cumulative costs assessed frequently
![Page 31: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/31.jpg)
Disadvantages
Time spent for evaluating risks too large for small or low-risk projects
Time spent planning, resetting objectives, doing risk analysis and prototyping may be excessive
The model is complex Risk assessment expertise is requiredSpiral may continue indefinitelyDevelopers must be reassigned during non-
development phase activitiesMay be hard to define objective, verifiable
milestones that indicate readiness to proceed through the next iteration
![Page 32: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/32.jpg)
Scrum
![Page 33: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/33.jpg)
•Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time.
•It allows us to rapidly and repeatedly inspect actual working software (every two weeks to one month).
•The business sets the priorities. Teams self-organize to determine the best way to deliver the highest priority features.
•Every two weeks to a month anyone can see real working software and decide to release it as is or continue to enhance it for another sprint.
Scrum in 100 words
![Page 34: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/34.jpg)
Scrum has been used by:•Microsoft•Yahoo•Google•Electronic Arts•High Moon Studios•Lockheed Martin•Philips•Siemens•Nokia•Capital One•BBC•Intuit
•Intuit•Nielsen Media•First American Real Estate•BMC Software•Ipswitch•John Deere•Lexis Nexis•Sabre•Salesforce.com•Time Warner•Turner Broadcasting•Oce
![Page 35: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/35.jpg)
Scrum has been used for:Commercial software
In-house development
Contract development
Fixed-price projects
Financial applications
ISO 9001-certified applications
Embedded systems
24x7 systems with 99.999% uptime requirements
the Joint Strike Fighter
Video game development
FDA-approved, life-critical systems
Satellite-control software
Websites
Handheld software
Mobile phones
Network switching applications
ISV applications
Some of the largest applications in use
![Page 36: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/36.jpg)
Characteristics
Self-organizing teams
Product progresses in a series of month-long “sprints”
Requirements are captured as items in a list of “product backlog”
No specific engineering practices prescribed
Uses generative rules to create an agile environment for delivering projects
One of the “agile processes”
![Page 37: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/37.jpg)
Scrum
CancelGift wrap
Return
Sprint2-4 weeks
Return
Sprint goal
Sprint backlog
Potentially shippableproduct increment
Productbacklog
CouponsGift wrapCoupons
Cancel
24 hours
![Page 38: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/38.jpg)
Putting it all together
![Page 39: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/39.jpg)
Sprints
• Scrum projects make progress in a series of “sprints”• Analogous to Extreme Programming iterations
• Typical duration is 2–4 weeks or a calendar month at most
• A constant duration leads to a better rhythm• Product is designed, coded, and tested during
the sprint
![Page 40: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/40.jpg)
No changes during a sprint
• Plan sprint durations around how long you can commit to keeping change out of the sprint
Change
![Page 41: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/41.jpg)
Scrum framework
•Product owner•ScrumMaster•Team
Roles
•Sprint planning•Sprint review•Sprint retrospective•Daily scrum meeting
Ceremonies
•Product backlog•Sprint backlog•Burndown charts
Artifacts
![Page 42: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/42.jpg)
Scrum framework
•Sprint planning•Sprint review•Sprint retrospective•Daily scrum meeting
Ceremonies
•Product backlog•Sprint backlog•Burndown charts
Artifacts
•Product owner•ScrumMaster•Team
Roles
![Page 43: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/43.jpg)
Product owner
• Define the features of the product• Decide on release date and content• Be responsible for the profitability of the
product (ROI)• Prioritize features according to market value • Adjust features and priority every iteration,
as needed • Accept or reject work results
![Page 44: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/44.jpg)
The ScrumMaster
• Represents management to the project• Responsible for enacting Scrum values and
practices• Removes impediments • Ensure that the team is fully functional and
productive• Enable close cooperation across all roles
and functions• Shield the team from external interferences
![Page 45: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/45.jpg)
The team• Typically 5-9 people• Cross-functional:
• Programmers, testers, user experience designers, etc.
• Members should be full-time• May be exceptions (e.g., database
administrator)
![Page 46: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/46.jpg)
The team
• Teams are self-organizing• Ideally, no titles but rarely a possibility
• Membership should change only between sprints
![Page 47: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/47.jpg)
•Product owner•ScrumMaster•Team
Roles Scrum framework
•Product backlog•Sprint backlog•Burndown charts
Artifacts
•Sprint planning•Sprint review•Sprint retrospective•Daily scrum meeting
Ceremonies
![Page 48: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/48.jpg)
Sprint planning• Team selects items from the product
backlog they can commit to completing• Sprint backlog is created
• Tasks are identified and each is estimated (1-16 hours)
• Collaboratively, not done alone by the ScrumMaster
• High-level design is consideredAs a vacation planner, I want to see photos of the hotels.
Code the middle tier (8 hours)Code the user interface (4)Write test fixtures (4)Code the foo class (6)Update performance tests (4)
![Page 49: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/49.jpg)
The daily scrum• Parameters
• Daily
• 15-minutes
• Stand-up
• Not for problem solving• Whole world is invited
• Only team members, ScrumMaster, product owner, can talk
• Helps avoid other unnecessary meetings
![Page 50: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/50.jpg)
Everyone answers 3 questions
• These are not status for the ScrumMaster• They are commitments in front of peers
What did you do yesterday?1
What will you do today?2
Is anything in your way?3
![Page 51: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/51.jpg)
The sprint demo
• Team presents what it accomplished during the sprint
• Typically takes the form of a demo of new features or underlying architecture
• Informal• 2-hour prep time rule
• No slides
• Whole team participates• Invite the world
![Page 52: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/52.jpg)
Sprint retrospective• Periodically take a look at what is and is not
working• Typically 15–30 minutes• Done after every sprint• Whole team participates
• ScrumMaster• Product owner• Team• Possibly customers and others
![Page 53: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/53.jpg)
•Product owner•ScrumMaster•Team
Roles
Scrum framework
•Sprint planning•Sprint review•Sprint retrospective•Daily scrum meeting
Ceremonies
•Product backlog•Sprint backlog•Burndown charts
Artifacts
![Page 54: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/54.jpg)
Product backlog• The requirements• A list of all desired
work on the project• Ideally expressed such
that each item has value to the users or customers of the product
• Prioritized by the product owner
• Reprioritized at the start of each sprint
This is the product backlog
![Page 55: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/55.jpg)
A sample product backlogBacklog item Estimate
Allow a guest to make a reservation 3
As a guest, I want to cancel a reservation. 5
As a guest, I want to change the dates of a reservation. 3
As a hotel employee, I can run RevPAR reports (revenue-per-available-room)
8
Improve exception handling 8
... 30
... 50
![Page 56: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/56.jpg)
A sprint burndown chartH
ours
![Page 57: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/57.jpg)
Prototyping
![Page 58: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/58.jpg)
System prototyping
• Prototyping is the rapid development of a system• In the past, the developed system was normally
thought of as inferior in some way to the required system so further development was required
• Now, the boundary between prototyping and normal system development is blurred and many systems are developed using an evolutionary approach
![Page 59: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/59.jpg)
Prototyping benefits
• Misunderstandings between software users and developers are exposed
• Missing services may be detected and confusing services may be identified
• A working system is available early in the process• The prototype may serve as a basis for deriving a
system specification• The system can support user training and system
testing
![Page 60: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/60.jpg)
Prototyping benefits
• Improved system usability• Closer match to the system needed• Improved design quality• Improved maintainability• Reduced overall development effort
![Page 61: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/61.jpg)
Prototyping in the software process
• Evolutionary prototyping• An approach to system development where an initial
prototype is produced and refined through a number of stages to the final system
• Throw-away prototyping• A prototype which is usually a practical implementation
of the system is produced to help discover requirements problems and then discarded. The system is then developed using some other development process
![Page 62: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/62.jpg)
Evolutionary prototyping
![Page 63: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/63.jpg)
Evolutionary prototyping advantages
• Accelerated delivery of the system• Rapid delivery and deployment are sometimes more
important than functionality or long-term software maintainability
• User engagement with the system• Not only is the system more likely to meet user
requirements, they are more likely to commit to the use of the system
![Page 64: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/64.jpg)
Throw-away prototyping
• Used to reduce requirements risk• The prototype is developed from an initial
specification, delivered for experiment then discarded• The throw-away prototype should not be considered
as a final system• Some system characteristics may have been left out• There is no specification for long-term maintenance• The system will be poorly structured and difficult to
maintain
![Page 65: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/65.jpg)
Throw-away prototyping
![Page 66: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/66.jpg)
Key points
• A prototype can be used to give end-users a concrete impression of the system’s capabilities
• Prototyping is becoming increasingly used for system development where rapid development is essential
• Throw-away prototyping is used to understand the system requirements
• In evolutionary prototyping, the system is developed by evolving an initial version to the final version
![Page 67: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/67.jpg)
Key points
• Rapid development of prototypes is essential. This may require leaving out functionality or relaxing non-functional constraints
• Prototyping techniques include the use of very high-level languages, database programming and prototype construction from reusable components
• Prototyping is essential for parts of the system such as the user interface which cannot be effectively pre-specified. Users must be involved in prototype evaluation
![Page 68: Software cycles](https://reader038.fdocuments.in/reader038/viewer/2022102823/5462f042af79594d4d8b839f/html5/thumbnails/68.jpg)
Any Questions?