Information System Desig

Similar documents
Class Diagrams. CSC 440/540: Software Engineering Slide #1

Software Architecture. CSC 440: Software Engineering Slide #1

c. What is the average rate of change of f on the interval [, ]? Answer: d. What is a local minimum value of f? Answer: 5 e. On what interval(s) is f

Estonian Place Names in the National Information System and the Place Names Register *

gender mains treaming in Polis h practice

STEEL PIPE NIPPLE BLACK AND GALVANIZED

One Optimized I/O Configuration per HPC Application

LU N C H IN C LU D E D

Lecture 05: High-Level Design with SysML. An Introduction to SysML. Where are we? What is a model? The Unified Modeling Language (UML)

Form and content. Iowa Research Online. University of Iowa. Ann A Rahim Khan University of Iowa. Theses and Dissertations

The Ability C ongress held at the Shoreham Hotel Decem ber 29 to 31, was a reco rd breaker for winter C ongresses.

A L A BA M A L A W R E V IE W

The Geodetic Infrastructure Management Via Web-Based Mapping Technology in Morocco

Use precise language and domain-specific vocabulary to inform about or explain the topic. CCSS.ELA-LITERACY.WHST D

AGRICULTURE SYLLABUS

600 Billy Smith Road, Athens, VT

Grain Reserves, Volatility and the WTO

C o r p o r a t e l i f e i n A n c i e n t I n d i a e x p r e s s e d i t s e l f

LSU Historical Dissertations and Theses

FACULTY OF SCIENCE ACADEMY OF COMPUTER SCIENCE AND SOFTWARE ENGINEERING OBJECT ORIENTED PROGRAMMING DATE 07/2014 SESSION 8:00-10:00

MOLINA HEALTHCARE, INC. (Exact name of registrant as specified in its charter)

Capacitor Discharge called CD welding

An object-oriented design process. Weather system description. Layered architecture. Process stages. System context and models of use

EKOLOGIE EN SYSTEMATIEK. T h is p a p e r n o t to be c i t e d w ith o u t p r i o r r e f e r e n c e to th e a u th o r. PRIMARY PRODUCTIVITY.

Photo. EPRI s Power System and Railroad Electromagnetic Compatibility Handbook

ArcGIS Enterprise: What s New. Philip Heede Shannon Kalisky Melanie Summers Sam Williamson

B ooks Expans ion on S ciencedirect: 2007:

M a n a g e m e n t o f H y d ra u lic F ra c tu rin g D a ta

1980 Annual Report / FEDERAL R ESER V E BA N K OF RICHMOND. Digitized for FRASER Federal Reserve Bank of St.

University Microfilms

Lesson Ten. What role does energy play in chemical reactions? Grade 8. Science. 90 minutes ENGLISH LANGUAGE ARTS

ANNUAL MONITORING REPORT 2000

Information System Design IT60105

Product Data Sheet KyoRack 4

Product Data Sheet KyoRack 2

7.2 P rodu c t L oad/u nload Sy stem s

S U E K E AY S S H A R O N T IM B E R W IN D M A R T Z -PA U L L IN. Carlisle Franklin Springboro. Clearcreek TWP. Middletown. Turtlecreek TWP.

UML. Design Principles.

Beechwood Music Department Staff

MySQL 5.1. Past, Present and Future. Jan Kneschke MySQL AB

REFUGEE AND FORCED MIGRATION STUDIES

Use precise language and domain-specific vocabulary to inform about or explain the topic. CCSS.ELA-LITERACY.WHST D

7th FIG Regional Conference Spatial Data Serving People: Land Governance and the Environment - Building the Capacity

SCHOOLS DIVISION OFFICE OF KABANKALAN CITY

Information System Design IT60105

BASIC TECHNOLOGY Pre K starts and shuts down computer, monitor, and printer E E D D P P P P P P P P P P

Agile modeling for INF5150

