CPSC 871 John D. McGregor Module 7 Session 1 More UML.

Slides:



Advertisements
Similar presentations
Modeling Main issues: What do we want to build How do we write this down.
Advertisements

Modeling Main issues: What do we want to build How do we write this down ©2008 John Wiley & Sons Ltd. vliet.
2-1 © Prentice Hall, 2007 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
UML: Unified Modeling Language
Design Patterns in Java Appendix D UML at a Glance Summary prepared by Kirk Scott 1.
Lecture 1 CS171: Game Design Studio 1I UC Santa Cruz School of Engineering 5 January 2010.
Lecturer: Dr. AJ Bieszczad Chapter 66-1 Object-Oriented analysis and design Special nature of OO development Use cases Design with UML OO system design.
C++ Training Datascope Lawrence D’Antonio Lecture 11 UML.
Rational Rose Overview Diagrams, Directory Structure, Working with Rose.
UML Class Diagram: class Rectangle
ACM/JETT Workshop - August 4-5, 2005 UML Modeling using MagicDraw UML for Java Programmers.
UML Class Diagrams: Basic Concepts. Objects –The purpose of class modeling is to describe objects. –An object is a concept, abstraction or thing that.
Unified Modeling Language
Smith’s Aerospace © P. Bailey & K. Vander Linden, 2005 Architecture: Component and Deployment Diagrams Patrick Bailey Keith Vander Linden Calvin College.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 8: Modelling Interactions and Behaviour.
BCS 2143 Introduction to Object Oriented and Software Development.
CPSC 871 John D. McGregor Module 1 Session 2 Requirements Elicitation/analysis.
Things and Relations - Examples Things Relationships Structural Behavioral Grouping Annotational Dependency Association Generalization Realization Class,
CHAPTER ONE Problem Solving and the Object- Oriented Paradigm.
Prepared by: Sanaz Helmi Hoda Akbari Zahra Ahmadi Sharif University of Tech. Summer 2006 An Introduction to.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
UML Diagrams: Class Diagrams The Static Analysis Model Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
1 UML Basic Training. UML Basic training2 Agenda  Definitions: requirements, design  Basics of Unified Modeling Language 1.4  SysML.
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 2, Modeling with UML: Review Session (Optional)
Modeling Shari L. Pfleeger and Joanne M. Atlee, Software Engineering: Theory and Practice, 4 th edition, Prentice Hall, Hans Van Vliet, Software.
Chapter Two The UML – Unified Modeling Language Ku-Yaw Chang Assistant Professor, Department of Computer Science and Information.
More on Hierarchies 1. When an object of a subclass is instantiated, is memory allocated for only the data members of the subclass or also for the members.
Unified Modeling Language © 2002 by Dietrich and Urban1 ADVANCED DATABASE CONCEPTS Unified Modeling Language Susan D. Urban and Suzanne W. Dietrich Department.
The Static Analysis Model Class Diagrams Prof. Hany H. Ammar, CSEE, WVU, and Dept. of Computer Science, Faculty of Computers and Information, Cairo University.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
© 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1 Advanced UML Class Diagrams.
3-1 State Design Pattern C Sc 335 Rick Mercer. State Design Pattern State is one of the Behavioral patterns It is similar to Strategy Allows an object.
SE-1020 Dr. Mark L. Hornick 1 Composition, Aggregation, and Inheritance - Introduction.
Sequence Models.
UML The Unified Modeling Language A Practical Introduction Al-Ayham Saleh Aleppo University
Design Jon Walker. More UML ● What is UML again?
CPSC 372 John D. McGregor Module 3 Session 5 Assignment and References.
Appendix D UML at a Glance Summary prepared by Kirk Scott 1.
Introduction to UML CS A470. What is UML? Unified Modeling Language –OMG Standard, Object Management Group –Based on work from Booch, Rumbaugh, Jacobson.
CSCI-383 Object-Oriented Programming & Design Lecture 10.
PRESENTATION 2 Sri Raguraman CIS 895 Kansas State University.
CONTENT 1.Software Process 2.Object Technology 3.UML 4.UML For Java.
CS212: Object Oriented Analysis and Design Lecture 34: UML Activity and Collaboration diagram.
Testing OO software. State Based Testing State machine: implementation-independent specification (model) of the dynamic behaviour of the system State:
Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall Object-Oriented Systems Analysis and Design Using UML Systems Analysis and Design,
INFSY 535.  Small systems  Larger systems 1.Understand the program requirement- what 3. Write and test each part (unit testing) 4. Maintenance 2. Specify.
Chapter 3: Introducing the UML
CPSC 871 John D. McGregor Module 8 Session 3 Assignment.
OOAD UNIT V B RAVINDER REDDY PROFESSOR DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING.
® IBM Software Group © 2007 IBM Corporation Module 3: Creating UML Diagrams Essentials of Modeling with IBM Rational Software Architect, V7.5.
FlowLevel Client, server & elements monitoring and controlling system Message Include End Dial Start.
Object-Oriented Software Engineering Practical Software Development using UML and Java Modelling with Classes.
UML Fundamental Elements. Structural Elements Represent abstractions in our system. Elements that encapsulate the system's set of behaviors. Structural.
Introduction to UML and Rational Rose UML - Unified Modeling Language Rational Rose 98 - a GUI tool to systematically develop software through the following.
Introduction to UML.
UML Diagrams: Class Diagrams The Static Analysis Model
The Movement To Objects
Main issues: • What do we want to build • How do we write this down
Course Outcomes of Object Oriented Modeling Design (17630,C604)
Unified Modeling Language
Subject Name: Object oriented Modeling and Design
UML Class Diagram: class Rectangle
Inheritance, Polymorphism, and Interfaces
Component-Level Design
Decorator Pattern Richard Gesick.
CIS 375 Bruce R. Maxim UM-Dearborn
Software Design Lecture : 14.
Copyright 2007 Oxford Consulting, Ltd
John D. McGregor Module 6 Session 1 More Design
CIS 375 Bruce R. Maxim UM-Dearborn
Presentation transcript:

