Object-Oriented Analysis and Design with the Unified Process

Slides:



Advertisements
Similar presentations
Object-Oriented Application Development Using VB.NET 1 Chapter 5 Object-Oriented Analysis and Design.
Advertisements

© 2006 ITT Educational Services Inc. SE350 System Analysis for Software Engineers: Unit 9 Slide 1 Appendix 3 Object-Oriented Analysis and Design.
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall A.1.
Introduction To System 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.
Copyright 2004 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Second Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix.
1 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2002] January 26, 2006.
Unified Modeling Language
UML Unified Markup Language Ziya Karakaya Atılım University, Computer Engineering
Copyright 2001 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix A Object-Oriented.
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.
Introduction To System Analysis and Design
Programming in Java Unit 3. Learning outcome:  LO2:Be able to design Java solutions  LO3:Be able to implement Java solutions Assessment criteria: 
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.
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.
Course Instructor: Kashif Ihsan 1. Chapter # 3 2.
CIS 112 Exam Review. Exam Content 100 questions valued at 1 point each 100 questions valued at 1 point each 100 points total 100 points total 10 each.
Introduction to UML CS A470. What is UML? Unified Modeling Language –OMG Standard, Object Management Group –Based on work from Booch, Rumbaugh, Jacobson.
Object-Oriented Analysis and Design with the Unified Process by Şensev Alicik.
Winter 2011SEG Chapter 11 Chapter 1 (Part 1) Review from previous courses Subject 1: The Software Development Process.
Lecture 14 22/10/15. The Object-Oriented Analysis and Design  Process of progressively developing representation of a system component (or object) through.
Chapter 3: Introducing the UML
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall Appendix A Object-Oriented Analysis and Design A.1.
Technical Module C Object Modeling Objects Object – a valuable resource: Money (Account Receivable) Material (Product) Machines (Delivery Truck) Personnel.
Ondřej Přibyl Faculty of Transportation Sciences, CTU DESIGN OF ITS SYSTEMS Project support 1 3 PROJECT SUPPORT Use cases.
5 Systems Analysis and Design in a Changing World, Fourth Edition.
Chapter 1 The Systems Development Environment
Appendix 3 Object-Oriented Analysis and Design
Chapter 1 The Systems Development Environment
UML Diagrams By Daniel Damaris Novarianto S..
Chapter 1: Introduction to Systems Analysis and Design
Evolution of UML.
Course Outcomes of Object Oriented Modeling Design (17630,C604)
Object-Oriented Analysis and Design
What is UML? What is UP? [Arlow and Neustadt, 2005] October 5, 2017
Object-Oriented Techniques
Unified Modeling Language
Chapter 1 The Systems Development Environment
The Systems Engineering Context
University of Central Florida COP 3330 Object Oriented Programming
Chapter 1 The Systems Development Environment
UML Diagrams Jung Woo.
System Modeling Chapter 4
CH#3 Software Designing (Object Oriented Design)
Business System Development
UML: Unified modeling language
Object-Oriented Analysis
Unified Modeling Language
Systems Analysis and Design With UML 2
University of Houston-Clear Lake
Chapter 20 Object-Oriented Analysis and Design
Appendix A Object-Oriented Analysis and Design
Software Design Lecture : 15.
Introduction to Systems Analysis and Design Stefano Moshi Memorial University College System Analysis & Design BIT
Chapter 1: Introduction to Systems Analysis and Design
Rational Rose 2000 Instructor Notes Use Case Realization Structure
Chapter 22 Object-Oriented Systems Analysis and Design and UML
CIS 375 Bruce R. Maxim UM-Dearborn
Appendix A Object-Oriented Analysis and Design
Chapter 4 System Modeling.
Appendix A Object-Oriented Analysis and Design
Chapter 1 The Systems Development Environment
Appendix 3 Object-Oriented Analysis and Design
Chapter 1: Introduction to Systems Analysis and Design
Unıfıed modellıng language (uml)
Presentation transcript:

Object-Oriented Analysis and Design with the Unified Process ITEC 403 Seminar Object-Oriented Analysis and Design with the Unified Process by Şensev Alicik

Explain the concept of Unified Process (UP) OBJECTIVES Explain the concept of Unified Process (UP) Describe Unified Modeling Language (UML) Explain the types of UML Diagrams Use-Case Diagram Class Diagram Activity Diagram Concluding UML

WHAT IS UNIFIED PROCESS? Unified Process (UP) is an example of a system development methodology, based on object-oriented design. It consists of multiple iterations. Each iteration has a problem-solving approach of defining the requirements, analyzing and designing the solution, implementing and finally testing the system components. Unified Process life cycle is taken in 4 phases; Inception, Elaboration, Construction and Transition.

UP Life cycle

WHAT IS UNIFIED PROCESS? Anytime people need to record or communicate information, in any context, it is very useful to create a model. A model is a representation of the solution of a problem taken into consideration during the system development period. In our seminar today we are going to focus on the standard set of model constructs and notations developed specially for object-oriented development. Unified Modeling Language (UML) diagrams.

What is UML? Unified Modelling Language (UML) is a standardized language used for the collection, analysis and processing of requirements as well as for the specification message exchanges and overviews of architecture and behavior specifications. UML is standardized by the Object Management Group.

