EDUCBA

EDUCBA

MENUMENU
  • Free Tutorials
  • Free Courses
  • Certification Courses
  • 600+ Courses All in One Bundle
  • Login
Home Software Development Software Development Tutorials Software Engineering Tutorial Architecture of UML
Secondary Sidebar
Software Engineering Tutorial
  • UML Daigram
    • StarUML
    • Architecture of UML
    • StarUML? Download
    • Types of UML Diagrams
    • UML Activity Diagram
    • UML Component?Diagram
    • UML Deployment Diagram
    • UML Diagram Softwares
    • UML Object?Diagram
    • UML Sequence Diagram
    • UML Use Case Diagram
    • State Diagram
    • Class Diagram
    • UML Dependency
    • UML Interaction Diagrams
    • Data Flow Diagrams
  • Basic
    • What is Software Engineering?
    • What is SDET
    • What Is SDLC
    • SDLC Methodologies
    • Software Classification
    • Software Design
    • Software Design Principles
    • Software Metrics
    • Utility Software Types
    • UI Design Tools
    • User Interface Design Principles
    • Architectural Design in Software Engineering
    • Software Configuration Management
    • Software Configuration Management Tools
    • What is Risk Management?
    • System Engineering
    • Object oriented programming paradigm
    • CASE Tools
  • Models
    • Prototype Model
    • What is Spiral Model
    • Waterfall?Model
    • Prototyping Tools
    • Incremental Model
    • Iterative Model
    • RAD Model
    • Fish Model
    • What is Scrum Methodology?
    • RUP? Methodology
    • COCOMO Model
    • Big Bang Model
    • System Models
    • People Capability Maturity Model
    • Analysis Modeling
    • User Interface Design
    • Capability Maturity Model Integration
    • What is Agile Development?
    • Agile Model Advantages and Disadvantages
    • Agile Process Model
    • Rational Unified Process
  • Advanced
    • Functional Point Analysis
    • Software Quality Control
    • Quality Assurance Tools
    • Prototype model advantages and disadvantages
    • UML Modelling Tools
    • Tomcat Server
    • Quality Software
    • UI Prototyping
    • Hybrid Model
    • Behavioral Model in Software Engineering
    • Flowchart symbols
    • Critical System
    • Legacy System
    • SOA Architecture
    • Software Quality Attributes
    • Software Maintenance
    • Software Cost Estimation
    • Software Inspection
    • Cohesion in Software Engineering
    • Coupling in Software Engineering
    • Component-based Software Engineering
    • Design Modeling in Software Engineering
    • Iterative Methodology
    • System Flow Diagram
    • Data Flow Architecture
    • SEICMM
    • Function Oriented Design
  • Interview Questions
    • Software Engineering Interview Questions
    • SDLC Interview Questions

Related Courses

Software Testing Course

Cyber Security Training

Software Development Course Training

Architecture of UML

Architecture of UML

What is the Architecture of UML?

UML (Unified Modelling Language) is a modeling language or set of engineering practices, consists of diagrams. UML helps developers to construct, visualize, specify and document the ins and outs of the software systems. In UML Graphical representations are used to represent the design of software systems which also consider use cases for different users. The strategy used for the creation of software systems has great value for any industry as it makes the process efficient, easy to improve quality, and reduces time & cost factors. In this topic, we are going to learn about the Architecture of UML.

Explain the Architecture of UML with Diagram

The unified Modelling language is not a programming language as such, but it is a visual language. UML diagrams are used to represent different possible structures of the system. Architecture is a combination of several views of different users such as developer, analyst, tester, project manager, technical writer, and end-user. For best practice, we consider 5 views: use case, design, development, process, and deployment view. None the less use case remains the center of the other views.

With use case view the stakeholder or users need diagrams to visualize the system software. These diagrams make the whole architecture of the systems.

In UML there are two types of diagrams structural and behavioral diagrams. As the name suggests structural covers static aspects of the system like deployment diagrams, object diagrams, class diagram,s and component diagrams. On the other hand, behavioral diagrams cover dynamic aspects of the system like Interaction diagrams, use case diagrams, and activity diagrams.

Start Your Free Software Development Course

Web development, programming languages, Software testing & others

Below are some examples of such diagrams:

Class Diagram

This diagram represents the static structure of a class with attributes and methods associated with it. The class structure has 3 partitions, the first partition represents the name of the class. The name is in Bold letters and the first letter is always capital, the title is placed in the center. The second partition represents the attributes of the class and is aligned leftwards. The last or bottom partition represents methods or operations the class can execute and are also aligned leftwards.

Below is a simple example of a class: AlgebraClass, the first partition represents the Name of the class, the second partition represents attributes of the class that would be inp1 and inp2. The last partition represents the operations or methods of the class. With complex classes, there are different methods to draw diagrams where we use the concept of member, visibility, and scope. As we know object-oriented programming allows inheritance, association, etc. To represent these different relationships methods or symbols are used.

AlgebraClass
inp1 : int

inp2 : int

sum( inp1 + inp2 )

substrct( inp1 – inp2 )

mult (inp1 * inp2 )

Interaction Diagram

This diagram plays an important role in representing the flow of the process among different things which are modeled in the system. Interaction has different subparts of it, one such is a communication diagram. Communication diagrams represent sequential messages among different objects like class diagrams, sequence diagrams, and use case diagrams.

