0% found this document useful (0 votes)
2 views

UML Architecture

Oosd notes

Uploaded by

Sarthak Singh
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

UML Architecture

Oosd notes

Uploaded by

Sarthak Singh
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

UML- Architecture

Software architecture is all about how a software system is built at its


highest level. It is needed to think big from multiple perspectives with
quality and design in mind. The software team is tied to many practical
concerns, such as:

o The structure of the development team.


o The needs of the business.
o Development cycle.
o The intent of the structure itself.

Software architecture provides a basic design of a complete software


system. It defines the elements included in the system, the functions each
element has, and how each element relates to one another. In short, it is a
big picture or overall structure of the whole system, how everything works
together.

To form an architecture, the software architect will take several factors


into consideration:

o What will the system be used for?


o Who will be using the system?
o What quality matters to them?
o Where will the system run?

The architect plans the structure of the system to meet the needs like
these. It is essential to have proper software architecture, mainly for a
large software system. Having a clear design of a complete system as a
starting point provides a solid basis for developers to follow.

42.6M
836
How to find Nth Highest Salary in SQL

Each developer will know what needs to be implemented and how things
relate to meet the desired needs efficiently. One of the main advantages
of software architecture is that it provides high productivity to the
software team. The software development becomes more effective as it
comes up with an explained structure in place to coordinate work,
implement individual features, or ground discussions on potential issues.
With a lucid architecture, it is easier to know where the key
responsibilities are residing in the system and where to make changes to
add new requirements or simply fixing the failures.
In addition, a clear architecture will help to achieve quality in the software
with a well-designed structure using principles like separation of concerns;
the system becomes easier to maintain, reuse, and adapt. The software
architecture is useful to people such as software developers, the project
manager, the client, and the end-user. Each one will have different
perspectives to view the system and will bring different agendas to a
project. Also, it provides a collection of several views. It can be best
understood as a collection of five views:

1. Use case view


2. Design view
3. Implementation view
4. Process view
5. Development view

Use case view


o It is a view that shows the functionality of the system as perceived
by external actors.
o It reveals the requirements of the system.
o With UML, it is easy to capture the static aspects of this view in the
use case diagrams, whereas it?s dynamic aspects are captured in
interaction diagrams, state chart diagrams, and activity diagrams.

Design View

o It is a view that shows how the functionality is designed inside the


system in terms of static structure and dynamic behavior.
o It captures the vocabulary of the problem space and solution space.
o With UML, it represents the static aspects of this view in class and
object diagrams, whereas its dynamic aspects are captured in
interaction diagrams, state chart diagrams, and activity diagrams.

Implementation View

o It is the view that represents the organization of the core


components and files.
o It primarily addresses the configuration management of the system?
s releases.
o With UML, its static aspects are expressed in component diagrams,
and the dynamic aspects are captured in interaction diagrams, state
chart diagrams, and activity diagrams.

Process View

o It is the view that demonstrates the concurrency of the system.


o It incorporates the threads and processes that make concurrent
system and synchronized mechanisms.
o It primarily addresses the system's scalability, throughput, and
performance.
o Its static and dynamic aspects are expressed the same way as the
design view but focus more on the active classes that represent
these threads and processes.
Deployment View

o It is the view that shows the deployment of the system in terms of


physical architecture.
o It includes the nodes, which form the system hardware topology
where the system will be executed.
o It primarily addresses the distribution, delivery, and installation of
the parts that build the physical system.

You might also like