You are on page 1of 31

SAD GROUP 1

SURNAME NAME SEX REG


NUMBER
MAGORE NGIRANDI M R201426H

RINGANAYI JUSTIN M R201366H

NDIRINGEPI RICHARD M R201716H

KASHIRI LOSIANA F R201311H


What is prototyping
DEFINATION

PROTOTYPING IS THE PROCESS OF BUILDING A MODEL OF A


SYSTEM. IN TERMS OF AN INFORMATION SYSTEM, PROTOTYPES
ARE EMPLOYED TO HELP SYSTEM DESIGNERS BUILD AN
INFORMATION SYSTEM THAT INTUITIVE AND EASY TO
MANIPULATE FOR END USERS
IT IS A SYSTEMS DEVELOPMENT METHOD IN WHICH A
PROTOTYPE IS BUILT, TESTED AND THEN REWORKED AS
NECESSARY UNTIL AN ACCEPTABLE OUTCOME IS ACHIEVED
FROM WHICH THE COMPLETE SYSTEM OR PRODUCT CAN BE
DEVELOPED.
THIS MODEL WORKS BEST IN SCENARIOS WHERE NOT ALL OF
THE PROJECT REQUIREMENTS ARE KNOWN IN DETAIL AHEAD OF
TIME. IT IS AN ITERATIVE, TRIAL-AND-ERROR PROCESS THAT
TAKES PLACE BETWEEN THE DEVELOPERS AND THE USERS.
Characteristics of prototyping

• 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.
STEPS IN PROTOTYPYING

The prototyping approach for building an information


system consists of four basic steps:

1. Identify basic user requirements


2. Quick design
3. Develop initial prototype
4. Use and test the prototype/ user evaluation
5. Revise and enhance the prototype- refinement
6. Implement Product and Maintain
Prototype diagrammatic
expression
Identify basic user requirements

•Users and the builder identify the essential user requirements


(not all of the requirements) needed to enable the design and
construction of the initial model of the new system.
•Initially, these may be sketchy and are not expected to be
detailed. However, they should include the most critical outputs
desired in terms of data and operations.
•The intent of this step is to determine the feasibility of the
system (whether the data are even available), the potential
scope and the critical needs which must be fulfilled for the
system to be useful to the user.
Quick design

 The second phase is a preliminary design or a quick


design. In this stage, a simple design of the system is
created. However, it is not a complete design. It gives a
brief idea of the system to the user. The quick design helps
in developing the prototype.
Develop initial prototype

•Using the basic requirements, the builder quickly builds an initial


prototype to perform the key tasks identified in step 1.
•This initial prototype must be implemented within a very short
time scale to maintain the user's interest and confidence in the
process.
•Since this is merely an initial version, the prototype must be
designed in a modular form so that it is flexible and eases adding,
removing or altering features.
•Fourth-generation and very high-level languages have proven to
be useful tools.
•The builder then demonstrates the prototype to the users and
determines if the system provides for the user's most critical needs
Use and test the prototype

•The fourth step is to utilize the prototype to clarify the user's


requirements.
•The user's comments on the prototype should be captured to
determine the necessary modifications and enhancements that
will help to refine the functional and operational requirements
of the system.
•The users then contact the builder to implement the desired
revisions.
•Prototyping takes advantage of the inability of the user to
define his needs and/or the builder to understand those needs
Revise and enhance the
prototype
•The builder quickly revises the prototype to correct the
undesirable or missing features identified by the users in step 4
•The builder then explains all of the changes and allow the user
to utilize the new version.
•A number of iterations of steps 3 and 4 will be required until
the user decides the system has no value - in which case the
prototype is discarded, or the user is satisfied with the
functioning of the prototype - in which case it becomes an
operational prototype that accurately represents the users
requirements
Implement Product and
Maintain
 Once the final system is developed based on the final
prototype, it is thoroughly tested and deployed to
production. The system undergoes routine maintenance
for minimizing downtime and prevent large-scale failures.
TYPES OF PROTOTYPES

1. Rapid (Throwaway) prototyping


2. Evolutionary prototyping
3. Incremental prototyping
4. Extreme prototyping
RAPID (THROWAWAY)
PROTOTYPING
 Rapid prototyping is the most commonly used And Plus, Its name
refers to the ease and speed with which a prototype can be
modified to try different ideas with the user audience and
incorporate their feedback.

 Rapid prototyping is also known as “throwaway prototyping”


because the prototype is expected to be relevant only in the short
term, such as one sprint in the Agile development framework. It
may go through several cycles of feedback, modification, and
evaluation during that time. When all the stakeholders are
satisfied, it becomes a reference for the designers and developers
to use. After the sprint is completed, the prototype is discarded
and a new one is built for the next sprint.
EVOLUTIONARY
PROTOTYPING
 An evolutionary prototype differs from the traditional
notion of a software prototype; an evolutionary prototype is
a functional piece of software, not just a simulation.
Evolutionary prototyping starts with a product that meets
only the system requirements that are understood. It won’t
do everything the customer requires, but it makes a good
starting point. New features and functions can be added as
those requirements become clear to the stakeholders. That’s
the “evolutionary” nature of this prototype.
INCREMENTAL
PROTOTYPING
 Incremental prototyping is useful for enterprise software