TECHNICAL MANUAL OPTIMA PT/ST/VS

Design and implementation of a new meteorology geographic information system

MPP5800 series - PANEL MOUNT PRINTERS. Options

Bentley Map Advancing GIS for the World s Infrastructure

A new ThermicSol product

Results as of 30 September 2018

ECEN 651: Microprogrammed Control of Digital Systems Department of Electrical and Computer Engineering Texas A&M University

UNITED STATES SECURITIES AND EXCHANGE COMMISSION Washington, D.C Form 8-K/A (Amendment No. 2)

Functional pottery [slide]

ArcGIS Enterprise: What s New. Philip Heede Shannon Kalisky Melanie Summers Shreyas Shinde

S ca le M o d e l o f th e S o la r Sy ste m

Vlaamse Overheid Departement Mobiliteit en Openbare Werken

VERITAS L1 trigger Constant Fraction Discriminator. Vladimir Vassiliev Jeremy Smith David Kieda

A Model of GIS Interoperability Based on JavaRMI

TTM TECHNOLOGIES, INC. (Exact Name of Registrant as Specified in Charter)

ISO INTERNATIONAL STANDARD. Geographic information Metadata Part 2: Extensions for imagery and gridded data

CHAPTER 6 SUMMARV, m a in FINDIN6S AND C0NCUL5I0NS

Introduction to Computer Programming

Software Process Models there are many process model s in th e li t e ra t u re, s om e a r e prescriptions and some are descriptions you need to mode

High Capacity Double Pillar Fully Automatic Bandsaw. p h a r o s 2 8 0

Performance Modeling of Distributed Collaboration Services with Independent Inputs/Outputs

C o v. R o c k e f e l l e r W i l l S e e k S o m e S t a t e A g e n c y R e o r g a n i z a t i o n

Precalculus, Quarter 4, Unit 4.1. Matrices. Overview

THE BANK OF NEW YORK MELLON CORPORATION (Exact name of registrant as specified in its charter)

Lan Performance LAB Ethernet : CSMA/CD TOKEN RING: TOKEN

Breakup of weakly bound nuclei and its influence on fusion. Paulo R. S. Gomes Univ. Fed. Fluminense (UFF), Niteroi, Brazil

Engineering of Automated Systems with Mechatronic Objects

NORWEGIAN MARITIME DIRECTORATE

ISO INTERNATIONAL STANDARD. Geographic information Spatial referencing by coordinates

I M P O R T A N T S A F E T Y I N S T R U C T I O N S W h e n u s i n g t h i s e l e c t r o n i c d e v i c e, b a s i c p r e c a u t i o n s s h o

Comp 11 Lectures. Mike Shah. July 26, Tufts University. Mike Shah (Tufts University) Comp 11 Lectures July 26, / 40

ARC 202L. Not e s : I n s t r u c t o r s : D e J a r n e t t, L i n, O r t e n b e r g, P a n g, P r i t c h a r d - S c h m i t z b e r g e r

Pipelining. Traditional Execution. CS 365 Lecture 12 Prof. Yih Huang. add ld beq CS CS 365 2

Esri UC2013. Technical Workshop.

ST 602 ST 606 ST 7100

ArchaeoKM: Managing Archaeological data through Archaeological Knowledge

Hestenes lectures, Part 5. Summer 1997 at ASU to 50 teachers in their 3 rd Modeling Workshop

GENERALIZATION IN THE NEW GENERATION OF GIS. Dan Lee ESRI, Inc. 380 New York Street Redlands, CA USA Fax:

INTERIM MANAGEMENT REPORT FIRST HALF OF 2018

Your web browser (Safari 7) is out of date. For more security, comfort and the best experience on this site: Update your browser Ignore

Information System Design IT60105

NEC PerforCache. Influence on M-Series Disk Array Behavior and Performance. Version 1.0

Dangote Flour Mills Plc

DGIWG 200. Defence Geospatial Information Framework (DGIF) Overview

