ARCH-05 Application Prophecy UML 101 Peter Varhol Principal Product Manager.

Slides:



Advertisements
Similar presentations
UML an overview.
Advertisements

UML Diagrams Jung Woo. What is UML? Standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems, business.
© 2006 ITT Educational Services Inc. SE350 System Analysis for Software Engineers: Unit 9 Slide 1 Appendix 3 Object-Oriented Analysis and Design.
A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.
Object-Oriented Analysis and Design
Lecture 12: Chapter 22 Topics: UML (Contd.) –Relationship Structural Behavioral –Diagram Structural Behavioral.
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
Lecture 11: Chapter 22 Topics –Object Oriented Modeling –UML –Use case.
Team Skill 6 - Building The Right System Part 1: Applying Use Cases (Chapters of the requirements text) CSSE 371 Software Requirements and Specification.
C++ Training Datascope Lawrence D’Antonio Lecture 11 UML.
© Copyright Eliyahu Brutman Programming Techniques Course.
Copyright 2004 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Second Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix.
Sharif University of Technology1 Design and Use-case Realization Software Engineering Laboratory Fall 2006.
Developed by Reneta Barneva, SUNY Fredonia Component Level Design.
Unified Modeling Language
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
CASE Tools And Their Effect On Software Quality Peter Geddis – pxg07u.
Principles of Object Technology Module 1: Principles of Modeling.
UML Unified Markup Language Ziya Karakaya Atılım University, Computer Engineering
SOFTWARE ENGINEERING BIT-8 APRIL, 16,2008 Introduction to UML.
CIT UPES | Sept 2013 | Unified Modeling Language - UML.
Introduction to the Unified Modeling Language “The act of drawing a diagram does not constitute analysis or design. … Still, having a well-defined and.
Introduction to UML By: Prof. Aiman Hanna Department of Computer Science, Concordia University, Montreal, Canada.
CS 360 Lecture 6.  A model is a simplification of reality  We build models to better understand the system being developed.  We build models of complex.
Copyright 2001 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix A Object-Oriented.
Unified Modeling Language, Version 2.0
Copyright 2002 Prentice-Hall, Inc. Chapter 2 Object-Oriented Analysis and Design Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey.
UML diagrams What is UML UML diagrams –Static modeoing –Dynamic modeling 1.
Unified Modeling Language* Keng Siau University of Nebraska-Lincoln *Adapted from “Software Architecture and the UML” by Grady Booch.
Modeling Component-based Software Systems with UML 2.0 George T. Edwards Jaiganesh Balasubramanian Arvind S. Krishna Vanderbilt University Nashville, TN.
ניתוח מערכות מידע 1 Unified Modeling Language (UML) § § The Unified Modeling Language (UML) is the industry-standard language for: Specifying, Visualizing,
ARCH-2: UML From Design to Implementation using UML Frank Beusenberg Senior Technical Consultant.
UML Use Case Diagramming Guidelines. What is UML? The Unified Modeling Language (UML) is a standard language for specifying, visualizing, constructing,
L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
TAL7011 – Lecture 4 UML for Architecture Modeling.
2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:
UML as a Specification Language for Embedded Systems. By, Mir Ahmed Ali, Asst. Professor, ECM department, SNIST. By, Prof. Narsiah sir, Director of School.
Design Jon Walker. More UML ● What is UML again?
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods?  OO methods provide a set of techniques for analyzing, decomposing,
Introduction to UML CS A470. What is UML? Unified Modeling Language –OMG Standard, Object Management Group –Based on work from Booch, Rumbaugh, Jacobson.
Software Engineering Lecture 8 Object-Oriented Analysis.
OMT Modeling 1. Object Model : presented by the object model and the data dictionary. 2. Dynamic Model: presented by the state diagrams and event flow.
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Week 04 Object Oriented Analysis and Designing. What is a model? A model is quicker and easier to build A model can be used in simulations, to learn more.
1 Unified Modeling Language, Version 2.0 Chapter 2.
Lecture 14 22/10/15. The Object-Oriented Analysis and Design  Process of progressively developing representation of a system component (or object) through.
Rational Unified Process Fundamentals Best Practices of Software Engineering Rational Unified Process Fundamentals Best Practices of Software Engineering.
UML - Development Process 1 Software Development Process Using UML.
Session 1 What Is the UML? Written by Thomas A. Pender Published by Wiley Publishing, Inc. October 5, 2011 Presented by Kang-Pyo Lee.
CSCI 383 Object-Oriented Programming & Design Lecture 7 Martin van Bommel.
1 SYS366 Week 2 - Lecture 2 Visual Modeling & UML.
CS 501: Software Engineering Fall 1999 Lecture 15 Object-Oriented Design I.
Basic Characteristics of Object-Oriented Systems
UML. Model An abstract representation of a system. Types of model 1.Use case model 2.Domain model 3.Analysis object model 4.Implementation model 5.Test.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 14 Slide 1 Object-Oriented Design.
UML (Unified Modeling Language)
UML AN OVERVIEW. Topics covered in this Session 1. Introducing UML. 2. What constitutes the UML. 3. Concepts of UML.
Slide 1 Unified Modeling Language, Version 2.0 Object-Oriented SAD.
Use Cases UML. Use Cases What are Use Cases?  A statement of the functionality users expect and need, organized by functional units  Different from.
Introduction to UML.
UML Diagrams By Daniel Damaris Novarianto S..
Evolution of UML.
Object-Oriented Techniques
Unified Modeling Language
UML Diagrams Jung Woo.
UML dynamic Modeling (Behavior Diagram)
ARCH-5: From Design to Implementation in OpenEdge® using UML and MDA
Software Design Lecture : 15.
Presentation transcript:

