
85 RAPID PROTOTYPING FOR SOFTWARE PROJECTS WITH USER INTERFACES Ali Tizkar SADABADI1, Naser M. TABATABAEI2 1State Engineering University of Armenia (SEUA), Department of Computer Systems and Informatics 2 Seraj Higher Education Institute, Iran [email protected], [email protected] Key words: rapid prototyping, software, development process, Abstract: Rapid prototyping is a process for creating a realistic model of a product’s user interface. A rapid prototyped user interface is easy to change and gets customers involved early in the design of the product. To prototype successfully, you should pick a rapid prototyping tool that meets your needs, form a small prototyping team, get lots of customer feedback, and iterate until customers are delighted with your user interface. A prototype typically implements only a small subset of the features of the eventual program, and the implementation may be completely different from that of the eventual product. Prototyping has several benefits: The software desig ner and implementer can obtain feedback from the users early in the project. The client and the contractor can compare if the software made matches the software specification, according to which the software program is built. It also allows the software engineer some insight into the accuracy of initial project estimates and whether the deadlines and milestones proposed can be successfully met. The degree of completeness and the techniques used in the prototyping have been in development and debate since its proposal in the early 1970's. 1. INTRODUCTION 2. ELEMENTS OF SUCCESSFUL RAPID PROTOTYPING The process of prototyping involves the following steps: Successful rapid prototyping is performed: 1.Identify basic requirements: Determine •Quickly – The first pass must be done basic requirements including the input and quickly, and subsequent improvements should output information desired. Details, such as be incorporated immediately. While the security, can typically be ignored. prototype needs to give customers a realistic feel 2.Develop Initial Prototype: The initial for the product, it does not need to include prototype is developed that includes only user special graphics or computational algorithms interfaces. that require a lot of time and effort to create. 3.Review: The customers, including end- •Iteratively – The prototyped user interface is users, examine the prototype and provide reviewed, commented upon, improved, and feedback on additions or changes. reviewed again in a repeating cycle. No one 4.Revise and Enhancing the Prototype: Using creates a perfect design the first time. This the feedback both the specifications and the iterative cycle allows you to gradually improve prototype can be improved. Negotiation about the user interface. These cycles can be what is within the scope of the contract/product completed more quickly if the prototype is easily may be necessary. If changes are introduced then changed. a repeat of steps #3 ands #4 may be needed. •Using domain experts – Ideally, the prototype should be built by a domain expert. ISSN – 1453 – 1119 86 UNIVERSITY OF PITESTI – ELECTRONICS AND COMPUTERS SCIENCE, SCIENTIFIC BULLETIN, No. 9, Vol.2, 2009 Domain experts are familiar with the user – his requirements. In rapid prototyping, customers or her job, expectations, requirements, jargon, are involved directly throughout the and priorities. These people may have done the development process. Also, the traditional user’s job in the past. Domain experts can do the process goes from requirements, to design, to best job of incorporating user requirements into development in a fixed series of steps. In rapid the prototype. If your prototyping tool is too prototyping, the process is iterative. This makes difficult for the domain expert to use, make sure it easier to change or add requirements that will that the domain expert works closely with the make the product more popular with customers. programmer. There are two obvious differences between the traditional product development process and 3. TRADITIONAL DEVELOPMENT the rapid prototyping process shown in Figure 1. PROCESS VERSUS RAPID These differences are customer involvement and PROTOTYPING PROCESS iterative design. Customers are involved only indirectly at the beginning of the traditional The traditional process used to develop a process, when marketing and planning specify product follows the general steps shown in requirements. In rapid prototyping, customers Figure 1. During Step 1, “Analyze Proposed are involved directly throughout the System,” marketing and planning identify a development process. Also, the traditional customer need and determine whether the process goes from requirements, to design, to company can develop a product that will development in a fixed series of steps. In rapid profitably meet that need. In Step 2, “Specify prototyping, the process is iterative. This makes Requirements,” marketing and planning draft it easier to change or add requirements that will general requirements for the proposed product. make the product more popular with customers. In Step 3, “Design System,” development writes detailed specifications for the proposed product. 3.1. Types of prototyping: Throwaway In Step 4, “Develop System,” development prototyping creates the product. In Step 5, “Release Product,” the company releases the product. Throwaway or Rapid Prototyping refers to There are two obvious differences between the creation of a model that will eventually be the traditional product development process and discarded rather than becoming part of the the rapid prototyping process shown in Figure 1. finally delivered software. After preliminary These differences are customer involvement and requirements gathering is accomplished, a iterative design. Customers are involved only simple working model of the system is indirectly at the beginning of the traditional constructed to visually show the users what their process, when marketing and planning specify requirements may look like when they are requirements. In rapid prototyping, customers implemented into a finished system. are involved directly throughout the Rapid Prototyping involved creating a development process. Also, the traditional working model of various parts of the system at process goes from requirements, to design, to a very early stage, after a relatively short development in a fixed series of steps. In rapid investigation. The method used in building it is prototyping, the process is iterative. This makes usually quite informal, the most important factor it easier to change or add requirements that will being the speed with which the model is make the product more popular with customers. provided. The model then becomes the starting There are two obvious differences between point from which users can re-examine their the traditional product development process and expectations and clarify their requirements. the rapid prototyping process shown in Figure 1. When this has been achieved, the prototype These differences are customer involvement and model is 'thrown away', and the system is iterative design. Customers are involved only formally developed based on the identified indirectly at the beginning of the traditional requirements. process, when marketing and planning specify ISSN – 1453 – 1119 ALI TIZKAR SADABADI, NASER M. TABATABAEI Rapid Prototyping For Software Projects With User Interfaces 87 Figure 1. Traditional and Rapid Prototyping Product Development Processes The most obvious reason for using Making changes early in the development Throwaway Prototyping is that it can be done lifecycle is extremely cost effective since there is quickly. If the users can get quick feedback on nothing at that point to redo. If a project is their requirements, they may be able to refine changed after a considerable work has been done them early in the development of the software. then small changes could require large efforts to ISSN – 1453 – 1119 88 UNIVERSITY OF PITESTI – ELECTRONICS AND COMPUTERS SCIENCE, SCIENTIFIC BULLETIN, No. 9, Vol.2, 2009 implement since software systems have many dependencies. Speed is crucial in implementing 3.2.Types of prototyping: Evolutionary a throwaway prototype, since with a limited prototyping budget of time and money little can be expended on a prototype that will be discarded. Evolutionary Prototyping (also known as Another strength of throwaway prototyping is breadboard prototyping) is quite different from its ability to construct interfaces that the users Throwaway Prototyping. The main goal when can test. The user interface is what the user sees using Evolutionary Prototyping is to build a very as the system, and by seeing it in front of them, robust prototype in a structured manner and it is much easier to grasp how the system will constantly refine it. "The reason for this is that work. the Evolutionary prototype, when built, forms It is asserted that revolutionary rapid the heart of the new system, and the prototyping is a more effective manner in which improvements and further requirements will be to deal with user requirements-related issues, built. and therefore a greater enhancement to software When developing a system using productivity overall. Requirements can be Evolutionary Prototyping, the system is identified, simulated, and tested far more quickly continually refined and rebuilt. and cheaply when issues of evolvability, "…evolutionary prototyping acknowledges maintainability, and software structure are that we do not understand all the
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages6 Page
-
File Size-