 |
 |
 |
 |
| Software development processes need to promote accuracy, consistency, efficiency and quality. |
| Good processes provide the discipline that allows the entire solution team to operate at their maximum potential while eliminating unnecessary overhead. |
| Chartwell IT will continually strive to improve and optimize our processes, and implement "best practices" that address quality improvement and improve Return-On-Investment. |
|
 |
 |
 |
 |
Chartwell IT has adopted a use case-centric approach to software development. Use Cases provide the critical mechanism for describing the needs of the end product. They are used to organize the thoughts of stake holders and subject matter experts, and communicate those thoughts to the development team.
Use cases are a part of the first step of the development cycle, i.e., the Requirements Phase. The other phases of the development cycle are Analysis, Design, Development, Testing and Deployment. Typically, project plans for medium to large projects call for iterations of these steps prior to releasing a software solution to production.
System designs and the software deliverables are focused on fulfilling the contents of the use cases. As components are completed, the use cases are referenced in the testing and validation stages to bolster the quality of these deliverables. Use cases are, therefore, a central point of reference throughout the entire development cycle.
Each development cycle phase has tangible elements called artifacts. Use cases and use case diagrams are artifacts of the Requirements Phase. Since Chartwell IT embraces Object Oriented (OO) design principles in our software solutions, Universal Modeling Language (UML) artifacts are very important and valuable. Other types of artifacts include data models, project plans and test plans. These artifacts and others are important elements of the overall solution which, when maintained properly, support the accurate development and evolution of the software solution, increasing it's usefulness and length of life.
Since projects and applications differ widely, Chartwell IT has found it prudent to assess each project separately, coming up with a Solution Plan that best suits the needs of the client, project, application, budget and timeline. These are practical considerations that our experience has allowed us to address. Depending on the project, different phases may require a different level of emphasis then other phases. For example, a highly formal Verification & Validation (V&V) artifact may be necessary as part of the Testing Phase due to the mission or life critical nature of an application. Or, a prototype step may be part of the Analysis Phase to help solidify thoughts and finalize requirements. By recognizing the unique nature of our business, and the differing needs of our clients, Chartwell IT can build software solutions using the right mix of "best practices" to maximize quality and ensure the proper use of the client's budget.
Chartwell IT places a premium on other important aspects of the software development process. To be fully successful, the methodologies must be augmented by these tenets:
- Analyze each project individually to determine the right approach
- Define as many requirements as possible prior to beginning the design. Focus on near term priorities and be aware of long term goals.
- Encourage and promote communication between all stakeholders and team members
- Provide the right tools so people can use their skills optimally
- Implement process for the benefit of the project, not to enforce a dogma.
If you're familiar with published software development methodologies, you recognize that what is described above follows the important tenets of the Rational Unified ProcessTM, a widely accepted and successful software development methodology1 . This book, our experiences and successes, and the thoughts published by several other authors2,3,4,5, are credited with providing the framework of Chartwell IT's own tailored approach to software development.
|
- Philippe Kruchten, The Rational Unified Process An Introduction Second Edition (Boston, MA: Addison-Wesley, 2001)
- Daryl Kulak and Eamonn Guiney, Use Cases, Requirements in Context (Boston, MA: Addison-Wesley, 2000)
- Doug Rosenberg, Use Case Driven Object Modeling With UML, A Practical Approach (Boston, MA: Addison-Wesley, 2001)
- Jim Conallen, Building Web Applications With UML (Boston, MA: Addison-Wesley, 2000)
- Steve McConnell, Software Project Survival Guide (Redmond, WA: Microsoft Press, 1998)
|