ARCH-05 Application Prophecy UML 101 Peter Varhol Principal Product Manager

2© 2005 Progress Software Corporation ARCH-05 UML 101 Agenda n History and goals of UML n Why learn UML n Types of diagrams n Diagramming in detail n Applying use cases n Summary and conclusions

3© 2005 Progress Software Corporation ARCH-05 UML 101 History of UML n Diagrams became a part of software engineering practice –Flow charts –Data flow diagrams –State transition diagrams n Modern languages and design emerge (1980s) n More formal and structured modeling techniques (early 1990s) –OMT, Booch, State Charts n UML –Booch + OMT + Others

4© 2005 Progress Software Corporation ARCH-05 UML 101 The Result n Full view of application –Fundamental views n Architecture, behavior, collaboration –System/application states n State chart, activity diagram –Interactions and physical structures n Sequence, component, deployment –Why multiple diagrams?

5© 2005 Progress Software Corporation ARCH-05 UML 101 Goals of UML n Provide a visual way of building and exchanging models n Provide ways to extend the core concepts n Be independent of programming language and development processes n Provide a formal basis for working with models n Support higher-level development concepts –Frameworks, patterns and components n Integrate best practices

6© 2005 Progress Software Corporation ARCH-05 UML 101 Agenda Slide n History and goals of UML n Why learn UML n Types of diagrams n Diagramming in detail n Applying use cases n Summary and conclusions

7© 2005 Progress Software Corporation ARCH-05 UML 101 Why Learn About Modeling? n Promotes better communication earlier –Within the development team –With customers n Enables architects and designers to think about solving the business problem –Implementation details don’t impede solution n Can produce software that better meets customers’ needs

8© 2005 Progress Software Corporation ARCH-05 UML 101 Why Learn UML in Particular? n Becoming the de facto standard for modeling n Provides for formal modeling –Models can be proven consistent and correct –Models can be tested –Accurate code generation is possible n Can connect the business problem to the technology solution

9© 2005 Progress Software Corporation ARCH-05 UML 101 Agenda Slide n History and goals of UML n Why learn UML n Types of diagrams n Diagramming in detail n Applying use cases n Summary and conclusions

