Component-Level Design: Definition & Types

An error occurred trying to load this video.

Try refreshing the page, or contact customer support.

Coming up next: Class-Based Component Design: Principles & Process

You're on a roll. Keep up the good work!

Take Quiz Watch Next Lesson
Your next lesson will play in 10 seconds
  • 0:04 Component-Level Design…
  • 1:01 Component-Level Design Views
  • 2:47 Cohesion vs. Coupling
  • 3:29 Lesson Summary
Save Save Save

Want to watch this again later?

Log in or sign up to add this lesson to a Custom Course.

Log in or Sign up

Speed Speed Audio mode

Recommended Lessons and Courses for You

Lesson Transcript
Instructor: Alexis Kypridemos

Alexis is a technical writer for an IT company and has worked in publishing as a writer, editor and web designer. He has a BA in Communication.

In this lesson, component-level design (translating the design model into software) is explained, as well as the different classifications of components. The object-oriented, traditional and process-based views of component-level design are discussed.

Component-Level Design Definition

In software engineering, after the planning stage of an application or system, called requirements modeling, the architectural design of the software follows. At this point it's designed on a higher level. After that, the process of taking the components identified in the architectural design and getting down to a nuts-and-bolts level of designing the proposed software is called component-level design. This level of design defines the interface, algorithms, data structure, and communication methods of each component.

But first, we should ask: what exactly is a component? Simply put, a component, sometimes also called a module, is the basic building block for the software application or system being designed. A more technical description of a component is that it's a portable, replaceable, and reusable set of functions which is part of a system and incorporates implementation and exposes a set of interfaces.

Component-Level Design Views

There are three main views of component-level design:

  1. The object-oriented view
  2. The conventional view
  3. The process-based view

Each has its own elements and characteristics. These will be discussed in detail here.

1. Object-Oriented View

In the object-oriented view, a component contains a set of collaborating classes. As a quick reminder, classes are groups of objects with common properties, operations, and relationships to other objects and meanings. Analysis classes can be thought of as classes that have to do with the real world. These include, for example, people, physical things, or locations. Design classes are classes within the context of the software itself. Analysis and design classes are mentioned here because the object-oriented view explains both types of class to identify all their operations and attributes, as well as the interfaces that enable classes to communicate and collaborate.

2. Conventional View

In the conventional view of component-level design, the component is considered a functional element of the software that integrates the processing logic and necessary internal data structures to perform its task, as well as the interface that allows for calling the component and passing data to it.

3. Process-Related View

The process-related view emphasizes building software from existing components maintained in a library rather than creating them from scratch. Designing components to be reusable in this manner requires that each component contains:

  • A complete description of its interface.
  • The functions it performs.
  • The communication and collaboration with other components that it requires.

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 now

Earning College Credit

Did you know… We have over 220 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
Used by over 30 million students worldwide
Create an account