1 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2002] January 26, 2006.

Slides:



Advertisements
Similar presentations
1 UML ++ Mohamed T IBRAHIM University of Greenwich -UK.
Advertisements

Arlow and Neustadt ch.21 What is the unified process? People are more important than any process. Good people with a good process will outperform good.
A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.
Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
Unified Modeling Language
Object-Oriented Analysis and Design
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
CS 425/625 Software Engineering System Models
1 CS 691z/791z Topics on Software Engineering CS 691z/791z Topics on Software Engineering Software Processes Based on Chapter 4 of the book [SE-8] Ian.
Unified Modeling (Part I) Overview of UML & Modeling
1/31 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2005] January 22, 2009.
© Copyright Eliyahu Brutman Programming Techniques Course.
Objectives Explain the purpose and various phases of the traditional systems development life cycle (SDLC) Explain when to use an adaptive approach to.
Chapter 6 View Alignment Techniques and Method Customization (Part I) Object-Oriented Technology From Diagram to Code with Visual Paradigm for UML Curtis.
Principles of Object Technology Module 1: Principles of Modeling.
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights.
What is UML? What is UP? [Arlow and Neustadt, 2005] January 23, 2014
UML - Development Process 1 Software Development Process Using UML (2)
UML Unified Markup Language Ziya Karakaya Atılım University, Computer Engineering
IS0514 Lecture - Week 2 Best Practice Development Methodology.
Unified Software Development Process (UP) Also known as software engineering process SEP describes how requirements are turned into software Defines who,
2Object-Oriented Analysis and Design with the Unified Process Objectives  Explain the purpose and various phases of the traditional systems development.
The Rational Unified Process
Unified Modeling Language, Version 2.0
Programming in Java Unit 3. Learning outcome:  LO2:Be able to design Java solutions  LO3:Be able to implement Java solutions Assessment criteria: 
Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and.
Notes of Rational Related cyt. 2 Outline 3 Capturing business requirements using use cases Practical principles  Find the right boundaries for your.
Software Engineering Prof. Ing. Ivo Vondrak, CSc. Dept. of Computer Science Technical University of Ostrava
Unified Modeling Language* Keng Siau University of Nebraska-Lincoln *Adapted from “Software Architecture and the UML” by Grady Booch.
1 COMP 350: Object Oriented Analysis and Design Lecture 1Introduction References: Craig Larman Chapter 1.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
16 August, 2007Information System Design IT60105, Autumn 2007 Information System Design IT60105 Lecture 7 Unified Modeling Language.
L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
CEN5011, Fall CEN5011 Software Engineering Dr. Yi Deng ECS359, (305)
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.
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
Unified Modelling Language (UML) Software Engineering Lab. Sharif University of Technology.
©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 15 The Unified Modeling Language: a Primer.
University of Toronto at Scarborough © Kersti Wain-Bantin CSCC40 UML 1 UML unified modeling language 1994 first attempts - largely theoretical 1997 UML.
UML Diagrams for Caradon developers Daniel DG Moth Core Development Group, Research Student University of Brighton, MSc Object Oriented Software Technology.
 Building Block Building Block  Things in the UML Things in the UML  Structural Things Structural Things  Behavioral Things Behavioral Things  Grouping.
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.
Rational Unified Process Fundamentals Best Practices of Software Engineering Rational Unified Process Fundamentals Best Practices of Software Engineering.
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
Introduction to UML Hazleen Aris Software Eng. Dept., College of IT, UNITEN. …Unified Modeling Language.
1 Architectural Blueprints—The “4+1” View Model of Software Architecture (
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
Basic Characteristics of Object-Oriented Systems
UML (Unified Modeling Language)
Slide 1 Unified Modeling Language, Version 2.0 Object-Oriented SAD.
M. ARIFUR RAHMAN OBJECT ORIENTED ANALYSIS & DESIGN 1.0 System Modeling.
UML Diagrams By Daniel Damaris Novarianto S..
Chapter 1: Introduction to Systems Analysis and Design
Course Outcomes of Object Oriented Modeling Design (17630,C604)
What is UML? What is UP? [Arlow and Neustadt, 2005] October 5, 2017
Systems Analysis and Design With UML 2
Unified Modeling Language
Introduction to Unified Modeling Language (UML)
What is UML? What is the Unified Process?
UML Activity Diagrams & State Charts
Unified Modeling Language
Introduction to UML.
Copyright 2007 Oxford Consulting, Ltd
Chapter 1: Introduction to Systems Analysis and Design
Chapter 22 Object-Oriented Systems Analysis and Design and UML
Chapter 1: Introduction to Systems Analysis and Design
UML  UML stands for Unified Modeling Language. It is a standard which is mainly used for creating object- oriented, meaningful documentation models for.
Presentation transcript:

1 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2002] January 26, 2006

2 Outline. What is UML? UML history Why “unified”? Objects and UML UML structure UML building blocks UML common mechanisms Architecture

3.Outline What is UP? UP History UP Axioms UP Core Workflows UP Structure Details on UP Phases

4 What is UML? The UML (Unified Modeling Language) is a general purpose visual modeling language for systems Usually associated with OO software systems, but with wider application than that Incorporates modern best practices in modeling techniques and software engineering Designed to be supported by CASE tools It is not a methodology, but a notation that can be used in various software development methodologies lifecycle; however the preferred method for using UML is the UP (Unified Process) Not tied to any methodology or specific lifecycle; however the preferred method for using UML is the UP (Unified Process)

5 UML History Stages of UML evolution, Fig. 1.2 [Arlow & Neustadt, 2002]

