Prototyping: Discover user expectations before implementation
Become an in-demand BA in 6 months or less!
Talk to our Learning Advisor Today
Business Analysts find prototyping extremely useful when it comes to eliciting and validating stakeholder needs. It helps in guiding stakeholders thinking process during requirements elicitation and analysis.
Stakeholders often find prototyping to be a concrete means of identifying, describing, and validating their interface needs.
What exactly is Prototyping?
Prototyping details user interface requirements and integrate them with other requirements such as use cases, scenarios, data, and business rules. It is a proven method for product design and helps a great deal in demonstrating what a product looks like and behaves like in the early stages of design.
Prototypes can be working representations or non-working models of a solution or proposed product.
What are the different types of prototypes?
Horizontal prototype: Shallow, and a wide view of the system’s functionality without any business logic implemented.
Vertical prototype: A deep, and usually narrow slice of the entire system’s functionality.
Throw-away prototype: Seeks to quickly uncover, and clarify interface requirements using simple tools, sometimes just paper, and pencil. This approach focuses on functionalities which are not easily elicited by other techniques, have conflicting viewpoints, or difficult to understand. Just like the name indicates, these prototypes are not maintained as a deliverable once the final system is implemented.
Evolutionary or Functional prototype: This prototype extends the initial interface requirements into a fully functioning system. This usually requires a specialized prototyping tool or language and produces a working application.
Steps for prototyping
Determine the prototyping approach. Identify the functionality to be modeled.
Building a prototype is an iterative process. One should outline the high-level views initially. In subsequent iterations, add details depending upon the scope (horizontal versus vertical).
For example, the first prototype of a report may produce a list of report requirements such as data attributes, selection criteria, and derivation rules for totals. Further analysis may draft a detailed layout of the report.
For UI prototyping, the initial focus is on an end-to-end understanding of the interface flows. Then comes the details of each UI.
A storyboard (also known as a Dialog map, Dialog hierarchy or Navigation flow) portrays navigation paths across interface components. This visual includes abstractions of each screen along with directional arrows that indicate allowable navigation flows.
Screen prototypes provide data attributes, selection criteria, and supporting business rules.
A screen layout or mock-up provides a graphical representation of UI elements. One can apply organizational standards or use a style guide for this.
Some of the forms of prototyping in use today are:
Form Study Prototype: The focus here is not on the actual functionality but to explore the basic size, look, and feel of a product that will be manufactured.
Usability Prototype: The focus here is to test the end user interaction with the system without including other factors like appearance, configuration etc.
Visual Prototype: The focus here is to test the visual aspects of the solution without modeling the complete functionality.
Functional Prototype: The focus is on creating a working model to test the workflow, software functionality and qualities of the system.
Validate that the prototype represents the user’s needs. Scenarios are useful to test interfaces.
- Supports users who are more comfortable, and effective at articulating their needs by using pictures, as prototyping lets them “see” the future system’s interface.
- Allows for early user interaction, and feedback.
- A throw-away prototype can be an inexpensive approach to quickly uncover, and confirm a variety of requirements that go beyond just the interface such as processes, data, and business rules.
- A vertical prototype can demonstrate what is feasible with existing technology, and identify technology gaps.
- An evolutionary/functional prototype provides a vehicle for designers, and developers to learn about users’ interface needs, and to evolve system requirements.
- Can take considerable time if the process gets bogged down by the “how’s” rather than “what’s”.
- Assumptions about underlying technology need to be made to initiate prototyping.
- Users may develop unrealistic expectations regarding the delivered system’s performance, completion date, and reliability, and usability characteristics. An elaborate, detailed prototype can look similar to a fully functional system.
- Users may focus on design specifications of the solution rather than the requirements that the solution must address. This can constrain the solution design.
Now that you have a fair understanding of what the prototyping technique is all about, don't miss out on the important part-share your prototypes early and often with the involved stakeholders. It not only helps in identifying missing details but also helps in understanding the feasibility of developing the components involved.
Remember: Continuous collaboration helps a great deal in building a better product!