Unified Process Model: Definition & Application

Instructor: Shweta Gadagkar

Shweta holds a Masters Degree in Biochemical Engineering and is a coding enthusiast

Process models in software engineering are nothing, but a series of steps followed to create a software product. This lesson covers the Unified Process Model with an overview of the process steps. We'll also take a look at the applications of this model through some examples.

The online cake shop

Let's say you own a small baking company, where you make and design custom cakes for different occasions. You now wish to take your business online, so that you could cater to a large customer base. You hire a web development company to build an online cake store for you. What kind of an approach would you like the developers to have towards creating your website? Would you want to receive the completed website all at once after a month, or would you like it to be developed in stages, so that you could take a look at the working software and request any modifications right away? It would be reasonable to go with the second approach, as you'd get to see well developed bits of your website. It would also ensure that the developers were proceeding in the right direction.

This is the same approach that you'd take if you were building a software product on the basis of the Unified Process Model.

Definition

The Unified Process Model (UPM) is an iterative, incremental, architecture-centric and use-case driven approach to software development.

Use-case driven approach

A use case defines the interaction between two or more entities. The list of requirements specified by a customer are converted to functional requirements by a business analyst and generally referred to as use cases. A use case describes the operation of a software as interactions between the customer and the system, resulting in a specific output or a measurable return. For example, the online cake shop above can be specified in terms of use cases such as 'Add cake to cart', 'Change the quantity of added cakes in cart', 'Cake Order Checkout' and so on. Each use case represents a significant functionality and could be considered for an iteration.

Architecture-centric approach

Using this approach, you'd be creating a blueprint of the organization of the software system. It would include taking into account the different technologies, programming languages, operating systems, development and release environments, server capabilities and other such areas for developing the software.

Iterative and incremental approach

Using an iterative and incremental approach means, treating each iteration as a mini-project. Therefore, you'd develop the software as a number of small mini-projects, working in cycles. You'd develop small working versions of the software at the end of each cycle. Each iteration would add some functionality to the software according to the requirements specified by the customer.

Now that we saw the distinctive characteristics of the unified process model, let's take a look at the process steps involved.

Phases of the Unified Process Model

  1. Inception : The inception phase is similar to the 'Requirements Collection and Analysis' stage of the Waterfall Model of software development. In this phase, you'd collect requirements from the customer, analyse the project's feasibility, it's cost, risks and profits.
  2. Elaboration : In this phase, you'd be expanding upon the activities undertaken in the inception phase. The major goals of this phase include creating fully functional requirements (use cases) and creating a detailed architecture for fulfillment of the requirements. You'd also prepare a business case document for the customer.
  3. Construction : In this phase, you'd be writing actual code and implementing the features for each iteration. You'd be rolling out the first iteration of the software depending on the key use cases that make up the core functionalities of the software system.
  4. Transition : In this phase, you'd be rolling out the next iterations to the customer and fixing bugs for previous releases. You would also deploy 'builds' of the software to the customer.

The unified process model in action

Let's consider you are developing a web application for your local library using the unified process model. Then the phases would look something like these :

  • Phase 1 : Inception

To unlock this lesson you must be a Study.com 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 Study.com

Become a Study.com member and start learning now.
Become a Member  Back
What teachers are saying about Study.com
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? Study.com 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
Support