CPSC 871 John D. McGregor Module 7 Session 1 More UML

Types of association GameBoardImpl is an implementation of the interface GameBoardInterface. The line marked (2) indicates “realization” of an interface. An interface is a specification of behavior but it does not provide any implementation like a class would. GameBoardImpl provides behavior (code) for each method in the interface. The clear diamonds indicate aggregation (1) Instances of these classes are contained in the GameBoardImpl (1) (2) (1)

Generalization Generalization takes three classes as seen below and creates a more abstract class Each of the special (generalized) classes has the same specification as the generalization but with some variation maybe in behavior or maybe just in how the behavior is implemented.

Generalization/inheritance A classification scheme using an inheritance hierarchy The subclasses are special cases of the base class Enables substitution

Generalization/inheritance MovableSprite gives the main behaviors of the moving sprites An alternative would be to have a Movability class, an instance of which that is aggregated into those Sprites that must move.

Sequence diagram A single thread of control An alternative would be to make each MoveableSprite have its own thread

Activity diagram This is the main animation loop. Each rectangle represents an object from a class. Much like the sequence diagram but more complex behavior is represented.

Activity diagram for exception Handling a collision can be an exceptional event since it happens a very small percentage of the time.

State machine A state is a configuration of data. A transition is a change in some data values that are sufficiently different that the program changes behavior

UML – deployment diagram This diagram shows two components on one computing box. One of those components aggregates 3 other components.

Java2UML UML gives a higher level view of a program To understand a Java program the Java2UML function automatically creates a UML class diagram

Click on project, then click on UML Class Diagram from Java

Give name to the model

The class diagram primitives are in the outline view

Expand the elements in the outline

Drag and drop the first entry in the outline

Drag ‘n drop each element in the outline

Round trip engineering A UML model is created including several diagrams. Code is generated from the model with some custom programming Java2UML will take code to uml UML model is reviewed and modified Repeat

Here’s what you are going to do Follow along and create the class diagram as I did. In the third session of this module you will use the debugger to track down a defect in the Brickles code. As a starting point to understanding that code create two sequence diagrams from the code. Use the Papyrus UML to draw these. Take screen shots and submit.