The foundation for all of our projects is a Project Document. See a sample
This document is jointly created and maintained with our clients. It is a consolidation of all of our experiences. It is a project template and check-list. It insures that every issue and every task is addressed and that every project is a success.
Our first task in any project is to complete enough of the Project Document to help us determine if there is an existing solution that will cost effectively meet a client’s needs. If there is such a solution, our objective will be to implement and adapt that solution. If not, we will develop a solution. In either case, the roadmap for the project is the Project Document.
Project Document - Preparation Guidelines
In the General Description:
- We identify the general factors that affect the product and its requirements
- We put the product in perspective with other related products or projects
- We summarize the software functions in layperson terms
- We describe the eventual users, including their experience and technical expertise
We describe any constraints which may affect the development options, such as:
- Regulatory policies
- Hardware limitations
- Interfaces to other applications
- Audit functions
- Control functions
- Language requirements
- Communication protocols
- Critical application safety issues
- Critixal security issues
In the Requirements Specifications section, we describe the functional requirements of the hardware and the software.
- Computer system components
- Computer system configuration
- Operating systems
- Software build environment
- Languages & tools
- Operational modes
- Site adaptation
Other requirements include:
- We identify the input data, processing, output data for all software functions
- We describe the external user, hardware, software & communications requirements, network interface requirements
- We specify all the performance parameters of the software & the users in quantifiable terms
- We identify standards compliance & hardware limitations
- We compile a system attributes list which includes acceptable system downtime, security restrictions, maintainability methods, portability standards
In the Project Management section, we define the plan, organization, and management of tasks and resources to accomplish the defined software objectives within acceptable time and budget constraints.
The project is divided into manageable tasks which are scheduled and then tracked as work progresses.
Project information is communicated simply and efficiently on an ongoing basis to all participants including clients, management and staff.
Project Management can be thought of simply as a disciplined set of procedures to provide answers to the following questions:
- What job or project is to be done?
- Who and what will be used to perform the tasks to complete the project?
- When must the project be completed by and where?
- How much will the project cost?
- What happens if the project is not completed on time and budget?
In the Maintenance Repair Support section, we deal with the issues of:
- Ongoing technical assistance
- Ongoing support
- System self-tests
- Maintenance tests
In the Quality section:
- We deal with the issues which tie everything together
- We deal with the issues which make the difference between a good project & a great project
- Quality must be built in to the product by all of the team members
- Quality is an ongoing process
- The focus of all projects must be user needs & expectations
- The focus must not just be system requirements specifications lists
- Project quality is a blend of product quality & process quality
Generic product quality characteristics which must be considered are:
Generic process quality characteristics which must be considered are:
Error detection and remedy is particularly important throughout the project. The cost of fixing flaws escalates substantially as the project progresses.
SMG Quality Standards are a proprietary composite of all industry standards and all of our experience, and represent an effective blend of product and process quality which is determined primarily by customer needs.
In the Capabilities section, we define the resources to be used on the project including personnel and experience, facilities and equipment.
Working closely with our clients as members of our team and effectively using their application specific knowledge and experience, we feel comfortable using our more generic hardware, software and systems integration experience to work on many types of systems and applications using the tools, skills and experience listed below:
Software operating systems:
- Android, Linux, Windows, Unix
Software development environments, languages and tools:
- Visual Basic
- Database applications, SQL, 4GL
- Office suite tools: spreadsheets, graphics, information management, project management
- Math, data analysis and visualization tools
- Networks and communications
- Internet tools: Active X, CGI, Content Management System (WordPress…), cPanel, CSS Tools (Stylizer…), HTML, Java, distributed objects, Website development & management tools (Dreamweaver…)