Sunday, November 21, 2010

Software Development prototyping

Prototyping is a way of testing certain areas of a product before it can actually be put into production. This may vary on the different areas you wish to test in a product. Prototypes can be used to give users an idea of what the final product would look like, its size or to see if the colours and layouts are suitable for its purpose, this can then be used to also help attract funding.
Prototypes can also be used to make sure the product can function properly without having to make the full size product in such detail. With software prototyping there are two basic methods used, these are Throwaway Prototyping and Evolutionary Prototyping.

Throwaway Prototyping (or close ended)
this involves the model being created to test various areas of the system, these prototypes can then be discarded once the testing is completed. This is used more towards the beginning of the design process to try different methods and helps further development of the model. This method helps identify the main errors and further requirements of the model. Throwaway prototyping is a very fast way of getting feedback, and as a result saves money. The sooner a problem is encountered in the software the easier and cheaper it is to fix.

Evolutionary Prototyping.

Evolutionary Prototyping is based on building a very detailed and well structured system that is constantly edited and changed. This allows specific features to be added in and tested, which wouldn’t be able to be incorporated during the design phase. These are functional systems unlike throwaway prototyping.

As users work with this prototype they are able to determine flaws or areas that can be improved on.

Advantages:

  • Can prevent errors by testing the software before it is completed
  • Saves time and money by finding problems early in development
  • Allows feedback from users to ensure it is simple to use and meets all requirements.
  • With the aid of a prototype, it becomes easier to attract funding
  • Helps to make sure the product is up to a certain level of quality.


Disadvantages:

  • Analysis on a specific part of the prototype can distract the developer from the overall system.
  • Developer might get too attached to it.
  • Developer may spend too much time on the prototypes and make them too complex, the whole point of the prototypes is to be completed quickly.
  • Structure of system can be damaged since many changes could be made.

No comments:

Post a Comment