Lab Exercise 6 CS 2334

Feasibility Analysis, Dynamics, and Control of Distillation Columns With Vapor Recompression.

ISO INTERNATIONAL STANDARD. Geographic information Metadata Part 2: Extensions for imagery and gridded data

Texas Student Assessment Program. Student Data File Format for Student Registration and Precoding

UNITED STATES SECURITIES AND EXCHANGE COMMISSION WASHINGTON, D.C FORM 8-K

Part 1: Fundamentals

Sodium-Initiated Polymerization of Alpha- Methylstyrene in the Vicinity of Its Reported Ceiling Temperature

Chapter 2: Object Oriented Analysis. 1.0 Building Domain/Conceptual Models

Structures of Life. Investigation 2: Growing Further. Big Question: 3 rd Science Notebook. Name:

Transcription:

n IT60105 Lecture 7 Unified Modeling Language

Lecture #07 Unified Modeling Language Introduction to UML Applications of UML UML Definition Learning UML Things in UML Structural Things Behavioral Things Grouping Things Annotational Things Relationships in UML Diagrams in UML

Introduction to UML

Introduction to UML UML is an abbreviation of Unified Modelling Language UML is a language L (A,R ) la n g u a g e a lp h a b e ts C o m m u n ic a tio n g ra m m a r It has a set of vocabulary (like rectangles, lines, ellipses etc.) and the rules for combining words in that vocabulary for the purpose of communication UML is a graphical language

Introduction to UML UML is a modeling language UML is a language to create models (software blue prints) of software intensive systems UML focuses on conceptual and physical representation of a system

Introduction to UML UML is a unified modeling language It provides a standard for modeling a system, the standard was derived from previously exercised methodologies such as Booch s Methodology by Grady Booch (1991) Object Modeling Technique (OMT) by James Rumbaugh (1991) Object Oriented Software Engineering (OOSE) by Ivar Jacobson (1992)

Introduction to UML UML is a unified modelling language UML is developed by Grady Booch, James Rumbaugh and Ivar Jacobson towards the direction of an unification effort UML was adopted by Object Management Group (OMG) and became a de facto standard in 1997 O M T UM L B ooch O O SE Details on UML and its evolution can be seen in www.omg.org

Applications of UML

Applications of UML The UML is appropriate for modeling systems ranging from enterprise systems to distributed web based applications and even to hardcore real time embedded systems UML follows object oriented approach and hence the best deals with object oriented analysis and design (OOA&D) of systems

Definition of UML

Definition of UML The UML is a language for Visualizing Specifying Constructing Documenting the artifacts of a software-intensive system

Definition of UML : Visualizing Visualizing UML models a system to facilitate communication for all range of people

Definition of UML : Specifying Specifying UML builds models that are precise, unambiguous and complete. In particular UML addresses the specification of all the important analysis, design and implementation decision that must be made in developing and deploying a software system

Definition of UML : Constructing Constructing UML models can be directly mapped to An object oriented programming language such as C++, Java or Visual Basic Tables in relational database Persistent store of an object-oriented database This permits forward engineering: the generation of a code from a UML model into a programming language

Definition of UML : Constructing It also permits reverse engineering: One can reconstruct a model from an implementation back into the UML Reverse engineering intervention requires tools support with human Roundtrip engineering: combining the two paths of forward code generation and reverse engineering Meaning the ability to work in either a graphical or technical view UML keeps two views consistent

Definition of UML : Documenting Documenting UML facilitates all sorts of system artifacts like requirements, design, project planning, coding, testing, prototyping, maintenance, release etc. These artifacts not only the deliverables of a project, they also in controlling, measuring and communicating about a system during its development and after its deployment

Learning UML

Learning UML There are three major elements in UML 1. Basic building blocks (vocabulary of the language) 2. The rules how these building blocks can be put together 3. Some common mechanism that can be applied throughout the UML

