Practical Application for Software Engineering: Component-Level Design

Instructor: Scott Tuning

Scott has been a faculty member in higher education for over 10 years. He holds an MBA in Management, an MA in counseling, and an M.Div. in Academic Biblical Studies.

UML component diagrams are an excellent choice for mapping and documenting the flow of information between the various components of a system. They are detailed and in-depth, especially with regard to interfaces.

Creating UML Component Diagrams

At the component level, engineers are particularly interested in how data will be communicated between components, and in what kind of interfaces are required to translate data between components. UML component diagrams assist technology professionals in mapping component-level designs.

Interfaces are of special importance because engineers can begin projecting the impacts of specific failure points at the component design level. This level of documentation will be used as a guide for other IT professionals during the entire duration that the system is in use.

If you imagine yourself as a software engineer creating a UML component diagram for a smart refrigerator called the SmartFridge 2500, you could use these steps to create a great component design document.

Step 1: List the Components

Like several of the other UML diagrams, components are the foundation of the diagram. In this particular diagram, make sure that you have all the components documented - overlooking a component might conceal a failure point that could otherwise have been avoided.

Additionally, a missing component could make it very difficult for another software engineer to diagnose or resolve a problem if you (as the developer guru) are no longer available to answer questions or provide advice. For the smart appliance, here's a sample component list;

In the first step, components are plotted.
UML Component Diagram Step 1

Step 2: Containers and Boundaries

Boundaries illustrate when elements in a system are no longer physically located together. Data leaving a workstation and going out to the internet, a server that backs up to a cloud, or an email that travels from an internal mail server to an external recipient are examples of data crossing a boundary.

When boundaries are added to your smart appliance diagram, it should now look something like this:

The second step adds boundaries and containers where the components reside.
UML Component Diagram Step 2

Step 3: Interfaces

Again, much of the power inherent in a component diagram is found in the way it maps out the communication, inputs, and outputs of actors and components. In a component diagram, interfaces often represent when an input is translated or coded before being sent on to the next component in the path. In the smart refrigerator, interfaces include:

To unlock this lesson you must be a Member.
Create your account

Register to view this lesson

Are you a student or a teacher?

Unlock Your Education

See for yourself why 30 million people use

Become a member and start learning now.
Become a Member  Back
What teachers are saying about
Try it risk-free for 30 days

Earning College Credit

Did you know… We have over 200 college courses that prepare you to earn credit by exam that is accepted by over 1,500 colleges and universities. You can test out of the first two years of college and save thousands off your degree. Anyone can earn credit-by-exam regardless of age or education level.

To learn more, visit our Earning Credit Page

Transferring credit to the school of your choice

Not sure what college you want to attend yet? has thousands of articles about every imaginable degree, area of study and career path that can help you find the school that's right for you.

Create an account to start this course today
Try it risk-free for 30 days!
Create an account