The Prototyping Approach Techniques for prototype application Types of Information Systems Sprague & Watson, DSS for Management, Prentice Hall, 1996 Type I (Procedure) • High volume • Low transaction cost • Well structured • Measurable • Process & efficiency • Data • Clerical Type II (Goal) • Low volume • High trans. value • Poorly structured • Hard to measure • Goal & effectiveness • Concepts • Mgrs, professionals IS Development Approaches • Systems Development Life Cycle • Information Center (DSS) • Object and Component Type I Large Systems • • • • • Intercommunications among applications Formal methodologies CASE technologies Purchased products Outsourcing Type I SDLC • • • • • Type I systems Large and Costly Cost justified Formal stages of evaluation Stages carefully reviewed and formally approved • Data, Process, Communications Type II Information Center (DSS) • • • • • Type II systems Relatively small and inexpensive Value justified Prototyping and evolutionary design Data, Dialog, Model Prototyping “It is easier to tell what you don’t like about an existing system than to describe what you would like in an imaginary one” A.M. Jenkins, 1983 Choice Life Cycle Prespecification possible Changes expensive Good project communication Static model OK Rigorous approach useful Iteration unacceptable Prototype Prespecification difficult Quick tools work Communications gap Animated model needed Rigor after requirements Iteration accepted The Prototyping Process Identify Initial Requirements Develop System Use and Evaluate Document and Install Iterate Prototyping Life Cycle Determine suitability for prototyping Identify basic needs Develop working model Demonstrate and solicit refinements Revise and redemonstrate Clean up and document Assumptions All requirements cannot be specified Quick build tools are available Communications gap between builders and users Active models are required Rigorous approaches are appropriate once requirements are known Iteration is valuable Use Prototyping If Life cycle too slow Scope of project manageable 30 screens Small team: 1-2 users/designers 50 attributes User not sure of specifications User satisfaction very important Reporting or DSS Irregular or infrequent use Do Not Use Prototyping If Don’t understand tools Data not well managed Software not well managed Professional staff not available Technology response not adequate User not willing to invest time Factors Favoring Prototyping Structure: interactive, on-line (OLAP) Logic: structured but not algorithmic DSS applications are often data-report types User: competent and active participant Time Constraint: not a crash project Management: willing to work with method Size: not overly large or complex Factors Favoring Prototyping Problem: imprecise specifications, poorly defined communications, interactive model needed Why not use prototyping Roles Responsible for business solutions Intermediary Run system for user Builder Write code for application Technical Supports the development Support tools Toolsmith Build basic tool modules (often work for software houses) User Requirements for Successful Prototyping: User Initiate the process Seeks IS assistance Competent in business area Willing to spend time with system Requirements for Successful Prototyping: Builder Assigned to Prototyping Competent with tools Knows organizational data resources Requirements for Successful Prototyping: Technology Roles identified 4GL Tools established Data is managed Technology response adequate Builders Added Value (Professional Design) Date and time stamps Control totals Audit trails Common interface feel Additional functions Testing Prototyping Principles 1. Most applications arise from a small set of basic systems 1. 2. 3. 4. 5. 6. Batch edit/update 7. On-line application Batch reporting interface Batch data update 8. On-line report Batch interface On-line update/query On-line ad hoc query Prototyping Principles 2. Most systems use a common set of data processing functions Add Modify Display Delete Locate Browse Activate Copy Connect Stop Prototyping Principles 3. Most editing derives from a small set of models. Tunnel edits Cross field edits Cross record edits Prototyping Principles 4. Most reports are based on a four step process. Select data from the database Sort by specification Format and edit for printing Print Prototyping Principles 5. There are a standard set of value added design structures that should be added Audit trails Control totals Menu and command modes Help facility Standard screen formats Date/time stamping Ergonomics Prototyping Tactics Normalize data to 3NF Use component engineering Use existing components Assemble from existing parts Reuse pieces Create pieces so that they can be reused Cut and paste Keep a set of examples Prototyping Tactics Use active data dictionaries Automate documentation Keep teams small Integrated software workbench tools Specify objectives not procedures Provide end-user report writing tools Use professional prototypers Have systems developers work with prototypers Project Management Initial Model: 2-6 weeks Must be fast enough to maintain interest Revisions: immediate - 2 weeks Chargeback: use charges to avoid frivolous changes Approval: determine the group who approves iterations Sign off: formal acceptance Additional Implementation Requirements Operational documentation and procedures Data size and operational impact analysis Test plan Training procedures Tactic Evolution Throwaway Life Cycle component References Bernard H. Boar, Application Prototyping, Wiley, 1984. Ralph Sprague & Eric Carlson, Building Effective Decision Support Systems, Prentice Hall, 1984.