Free e-Books

open all | close all

Quote of the Day

“Giving up doesn’t always mean you are weak … sometimes it means that you are strong enough to let go”

Domain Analysis

Software reuse can be improved by identifying objects and operations for a class of similar systems, i.e., for a certain domain. In the context of software engineering, domains are application areas. Examples of domains are airline reservation systems, software development tools, user interfaces and financial applications. The scope of a domain can be chosen arbitrarily, [...]

Introduction to Unified Process

Waterfall vs. Iterative Model

A software development process defines WHO, WHAT and HOW of developing software. Developing iteratively is a technique that is used to deliver the functionality of a system in a successive series of releases of increasing completeness. Each release is developed in a specific, fixed time period called an iteration. Each iteration is [...]

UML Building Blocks

Booch suggested that [UML User’s Guide 2nd Edition],”To understand the UML, you need to form a conceptual model of the language, and this requires learning three major elements: the UML’s basic building blocks, the rules that dictate how those building blocks may be put together, and some common mechanisms that apply throughout the UML. Once [...]

State Diagram – An Example

Problem description

Draw a state diagram to show the state transitions for a flight reservation.

On opening the flight, the initial state leads to the NoReservation state. When this state is entered, the reset operation is executed. If a reservation is made (i.e., reserve operation is executed), the object changes to the PartiallyReserved state. To book [...]

UML Views and Sub-views

We often heard about views of a system. In UML, we heard about 4+1 views, or structural view, dynamic view (behavioral view) in the UML User’s Guide and etc… Do do you feel a bit confuse of what actually a view of a system is? And why there are so many different terminologies about views [...]

Use Case Modeling – Movie Rental

What are they?
A Use Case represents a single interaction between a primary actor (who initiates the interaction) and other (secondary) actors, and the system itself. The interaction is presented as a sequence of simple steps. A Use Case provides one or more scenarios that convey how an Actor interacts with the system to achieve [...]

Class vs. Object

A Class
An individual class is shown on the diagram as a box with up to four sections:

The first section shows the name of the class. Names should be nouns. Typically the first letter of every word in a name is capitalized.
Attributes represent the state of the object or what the object knows.
Operators represent the behavior [...]

Class Relationship – An Example

This class diagram shows examples of associations, aggregations, and generalizations.
In general, associations describe the relationships between classes or objects. They start as simple connectors, to show that some relationship exists. As design progress (and often during development), the natures of the relationships become clearer, and the associations are modified to reflect the new knowledge. For [...]

Introduction to Class Diagram

What is a Class Diagram?
A class diagram describes the types of objects in the system and the various kinds of static relationships that exist among them. It is a graphical representation of a static view on declarative static elements and a central modeling technique that runs through nearly all object-oriented methods. The richest notation in [...]

Representing Scenario with Behavior Diagrams

Suppose we have such a lower level detailed design related to a member registration process:

register new member
fill in information
create a member
update personal information member
insert new member object to the database

We can used different behavior diagrams to represent the above scenario. Now let’s use a MVC architectural pattern to represent the scenario using interaction diagrams and [...]

Interaction Modeling

Responsibility and Collaboration
We could put the implementation of a single Use Case inside a single method in a single class, but it would be an object oriented design which means that the single class is the whole system itself. To make a Use Case happen, we need to realize the Use Case with a group [...]

Why Modeling?

Think of it this way: if you are building a doghouse, you can start with a pile of lumber and some tools, and just build it. If you are building a house, it would be foolish to start building without doing some sort of planning. That means, in most cases, at least producing blueprints. If [...]

Business Workflow Modeling using Activity Diagram

An Example: Capturing Requirements by using Business Workflow Modeling
Problem Statement
ABC Software Helpdesk received customers’ query related to the software products they supported. If the helpdesk staff can resolve the queries, they do so and give the customer a solution; otherwise they identify a problem and refer this to Second-line Support. Second-line Support reproduces and investigates [...]

Introduction To Deployment Diagram

The deployment model describes how an application is deployed across an infrastructure. It is used to show the distribution of components, typically across a multi-tier system or the deployment of components around a heterogeneous environment. In other words, The Deployment diagram shows the physical configuration of run-time processing components of a distributed system. The intention [...]

Introduction to State Diagram

The behavior of an entity is not only a direct consequence of its inputs, but it also depends on its preceding state.  The past history of an entity can best be modeled by a finite state diagram traditionally named automata.  State diagrams (or sometimes referred to as statechart diagrams or state machine) show the different [...]

Introduction to Object Diagram

An object is an instance of a class and it is the instantiation of a class, i.e. it is the object created from the class at runtime. An object diagram shows specific instances of classes in a class diagram and links between the instances at some point in time. It can be thus viewed as [...]

Introduction – An Introduction

The primary purpose of the timing diagram is to show the change in state or condition of a lifeline (representing a Classifier Instance or Classifier Role) over linear time. Timing diagrams are another type of interaction diagram focusing on conditions changing within and among Lifelines along a linear time axis. Timing diagrams describe behavior of [...]

Tricks and Tips

Use Cases as a Communication Tool
It is important to make sure that each use case emphasizes on the functions of the system as seen by the user and that they are understandable by both the user and the system analyst.  The use cases can then truly become an effective communication tool for the domain experts [...]

Textual-Analysis 3 of 3 Drawing the Use Case Diagram with VP-UML

After the identification of the actors and a list of use cases for the system, we can now move to the part III – Develop the use case diagram with Visual Paradigm for UML

Textual Analysis 2 of 3 Identify Actors and Use Cases with VP-UML

Using a Library Case Study guide you through the simple process and steps to perform textual analysis for use case identification. This Tutorial consists of three part. Part I is the problem statement and the basic steps of textual analysis by using Visual Paradigm for UML to automate the development process