When I work with customers on there Application Lifecycle Management (ALM) especially on the Development Process we always come to the question: “What about the SDD?”
I must admit that the answer I had was: “Keep write word documents” I don’t need to tell you what was there response to that.
Now with the Visual Studio 2010 Architecture Tools (Come with the Visual Studio 2010 Ultimate Edition) my answer changes to: “You can do it as part of your solution”
The Architecture Tools supports the Unified Modeling Language (UML) Diagrams, you can create your diagrams in a Modeling project that is managed in your solution.
I have posted about the “How To Investigate Existing Code Using The Visual Studio 2010 Architect Tools”.
On This post I will show some of the abilities we get with the Visual Studio 2010 Architecture Tools when creating your Software Design Description (SDD)
This post is a little long, I have entered the abilities of the Architecture Tools and a little explanation on each of the diagrams.
Start with creating a new “Modeling Project” added to your solution.
Now add the Diagram you like to the new added “Modeling Project”
- Gives the ability to define the different layers in the Application’s Architecture
- Gives the ability to validate the code against the layers
Use Case Diagram:
Shows the functionality provided by a system in terms of actors, their goals represented as use cases, and any dependencies among those use cases.
The class diagrams describes the structure of a system by showing the system's classes, their attributes, and the relationships among the classes.
- Shows how objects communicate with each other in terms of a sequence of messages
- Also indicates the lifespan of objects relative to those messages
Represents the business and operational step-by-step workflows of components in a system. An activity diagram shows the overall flow of control.
Depicts how a software system is split up into components and shows the dependencies among these components.
So you can see that you can manage the SDD using the Architecture Tools, the bigger advantage is that it evolves with the code, each version has its own SDD.