Appendix A

Database Software Project Pre-Planning Survey


In between the feasibility meeting and the initial design meeting of a software project, quite a lot of design work can take place as each design team member prepares to present his or her needs and objectives to the rest of the team. To facilitate such research, we sometimes give members of the design team a pre-planning survey to help them think through the details of the project. Some sample questions for such a survey are included in this appendix. A Microsoft Word document version of this survey, which you can print and use, is found on the CD as PRE-PLAN.DOC.

This survey document may not be comprehensive, depending on the precise nature of your project, and you will want to expand or contract it on a per project basis. See Chapter 3, "Preparing for Development," for detailed information on project planning and research.

0. Header Information

0.1.1

Project name

0.2.1

User contact name

0.2.2

User contact phone

0.3.1

Development contact name

0.3.2

Development contact phone

0.4.1

Document creation date and author name(s)

0.5.1

Document revision date(s) and author name(s)

1. Project Summary and Justification

1.1. Overview

1.1.1.

What is the objective of the system? Describe the problem this system will solve and/or what need it will fill.

1.1.2.

Describe the current process that is to be automated.

1.1.3.

Describe the new automated solution. Describe how it will replace or augment the current process.

1.2. Feasibility

1.2.1.

How will the system be paid for?

1.2.2.

How much is budgeted for the system?

1.2.3.

Which individuals or group specifically will benefit from the system? How will the company benefit financially from the system?

1.2.4.

How will the investment in the system be recovered? How long will it take?

1.3. Milestones

1.3.1.

What is the expected start date for the project? What are the factors involved in selecting this date?

1.3.2.

What is the implementation target date for the project? What are the factors involved in selecting this date? How flexible is this date?

2. Project Infrastructure

2.1. Hardware/Software

2.1.1.

Describe the current computing infrastructure that affects the system. Enter the configuration and quantity of the least powerful, average, and most powerful user machines in the matrix.


Least Powerful Average Most Powerful
Operating system


RAM memory


Hard disk space


CPU speed


2.1.2.

How will the user machine configurations listed above be different a year from now?

2.1.3.

Will the database for the project reside on a file server or database server? How are the users physically connected to that server(s) adapters, protocols, drivers? Describe the server(s) location, maintenance, administrators, and load.

2.1.4.

What is the expected toolset to be used to create the application? What are the reasons for your selections?

2.1.5.

How will the development toolset change over the next two years?

2.2. Users

2.2.1.

How many total users will the application have? List the expected users or user groups and quantities.

2.2.2.

How many of these users will be using the application at the same time on average? How long will the average user session last? How frequently will each user log in?

2.2.3.

Where are the users physically located in relation to the shared (back-end) database? Are any users connected via remote dial-in or WAN connections? Whom, from where, and how often?

2.2.4.

Describe the technical skill level of the average user and the weakest user?

2.2.5.

Do any users have special needs (e.g. physical limitations, shared machines, nonstandard work hours, off-site access, replication to a laptop)?

2.3. Points of Contact

2.3.1.

Name the users that will be involved in:


User(s)
Design?
Specification and mockup review?
Alpha testing?
Beta testing?
Training?
Deployment?
2.3.2.

Who are the specific contact people for:


Personnel
Final design approval?
Technical decision-making?
Budget approval?
Testing management?
Training management?
Installation, technical support?
Final acceptance?

3. Application Features

3.1. Features Summary

3.1.1.List the primary features and functions expected for each of these releases:

VersionFeatures
1.0
1.1
2.0
Five years from now

3.2. Tables

3.2.1.

List the primary data tables (number each from 1 upward) and add a brief description of what data each will hold.

3.2.2.

List each table number from above and the number of records that will be in each table after the first year? Third year? Fifth year?

3.2.3.

List each table number from above and note which tables start empty in the initial release, which are pre-loaded via data entry, which are pre-loaded from a pre-existing system (name the system), and which are loaded from another data store in the company (name the data warehouse)?

3.2.4.

Describe the ongoing needs for importing data into the system, and exporting it from the system.

3.3. Screens

3.3.1.

Describe the user interface standards that will drive screen design (attach the standards document or point to a sample application).

3.3.2.

Describe each of the primary entry/edit forms here and/or attach mockups. Describe the navigation between forms.

3.4. Reports

3.4.1.

Describe the user interface standards that will drive report design (attach the standards document or point to a sample application).

3.4.2.

Describe each of the primary reports here and/or attach mockups. Describe the record selection and sorting for each report.

3.4.3.

Describe each of the primary online inquiries that will be made against the system.

3.5. Processes

3.5.1.

Describe any complex processing/posting/import/export routines? Can some of these processes be run unattended?

3.5.2.

Describe performance requirements, issues, and concerns.

3.5.3.

Describe data integrity (validation) issues and concerns.

3.5.4.

Describe security requirements.

4. Deployment

4.1. Training

4.1.1.

What training materials and documentation are required for the system?

4.1.2.

Which users will be trained on the new system? When, where, and how, how much, and by whom?

4.1.3.

Describe the system-level documentation and system administrator training requirements.

4.2. Support

4.2.1.

What are the setup program requirements? Who will deploy and support the application setup?

4.2.2.If the expected developer will be a vendor, describe each of the following issues.

IssueComments
How will issues be communicated to the developer?
Will the vendor work on-site or off? If on-site, what access and equipment will be provided to the vendor? If off-site, how will the developer send messages and program updates?
Which future versions of the project will also be done by this or another vendor?
4.2.3.

How much downtime can the system withstand (i.e. is it mission-critical)?

4.2.4.

When and how will integrity checks and backups be performed?

4.2.5.

If the Information Technology group is not the developer, what will the group's role be in this project?

4.2.6.

Describe the help file, system documentation, and knowledge base needs of the system.


1996, QUE Corporation, an imprint of Macmillan Publishing USA, a Simon and Schuster Company.