Prototyping Environment Requirements for rapid application development Prototyping

  • Slides: 26
Download presentation
Prototyping Environment Requirements for rapid application development

Prototyping Environment Requirements for rapid application development

Prototyping “It is easier to tell what you don’t like about an existing system

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

The Prototyping Process Identify Initial Requirements Develop System Use and Evaluate Document and Install

The Prototyping Process Identify Initial Requirements Develop System Use and Evaluate Document and Install Iterate

Roles z Approver Approves payment and accepts final product z User Responsible for business

Roles z Approver Approves payment and accepts final product z User Responsible for business solutions z Intermediary Run system for user z Builder Write code for application z Technical. Supports the development Support tools z Toolsmith Build basic tool modules (often work for software houses)

Requirements for Successful Prototyping: User z. Initiate the process z. Seeks IS assistance z.

Requirements for Successful Prototyping: User z. Initiate the process z. Seeks IS assistance z. Competent in business area z. Willing to spend time with system

Requirements for Successful Prototyping: Builder z. Assigned to Prototyping z. Competent with tools z.

Requirements for Successful Prototyping: Builder z. Assigned to Prototyping z. Competent with tools z. Knows organizational data resources

Requirements for Successful Prototyping: Technology z. Roles identified z 4 GL Tools established z.

Requirements for Successful Prototyping: Technology z. Roles identified z 4 GL Tools established z. Data is managed z. Technology response adequate

Use Prototyping If z Life cycle too slow z Scope of project manageable 30

Use Prototyping If z Life cycle too slow z Scope of project manageable 30 screens Small team: 1 -2 users/designers 50 attributes z User not sure of specifications z User satisfaction very important z Reporting or DSS z Irregular or infrequent use

Do Not Use Prototyping If z. Don’t understand tools z. Data not well managed

Do Not Use Prototyping If z. Don’t understand tools z. Data not well managed z. Software not well managed z. Professional staff not available z. Technology response not adequate z. User not willing to invest time

Assumptions z. All requirements cannot be specified z. Quick build tools are available z.

Assumptions z. All requirements cannot be specified z. Quick build tools are available z. Communications gap between builders and users z. Active models are required z. Rigorous approaches are appropriate once requirements are known z. Iteration is valuable

Choice Life Cycle z Prespecification possible z Changes expensive z Good project communication z

Choice Life Cycle z Prespecification possible z Changes expensive z Good project communication z Static model OK z Rigorous approach useful z Iteration unacceptable Prototype z Prespecification difficult z Quick tools work z Communications gap z Animated model needed z Rigor after requirements z Iteration accepted

Life Cycle z. Determine suitability for prototyping z. Identify basic needs z. Develop working

Life Cycle z. Determine suitability for prototyping z. Identify basic needs z. Develop working model z. Demonstrate and solicit refinements z. Revise and redemonstrate z. Clean up and document

Factors Favoring Prototyping z Structure: interactive, on-line (OLAP) z Logic: structured but not algorithmic

Factors Favoring Prototyping z Structure: interactive, on-line (OLAP) z Logic: structured but not algorithmic DSS applications are often data-report types z User: competent and active participant z Time Constraint: not a crash project z Management: willing to work with method z Size: not overly large or complex

Factors Favoring Prototyping z Problem: imprecise specifications, poorly defined communications, interactive model needed Why

Factors Favoring Prototyping z Problem: imprecise specifications, poorly defined communications, interactive model needed Why not use prototyping

Builders Added Value (Professional Design) z. Date and time stamps z. Control totals z.

Builders Added Value (Professional Design) z. Date and time stamps z. Control totals z. Audit trails z. Common interface feel z. Additional functions z. Testing

Prototyping Principles 1. Most applications arise from a small set of basic systems 1.

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 z

Prototyping Principles 2. Most systems use a common set of data processing functions z Add z Modify z Display z Delete z Locate z Browse z Activate z Copy z Connect z Stop

Prototyping Principles 3. Most editing derives from a small set of models. z. Tunnel

Prototyping Principles 3. Most editing derives from a small set of models. z. Tunnel edits z. Cross field edits z. Cross record edits

Prototyping Principles 4. Most reports are based on a four step process. z. Select

Prototyping Principles 4. Most reports are based on a four step process. z. Select data from the database z. Sort by specification z. Format and edit for printing z. Print

Prototyping Principles 5. There a standard set of value added design structures that should

Prototyping Principles 5. There a standard set of value added design structures that should be added z Audit trails z Control totals z Menu and command modes z Help facility z Standard screen formats z Date/time stamping z Ergonomics

Prototyping Tactics z Normalize data to 3 NF z Use component engineering Use existing

Prototyping Tactics z Normalize data to 3 NF z Use component engineering Use existing components Assemble from existing parts Reuse pieces Create pieces so that they can be reused z. Cut and paste z Keep a set of examples

Prototyping Tactics z Use active data dictionaries z Automate documentation z Keep teams small

Prototyping Tactics z Use active data dictionaries z Automate documentation z Keep teams small z Integrated software workbench tools z Specify objectives not procedures z Provide end-user report writing tools z Use professional prototypers z Have systems developers work with prototypers

Project Management z Initial Model: 2 -6 weeks Must be fast enough to maintain

Project Management z Initial Model: 2 -6 weeks Must be fast enough to maintain interest z Revisions: immediate - 2 weeks z Chargeback: use charges to avoid frivolous changes z Approval: determine the group who approves iterations z Sign off: formal acceptance

Additional Implementation Requirements z. Operational documentation and procedures z. Data size and operational impact

Additional Implementation Requirements z. Operational documentation and procedures z. Data size and operational impact analysis z. Test plan z. Training procedures

Tactic z. Evolution z. Throwaway z. Life Cycle component

Tactic z. Evolution z. Throwaway z. Life Cycle component

References z Bernard H. Boar, Application Prototyping, Wiley, 1984. z Ralph Sprague & Eric

References z Bernard H. Boar, Application Prototyping, Wiley, 1984. z Ralph Sprague & Eric Carlson, Building Effective Decision Support Systems, Prentice Hall, 1984.