Basic Building Blocks in UML Vocabulary of the UML encompasses three kinds of building blocks Things Relationships Things are abstractions in a model Relationships tie the things together Diagrams Diagrams group relevant collection of things

Basic Building Blocks: Things There are four kinds of things in the UML 1. Structural things 2. Behavioral things 3. Grouping things 4. Annotational things

Structural Things in UML

Structural Things in UML Relevant things that are either conceptual or physical Examples: class, object, etc. Structural things are nouns in the UML model There are seven structural things in UML 1. 2. 3. 4. 5. 6. 7. Class Active class Component Interface Use case Collaboration Node

Structural Things: Class Class A class is a description of a set of objects ( or an abstraction of object) Graphically a class is represented as a rectangle, including its name, attributes, and operations Nam e A t t r ib u t e s O p e r a t io n s

Structural Things: Active Class Active Class An active class is just like a class expect that its object represent element whose behavior is concurrent with other elements An object of an active class owns one or more processes or threads and therefore initiate control activity Graphically, an active class is denoted just like a class, but with a heavy line, usually including its name, attributes, and operations E vent M anger A t t r ib u t e s re s u m e () s ta rt() s u s p e n d () k ill( ) f lu s h ( )

Structural Things: Component Component Component of a system is to conform with the realization of a set of interfaces m y P a c k a g e.h tm Example: An applet, com+ component, Java bean or ASP file. In fact, a component is typically represents a physical package of otherwise logical elements such as classes, interfaces and collaborations Graphically a component denoted as a rectangle with tabs, usually including only its name

Structural Things: Interface Interface An interface is a collection of operators that specify a service of a class or a component it h e s a u ru s is p e ll In UML, Interfaces are used to model the seams (layers) in a system Graphically, an interface rendered as a circle together with its name is y n o n ym s Note: An interface rarely stands alone, rather it is attached to a class or component C om ponent iu n k n o wn ic o u n t

Structural Things: Use case Use case Use case represents a functional components in a model Graphically a use case is represented by an ellipse including only its name G e t O rd e r P ro c e s s O rd e r

Structural Things: Collaboration Collaboration A collaboration names a society of classes, interfaces, and other components that work together to provide cooperative behavior that is bigger than the sum of its individual parts Example: A big building (world trade center) is a collaboration of some structural construction, electrical wiring system, telephone connectivity, internet connectivity, water supply system, etc. Graphically a collaboration is rendered as an ellipse with dashed line W o r ld T r a d e C e n te r

Structural Things: Node Node Node is a physical element and represent a computational resource, generally having same memory and processing compatibility Graphically, a node is denoted by a cube, usually includes its name S e rv e r

Behavioral Things in UML

Behavioral Things in UML Unlike structural things, behavioral things are to represent dynamic parts of UML models. Structural things are the mostly static parts of the model and are the nouns of the UML model In the contrary, behavioral things are the verbs of UML models There are two primary kind of behavioral things in the UML 1. Interaction 2. State machine

Behavioral Things: Interaction Interaction An interaction is a behavior that comprises a set of messages exchanged among set of objects within a context to accomplish a purpose Basically interaction used to link two instances of classes (objects), and through which one object can send a message to the other object

Behavioral Things: Interaction Graphically, an interaction is represented as a directed line, usually including the name of its operation P e rs o n : 1..* e m p lo y e e W o rk s fo r * e m p lo y e r C om pany : a s s ig n (p : P r o je c t) : a s s ig n ( t e s t in g ) e : P e rs o n c : Com pany

Behavioral Things: State Machine State machine Using an interaction one can model the behavior of a society of objects that work together On the other hand, using a state machine one can model the behavior of an individual object A state machine is a behavior that specifies the sequence of states of an object goes through during its life time in response to a message

