The crucial first phase in software development aims to establish a clear and accurate picture of the scope, process, targets and impact of the software development project.
The result is a draft and agreed Project Specification. This should contain the following depending on the scale and complexity of the project:.
Statement of Requirements
Your requirements as you see them.
List of time constraints.
Is this a new standalone application or is it an enhancement to an existing application?
Count of the number of users that will use the final system at the same time
Count of the Network Workstations
List of Operating systems you intend to use
List of the range of PC Monitor sizes and resolutions, disk capacities, memory capacities, CPU speeds and the applications running on them (as they are and as you intend them to be) eg 17" monitor, 120GB Hard disk drive, 512Mb Ram, 1.6GHz CPU running Windows XP, MS-Office
List of servers, their operating systems, disk capacities, memory capacities, CPU speeds and the applications running on them (as they are and as you intend them to be) eg SQL Server, MySQL or Oracle, Internet Information Services
List of Network Gateways: Fax, Modem, FTP Servers, WAN/VPN
Description of Facilities
Describe the operations that people will carry out with the system.
Detail what the system will provide: A facility to ..., a report showing ..., a screen showing ...
We can then identify points requiring clarification.
Specific inclusions eg
Specific Exclusions eg
This defines your business processes in terms of dialog between user and computer.
The contents of a single Process Definition document woud normally also include:
Draw up the Useage Flow. This is a flowchart that shows how the user will move through the program. The illustration below is an excerpt from Clear Business Manager showing a single user path from login to Sales Invoice Form.
The diagram summarises a user route from login form, through main screen containing the main menu, through the Sales Menu to the Sales Dropdown Menu, through Sales Invoice Menu Option, into the Sales Invoice form which contains the Sales Invoice Item Search Sub List and also contains options to Post the Invoice to Nominal, View Reconciliation, Supplier and Posting. NB.
Final Application Objects
List and describe the final application objects these include popup menus, main form, forms, dialogs, search-queries, exports, stored procedures, coded procedures, command Buttons, tables.( A more complete set is given below). Each application object is marked as existing, changed or new or to be removed. Describe the changes, describe the new, describe the Existing,.
Final Database Model
Draw up the final Database model. The Model should include Discrete Entities ( that Dont depend on other tables often called lookups), Tables, Views, Relations and Stored Procedures. Each element is marked as Existing, Changed or New or to be Removed. Describe the Changes, Describe the New, Describe the Existing.
List and describe step by step scenarios which take the form of Add ...; Find ...; View ...; Change ...; Delete ....
Verify the usage scenarios against the description of facilities check that each facility has its usage scenarios provided for.
Verify the User Flow, Application Objects, Database Model and Usage Scenarios against the description of Facilities check that each facility is provided for
Verify the Usage Scenarios against User Flow, Application Objects, Database Model check that each scenario is provided for
Data Consistency - Check that all data has a place to be stored, a route in and a route out, Check that validation is present when data goes in.
Security - Check that Access Rights Control, Password Protection, Password Entry points, Auto Close points are available to the administrator
Useability - Check that there are Meaningful messages where appropriate and labels, Check that Pure keyboard mode is allowed, Check that mouse use is correct (Minimise clicks and set distances according to logical grouping and to avoid accidental clicks), Check for consistent menus and User Flow, consistent and familiar objects eg search, change/Save, close buttons, list views, Auto forms, Check that there is a separation of Admin tasks (setup, control values, rights i.e key staff, critical or high risk processes) from process tasks (simple, reversible or frequently performed processes)
Data Setup - Manual imports, scripted converstions and imports, Import program creation
State and quantify if, where and when training is required.
State if User Manual or online help if required initiallyor as a modifiable feature (stored as data) within the system and avaialble for update according to security credentials
The kinds of application objects that might appear in a project specification
The basic application objects as seen in Clear Business Manager
NB. Allocate Test Systems
To allow the project manager to operate we must establish a test system at your business that is as close to your systems as it can be without touching your business data.
© Clear Computer Solutions Ltd. 2006. All rights reserved.