that has many modules and components which may be
loosely related to one another. In incremental prototyping,
separate small prototypes are built in parallel. The
individual prototypes are evaluated and refined separately,
and then merged into a comprehensive whole, which can
then be evaluated for consistency in look, feel, behavior,
and terminology
EXTREME PROTOTYPING

Extreme prototyping is more common for web application


development. Web applications are composed of:
 Presentation layer
• Displayed in the user’s browser
 Services layer
• Communications services
• Business logic
• Authentication and authorization
• Other back-end services
Extreme prototyping is
conducted in three phases
 Build HTML wireframes to simulate the presentation layer.
These web pages have limited interactivity. They are
complete enough to show users the various user journeys
through the application.
 Transform the wireframes to fully functional HTML pages,
tying them to a simulated services layer.
 Code and implement the services layer.
CLASSIFICATION OF
PROTOTYPING
1. Exploratory Prototyping
 Aims at discovering and clarifying the user requirements for
the target system.
 Useful during the early stages of system development, as it
focuses on the communications problem area between the
prospective users and the system developers.
 The prototype acts as a catalyst to encourage creative
participation and stimulate suggestions from all involved
parties.
CLASSIFICATION OF
PROTOTYPING
2. Experimental Prototyping
 It takes place in the technical design phase and involves
building a prototype of a proposed solution to a particular
problem.
 The prototype is then evaluated by experimental use, in
order to determine the adequacy of the proposed solution
before costly implementation work begins.
 The proposed solution, and hence the prototype, may
contain all the intended functions of the target system.
Alternatively, it may be testing only those functions of
particular interest.
CLASSIFICATION OF
PROTOTYPING
3. Evolutionary Prototyping
 The prototype evolves into the production system.
 The emphasis here is on the gradual adaptation of the
system in order to cope with changing requirements.
 The prototype itself can be looked upon as a sequence of
versions, each version being constructed, used and
evaluated before being treated as a prototype for its
successor.
CLASSIFICATION OF
PROTOTYPING
4. Performance Prototyping
 Used to indicate whether the target system in its intended
environment will be able to handle its anticipated workload.
 The application prototype is run in the operational situation
with a simulated workload.
 It is of value in helping to detect incompatible
combinations of problem, hardware, software and workload.
 Performance prototyping is considered as a special case of
experimental prototyping
CLASSIFICATION OF
PROTOTYPING
5. Organisational Prototyping
 It puts the prototype in its intended operating environment,
in the user's normal workplace.

The aims of this is twofold:


a) to ascertain that the users requirements will be met;
b) to clarify the-needs of the surrounding organisation.

These needs might for instance include obtaining new or


making changes to any of the following:
CLASSIFICATION OF
PROTOTYPING
• manual procedures;
• staff;
• equipment;
• job descriptions;
• training.
Advantages of Prototyping

1. Reduced time and costs:


 Prototyping improves the quality of the specifications and
requirements provided to customers. With prototyping,
customers can anticipate higher costs, needed changes and
potential project hurdles, and most importantly, potential
end result disasters. Strong prototyping can ensure product
quality and savings for years to come.
Advantages of Prototyping

2. Improved and increased user involvement:

 Most customer want to feel like they are involved with the
intricate details of their project. Prototyping requires user
involvement and enables them to see and interact with a
working model of their project. With prototypes, customers
can give their immediate feedback, request project changes
and alter model specifications. Prototyping most
importantly helps eliminate misunderstandings and
miscommunications during the development process
Advantages of Prototyping

3. Reduced time and costs:

 Nothing makes customers happier than projects that come in


under budget. Prototyping improves the quality of
requirements and specifications provided to customers.
Needed changes detected later in development cost
exponentially more to implement. With prototyping, you
can determine early what the end user wants with faster and
less expensive software.
Disadvantages of Prototyping

1. Insufficient analysis:

 A focus on a limited prototype can distract developers from


properly analyzing the complete project. The potential end
result: A potential overlooking of better solutions,
incomplete specifications or the conversion of limited
prototypes into poorly engineered and developed final
projects that are hard to maintain.
Disadvantages of Prototyping

2. User confusion:

 The worst-case scenario of any prototype is customers


mistaking it for the finished project. Customers seeing a
rough prototype may not understand it merely needs to be
finished or polished. Also, customers can wrongly perceive
the prototype to accurately model the performance of the
final system. Customers may also grow fond of prototype
features that are not part of the final system.
Disadvantages of Prototyping

3. Developer misunderstanding of user objectives:


 For every project to be successful, developers and
customers must be on the same page and share the same
project objectives. If customers require all proposed features
of a prototype be included in the final product, this can lead
to team and mission conflicts.
Disadvantages of Prototyping

4. Excessive Development Time:

Remember, prototypes are by nature designed to be developed


quickly. If a developer spends too much time developing a
complex prototype, the project can run into roadblocks
(especially if there are disagreements over prototype details)
and run over both time and cost budgets
conclusion

The Prototype Conclusion


 For projects that require revision and end user
feedback and recommendation implementation,
prototyping is a must. Prototyping directly determines
the direction of the entire project, and its eventual
success. Prototyping identifies and corrects problems
long before they can negatively impact and irreparably
harm the final finished project.

You might also like