UML Lab Manual
Short Description
Download UML Lab Manual...
Description
INDEX
S. No
Contents
Page No
1
Lab Objective
2
2
Introduction About Lab
2
3
Guidelines to Students
3
List of Lab Exercises 4
4.1 Syllabus Programs (JNTU)
4
4.2 Additional and Advanced Programs 5
Description about UML
6
6
Diagrams
9
7
References
49
-1-
Department of MCA
LAB OBJECTIVE •
Overview of UML
•
Basic & Advanced Models
•
Class , Object, Collaboration & Sequence
•
Use Cases Advanced Modeling
•
Component Diagram & Deployment Diagrams
INTRODUCTION ABOUT LAB There are 66 systems (Compaq Presario) installed in this Lab. Their configurations are as follows: Processor RAM
: :
Hard Disk Mouse
256 MB :
:
Network Interface card
AMD Athelon ™ 1.67 GHz
40 GB
Optical Mouse :
Present
Software All systems are configured in DUAL BOOT mode i.e., Students can boot from Windows XP or Linux as per their lab requirement. This is very useful for students because they are familiar with different Operating Systems so that they can execute their programs in different programming environments. Each student has a separate login for database access Oracle 9i client version is installed in all systems. On the server, account for each student has been created.
-2-
Department of MCA
This is very useful because students can save their work ( scenarios’, pl/sql programs, data related projects ,etc) in their own accounts. Each student work is safe and secure from other students. Latest Technologies like DOT NET and J2EE are installed in some systems. Before submitting their final project, they can start doing mini project from 2nd year onwards. MASM ( Macro Assembler ) is installed in all the systems Students can execute their assembly language programs using MASM. MASM is very useful students because when they execute their programs they can see contents of Processor Registers and how each instruction is being executed in the CPU. Rational Rose Software is installed in some systems Using this software, students can depict UML diagrams of their projects. Softwares installed: C, C++, JDK1.5, MASM, OFFICE-XP, J2EE and DOT NET, Rational Rose. Systems are provided for students in the 1:1 ratio. Systems are assigned numbers and same system is allotted for students when they do the lab.
-3-
Department of MCA
Guidelines to Students 1. Learn what the UML is, what it is not and why it is relevant to the process of developing software-intensive systems 2. Master the vocabulary rules and idioms of the UML and in general how to speak the language efficiently 3. Under stand how to apply UML to solve a number of common problems The user guide provides a reference to the use of specific UML features, However it is not intended to be a comprehensive reference manual for UML. That is focus on other book, The Unified Modeling Language Reference Manual For the developer approaching the UML for the first time, the user guide is best-read linearly. All chapters are constructed so that each builds upon the contents of previous one, thus lending it as linear progression.
-4-
Department of MCA
UML Syllabus Programs
S. No 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 33. 34. 35. 36. 37. 38.
Programs Class diagram of school without attributes Class diagram of school with attributes Class diagram of Hospital without attributes Class diagram of Hospital with attributes Class diagram for ATM. Use case diagram for ATM. Activity diagram for ATM Sequence diagram ATM Collaboration diagram for ATM Component diagram for ATM Deployment diagram for ATM State Transition diagram for ATM Use case Diagram for Librarian Scenario Use case diagram for mechanic Use case diagram for Point of sale Use case diagram for Point of sale Activity diagram for Point of sale Sequence diagram for Point of sale Collaboration diagram for Point of sale Deployment diagram for Point of sale Sequence diagram for Hospital Collaboration diagram for Hospital Activity diagram for Patient visiting doctor using Swim lines Activity diagram of patient checked by Treatment Provider for Diabetes Activity diagram for Cellular Company Online Book shop of class diagram without attributes On line book shop of Use case diagram Online book shop of Activity diagram Sequence diagram using Timing Constraints & Locations State transition diagram representing a history state “H” Diagram representing Concurrent sub states State transition diagram for a Computer being identified with states Diagram for the relation between a component & interface Diagram for the relation between a component & class Deployment diagram for Physical connection system Deployment diagram for Client server system Development Diagram that shows the Embedded System.
-5-
Department of MCA
Description about UML 1. Model • A model is a simplification of reality. • A model provides the blueprints of a system. • A model may be structural, emphasizing the organization of the system, or it may be behavioral, emphasizing the dynamics of the system. • We build models so that we can better understand the system we are developing. • We build models of complex systems because we cannot comprehend such a system in its entirety. Through modeling, we achieve four aims. • • • •
Models help us to visualize a system as it is or as we want it to be. Models permit us to specify the structure or behavior of a system. Models give us a template that guides us in constructing as system. Models document the decisions we have made
2. Principles of Modeling • • • •
The choice of what models to create has a profound influence on how a problem is attacked and how a solution is shaped Every model may be expressed at different levels of precision The best models are connected to reality No single model is sufficient. Every nontrivial system is best approached through a small set of nearly independent models
3. Unified Modeling Language (UML) The UML is a language for • • • •
Visualizing Specifying Constructing Documenting
-6-
Department of MCA
The UML is a Language •
A modeling language is a language whose vocabulary and rules focus on the conceptual and physical representation of a system
The UML is a Language for Visualizing •
Some programmers think of an implementation and then code it. Some programmers think mentally i.e. they even sketch out a few ideas on a paper. That means some things are best modeled textually, others are best modeled graphically. The UML is such a graphical language.
The UML is a Language for Specifying •
Specifying means building models. It specifies of all the important analysis, design, and implementation decisions that must be made in developing a software project.
The UML is a Language for constructing •
The UML is not a visual programming language, but its models can be directly connected to a variety of a programming language. This means that it is possible to map from a model in the UML to a programming language such as Java, C++.
The UML is a Language for Documenting •
•
A Healthy software organization produces all sorts of artifacts in addition to raw executable code. These artifacts include 1. Requirements 2. Architecture 3. Design 4. Source code 5. Project plans 6. Tests 7. Releases The UML addresses the documentation of a system’s architecture and all of its detail
4. Architectural views of UML
-7-
Department of MCA
The user model view - Use Case Diagram - The functionality of a system The structural model view - Class Diagram - The static structure of a system - Object Diagram - The static structure of a system at a particular time The behavioral model view - Sequence Diagram - Interaction among elements of a system in a time sequence - Collaboration diagram - Interaction among elements and their relations organized in time and space - State Diagram - The status condition and responses of the elements of a system - Activity Diagram - The activities of the system The implementation model view - Component Diagram - The organization of the elements realizing the system The Environment model view - Deployment diagram - Configuration of environment elements and the mapping of elements realizing the system into them
-8-
Department of MCA
1. School model without Attributes
-9-
Department of MCA
2. School Model with Attributes
-10-
Department of MCA
3. Hospital Model without Attributes
-11-
Department of MCA
4. Hospital Model with Attributes
-12-
Department of MCA
5. ATM Scenario Class Diagram
-13-
Department of MCA
-14-
Department of MCA
6. ATM Scenario Use –Case Diagram
Bank officer
Transfer fund
Change pin
Deposit funds
Customer
Make payment
View balance
Withdraw money
Transfer funds
-15-
Department of MCA
Client
7. ATM Scenario Activity Diagram
Insert card Enter PIN Connect
Not connected
Enter transition Any more transaction No more transaction
Remove card
-16-
Department of MCA
8. ATM Scenario Sequence Diagram
A : Atm machine
ac : account
B : Bank client
1: Insert card Insert PIN 3 : Enter PIN 4 : Verification
5 : PIN ok
6 : Request for transaction 7 : Process transaction 8 : Enter amount
9 : Amount entered 10 : Withdrawal 11 : Withdrawal success 12 : Dispense cash 13 : take cash
14 : Terminate 15 : Print slip 16 : Eject card
-17-
Department of MCA
9. ATM Scenario Collaboration Diagram
-18-
Department of MCA
10. ATM Scenario Deployment Diagram
-19-
Department of MCA
11. ATM Scenario Component Diagram
ATM.exe
Card Reader
Card Reader
Cash Dispenser
ATM Screen
Card dispenser
ATM Screen
-20-
Department of MCA
12. ATM Scenario State Transition Diagram
-21-
Department of MCA
13. Use case Diagram for Librarian Scenario
-22-
Department of MCA
14.
Use case diagram for mechanic
-23-
Department of MCA
15. Class diagram for Point of sale
-24-
Department of MCA
16. Use case diagram for Point of sale
-25-
Department of MCA
17. Activity diagram for Point of sale
-26-
Department of MCA
18. Sequence Diagram for Point of Sale
-27-
Department of MCA
19. Collaboration diagram for point of sale
C us to me r
1 : 1 : Ta ke s th e p ro d u c t 5 : 5 : P a ym e n t is d o n e
C le rk
4 : 4 : B ill is g ive n
2 : 2 : B ills th e p ro d u ct
C o mpute r
3 : 3 : P ro c e s s e s th e b ill
20. Deployment diagram for point of sale
Barcode scanner
PDA
Touch screens
Server
-28-
Department of MCA
21. Hospital Sequence Diagram
P:Patient
A:Appoint ment
D:Docter
T:Treatm ent
1:Confirms
2:Diagnozed 3:Gives Treatment
4:Receive Feedback
-29-
Department of MCA
22. Hospital Collaboration Diagram
-30-
Department of MCA
23. Activity Diagram of patient visiting doctor using swim lines
-31-
Department of MCA
24. Activity diagram of patient checked by Treatment Provider for Diabetes
Check the patient Prescribed Test
No Symptoms Symptoms Check next Patient Age
Height & Weight
Kind of Diabetes
Provide Treatment
-32-
Department of MCA
25. Activity diagram for Cellular Company Customer
Request Product
Sales
Process Product
Ware house
Pull materials
Shift Order
Receives product
Pay Bills
prepare bills
Close Order
-33-
Department of MCA
26. Online Book shop of class diagram without attributes
-34-
Department of MCA
27. Online book shop of Use case diagram
-35-
Department of MCA
28. Online book shop of Activity diagram
Display Welcome Message
Get Login
Rejected
Get Password & Validate Display Item Information
More Accept Selection
Create Order Display Order
Rejected Accepted
Ship to Customer
-36-
Department of MCA
29. Sequence diagram using Timing Constraints & Locations
-37-
Department of MCA
30. State transition diagram representing a history state “H”
-38-
Department of MCA
31. Diagram representing Concurrent sub states
-39-
Department of MCA
32. Diagram representing Sequential substitutes
-40-
Department of MCA
33. State transition diagram for a Computer being identified with states
S ta te T ra n s itio n d ia g ra m fo r a c o m p u te r b e in g id e n tifie d w ith s ta te s :Id le ,ru n n in g ,s h u t d o w n
2 s e c / s e lf t e s t ( )
K e y p lu s
In te r ru p t( p o w e r fa ilu r e ) R u n n in g
Id le
-41-
S hut do w n
Department of MCA
34. Diagram for the relation between a component & interface
-42-
Department of MCA
35. Diagram for the relation between a component & class
-43-
Department of MCA
36. Deployment diagram for Physical connection system
Draw a Deployment Diagram that shows the physical connection system
Client1 >
Server > Client2
-44-
Department of MCA
37. Deployment diagram for Client server system
D ra w a D e p lo y m e n t D ia g ra m th a t s h o w s th e c lie n t s e rv e r s y
F ile s e rv e r
C lie n t
S e rv e r
K io s k
S e rv e r d a ta b a s e
S e rv e r p rin t
-45-
Department of MCA
38. Development Diagram that shows the Embedded System.
-46-
Department of MCA
-47-
Department of MCA
Viva Questions & Answers 1. What is a Class? Ans. A class is a description of set of objects that share the same attributes, operations, relations and semantics. 2. What is a simple name? Ans. Every class must have a name that distinguishes it from other classes. A name alone is known as a simple name 3. What is a Path name? Ans. A path name is the class name prefixed by the name of the package in which that class lives 4. What is Attribute? Ans. An attribute is a named property of a class that describes a range of values that instances of the property may hold 5. What is an Operation? Ans. An operation is the implementation of a service that can be requested from any object of the class to affect behavior 6. What is responsibility? Ans. A responsibility is a contract or an obligation of a class 7. What is a relationship? Ans. A relationship is a connection among things 8. What is Dependency? Ans. Change in one thing depends upon the another thing 9. How the dependency is rendered? Ans. Dependency is rendered as a dashed directed line, directed to the thing being depended on 10. What kind of relationship for Generalization?
-48-
Department of MCA
Ans. Generalization called an “is-a-kind-of” relationship 11. A class may have how many parents? Ans. A class may have zero, one, or more parents 12. What is root or base class? Ans. A class that has no parents and one or more children is called a root class or base class 13. What is a Leaf class? Ans: A class that has no children is called a leaf class 14. What is the Generalization? Ans: It means that objects of the child may be used anywhere the parent may appear, but not the reverse 15. How generalization is rendered? Ans: It is rendered as a solid directed line with a large open arrowhead, pointing to the parent 16. What is Association? Ans: An Association is a structural relationship that specifies that objects of one thing are connected to objects of another 17. How Association is rendered? Ans: An association is rendered as a solid line connecting the same or different classes 18. What is binary association? Ans: An association that connects exactly two classes is called a binary association 19.What is n-ary association? Ans. An association that connect more than two class 20. What are the four adornments that apply to association?
-49-
Department of MCA
Ans. Name, Role, Multiplicity, Aggregation
21. How we can describe nature of relationship in association> Ans. By the name 22. What is a Role? Ans. When a class participates in an association, it has a specific role that it plays in the relationship 23. How many multiplicities? Ans. Exactly one(1), Zero or One(0..1), many(0..*), or one or more(1..*) or even state an exact number( for example, 3). 24. What type of Aggregation relationship? Ans. Whole/Part relationship 25.How aggregation relationship is rendered? Ans. It has a plain association with an open diamond at the whole end. 26. What are the relationships usually visualized in class diagrams? Ans. Dependencies, generalization, and association 27. What is a note? Ans. It is a graphical symbol for rendering constraints or comments attached to an element or a collection of elements. 28. How the note is rendered? Ans. It is rendered as a rectangle with dog-eared corner, together with textual or graphical comment. 29. What is stereotype? Ans. It is an extension of the vocabulary of the UML 30. How stereotype is rendered?
-50-
Department of MCA
Ans. It is rendered as a name enclosed by guillements and placed above the name of another element.
-51-
Department of MCA
References Books / Material
Text Books Grady Booch, James Rumbaugh, Ivar Jacobson : The Unified Modeling Language 1. User Guide, Pearson Education. Hans-Erik Eriksson, Magnus Penker, Brian Lyons, David Fado: UML 2 Toolkit, 2. WILEY-dreamtech India Pvt. Ltd.
Suggested / Reference Books 1 ) 2 ) 3 ) 4 )
Meilir Page-Jones : Fundamentals of Object Oriented Design in UML, Pearson Education Atul Kahate: Object Oriented Analysis & Design, The McGraw-Hill Companies Mark Priestley: Practical Object-Oriented Design with UML,TATA McGrawHill Ivar Jacobson, Grady Booch, James Rumbaugh: The Unified Software Development Process, Pearson Education
Web sites 1 ) 2 )
http://en.wikipedia.org/wiki/Unified_Modeling_Language http://atlas.kennesaw.edu/~dbraun/csis4650/A&D/index.htm
-52-
Department of MCA
-53-
Department of MCA
View more...
Comments