Professional Documents
Culture Documents
(Affiliated to)
SOFTWARE ENGINEERING
Practical File
2 Introduction to UML 4
Toolbar: The toolbar contains the most frequently used actions like New, Open, Save etc…
Status Bar: The status bar at the bottom displays status messages.
Browser Window: The browser window displays the views: Use Case View, Logical View,
Component View and Deployment View. Each of these views contains the diagrams.
Diagram Window: The diagram window is the place where the user draws the diagrams using
the symbols from the diagram toolbar.
Log Window: This window is used to display error messages, warnings and information
messages.
• Problem-Solving - Enterprises can improve their product quality and reduce cost
especially for complex systems in large scale. Some other real-life problems including
physical distribution or security can be solved;
• Improve Productivity - By using the UML diagram, everyone in the team is on the same
page and lots of time are saved down the line;
• Easy to Understand - Since different roles are interested in different aspects of the system,
the UML diagram offers non-professional developers, for example, stakeholders,
designers, or business researchers, a clear and expressive presentation of requirements,
functions and processes of their system.
Rational Rose is a visual modeling tool, enabling the creation, analysis, design and modification
of components in a software system. This exercise is intended to show you how to draw a use
case diagram within Rational Rose.
Symbols Used
1. Actor:
2. Use case:
• Actor
• Use Case
• Association
The class diagram describes the attributes and operations of a class and also the constraints
imposed on the system. The class diagrams are widely used in the modelling of object oriented
systems because they are the only UML diagrams which can be mapped directly with object
oriented languages.
The class diagram shows a collection of classes, interfaces, associations, collaborations and
constraints. It is also known as a structural diagram.
1. Identify the objects in the problem domain, and create classes for each of them. (e.g.
Teacher, Student, Course for an enrollment system)
2. Add attributes for those classes (e.g. name, address, telephone for the Student class)
3. Add operations for those classes (e.g. addStudent(student) for the Course class)
4. Connect the classes with appropriate relationships (e.g. Relate Teacher and Course with an
association)
5. Optionally specify the multiplicities for association connectors' ends (e.g. Input 0..3 for the
Course side of the association that connects Teacher and Course, to signify that one teacher
can teach
• Class
• Generalization
• Association
The class diagram describes the attributes and operations of a class and also the constraints
imposed on the system. The class diagrams are widely used in the modelling of object oriented
systems because they are the only UML diagrams which can be mapped directly with object
oriented languages.
The class diagram shows a collection of classes, interfaces, associations, collaborations, and
constraints. It is also known as a structural diagram.
1. Identify the objects in the problem domain and create classes for each of them. (e.g.,
Teacher, Student, Course for an Enrolment system)
2. Add attributes for those classes (e.g., name, address, telephone for the Student class)
3. Add operations for those classes (e.g., addStudent(student) for the Course class)
4. Connect the classes with appropriate relationships (e.g., Relate Teacher and Course with
an association)
5. Optionally, specify the multiplicities for association connectors' ends (e.g., Input 0..3 for
the Course side of the association that connects Teacher and Course)
• Actor
• Lifeline
• Self Message
• Activation
Activity
Action
A task to be performed
Control Flow
Object Flow
A statechart diagram, also known as a state machine diagram, is a type of UML diagram that
represents the dynamic behaviour of a system or an object. It depicts the various states that an
object can be in and the transitions between those states based on events and conditions.
In a statechart diagram, states are represented as nodes or rectangles, and transitions between states
are depicted as arrows. Events trigger state transitions, and conditions or guards can be specified
to determine which transition should occur. Additionally, actions or activities can be associated
with states or transitions to indicate the behaviour or operations that take place during a particular
state or transition.
Statechart diagrams are useful for modelling complex systems or objects with a significant number
of possible states and transitions. They provide a visual representation of the system's behaviour,
making it easier to understand and analyse the different states and their relationships. Statechart
diagrams are commonly used in software development, especially in the design of reactive and
event-driven systems.
1. Determine the object or system for which you want to create the statechart diagram. Clearly
define the scope and boundaries of the object or system to be modeled.
2. Identify the distinct states that the object or system can be in. States represent the different
conditions or modes of the object or system. It is essential to determine the meaningful and
relevant states based on the behavior and characteristics of the object or system.
3. Determine the events or triggers that cause the object or system to transition from one state
to another. Identify the conditions or constraints that govern these transitions. Consider the
actions or activities that occur during the transition.
4. Represent the identified states as nodes (rectangles) in the statechart diagram. Connect the
states with arrows to depict the transitions. Label the arrows with the triggering events or
conditions that lead to the transitions.
5. Add additional information, such as actions or activities associated with each state or
transition. Include any necessary guards or conditions for the transitions. Review the
diagram for clarity, correctness, and completeness. Refine and revise as needed.
• States
• Initial State
• Final State
• Transitions
• Events
• Conditions (Guards)
• Actions
• Hierarchical States
An Entity Relationship Diagram (ER Diagram) describes the relationship of entities that need to
be stored in a database. ER diagram is mainly a structural design for the database. It is a framework
using specialized symbols to define the relationship between entities. ER diagram is created based
on 3 main components entities, attributes, and relationships.
A data flow diagram is a graphical representation of the flow of data through an information
system, modelling its process aspects. In the 1970s, Larry Constantine, the original developer of
structured design, proposed DFDs as a practical technique based on Martin and Estrin’s Data
Flow Graph model of computation. It became more popular in business circles, as it was applied
to business analysis, than in academic circles.
1. External Entity
2. Process
3. Data Flow
4. Data Store
• Logical DFDs
• Physical DFDs
2. Vocabulary size (n): This is the total number of distinct operators and operands in the
program. (n = n1+ n2), where
n: vocabulary of a program
n1: number of unique operators
n2: number of unique operands
3. Program volume (V): This is the product of program length (N) and logarithm of
vocabulary size (n), i.e., V = N*log2(n).
4. Program level (L): This is the ratio of the number of operator occurrences to the number
of operand occurrences in the program, i.e., L = n1/n2, where n1 is the number of operator
occurrences and n2 is the number of operand occurrences.
5. Program difficulty (D): This is the ratio of the number of unique operators to the total
number of operators in the program, i.e., D = 1 / L
6. Program effort (E): This is the product of program volume (V) and program difficulty
(D), i.e., E = V*D.
14 N1 = 53 10 N2 = 38
Program Length=91
Vocabulary Size=24
Program Value=343.41
A test case is a set of instructions on “HOW” to validate a particular test objective/target, which,
when followed will tell us if the expected behaviour of the system is satisfied or not.
Here, we are writing a test case for the IRCTC application module:
S. No. Precondition Test Scenario Test Test Case Test Steps Expected
Case ID Description Description Output
1. Open Rational rose enterprise edition. Select J2EE on first prompt window.
7. Under notations tab, select JAVA in default language, default notation must be selected as
Unified. Also select Visibility as icons checkbox.
9. Select component 2 in class diagram and then right click to open specification.
15. Now create new classpath: C:\JP1 and click :Reference Classpath button below.
18. Now create new classpath: “C:\JP1” and click: “Reference Classpath” button below. You will
see the dialog box-code generated successfully.