Behavioral Things: State Machine Graphically a state is denoted by a rounded rectangle, including its name and its states, if any shut dow n on f in is h e d w a it r u n n in g k e y p re s s A s ta te m a c h in e fo r a n o b je c t B u tto n Note: These two behavioral things are usually connected though various structural elements like classes, collaborations, objects etc.

Grouping Things in UML

Grouping Things in UML Visualizing, specifying, constructing and documenting large systems involves manipulating potentially large members of classes, interfaces, components, nodes, diagrams, and other elements It is therefore necessary to organize these things into larger chunks In UML, grouping things have been planned for this purpose In all, there is one primary kind of grouping things, namely, package

Grouping Things: Package Package A package is a general purpose mechanism for organizing elements into groups Graphically, package is rendered as a tabbed folder, usually including only the name, sometimes references to its contents G r a p h ic s

Annotational Things in UML

Annotational Things in UML Annotational things are the explanation parts of UML models Designers follows these to describe, illuminate, and remark about any elements in a model There is one primary kind of annotational things called note A note is simply a symbol for renders a comment has no semantic impact, means, its contents has no effect on models

Annotational Things: Note Graphically a note is rendered as a rectangle with a dog earned corner, together with a textual or graphical comment S im p le T e x t U R L + T ext IS D IT 6 0 1 0 5 # 2 0 C o m m e n ts w it h im a g e s

Relationships in UML

Relationships in UML A relationship is a concern among things There are four relationships in the UML 1. 2. 3. 4. Dependency Association Generalization Realization

Relationships: Dependency Dependency A dependency is a semantic relation between two things in which a change to one thing (the independent thing) may affect another thing that use it, but not necessarily the reverse D ependency V id e o p la y ( c : C lip ) s ta rt() s to p () r e s iz e ( ) re s e t()] : I n d e p e n d e n t c la s s D e p e n d e n t c la s s C lip H e re, if th e re is a c h a n g e in th e c la s s C lip, th e o p e ra tio n p la y () in th e c la s s V id e o w ill b e e ffe c te d

Relationships: Association Association An association is a structural relationship that describe a set of links, a link being a connection among objects Aggregation is a special kind of association, representing a structural relationship between a whole and its parts

Relationships: Association Graphically, association/aggregation is denoted with solid/diamond-edged line with label and multiplicities at both ends of line P e rs o n 1..* W o rk s fo r e m p lo y e e * e m p lo y e r C om pany A s s o c ia tio n U n iv e r s ity 1 Has A g g r e g a tio n * D e p a rtm e n t

Relationships: Generalization Generalization A generalization is a generalized/specialized relationship in which objects of the specialized elements (the child), are suitable for objects of the generalized elements (the parent) P a re n t C h ild

Relationships: Realization Realization A realization is a semantic connection between two things: interface, class, component between use-case and collaboration etc. IE E E M e m b e r : b io d a ta ( ) : S tu d e n t : b io d a ta ( ) :

Diagrams in UML Any system can be viewed with five interrelated views S tr u c tu r a l v ie w B e h a v io r a l v ie w U s e r 's v ie w Im p le m e n ta tio n v ie w E n v ir o n m e n ta l v ie w

Diagrams in UML To represent each view, UML provides nine diagrams, popularly termed as UML diagrams or UML artifacts S tru c tu ra l v ie w B e h a v io ra l v ie w C la s s d a ig r a m s O b je c t d ia g r a m s P a c k a g e d ia g r a m s C o m p o s it e s t r u c t u r e d ia g r a m s A c t iv it y d a ig r a m s I n t e r a c t io n o v e r v ie w d ia g r a m s S e q u e n c e d ia g r a m s C o lla b o r a t io n d ia g r a m s U s e r 's v i e w Im p le m e n ta tio n v ie w C o m p o n e n t d a ig r a m s S t a t e c h a r t d ia g r a m s T im in g d ia g r a m s U s e c a s e d a ig r a m s E n v iro n m e n ta l v ie w D e p lo y m e n t d a ig r a m s