Click here to Skip to main content
Click here to Skip to main content

Software Architect Simple Way 2 of??

, 13 Oct 2008 CPOL
Rate this:
Please Sign up or sign in to vote.
A series for simplifying the learning of software architecture

Background

In Our previous article we spoke about 4+1 paradigm that give the software architect deep and comprehensive view of the software system as all and the ability to break down the system into a series of views.
And we have discussed how every of it's view is implemented and benefits of each.

Introduction

Today we will speak about another point of view for the Software System under construction by the system architect the view depends of the nature of software process it self this is called SDI paradigm of (Static - Dynamic – Implementation Paradigm).

As it's clear form paradigm name it's based on showing the dynamic and static and implementation (which is a subset of static) aspects of the software system under construction.
We will speak in this article following the outlines

1- Introduce each aspect and why it's important in the software architecture process.

2- Specify the UML diagrams which is used to introduce this aspect.

3- Finally we give a simple comparison between these aspects.

Static Models

It shows the structural characteristics of the system, and gives the architect a deep view into the structure of being designed system. We can conclude its benefits into the following points.

* Shows System's Structure.
* Emphasizes the parts that make up the system
* Defines classes names, attributes, methods signatures and packages.

The static models consist of one or all of the following diagrams.

* Class diagram
* Object diagram.
* Use case diagram.

Dynamic Models

It shows the behavioral characteristics of the system and give the software architect a logical overview of how the different component of the system will interact and how the things will be driven to happen. We can summarize its benefits and uses in the following points

* Shows the system behavior in response to different events.
* Identify the needed object and how they interact among them using the event and functions.
* Help in designing logic and behavior of the system.

And the following UML diagrams are used to represent the dynamic view of the system.

* Sequence diagram.
* Communication diagram.
* State diagram.
* Activity diagram.

Implementation Models

They are as stated previous a sub set of static models that give us a view for which is needed to be deployed as a part of the software system. And its benefits is

* Shows the different elements the system needs to be deployed.
* Organize the software components and other physical resources such as hardware and connection paths.

The UML diagram that represents the implementation models are

* Component diagrams.
* Deployment diagrams.

Static-Dynamic Models Final Notes

Which models is best for which situation?

* Static diagrams (especially class diagrams) give developers' detailed information about classes, data types, parameters and namespaces. And considered as the backbone of the UML system.
* Dynamic diagrams such as sequence and communication diagrams helps in defining Objects and how they are interact so don't skimp the dynamic models they are equally important by the static one.
* All software process management methodologies recommend developing these models in parallel at the same time.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Share

About the Author

The DevMan
Software Developer (Senior) Massar Software
Egypt Egypt
Communication Engineer Who Loved the software development more than any thing else , and enjoy being involved in the software development / creation process and looking forward to know more and more in this magnificent field.
 
I have worked I various areas in software process and gained a solid experience during my 9 years professional career in the fields in software development and project management as follow.

Comments and Discussions

 
-- There are no messages in this forum --
| Advertise | Privacy | Mobile
Web01 | 2.8.141015.1 | Last Updated 14 Oct 2008
Article Copyright 2008 by The DevMan
Everything else Copyright © CodeProject, 1999-2014
Terms of Service
Layout: fixed | fluid