Software Design - Part 1

Sudhakarj21
Posted by in Best Practices category on for Beginner level | Views : 7881 red flag

Software Design is one of the phase in SDLC where many key decisions and though process goes into.
Overview

 

In general the Software Design is categorized into 3 types.

 

1.    Conceptual

2.    Logical

3.    Physical

 

Conceptual 

 

This design is from High Level targeting End User and Business Owners. This Design helps to identify the interactions of Users and Systems, System to Modules, Modules to Modules or layers. This design also mentions about Architecture in domain level and also based on requirements provides basic structure of layers and the interaction between each layers.

 

 

The above diagram shows the Conceptual View of the Architecture. It also shows some of the Non Functional Services like Security, Caching, Usability etc…

 

Logical 

 

This is one of most important design layer when compared with others It is from the view of Project Team includes DEV/QA/Architects. This is where the highly thought process goes. This uses OOAD to move our domain level Models like Product, Orders in the above diagram to a Logical Models. This Model defines the Logical Object Models, Their Roles and Relations (ORM – Objects, Roles/Relations, Mapping). This layer also defines about Tasks of these Models and also the State of the object from which the Database Logical Model will be derived. ORM places in important role in deriving Database Design. This layer connects the gap between Conceptual and Physical.

 

Physical

 

This is not a Technology Layer and is from Developer point of view . This is the layer where we can see the blue prints of your application implementation in the form of Class Diagrams, Database Schema, Sequence Diagrams etc… This is not a Technology Specific since the Classes can be implemented in a language you choose. But this layer can provide some Technical Constraints or Recommendations about implementations. Because this view also holds the key to effort estimate for projects. This layer also provides the Infrastructure Design in the form of Deployment Diagram which will be used while deploying the application.

 

Conclusion
 

These are the high level details about Software Design. Will provide more details in the coming posts.

 

Page copy protected against web site content infringement by Copyscape

About the Author

Sudhakarj21
Full Name: Sudhakar Kottapalli
Member Level: Bronze
Member Status: Member
Member Since: 10/5/2009 7:05:50 AM
Country:



Login to vote for this post.

Comments or Responses

Login to post response

Comment using Facebook(Author doesn't get notification)