Professional Documents
Culture Documents
UML Lab Manual
UML Lab Manual
UML Lab Manual
S. No 1 2 3 Lab Objective
Contents
Page No 2 2 3
5 6 7
6 9 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 : : : AMD Athelon 1.67 GHz
256 MB : 40 GB
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
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 systems architecture and all of its detail
-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
-9-
Department of MCA
-10-
Department of MCA
-11-
Department of MCA
-12-
Department of MCA
-13-
Department of MCA
-14-
Department of MCA
Bank officer
Change pin
Transfer fund
Deposit funds
Customer
Make payment
Client
Withdraw money
View balance
Transfer funds
-15-
Department of MCA
N connected ot
-16-
Department of MCA
A : Atm machine
ac : account
1: Insert card Insert PIN 3 : Enter PIN 4 : Verification
B : Bank client
5 : PIN ok
-17-
Department of MCA
-18-
Department of MCA
-19-
Department of MCA
ATM.exe
Card Reader
Cash Dispenser
Card Reader
ATM Screen
Card dispenser
ATM Screen
-20-
Department of MCA
-21-
Department of MCA
-22-
Department of MCA
14.
-23-
Department of MCA
-24-
Department of MCA
-25-
Department of MCA
-26-
Department of MCA
-27-
Department of MCA
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
2 : 2 : B ills th e p ro d u ct
C o mpute r
4 : 4 : B ill is g ive n
3 : 3 : P ro c e s s e s th e b ill
Barcode scanner
PDA
Touch screens
Server
-28-
Department of MCA
P:Patient
1:Confirms
A:Appoint ment
D:Docter
T:Treatm ent
4:Receive Feedback
-29-
Department of MCA
-30-
Department of MCA
-31-
Department of MCA
No Symptoms Symptoms Check next Patient Age Height & Weight Kind of Diabetes
Provide Treatment
-32-
Department of MCA
Request Product
Process Product
Pull materials
Shift Order
Receives product
prepare bills
Pay Bills
Close Order
-33-
Department of MCA
-34-
Department of MCA
-35-
Department of MCA
Get Login
Rejected
Ship to Custom er
-36-
Department of MCA
-37-
Department of MCA
-38-
Department of MCA
-39-
Department of MCA
-40-
Department of MCA
33. State transition diagram for a Computer being identified with states
2 s e c / s e lf t e s t ( )
K e y p lu s Id le
In te r ru p t( p o w e r fa ilu r e ) R u n n in g S hut do w n
-41-
Department of MCA
-42-
Department of MCA
-43-
Department of MCA
-44-
Department of MCA
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
C lie n t
F ile s e rv e r
S e rv e r
S e rv e r d a ta b a s e
K io s k
S e rv e r p rin t
-45-
Department of MCA
-46-
Department of MCA
-47-
Department of MCA
-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
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
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
-52-
Department of MCA
-53-
Department of MCA