What is UML? UML is increasingly popular in the telecommunications world, as software becomes more important for telecommunications equipment manufacturers. As networks move towards server-based architectures, software applications are replacing traditional switched based functionality. With its different notations, UML is well suited to the standards making process. At almost any given stage in the development of a standard there is a UML notation available for the task.

UML Diagrams There are a number of different UML diagrams that provides a look of the system from different perspectives, here are the models required for the ITEC403 progress report: Use Case diagram (General and Partial) Domain Model Class diagrams Activity diagrams

What is UML? To gain the greatest benefit from UML, it must be used at the beginning of the process when requirements are being collected, reviewed and evaluated. Traditionally, this has been a relatively informal activity involving discussion within technical committees. UML can provide the formalization and visualization which make the requirements clear and unambiguous.

Use Case Diagram Use case illustrates a unit of functionality provided by the system. The main purpose of the use-case diagram is to help development teams visualize the functional requirements of a system, including the relationship of "actors" (human beings who will interact with the system) to essential processes, as well as the relationships among different use cases. Use-case diagrams generally show groups of use cases — either all use cases for the complete system, or a breakout of a particular group of use cases with related functionality (e.g., all security administration-related use cases).

Use Case Diagram To represent a use case(function) on a use-case diagram, you draw an oval in the middle of the diagram and put the name of the use case in the center of, or below, the oval. To draw an actor (indicating a system user) on a use-case diagram, you draw a stick person to the left or right of your diagram (and just in case you're wondering, some people draw prettier stick people than others). Use simple lines to depict relationships between actors and use cases, as shown in Figure 1.

Figure 1 – general Use Case diagram Example View Sales Statistics for my Band’s CDs View Billboard 200 Report View Sales Statistics for Specific CD Retrieve Latest Billboard 200 Report

Use Case Diagram A use-case diagram is typically used to communicate the high-level functions of the system and the system's scope. By looking at our use-case diagram in Figure 1, you can easily tell the functions that our example system provides. This system lets the band manager view a sales statistics report and the Billboard 200 report for the band's CDs. It also lets the record manager view a sales statistics report and the Billboard 200 report for a particular CD. The diagram also tells us that our system delivers Billboard reports from an external system called Billboard Reporting Service. In addition, the absence of use cases in this diagram shows what the system doesn't do. For example, it does not provide a way for a band manager to listen to songs from the different albums on the Billboard 200 — i.e., we see no reference to a use case called Listen to Songs from Billboard 200. This absence is not a trivial matter. With clear and simple use-case descriptions provided on such a diagram, a project sponsor can easily see if needed functionality is present or not present in the system.

Use Case Diagram For the progress report you are required to draw the use- case diagram from 2 perspectives; general and partial. The general use-case diagram, will display all the system functions and all the actors with the relationship lines as in fig.1. The partial use-case diagrams are designed for each actor separately, showing each actor’s role in the system by including the relative functions with the relationship lines as in fig.2.

Figure 2 – partial Use Case diagram Example

Class Diagram The class diagram shows how the different entities (people, things, and data) relate to each other; in other words, it shows the static structures of the system. A class diagram can be used to display logical classes, which are typically the kinds of things the business people in an organization talk about — rock bands, CDs, radio play; or courses, student record, and academic performance. Class diagrams can also be used to show implementation classes, which are the things that programmers typically deal with. An implementation class diagram will probably show some of the same classes as the logical classes diagram.

Figure 3 – single Class A class is depicted on the class diagram as a rectangle with three horizontal sections, as shown in Figure 3. The upper section shows the class name; the middle section contains the class attributes; and the lower section contains the class operations (or "methods").

Figure 4 – class diagram In Figure 4, we see both the inheritance relationship and two association relationships. The CDSalesReport class inherits from the Report class. A CDSalesReport is associated with one CD, but the CD class doesn't know anything about the CDSalesReport class. The CD and the Band classes both know about each other, and both classes can be associated to one or more of each other.

Activity Diagram Activity Diagrams Activity diagrams show the procedural flow of control between two or more class objects while processing an activity. Activity diagrams can be used to model higher-level business process at the business unit level, or to model low-level internal class actions. In my experience, activity diagrams are best used to model higher-level processes, such as how the company is currently doing business, or how it would like to do business. This is because activity diagrams are "less technical" in appearance, compared to sequence diagrams, and business- minded people tend to understand them more quickly.

Figure 5 - Activity Diagram

Activity Diagrams For the progress report we require an activity diagram for each use-case (function) in the system, in order to understand the workflow better.

Concluding UML It’s a formal language Each element of the language has a strongly defined meaning , so youcan be confident that when you model a particular facet of your system it will not be misunderstood. It’s concise The entire language is made up of simple and straightforward notation. It’s comprehensive It describes all important aspect of a system.

Concluding UML It’s scalable Where needed, the language is formal enough to handle massive system modeling projects, but it also scales down to small projects or sub-parts, avoiding overkill. It’s built on lessons learned UML is the culmination of best practices in the object-oriented community during the past 20 years. It’s the Standard UML is controlled by an open standards group with active contributions from a worldwide group of vendors and academics, which fends off “vendor lock- in” The standard ensures UML’s transform-ability and interoperability, which means you aren’t tied to a particular product.

Thank You For Your Attention !!! THE END Thank You For Your Attention !!!