All in One Software Development Bundle(600+ Courses, 50+ projects)
Python TutorialC SharpJavaJavaScript
C Plus PlusSoftware TestingSQLKali Linux
Price
View Courses
600+ Online Courses | 50+ projects | 3000+ Hours | Verifiable Certificates | Lifetime Access
4.6 (86,629 ratings)

For example, taking the use case of Chef and class oven which has input a regulator and flame as attributes. A chef can interact with Oven in two cases to switch on to switch off.

Architecture of UML 2

Use Cases

How an external or internal user perceives the system is the use case. What is the need and requirement of the system? is the driving force behind creating use cases. A use case in simple terms the way the system can be used or how the user wants to interact with the system.

For example, a simple calculator is used for simple algebra like addition, subtraction, multiplication etc. But a scientific calculator would be used for high-level algebra which includes trigonometry linear algebra (Matrix calculations), logarithmic calculation, etc. For both the calculator the are different use cases, where the user is using a calculation. Let’s pick a scientific calculator, it does the job of a simple calculator also, but a grocery store person would not require the scientific calculator. So, the calculator company will have such different use cases and would decide what functionalities shall be included in different calculators considering cost as well as ease of use. Also, for each calculator, there would be an analyst and tester also who would be performing different testing and applying different methodologies as per need.

Importance of Architecture of UML

UML architecture is very important to create a systematic plan for creating the model in the initial stage and modifying the same at the later stage as per need.

The architecture provides a broad view of how the system is designed and implemented. Which makes it easy for others to understand and enhance at a later stage as per need. The architecture provides a flow control process that helps software analysts and developers to analyze and model or code the system. The different visualization created using UML helps stockholders to decide which one is better to implement and for ease of use among different users.

From the management point of view also it provides an efficient approach for solving a problem and avoid any confusion between different teams who are working or using the system. It helps in reducing the time & cost factor.

In almost all organizations architecture is created first to visualize the flow process and then implementation starts. UML architecture is referred to as standard and adopted by the object management group in 1997and revised over the years. Which makes it adaptable for complex systems also.

Conclusion

UML is a unified modeling language which is a visualization language and is used for creating architecture for software systems. An architecture considers different view which includes developer, analyst, tester, project manager, technical writer, end user etc. UML architectures use a structural diagram for static aspects and a behavioral diagram for dynamic aspects.

Recommended Articles

This is a guide to the Architecture of UML. Here we discuss an example for both the diagrams, Use case example and the importance of the architecture of UML. You may also have a look at the following articles to learn more –

  1. UML Object Diagram
  2. UML Component Diagram
  3. UML Activity Diagram
  4. Types of UML Diagrams
Popular Course in this category
Software Testing Training (11 Courses, 2 Projects)
  11 Online Courses |  2 Hands-on Projects |  65+ Hours |  Verifiable Certificate of Completion
4.5
Price

View Course

Related Courses

Cyber Security Training (10 Courses, 3 Projects)4.9
All in One Software Development Bundle (600+ Courses, 50+ projects)4.8
0 Shares
Share
Tweet
Share
Primary Sidebar
Footer
About Us
  • Blog
  • Who is EDUCBA?
  • Sign Up
  • Live Classes
  • Corporate Training
  • Certificate from Top Institutions
  • Contact Us
  • Verifiable Certificate
  • Reviews
  • Terms and Conditions
  • Privacy Policy
  •  
Apps
  • iPhone & iPad
  • Android
Resources
  • Free Courses
  • Java Tutorials
  • Python Tutorials
  • All Tutorials
Certification Courses
  • All Courses
  • Software Development Course - All in One Bundle
  • Become a Python Developer
  • Java Course
  • Become a Selenium Automation Tester
  • Become an IoT Developer
  • ASP.NET Course
  • VB.NET Course
  • PHP Course

ISO 10004:2018 & ISO 9001:2015 Certified

© 2022 - EDUCBA. ALL RIGHTS RESERVED. THE CERTIFICATION NAMES ARE THE TRADEMARKS OF THEIR RESPECTIVE OWNERS.

EDUCBA
Free Software Development Course

C# Programming, Conditional Constructs, Loops, Arrays, OOPS Concept

*Please provide your correct email id. Login details for this Free course will be emailed to you

By signing up, you agree to our Terms of Use and Privacy Policy.

EDUCBA Login

Forgot Password?

By signing up, you agree to our Terms of Use and Privacy Policy.

EDUCBA
Free Software Development Course

Web development, programming languages, Software testing & others

*Please provide your correct email id. Login details for this Free course will be emailed to you

By signing up, you agree to our Terms of Use and Privacy Policy.

EDUCBA

*Please provide your correct email id. Login details for this Free course will be emailed to you

By signing up, you agree to our Terms of Use and Privacy Policy.

Let’s Get Started

By signing up, you agree to our Terms of Use and Privacy Policy.

This website or its third-party tools use cookies, which are necessary to its functioning and required to achieve the purposes illustrated in the cookie policy. By closing this banner, scrolling this page, clicking a link or continuing to browse otherwise, you agree to our Privacy Policy

Loading . . .
Quiz
Question:

Answer:

Quiz Result
Total QuestionsCorrect AnswersWrong AnswersPercentage

Explore 1000+ varieties of Mock tests View more