1.2.8 Purpose of prototypes to demonstrate the proposed system to the client
1.2.9 Importance of iteration during the design process
IB Subtopics
Prototypes
A prototype is either a working or a non-working preliminary version of the final product. Prototypes are commonly used as a way to get feedback from the users or clients.
A prototype should:
- Attract the attention of the client and encourages them to use the product in order to understand it better.
- Encourages active participation between users and developers.
- Gives and idea of the final product
- Helps identify any possible problems with the efficiency or the design
- Helps increase system development speed
Iterations
Iteration refers to the repetition of a set of instructions for a specific number of times or until the operations yield a desired result.
Iterative development of software involved the steady improvement of the design based on various evaluation and testing methods.
You will want to follow an iterative process for the development of your product. You may already have a prototype, as of now, but you MUST make sure that you include the user throughout the development.
Your criterion C document should show how the product works, but it must also include different iterations of your development process.
Principles you should follow (source):
- Your highest priority is to satisfy the customer through early and continuous delivery of valuable software.
- Welcome changing requirements, even late in development. Agile processes harness change for the customer’s competitive advantage.
- Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
- Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
- The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
- At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
- Continuous attention to technical excellence and good design enhances agility.
- Working software is the primary measure of progress.