10© 2005 Progress Software Corporation ARCH-05 UML 101 Types of Diagrams n Use case diagrams –Shows the relationship among actors and cases n Class diagrams –Show class structure and contents n Interaction diagrams –Sequence diagrams n display the time sequence of component interactions –Collaboration diagrams n display components and their links to one another

11© 2005 Progress Software Corporation ARCH-05 UML 101 Types of Diagrams n State diagrams –Shows the sequences of states an application goes through n Activity diagrams –Focuses on flows driven by processing n Physical diagrams –Component diagrams n shows the high level structure of the code itself –Deployment diagrams n shows the configuration of elements at runtime

12© 2005 Progress Software Corporation ARCH-05 UML 101 Agenda Slide n History and goals of UML n Why learn UML n Types of diagrams n Diagramming in detail n Applying use cases n Summary and conclusions

13© 2005 Progress Software Corporation ARCH-05 UML 101 Use Case Diagrams n Using use case diagrams –Visualizing functional requirements n How to draw use case diagrams –Actors and cases

14© 2005 Progress Software Corporation ARCH-05 UML 101 Class Diagrams n Class diagrams – describe types of components in a system and their relationships –Consist of a name, attributes, and operations

15© 2005 Progress Software Corporation ARCH-05 UML 101 Interaction Diagrams n Sequence diagrams and collaboration diagrams are used to demonstrate the interaction of components in a use case n Sequence diagrams –Components and messages/data

16© 2005 Progress Software Corporation ARCH-05 UML 101 Interaction Diagrams n Collaboration diagram –Relationships between components –Ordering of messages

17© 2005 Progress Software Corporation ARCH-05 UML 101 State Diagrams n State diagrams – notes changes of state in the system –Adds state, activity, and transition

18© 2005 Progress Software Corporation ARCH-05 UML 101 Activity Diagrams n Activity diagrams –Workflow and behavior –Think of the old dataflow diagram

19© 2005 Progress Software Corporation ARCH-05 UML 101 Physical Diagrams n Physical diagrams are used when development is complete –Descriptions of physical information –Component and deployment diagrams n Component diagrams –Dependencies among code components

20© 2005 Progress Software Corporation ARCH-05 UML 101 Physical Diagrams n Deployment diagram –Contains nodes and connections n The two diagrams are often combined

21© 2005 Progress Software Corporation ARCH-05 UML 101 Common Questions on UML n Why multiple diagram types? –Different views into the same application –Mostly orthogonal –Needed to represent very different systems n Are they all necessary? –Not for most applications –Concentrate on the ABCs n Architecture, Behavior, Collaboration

22© 2005 Progress Software Corporation ARCH-05 UML 101 Agenda Slide n History and goals of UML n Why learn UML n Types of diagrams n Diagramming in detail n Applying use cases n Summary and conclusions

23© 2005 Progress Software Corporation ARCH-05 UML 101 Applying UML n Always start with your use cases –Help you determine what to build –Establish effective communication with users n An auto dealership application

24© 2005 Progress Software Corporation ARCH-05 UML 101 Define the Architecture n Class diagrams – How will the application be structured? –The data structure of the auto customer

25© 2005 Progress Software Corporation ARCH-05 UML 101 Look at Application Behavior n Activity diagram –Steps in requesting a test drive

26© 2005 Progress Software Corporation ARCH-05 UML 101 Study Collaboration Between Components n Collaboration diagrams show interactions –How the auto dealer application components work together

27© 2005 Progress Software Corporation ARCH-05 UML 101 Applying UML n You have enough to get started coding –Involve other diagrams when different views are needed –Don’t hesitate to modify or add a view if the situation requires n These are living diagrams n The purpose is to communicate

28© 2005 Progress Software Corporation ARCH-05 UML 101 In Summary n Using UML helps create applications that achieve important business goals –Better meet customer needs –Higher quality application –Better communication between designers, developers, and customers

29© 2005 Progress Software Corporation ARCH-05 UML 101 Questions?

30© 2005 Progress Software Corporation ARCH-05 UML 101 Thank you for your time!

31© 2005 Progress Software Corporation ARCH-05 UML 101