Compaq ACMS for OpenVMS
Concepts and Design 
Guidelines
Appendix C
Programming Specification Template
The Programming Specification describes a design that provides the 
proposed functionality and meets the business requirements. Some of the 
activities listed in this Programming Specification template can be 
included instead in the Functional Specification. The Programming 
Specification describes:
  -  Application development environment
  
 -  System
  
 -  Tasks
  
 -  User Interface
  
 -  System Design Review
 
C.1 Application Development Environment
Select:
  -  Data resource manager
  
 -  TP monitor
  
 -  User Interface
  
 -  Design methodology
  
 -  Project team structure
  
 -  Quality assurance method
  
 -  CASE environment
  
 -  Programming language
 
C.2 System Design
Define the high-level structure, standards, and common approaches to be 
used in the design and implementation of the application. Establish:
  -  High-level structure by organizing into applications and task 
  groups
  
 -  Standards for handling availability and recovery
  
 -  Standards for security features
  
 -  Standards for error-handling
  
 -  Methods for handling messages returned to users
  
 -  Guidelines for server procedures
  
 -  Guidelines for forms functionality
  
 -  Guidelines for queuing
  
 -  Standards for naming conventions, code layout conversions, and 
  other standards
  
 -  Standards related to internationalization
  
 -  Standards for testing methods and procedures
  
 -  Guidelines for using CDD dictionaries during design and 
  implementation
 
C.3 Task Design
This section outlines the key steps in designing tasks:
  -  Define the individual tasks in detail
  
 -  Define workspaces and resolve workspace-related issues
 
C.4 Server Procedure Design
Define:
  -  Specific database activities
  
 -  Access paths for the task
  
 -  Estimated logical database I/Os for the procedures
 
C.5 User Interface Design
Define the user interface:
  -  Confirm the user interface approach, based on completed task design
  
 -  Design the menus
  
 -  Define function keys for each form
  
 -  Define the forms
  
 -  Design the reports
  
 -  Refine the user interface decisions
 
C.6 Design Review
Validate with users and management that the system as designed provides 
the proposed functionality and meets the business requirements:
  -  Organize a formal design review
  
 -  Review system goals, requirements, and assumptions
  
 -  Present the system design using walkthroughs, demonstrations, and 
  oral descriptions
  
 -  Perform quality assurance on the logical design
  
 -  Identify and analyze issues
  
 -  Resolve issues or get agreement on how they will be resolved