Disciplines

 

Home Up

View technology headlines at MSNBC

View news headlines at MSNBC

 

The following disciplines contribute to our development methodology:

bullet

Planning

In order to ensure the success of any IT project, rigid project management disciplines are essential.  Work plans and schedules form an integral part of our methodology.  We use the latest release of Microsoft Project in the preparation of project plans and schedules.  Rigorous signoffs and change controls are incorporated, managing project scope and focus. Planning is extremely important in order to establish scope, costs, and initial project estimates.  Deliverables include a project charter,  an initial business plan, high level organizational decomposition and preliminary project plan.

bullet

Requirements Management

Requirements management is a systematic approach to elicit, organize, and document the requirements of the system to be developed.  It is a process that establishes and maintains agreement between the customer and the project team on the changing requirements of the system.  Detailed software requirements must be documented in a form that is understood by both the customers and the development team.   Therefore, requirements should be stated in business terms rather than technical terms wherever possible. The use of a product backlog is very effective for requirements management.  This allows the requirements to be kept in one place where they are visible to all interested parties.  The requirements will also be prioritized based upon importance to the business, by the product owner. 

bullet

Analysis & Design

Detailed requirements are used as input for the system design specifications, as well as for test plans and procedures needed for implementation and validation.  Software requirements should also drive the initial user documentation planning and design.  Conceptual models and UML diagrams are created as necessary.  These can include, but are not limited to Use cases, Sequence Diagrams, State Charts, Activity Diagrams and Class Diagrams. 

A use case depicts a unit of functionality provided by the system, helping the development team to visualize the functional requirements. This includes the relationship of people who interact with the system to essential.  A Sequence diagram shows the detailed flow for a specific use case or part of a specific use case. The vertical dimension shows the sequence of events in the order that they occur while the horizontal dimension shows the objects that are involved.  A state diagram models the different states of a class and how the class transitions from one state to another.  A class diagram shows how the different entities relate to each other. Entities can be people, things and data. Stated differently, a class diagram shows the static structures of the system. A class diagram can be used to display logical classes, which are typically the kinds of things the business people in an organization can relate to.

Analysis and design also including transformation of the UML specifications into a relational data model.  The necessary application interfaces, process groups, and function points are also defined along with their navigation.  The data model is further refined with business rules and methods for each table. 

bullet

Development

Analysis and design models form the foundation for development deliverables.  A test database is created  from the relational model with its constraints.  This allows for the rapid construction and testing of the individual methods for each table.  As screen panels, reports and other functions are built, they reuse methods, providing a shorter test cycle for each individual module with the assurance of quality.  The unit test results help to optimize the database and communications as well as establishing the requirements for system testing.  Deliverables include application components, unit tests, database, user documentation and training materials, test plans and the Deployment work plan.

bullet

Testing

Testing consists of integration testing and full system tests, utilizing test plans and scripts prepared and refined in previous iterations.  Results of test scenarios are documented in order to refine function development.  Modified components are re-tested to ensure compliance with requested changes as well as to perform regression checks.  Deliverables include documented test results, application sign-off, and a detailed deployment plan.

bullet

Deployment

Deployment constitutes a set of activities for implementing the finished application including user training, conversion of existing databases, and application installation.  Key to managing any environment is the structure for managing change.  In any client/server or distributed processing environment, the distribution of changed objects must also be managed.  Activities for structuring change and object management are included in this phase.  Deployment check lists and automated configuration management tools aid greatly in defining and maintaining consistent, high quality deployment packages.

 

[Up] [Principles] [Objectives] [Disciplines] [Overview]

Copyright © 1999 - 2004 Astron Technologies Inc.