6 UML: Why “unified”? UML unification encompasses the following: Development lifecycle: UML can be used from requirements engineering to implementation Application domains: UML has been used in a profusion of applications, of various types Implementation languages and platforms: UML is language and platform independent Development processes: UP is only one of the processes supported by UML Its own internal concepts: UML is based on a set of concepts that have been applied consistently throughout the notation’s development

7 Objects and UML The main premise for using UML is that software systems can be modeled as collections of collaborating objects There are two major, complementary parts in a UML model: Static structure = constituent objects + their relationships Dynamic behaviour = functionality provided by the collaborating objects

8 UML Structure There are three main parts in UML structure, as indicated below, Fig. 1.3 [Arlow & Neustadt 2002]

9 UML Building Blocks UML is composed of three building blocks [Fig. 1.4, Arlow 2002]: UML is composed of three building blocks [Fig. 1.4, Arlow 2002]: Things, or modeling elements (modeling constructs) Things, or modeling elements (modeling constructs) Relationships, that specify how things relate semantically Relationships, that specify how things relate semantically Diagrams, that provide views into UML models and show collections of interrelated things Diagrams, that provide views into UML models and show collections of interrelated things

10 UML Building Blocks: Things UML things, or modeling elements, can be classified as: Structural things, e.g., class, interface, use case, component, node (the “nouns” of a UML model) Behavioural things, such as interactions and state machines (the “verbs” of a UML model) Grouping things, e.g. package, which gathers related modeling elements Annotational things, e.g., the “sticky note” that can be appended to any modeling construct

11 UML Building Blocks: Relationships. UML relationships indicate how two or more things are interconnected. Relationships apply to structural and grouping things and are of four kinds [Fig. 1.5, Arlow 2002]:

12 UML Building Blocks:.Relationships Details on UML relationships can be found in other chapters of the book, as follows: [Table 1.1, Arlow & Neustadt, 2002]

13 UML Building Blocks: Diagrams. A UML model is a repository of all things and relationships created to describe the structure and behavior of the system under development Diagrams provide views (or windows) into this model Diagrams also provide mechanisms for entering information into the model There are nine types of UML diagram, three describe the static structure of the system (the static model), and six describe the dynamic aspects of the system (the dynamic model) [see next slide]

14 UML Building Blocks:.Diagrams The nine types of UML diagram [Fig. 1.6, Arlow & Neustadt, 2002]

15 UML Common Mechanisms UML has four common mechanisms that are applied consistently, in different contexts, throughout UML [Fig. 1.7, Arlow 2002]

16 UML Common Mechanisms: Specifications Specifications are textual descriptions of the semantics of UML elements. Example, Fig. 1.8 [Arlow & Neustadt, 2002]

17 UML Common Mechanisms: Adornments Adornments allow showing more information on UML elements. Example, Fig. 1.9 [Arlow & Neustadt, 2002]

18 UML Common Mechanisms: Common Divisions Common divisions are ways of thinking about the world (for modeling purposes) Common divisions in UML are of two types: Classifiers and instance [see Table 1.2 in the book] Interface and implementation [see Subsection ]

19 UML Common Mechanisms: Extensibility There are three types of mechanisms that provide support for UML extensibility, Table 1.3 [Arlow & Neustadt, 2002]

20 Architecture. The system architecture is “the organizational structure of the system, including its decomposition into parts, their connectivity, interaction, mechanisms and the guiding principles that inform the design of a system.” [Rumbaugh 1998] There is a typical “4+1 views” architecture of a system defined by UML: Logical view, captures the vocabulary of the problem domain using classes and objects Process view, depicts the threads and processes of the system as active classes Implementation view, shows the physical code base of the system in terms of components Deployment view, models the physical deployment of components onto computational nodes Use case view, captures the requirements of the system using a set of use cases. This is the view “+1” to which all other views connect.

21.Architecture The “4 +1 views” architecture, Fig [Arlow & Neustadt 2002]

22 What is UP? A software development process (SDP) or software engineering process (SEP) defines the who, what, when, and how of developing software The Unified Software Development Process (USDP) or, in short, the Unified Process (UP) is an industry standard process created by the authors of UML Fig 2.2, [Arlow 2002]

23 UP History UP evolution, Fig. 2.3 [Arlow & Neustadt, 2002]

24 UP Axioms Use case and risk driven Architecture centric Iterative and incremental Each iteration contains all the elements of a regular software development project: planning, analysis, design, construction, integration, testing, internal or external release

25 UP Core Workflows. Requirements: Determining what the system should do Analysis: Refining and structuring the requirements Design: Defining system architecture to satisfy requirements Implementation: Building the software Testing: Verifying that the implementation is correct A baseline is the result of an iteration, a partially complete version of the final system. An iteration is the difference between two consecutive baselines.

26.UP Core Workflows Fig.2.5, Arlow 2002

27 UP Structure. Fig.2.6, Arlow 2002

28.UP Structure Fig.2.7, Arlow 2002

29 UP: Details on Phases. Each of the four phases of UP (inception, elaboration, construction, transition) has: A goal A focus of activity One or more core workflows A milestone, with a number of conditions of satisfaction Details of the above for Inception are given next. The remaining three phases are described in Subsection 2.9 of the textbook

30 UP:.Details on Phases Inception Goal: Get the project off the ground Tasks: Assess feasibility Create a strong business case Capture essential requirements Identify critical tasks Focus: Requirements specification and analysis Milestone: Life-cycle objectives [see conditions of satisfaction n Table 2.1 of the book]