Steps to Design Excellence

Mistakes in customized systems are expensive. The farther you are in the process, the more costly they become as the cost of system changes increase geometrically as you progress through the development cycle. It's a lot cheaper to fix a design when it's still "on paper" than once that system is live. Identify your errors and omissions early, while they are cheap to repair, by creating thorough functional requirements, and control the entire design, development and deployment process through the use of a complete UML OO design environment like TogetherSoft Control Center.

Joint Application Development (JAD) sessions or the newer Class, Relationship, and Collaboration (CRC) card sessions for Unified Modeling Language (UML) developments are a good way to begin the process of requirements gathering. The process should result in a complete functional requirements document. With object oriented design, written requirements should be supplemented with a Use Case model identifying the people and other systems that interact during the use of the system. It is also a good practice to create a system prototype of the user interface, enabling the users to check the look and feel of the system, and to ensure that the interface operates as needed. The purpose of functional requirements is to identify what the user of the system needs rather than defining the technology behind it.

Technical specifications translate business requirements into a technical architecture and design. Use of computer aided design tools help to catch omissions. Walkthoughs of the design with all participants are a critical best practice to ensure completeness prior to coding.

While you are developing the system, routinely run test cases. The Use Cases you created for the functional requirements can be reused to construct your test cases. It's not only efficient, it ensures that there is a test for every function; the key goal for testing.

Business eSolutions is expert in all phases of system design and development. For help in defining requirements, creating the technical design, managing the project or mentoring your team, Contact Us. We're here to help.

Copyright © JJ Kuhl 2002