18-Design. Analysis and Design Workflow. Worker Responsibilities. So what do we do next? CMPSCI520/620 Design. Rick Adrion 2003 (except where noted) 1

Size: px
Start display at page:

Download "18-Design. Analysis and Design Workflow. Worker Responsibilities. So what do we do next? CMPSCI520/620 Design. Rick Adrion 2003 (except where noted) 1"

Transcription

1 CMPSCI520/ and Workflow Readings OOAD Using the UML Copyright Rational Software, all rights reserved Architect Architectural Architectural Describe Concurrency Describe Distribution Review the Architecture Architecture Reviewer er Review the Reviewer Class er Worker Responsibilities So what do we do next? Architect Use Case Realization er Architect Architectural Architectural Describe Concurrency Describe Distribution Review the Architecture Architecture Reviewer Model Package/ Class er Review the Reviewer Software Architecture Document Reviewer Class er Data Model Architecture Reviewer er Rick Adrion 2003 (except where noted)

2 CMPSCI520/620 Use Case Overview What is a Realization? Use Case Model <<realizes>> Model Model Supporting Documents Architecture Document Glossary Supplemental Specs Classes Use Case Use Case Realization OR Sequence Diagrams Collaboration Diagrams Realization Model Model Use Case Realization Documentation Class Diagrams Use Case Steps University Course Registration Supplement the Descriptions of the Use Case For each use case realization Find Classes from Behavior Distribute Behavior to Classes For each resulting analysis class Describe Responsibilities Describe Attributes and Associations Qualify Mechanisms Unify Classes Student Login Registrar Maintain Professor Information View Report Card Register for Courses Course Catalog Select Courses to Teach Maintain Student Information Close Registration Billing Professor Submit Grades Rick Adrion 2003 (except where noted) 2

3 CMPSCI520/620 What is an Class? The Roles Early conceptual model Functional requirements Model problem domain Likely to change Boundary Information used Control logic Collaboration Diagram Customer Boundary Class -- Model interaction between the system and its environment Control Class -- Coordinate the use case behavior boundary Use-case behavior coordination information Entity Class -- Store and manage information in the system Example: Entity & Control Classes Classes Course Student (from Registration) MaintainProfessorController (from Registration) CourseOffering Professor Close (from Registration) SubmitGradesController (from Student Evaluation) Grade Schedule MaintainStudentController (from Registration) SelectCoursesToTeachController ReportCardController (from Registration) (from Student Evaluation) Student Register for Courses Course Catalog MainForm Schedule CourseCatalog Use Case Model Model For each use case flow of events: Identify analysis classes Allocate use-case responsibilities to analysis classes Model analysis class interactions in interaction diagrams Client Object :Client Link : PerformResponsibility Message :Supplier Collaboration Diagrams Supplier Object Client Object : PerformResponsibility :Client Object Lifeline Message Focus of Control Sequence Diagrams Supplier Object :Supplier Reflexive Message Rick Adrion 2003 (except where noted) 3

4 CMPSCI520/620 : Student Example: Collaboration Diagram : Main Form : // select maintain schedule( ) 5: // select 4 primary and 2 alternate offerings( ) : Maintain ScheduleForm : CourseCatalog4: // get course offerings( ) 2: // open schedule form( ) 3: // get course offerings( ) 6: // add courses to schedule( ) : Registration Controller 7: // create with offerings( ) Example: Sequence Diagram : MainForm : Maintain : Registration : CourseCatalog : Schedule : Student ScheduleForm Controller : // select maintain schedule( ) 2: // open schedule form( ) 3: // get course offerings( ) 4: // get course offerings( ) 5: // select 4 primary and 2 alternate offerings( ) 6: // add courses to schedule( ) 7: // create with offerings( ) :Schedule Collaboration Vs Sequence Diagrams Collaboration Diagrams Use in Use Case Show relationships in addition to interactions Better for visualizing patterns of collaboration Better for visualizing all of the effects on a given object Easier to use for brainstorming sessions (reordering of messages easier) Sequence Diagrams Use in Use Case Show the explicit sequence of messages Better for visualizing overall flow Better for real-time specifications and for complex scenarios Describe Responsibilities What are responsibilities? How do we find them? Class Name Responsibility Responsibility 2 Responsibility N First cut at class operations Actions that object can perform Knowledge object maintains Non-functional requirements Class should have multiple responsibilities Rick Adrion 2003 (except where noted) 4

5 CMPSCI520/620 Class Responsibilities Attributes, Association, Aggregation // select 4 primary and 2 alternate offerings() // open () <<stereotype>> ClassName Attribute : Type = InitValue Attribute : Type = InitValue Attribute : Type = InitValue Student Simple association Schedule CourseOffering is a pre-requisite of MainForm // select maintain schedule() Schedule // create with offerings() CourseCatalog CourseOffering number :String= 00 starttime : Time endtime: Time days: enum Association Whole/aggregate part Student Schedule Reflexive association Course primarycourses alternatecourses CourseOffering // add courses to schedule() // get course offerings() Attribute Aggregation Finding Relationships Collaboration Diagram Client :Client Link : PerformResponsibility :Supplier Supplier : // select maintain schedule( ) : Student Class Responsibilities from a Collaboration Diagram : Main Form 2: // open schedule form( ) 5: // select 4 primary and 2 alternate offerings( ) : Maintain ScheduleForm 3: // get course offerings( ) 6: // add courses to schedule( ) Register for Courses use case Class Diagram Client Prime suppliers Supplier : Registration : CourseCatalog4: // get course offerings( ) Controller 7: // create with offerings( ) :Schedule // select 4 primary and 2 alternate offerings() // open () MainForm Schedule // select maintain schedule() // create with offerings() Association CourseCatalog // add courses to schedule() // get course offerings() Rick Adrion 2003 (except where noted) 5

6 CMPSCI520/620 Class Responsibilities from a Sequence Diagram What are Roles? : Student : MainForm : Maintain : Registration : CourseCatalog ScheduleForm Controller : Schedule The face that a class plays in the association : // select maintain schedule( ) 2: // open schedule form( ) 3: // get course offerings( ) 4: // get course offerings( ) 5: // select 4 primary and 2 alternate offerings( ) Register for Courses use case Instructor Department head CourseOffering Professor Department 6: // add courses to schedule( ) 7: // create with offerings( ) // select 4 primary and 2 alternate offerings() // open () MainForm Schedule Pre-requisites // select maintain schedule() // create with offerings() CourseCatalog Course // add courses to schedule() // get course offerings() Example: Finding Relationships So Where Are We? does not make any sense outside of the context of a particular use session. Only one can be active at any one time, or none may be active MainForm // select maintain schedule() // open() + // select 4 primary and 2 alternate offerings() Architect Architectural Architectural Describe Concurrency Describe Distribution Review the Architecture Architecture Reviewer : Main Form 2: // open schedule form( ) legacy system. CourseCatalog : // select maintain schedule( ) : Student 5: // select 4 primary and 2 alternate offerings( ) : Maintain ScheduleForm : CourseCatalog4: // get course offerings( ) : Registration Controller :Schedule // get course offerings() one controller for each Schedule 3: // get course offerings( ) being created (e.g., each Student 6: // add courses to schedule( ) registration session). only one CourseCatalog instance for possibly many s serializes access 7: // create with offerings( ) Many s can be active at one time (for different sessions/students). // add courses to schedule() // get course offerings () 0.. Schedule // create with offerings() View of Participating Classes (VOPC) diagram. er er Class Review the Reviewer Rick Adrion 2003 (except where noted) 6

7 CMPSCI520/620 Architectural Overview Classes Glossary Architecture Document Supplementary Guidelines Specifications Classes Model Architectural Guidelines Model Classes and s In analysis, we had one application with many different forms 0.. During design, some analysis classes may be split, joined, removed, etc. 0.. SelectCoursesForm ReportCardForm 0.. MainForm LogonForm SubmitGradesForm 0.. MaintainStudentForm 0.. CloseRegistrationForm 0.. MaintainProfessorForm Classes (cont.) In design, the one application becomes three applications, each with it s own forms... MainRegistrarForm MainStudentForm ReportCardForm 0.. SelectCoursesForm ReportCardForm SelectCoursesForm MainForm SubmitGradesForm 0.. MainProfessorForm MaintainStudentForm LogonForm 0.. CloseRegistrationForm 0.. MaintainProfessorForm SubmitGradesForm Classes & packages What is a class? A description of a set of objects that share the same responsibilities, relationships, operations, attributes, and semantics. Class Name What is a package? A general purpose mechanism for organizing elements into groups A model element which can contain other model elements MaintainStudentForm MaintainProfessorForm 0.. CloseRegistrationForm Package Name Rick Adrion 2003 (except where noted) 7

8 CMPSCI520/620 Packages Vs. s Packages provide no behavior Packages are simply containers of things which provide behavior Packages help organize and control sets of classes that are needed in common, but which aren t really subsystems Dependencies are on specific elements within the Package s provide behavior, packages do not s completely encapsulate their contents Dependencies are on the interface of the subsystem s are easily replaceable A Client Class PackageB Class B Encapsulation is the key! But note for packages dependencies should be on public classes Class B2 IFinance (from Finance) Modeling s ICourseCatalog (from CourseCatalog) package = package with a stereotype of Finance (from Business Services) CourseCatalog (from Business Objects) Note: Rose does not fully support subsystems CourseCatalog ICourseCatalog CourseCatalog proxy class = class with a stereotype of Classes and s Identifying Classes analysis class is simple and already represents a single logical abstraction-> design class entity classes survive relatively intact into design. Identifying s analysis class is complex, such that it appears to embody behaviors that cannot be the responsibility of a single class acting alone, or the responsibilities may need to be reused, the analysis class should be mapped to a subsystem may take a few iterations to stabilize. classes which evolve into subsystems might include: complex services and/or utilities user interfaces and external system interfaces. Class Class Class Class goals Properties of a system which make it flexible, maintainable Abstraction Modularity Cohesion how clearly-defined a particular module or procedure is a module with high cohesion does one or a few things exceedingly well. Coupling strength of connections between modules what information needs to be communicated between modules Goal: High cohesion, low coupling Information hiding Complexity Rick Adrion 2003 (except where noted) 8

9 CMPSCI520/620 Partitioning Considerations Coupling and cohesion design elements with tight coupling/cohesion (e.g., lots of relationships and communication) should be should be placed in the same partition design elements with loose coupling/cohesion should be placed in separate partitions. User organization not a good long-term strategy because the organizational structure may change you want the software and the business organization to be independent distribution partitioning to reflect distribution can help to visualize the network communication which will occur as the system executes., but can make the system more difficult to change if the Deployment Model changes significantly. Secrecy & access control functionality requiring special clearance must be partitioned into subsystems that will be developed independently, with the interfaces to the secrecy areas the only visible aspect of these subsystems. Variability partition optional functionality Specific functionality General functionality Typical Layering Approach Layering Guidelines Visibility User Interface Dependencies only within current layer and below Business Services Volatility Upper layers affected by Business Objects requirements changes Lower layers affected by environment changes Middleware Generality More abstract model elements in lower layers Number of layers Base Reuse Small system: 3 layers global global Complex system: 5-7 layers Goal is to reduce coupling and to ease maintenance effort java Business Services Layers & Visibility User Interface Middleware Business Objects Base Reuse global global java Only public classes can be referenced outside of the owning package A B Public visibility PackageA Class A PackageB Class B Class A3 Private visibility Class A2 Class B2 Rick Adrion 2003 (except where noted) 9

10 CMPSCI520/620 Layering Back to layers Concentrate on encapsulating change Package dependencies are not transitive, thus one layer can shield another from change Upward dependencies should be resolved in design e.g., call backs can be replaced with the subscribes to association whose source is a class (called the subscriber) and whose target is a class (called the publisher) subscriber specifies a set of events and is notified when one of those events occurs in the target Professor Interface Registrar Interface The applications need to retain the current user's context GUI Framework Secure Interfaces (from Security) Student Interface A bi-directional relationship exists between the GUI Framework and the other interface packages because the Logon Form needs to be able to notify the application forms MainApplicationForm ( from GUI Framework ) + start( ) 0.. Window (from java.awt) View + open() + refresh() + close() + update() inherits from inherits from inherits from 0.. LogonForm ( from GUI Framework ) + open( ) <<interface>> SecureUser ( from Secure Interfaces ) + getuserid( ) : UniqueId + getaccess( SecureData ) : SecurityAccess + setaccess( SecureData, SecurityAccess) User Interface Layer: Main Forms More Layers inherit from the MainApplicationForm that came from the GUI framework MainApplicationForm (from GUI Framework) LogonForm (from GUI Framework) 0.. MainRegistrarForm MainStudentForm ReportCardForm MainProfessorForm SelectCoursesForm SubmitGradesForm LogonForm was reverse engineered From GUI framework aggregation relationships to be addressed in Class Relational OODBMS DBMS Middleware <<Interface>> IPersistent (from OODBMS) RDBMSTransaction (from RelationalDBMS) OODBMSTransaction (from OODBMS) <<utility>> sql Objectstore (from RelationalDBMS) (from OODBMS) (from OODBMS) Contains Security Security 2 packages Manager SecureUser (from Secure Interfaces) SecureData (from Secure Interfaces) UniqueId SecurityAccess (from Secure Interfaces) (from Secure Interfaces) Secure Interfaces UserSecurityContext (from Security Manager) MaintainStudentForm MaintainProfessorForm CloseRegistrationForm Rick Adrion 2003 (except where noted) 0

11 CMPSCI520/620 So Where Are We? Describe Concurrency Overview Architect Architectural Architectural Describe Concurrency Describe Distribution Review the Architecture Architecture Reviewer er Review the Reviewer Supplementary Specifications Describe Concurrency Process Model er Class the independent threads of control are identified and the identified model elements (subsystems and classes) are mapped to these threads of control. Modeling Processes Processes may be modeled using Active classes (Class Diagrams) and Objects (Interaction Diagrams) owns it s own thread of execution and can initiate control activity may execute in parallel (i.e., concurrently) with other active classes. <<stereotype>> Name Components (Component Diagrams) <<stereotype>> Component Name Relationships <<stereotype>> Name Process.exe <<stereotype>> can be or <<thread>> <<stereotype>> Name dependency Modeling Processes: Class Diagram CourseCatalogAccess CourseRegistrationProcess StudentApplication <<thread>> CourseCache composition <<thread>> OfferingCache CourseCache and OfferingCache are used to asynchronously retrieve items from the legacy system. This will improve response time. Rick Adrion 2003 (except where noted)

12 CMPSCI520/620 Mapping Elements to Processes So Where Are We? The classes associated with the individual user interfaces were mapped to the application processes. The classes associated with the individual business services were mapped to the controller processes. The classes associated with access to the external systems were mapped to the access processes For the threads, composition is used to show what design elements have been mapped to them. CourseCatalogAccess StudentApplication CourseRegistrationProcess CourseOffering <<thread>> OfferingCache MainStudentForm CourseCatalog (from Registration) (from CourseCatalog) <<thread>> CourseCache Proxy due to Rose Course Architect er er Architectural Architectural Describe Describe Concurrency Distribution Class Review the Architecture Architecture Reviewer Review the Reviewer Describe Distribution Overview Why Distribute? Process Model Implementation Model Describe Distribution Deployment Model Reduce processor load Special processing requirements Scaling concerns Economic concerns Distribution Patterns Client/Server 3-tier Fat-Client Web Application Distributed Client/Server Peer-to-peer Rick Adrion 2003 (except where noted) 2

13 CMPSCI520/620 Distribution patterns Common services Presentation Services UI including, the visual appearance of output and how user input is handled Business Services Business rules and logic Data Services Data relationships, efficiency of storage, and data integrity Patterns One-Tier Two-Tier Fat Client -- client has its presentation and business services; server has the data services Thin Client -- client has the presentation services; server has the business and data services Three-tier client has presentation services; server has business services; separate (logical) server has data services. Web-tier client accesses a web server that at least handles presentation services; web server may have its own business and data services or it may utilize one or more servers that handle business and data services Deployment Model Modeling Elements Node Physical run-time computational resource Processor Execute system software Device Support devices Typically controlled by a Processor Connection Communication mechanisms Physical medium Software protocol <<Node>> Node # <<Processor>> Processor # Connection <<Device>> Device # Deployment Diagrams <<Node>> Node # <<connection type>> Connection <<Node>> Node #2 Component Component Object Object Interface Process- Process-2... Process- Process-2... Process-to-Node Allocation External Desktop PC StudentApplication <<legacy>> Course Catalog <<Internet>> <<Campus LAN>> Dial up access and behind campus firewall Desktop PC <<Campus LAN>> StudentApplication ProfessorApplication RegistrarApplication Registration Server <<Campus LAN>> CourseCatalogAccess CourseRegistrationProcess GradeSubmissionProcess TeachingCoursesSelectionProcess ProfessorMaintenanceProcess StudentMaintenanceProcess CloseRegistrationProcess ReportCardProcess FinanceAccess <<legacy>> Billing Rick Adrion 2003 (except where noted) 3

14 CMPSCI520/620 Distribution Pattern: Proxy Distribution Pattern: Proxy <<utility>> Naming (from java.rmi) SomeForm : ProxyDistributed Controller : Naming : RemoteTimecard Controller ProxyDistributedController RemoteDistributedController Lookup("RemoteTimecardController") <<controller>> (from Student Activities) +currentuser +currentuser <<Interface>> SecureUser (from Secure Interfaces) 0.. Remote (from Student Activities) : new(secureuser) The connection between the proxy and remote controller is established when the proxy controller is created 5: DoSomething 2: lookup(string) 3: new( ) 4: setsession(secureuser) The current user context is passed to the server for later access checks client server secure user instance is created on the client and passed to the server when the remote controller is created 6: DoSomething All calls to the proxy controller are forwarded to the remote controller The Rational 4+ Views Affect on Process Model Associations StudentApplication Process design view implementation view Classes, interfaces, collaborations Components MainStudentForm Organization Package, subsystem Use cases Use -Case View Dynamics Interaction State machine 0.. Active classes process view deployment view Nodes (from Student Activities) Remote 0.. (from Student Activities) Rick Adrion 2003 (except where noted) 4

Rational Unified Process

Rational Unified Process 6- Readings OOAD Using the UML Copyright 994-998 Rational Software, all rights reserved [Partly] posted Rational Unified Process The Unified Modeling Language (UML) is a language for specifying, visualizing,

More information

Use-Case Analysis. Architecture Oriented Analysis. R. Kuehl/J. Scott Hawker p. 1 R I T. Software Engineering

Use-Case Analysis. Architecture Oriented Analysis. R. Kuehl/J. Scott Hawker p. 1 R I T. Software Engineering Use-Case Analysis Architecture Oriented Analysis R. Kuehl/J. Scott Hawker p. 1 Notes The slides are based on UML use-case analysis techniques This is an introduction detailed techniques and notation will

More information

17-Design. Jackson System Development (JSD) Step 1: Entity/action step. Student Loan Example. CMPSCI520/620 Design ***DRAFT*** 11/4/04

17-Design. Jackson System Development (JSD) Step 1: Entity/action step. Student Loan Example. CMPSCI520/620 Design ***DRAFT*** 11/4/04 CMPSCI520/620 ***DRAFT*** 11/4/04 17- Readings OOAD Using the UML Copyright 1994-1998 Rational Software, all rights reserved will post Jackson System Development (JSD) Phases the modeling phase Entity/action

More information

6 Identify Design Elements

6 Identify Design Elements 6 Identify Design Elements 1 2 3 Identify Design Elements in Context [Early Elaboration Iteration] [Inception Iteration (Optional)] Define a Candidate Architecture Perform Architectural Synthesis Analyze

More information

Use Case Design. FROM Dr. Giuseppe Calavaro, Ratiolal TO Students in the DISP, University of Roma Tor Vergata 2003

Use Case Design. FROM Dr. Giuseppe Calavaro, Ratiolal TO Students in the DISP, University of Roma Tor Vergata 2003 Use Case Design FROM Dr. Giuseppe Calavaro, Ratiolal TO Students in the DISP, University of Roma Tor Vergata 2003 Copyright 1998-1999 Rational Software, all rights reserved 1 Objectives: Use-Case Design

More information

DEV475 Mastering Object-Oriented Analysis and Design with UML 2.0 Student Guide, Volume 2

DEV475 Mastering Object-Oriented Analysis and Design with UML 2.0 Student Guide, Volume 2 IBM Rational University DEV475 Mastering Object-Oriented Analysis and Design with UML 2.0 Student Guide, Volume 2 DEV475 Mastering Object-Oriented Analysis and Design with UML 2.0 Student Guide, Volume

More information

Subsystem Design. FROM Dr. Giuseppe Calavaro, Ratiolal TO Students in the DISP, University of Roma Tor Vergata 2003

Subsystem Design. FROM Dr. Giuseppe Calavaro, Ratiolal TO Students in the DISP, University of Roma Tor Vergata 2003 Subsystem Design FROM Dr. Giuseppe Calavaro, Ratiolal TO Students in the DISP, University of Roma Tor Vergata 2003 Copyright 1998-1999 Rational Software, all rights reserved 1 Objectives: Subsystem Design

More information

Object-Oriented Design

Object-Oriented Design Object-Oriented Design Lecturer: Raman Ramsin Lecture 10: Analysis Packages 1 Analysis Workflow: Packages The analysis workflow consists of the following activities: Architectural analysis Analyze a use

More information

Object-Oriented Design

Object-Oriented Design Object-Oriented Design Lecture 14: Design Workflow Department of Computer Engineering Sharif University of Technology 1 UP iterations and workflow Workflows Requirements Analysis Phases Inception Elaboration

More information

Object Oriented Analysis and Design - Part2(Design)

Object Oriented Analysis and Design - Part2(Design) Object Oriented Analysis and Design - Part2(Design) Exam A QUESTION 1 Which statement is true about elements within the subsystem and public visibility? A. Only the subset of elements that define the subsystems

More information

2

2 9 UC Design 1 2 3 4 5 6 7 Representing Subsystems on a Sequence Diagram Interfaces Represent any model element that realizes the interface No message should be drawn from the interface Subsystem Component

More information

Index. Add Diagram > Sequence Diagram command,

Index. Add Diagram > Sequence Diagram command, Quatrani.book Page 183 Monday, May 8, 2006 11:56 AM Index A abstraction, 3 actions completing before processing, 54 55 data flowing through, 53 passing control between, 51 performing, 155 157 as round-cornered

More information

SOFTWARE MODELING AND DESIGN. UML, Use Cases, Patterns, and. Software Architectures. Ki Cambridge UNIVERSITY PRESS. Hassan Gomaa

SOFTWARE MODELING AND DESIGN. UML, Use Cases, Patterns, and. Software Architectures. Ki Cambridge UNIVERSITY PRESS. Hassan Gomaa SOFTWARE MODELING AND DESIGN UML, Use Cases, Patterns, and Software Architectures Hassan Gomaa George Mason University, Fairfax, Virginia Ki Cambridge UNIVERSITY PRESS Contents Preface P"U

More information

Objectives. Explain the purpose and objectives of objectoriented. Develop design class diagrams

Objectives. Explain the purpose and objectives of objectoriented. Develop design class diagrams Objectives Explain the purpose and objectives of objectoriented design Develop design class diagrams Develop interaction diagrams based on the principles of object responsibility and use case controllers

More information

OBJECT ORIENTED DESIGN with the Unified Process. Use Case Realization

OBJECT ORIENTED DESIGN with the Unified Process. Use Case Realization OBJECT ORIENTED DESIGN with the Unified Process Use Case Realization Objectives Explain the purpose and objectives of objectoriented design Develop design class diagrams Develop detailed sequence diagrams

More information

Analysis and Design with UML

Analysis and Design with UML Analysis and Design with UML Page 1 Agenda Benefits of Visual Modeling History of the UML Visual Modeling with UML The Rational Iterative Development Process Page 2 What is Visual Modeling? Item Order

More information

UNIT V *********************************************************************************************

UNIT V ********************************************************************************************* Syllabus: 1 UNIT V 5. Package Diagram, Component Diagram, Deployment Diagram (08 Hrs, 16 Marks) Package Diagram: a. Terms and Concepts Names, Owned Elements, Visibility, Importing and Exporting b. Common

More information

University of Calgary Department of Electrical and Computer Engineering. SENG : Object Oriented Analysis and Design Behrouz Homayoun Far

University of Calgary Department of Electrical and Computer Engineering. SENG : Object Oriented Analysis and Design Behrouz Homayoun Far University of Calgary Department of Electrical and Computer Engineering SENG 609.23: Object Oriented Analysis and Design Behrouz Homayoun Far Evaluation Test () 20:00 20:30 PM Instructions: 1. This booklet

More information

CAS 703 Software Design

CAS 703 Software Design Dr. Ridha Khedri Department of Computing and Software, McMaster University Canada L8S 4L7, Hamilton, Ontario Acknowledgments: Material based on Software by Tao et al. (Chapters 9 and 10) (SOA) 1 Interaction

More information

Topic : Object Oriented Design Principles

Topic : Object Oriented Design Principles Topic : Object Oriented Design Principles Software Engineering Faculty of Computing Universiti Teknologi Malaysia Objectives Describe the differences between requirements activities and design activities

More information

Software Engineering (CSC 4350/6350) Rao Casturi

Software Engineering (CSC 4350/6350) Rao Casturi Software Engineering (CSC 4350/6350) Rao Casturi Recap 1 to 5 Chapters 1. UML Notation 1. Use Case 2. Class Diagrams 3. Interaction or Sequence Diagrams 4. Machine or State Diagrams 5. Activity Diagrams

More information

340 Review Fall Midterm 1 Review

340 Review Fall Midterm 1 Review 340 Review Fall 2016 Midterm 1 Review Concepts A. UML Class Diagrams 1. Components: Class, Association (including association name), Multiplicity Constraints, General Constraints, Generalization/Specialization,

More information

UNIT I. 3. Write a short notes on process view of 4+1 architecture. 4. Why is object-oriented approach superior to procedural approach?

UNIT I. 3. Write a short notes on process view of 4+1 architecture. 4. Why is object-oriented approach superior to procedural approach? Department: Information Technology Questions Bank Class: B.E. (I.T) Prof. Bhujbal Dnyaneshwar K. Subject: Object Oriented Modeling & Design dnyanesh.bhujbal11@gmail.com ------------------------------------------------------------------------------------------------------------

More information

OBJECT ORIENTED DESIGN with the Unified Process. Use Case Realization

OBJECT ORIENTED DESIGN with the Unified Process. Use Case Realization OBJECT ORIENTED DESIGN with the Unified Process Use Case Realization 2016 Software Engineering 2 (Zoom-Into Design) Requirement Requirement Specification (Functional & Non- Functional) analysis Requirement

More information

Unit Wise Questions. Unit-1 Concepts

Unit Wise Questions. Unit-1 Concepts Unit Wise Questions Unit-1 Concepts Q1. What is UML? Ans. Unified Modelling Language. It is a Industry standard graphical language for modelling and hence visualizing a blue print of all the aspects of

More information

Index. : (colon), 80 <<>> (guillemets), 34, 56

Index. : (colon), 80 <<>> (guillemets), 34, 56 : (colon), 80 (guillemets), 34, 56 A Abstraction, 3 Acronyms, 54 Action field, 140 Actions tab, 140 ActiveX controls (Microsoft), 163 Activities. See also Activity diagrams basic description of, 241

More information

Architectural Blueprint

Architectural Blueprint IMPORTANT NOTICE TO STUDENTS These slides are NOT to be used as a replacement for student notes. These slides are sometimes vague and incomplete on purpose to spark a class discussion Architectural Blueprint

More information

Enterprise Architect Training Courses

Enterprise Architect Training Courses On-site training from as little as 135 per delegate per day! Enterprise Architect Training Courses Tassc trainers are expert practitioners in Enterprise Architect with over 10 years experience in object

More information

Experiment no 4 Study of Class Diagram in Rational Rose

Experiment no 4 Study of Class Diagram in Rational Rose Experiment no 4 Study of Class Diagram in Rational Rose Objective-: To studyclass Diagram in Rational Rose. References-: www.developer.com The Unified Modeling Language User Guide by Grady Booch Mastering

More information

The Unified Modeling Language. Asst.Prof.Dr. Supakit Nootyaskool IT-KMITL

The Unified Modeling Language. Asst.Prof.Dr. Supakit Nootyaskool IT-KMITL The Unified Modeling Language Asst.Prof.Dr. Supakit Nootyaskool IT-KMITL UML: requirement VS. Design models Identify 2 All the classes or things Elementary business process Necessary step to carry out

More information

Lab Manual. Object Oriented Analysis And Design. TE(Computer) VI semester

Lab Manual. Object Oriented Analysis And Design. TE(Computer) VI semester Lab Manual Object Oriented Analysis And Design TE(Computer) VI semester Index Sr. No. Title of Programming Assignment Page No. 1 2 3 4 5 6 7 8 9 10 Study of Use Case Diagram Study of Activity Diagram Study

More information

UML 2.0 UML 2.0. Scott Uk-Jin Lee. Division of Computer Science, College of Computing Hanyang University ERICA Campus

UML 2.0 UML 2.0. Scott Uk-Jin Lee. Division of Computer Science, College of Computing Hanyang University ERICA Campus UML 2.0 Division of Computer Science, College of Computing Hanyang University ERICA Campus Introduction to UML 2.0 UML Unified Modeling Language Visual language for specifying, constructing and documenting

More information

Chapter 2 Distributed Information Systems Architecture

Chapter 2 Distributed Information Systems Architecture Prof. Dr.-Ing. Stefan Deßloch AG Heterogene Informationssysteme Geb. 36, Raum 329 Tel. 0631/205 3275 dessloch@informatik.uni-kl.de Chapter 2 Distributed Information Systems Architecture Chapter Outline

More information

Architecture and the UML

Architecture and the UML Architecture and the UML Models, Views, and A model is a complete description of a system from a particular perspective Use Case Use Case Sequence Use Case Use Case Use Case State State Class State State

More information

INTERNAL ASSESSMENT TEST III Answer Schema

INTERNAL ASSESSMENT TEST III Answer Schema INTERNAL ASSESSMENT TEST III Answer Schema Subject& Code: Object-Oriented Modeling and Design (15CS551) Sem: V ISE (A & B) Q. No. Questions Marks 1. a. Ans Explain the steps or iterations involved in object

More information

Introduction to UML. Danang Wahyu utomo

Introduction to UML. Danang Wahyu utomo Introduction to UML Danang Wahyu utomo danang.wu@dsn.dinus.ac.id 085 740 955 623 Evolution of OO Development Methods History of OOAD leading to UML Why Model? Analyse the problem domain - Simplify reality

More information

Appendix A - Glossary(of OO software term s)

Appendix A - Glossary(of OO software term s) Appendix A - Glossary(of OO software term s) Abstract Class A class that does not supply an implementation for its entire interface, and so consequently, cannot be instantiated. ActiveX Microsoft s component

More information

Microsoft SharePoint Server 2013 Plan, Configure & Manage

Microsoft SharePoint Server 2013 Plan, Configure & Manage Microsoft SharePoint Server 2013 Plan, Configure & Manage Course 20331-20332B 5 Days Instructor-led, Hands on Course Information This five day instructor-led course omits the overlap and redundancy that

More information

Element: Relations: Topology: no constraints.

Element: Relations: Topology: no constraints. The Module Viewtype The Module Viewtype Element: Elements, Relations and Properties for the Module Viewtype Simple Styles Call-and-Return Systems Decomposition Style Uses Style Generalization Style Object-Oriented

More information

Designing Procedural 4GL Applications through UML Modeling

Designing Procedural 4GL Applications through UML Modeling Designing Procedural 4GL Applications through UML Modeling Shiri Davidson Mila Keren Sara Porat Gabi Zodik IBM Haifa Research Lab Matam - Advanced Technology Center Haifa 31905, Israel (shiri, keren, porat,

More information

Hippo Software BPMN and UML Training

Hippo Software BPMN and UML Training Hippo Software BPMN and UML Training Icon Key: www.hippo-software.co.uk Teaches theory concepts and notation Teaches practical use of Enterprise Architect Covers BPMN, UML, SysML, ArchiMate Includes paper

More information

Chapter Outline. Chapter 2 Distributed Information Systems Architecture. Distributed transactions (quick refresh) Layers of an information system

Chapter Outline. Chapter 2 Distributed Information Systems Architecture. Distributed transactions (quick refresh) Layers of an information system Prof. Dr.-Ing. Stefan Deßloch AG Heterogene Informationssysteme Geb. 36, Raum 329 Tel. 0631/205 3275 dessloch@informatik.uni-kl.de Chapter 2 Distributed Information Systems Architecture Chapter Outline

More information

IS 0020 Program Design and Software Tools

IS 0020 Program Design and Software Tools 1 IS 0020 Program Design and Software Tools Unified Modeling Language Lecture 13 April 13, 2005 What is UML? 2 The Unified Modelling Language is a standard notation to model [object oriented] systems.

More information

Object-Oriented Analysis and Design. Pre-UML Situation. The Unified Modeling Language. Unification Efforts

Object-Oriented Analysis and Design. Pre-UML Situation. The Unified Modeling Language. Unification Efforts Object-Oriented Analysis and Design Analysis vs. Design Analysis Activities Finding the Objects/ Classes An Analysis Example The Unified Modeling Language Pre-UML Situation Early 90s Explosion of OO methods/notations

More information

06. Analysis Modeling

06. Analysis Modeling 06. Analysis Modeling Division of Computer Science, College of Computing Hanyang University ERICA Campus 1 st Semester 2017 Overview of Analysis Modeling 1 Requirement Analysis 2 Analysis Modeling Approaches

More information

In this Lecture you will Learn: System Design. System Architecture. System Architecture

In this Lecture you will Learn: System Design. System Architecture. System Architecture In this Lecture you will Learn: System Design Chapter 13 The major concerns of system design The main aspects of system architecture, in particular what is meant by subdividing a system into layers and

More information

Unified Modeling Language (UML)

Unified Modeling Language (UML) Unified Modeling Language (UML) Troy Mockenhaupt Chi-Hang ( Alex) Lin Pejman ( PJ ) Yedidsion Overview Definition History Behavior Diagrams Interaction Diagrams Structural Diagrams Tools Effect on Software

More information

Logical Architecture & Design Preliminaries

Logical Architecture & Design Preliminaries Logical Architecture & Design Preliminaries CSSE 574: Week 2, Part 4 Steve Chenoweth Phone: Office (812) 877-8974 Cell (937) 657-3885 Email: chenowet@rose-hulman.edu From Requirements to Architecture Customer

More information

Chapter Outline. Chapter 2 Distributed Information Systems Architecture. Layers of an information system. Design strategies.

Chapter Outline. Chapter 2 Distributed Information Systems Architecture. Layers of an information system. Design strategies. Prof. Dr.-Ing. Stefan Deßloch AG Heterogene Informationssysteme Geb. 36, Raum 329 Tel. 0631/205 3275 dessloch@informatik.uni-kl.de Chapter 2 Distributed Information Systems Architecture Chapter Outline

More information

Chapter 1: Programming Principles

Chapter 1: Programming Principles Chapter 1: Programming Principles Object Oriented Analysis and Design Abstraction and information hiding Object oriented programming principles Unified Modeling Language Software life-cycle models Key

More information

Designing Component-Based Architectures with Rational Rose RealTime

Designing Component-Based Architectures with Rational Rose RealTime Designing Component-Based Architectures with Rational Rose RealTime by Reedy Feggins Senior System Engineer Rational Software Rose RealTime is a comprehensive visual development environment that delivers

More information

N-Tiered Enterprise Styles. Example 1. Key Concepts. Component-Based Software Engineering. ECE493-Topic 4 Winter 2006

N-Tiered Enterprise Styles. Example 1. Key Concepts. Component-Based Software Engineering. ECE493-Topic 4 Winter 2006 Component-Based Software Engineering ECE493-Topic 4 Winter 2006 Lecture 14 Enterprise Styles/Patterns (Part B) Ladan Tahvildari Assistant Professor Dept. of Elect. & Comp. Eng. University of Waterloo N-Tiered

More information

ACRONYMS AND GLOSSARY

ACRONYMS AND GLOSSARY Appendix A ACRONYMS AND GLOSSARY SYS-ED/ COMPUTER EDUCATION TECHNIQUES, INC. 1 Acronyms Acronym 1NF 1ONF 2NF 2ONF 2ONF 3NF 3ONF API CASE CORBA CRUD DFD FLOOT IDL Java VM ODMG OMG OODBMS OOUI OQL ODBC OOCRUD

More information

A - 1. CS 494 Object-Oriented Analysis & Design. UML Class Models. Overview. Class Model Perspectives (cont d) Developing Class Models

A - 1. CS 494 Object-Oriented Analysis & Design. UML Class Models. Overview. Class Model Perspectives (cont d) Developing Class Models CS 494 Object-Oriented Analysis & Design UML Class Models Overview How class models are used? Perspectives Classes: attributes and operations Associations Multiplicity Generalization and Inheritance Aggregation

More information

Introduction to Software Engineering (2+1 SWS) Winter Term 2009 / 2010 Dr. Michael Eichberg Vertretungsprofessur Software Engineering Department of

Introduction to Software Engineering (2+1 SWS) Winter Term 2009 / 2010 Dr. Michael Eichberg Vertretungsprofessur Software Engineering Department of Introduction to Software Engineering (2+1 SWS) Winter Term 2009 / 2010 Dr. Michael Eichberg Vertretungsprofessur Software Engineering Department of Computer Science Technische Universität Darmstadt What

More information

Course "Softwaretechnik" Book Chapter 2 Modeling with UML

Course Softwaretechnik Book Chapter 2 Modeling with UML Course "Softwaretechnik" Book Chapter 2 Modeling with UML Lutz Prechelt, Bernd Bruegge, Allen H. Dutoit Freie Universität Berlin, Institut für Informatik http://www.inf.fu-berlin.de/inst/ag-se/ Modeling,

More information

CHAPTER 1. Topic: UML Overview. CHAPTER 1: Topic 1. Topic: UML Overview

CHAPTER 1. Topic: UML Overview. CHAPTER 1: Topic 1. Topic: UML Overview CHAPTER 1 Topic: UML Overview After studying this Chapter, students should be able to: Describe the goals of UML. Analyze the History of UML. Evaluate the use of UML in an area of interest. CHAPTER 1:

More information

Chapter 10. Object-Oriented Analysis and Modeling Using the UML. McGraw-Hill/Irwin

Chapter 10. Object-Oriented Analysis and Modeling Using the UML. McGraw-Hill/Irwin Chapter 10 Object-Oriented Analysis and Modeling Using the UML McGraw-Hill/Irwin Copyright 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Objectives 10-2 Define object modeling and explain

More information

S1 Informatic Engineering

S1 Informatic Engineering S1 Informatic Engineering Advanced Software Engineering Web App. Process and Architecture By: Egia Rosi Subhiyakto, M.Kom, M.CS Informatic Engineering Department egia@dsn.dinus.ac.id +6285640392988 SYLLABUS

More information

Software Architecture and Design I

Software Architecture and Design I Software Architecture and Design I Instructor: Yongjie Zheng February 23, 2017 CS 490MT/5555 Software Methods and Tools Outline What is software architecture? Why do we need software architecture? How

More information

ITEC420: Software Engineering Lecture 3: Recap OO/UML Requirement Workflow

ITEC420: Software Engineering Lecture 3: Recap OO/UML Requirement Workflow ITEC420: Software Engineering Lecture 3: Recap OO/UML Requirement Workflow Box Leangsuksun SWECO Endowed Professor, Computer Science Louisiana Tech University box@latech.edu CTO, PB Tech International

More information

UNIT 1-UMAL DIAGRAMS. Q.No. Question Competence Level. 1 What is Object Oriented analysis & Design? Remembering BTL1

UNIT 1-UMAL DIAGRAMS. Q.No. Question Competence Level. 1 What is Object Oriented analysis & Design? Remembering BTL1 Year & Semester : III & VI Section : CSE 1 & 2 Subject Code : CS6502 Subject Name : OBJECT ORIENTED ANALYSIS AND DESIGN Degree & Branch : B.E (CSE) Staff in charge : Dr.B.VANATHI & Mr.K.SHANMUGAM PART

More information

3. UML Class Diagrams Page 1 of 15

3. UML Class Diagrams Page 1 of 15 3. UML Class Diagrams Page 1 of 15 The UML Class Diagram: Part 1 In the last article, we saw what use cases were, and how to identify and create use cases. Taking the series ahead, in this article, we

More information

VALLIAMMAI ENGINEERING COLLEGE

VALLIAMMAI ENGINEERING COLLEGE VALLIAMMAI ENGINEERING COLLEGE SRM Nagar, Kattankulathur 603 203 DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING QUESTION BANK V SEMESTER CS6502-OBJECT ORIENTED ANALYSIS AND DESIGN Regulation 2013 Academic

More information

Object-Oriented Systems Analysis and Design Using UML

Object-Oriented Systems Analysis and Design Using UML 10 Object-Oriented Systems Analysis and Design Using UML Systems Analysis and Design, 8e Kendall & Kendall Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall Learning Objectives Understand

More information

Building a New Rational Web Site with Rational Suite

Building a New Rational Web Site with Rational Suite Building a New Rational Web Site with Rational Suite by Christina Howe Director of Internet Services Rational Software In April of last year, Rational Software determined that its Web site no longer measured

More information

XIX. Software Architectures

XIX. Software Architectures XIX. Software Architectures Software Architectures UML Packages Client-Server vs Peer-to-Peer Horizontal Layers and Vertical Partitions 3-Tier and 4-Tier Architectures The Model-View-Controller Architecture

More information

Today s Topic. Lecture 5. What is UML? Why Use UML. UML Diagrams. Introduction to UML. What is UML Why use UML? UML Diagrams

Today s Topic. Lecture 5. What is UML? Why Use UML. UML Diagrams. Introduction to UML. What is UML Why use UML? UML Diagrams Today s Topic Lecture 5 Introduction to UML What is UML Why use UML? UML Static Use case, Class, Object Deployment, Component (Physical ) Dynamic Sequence, Collaboration (Interaction ) Activity, State

More information

Credit where Credit is Due. Goals for this Lecture. Introduction to Design

Credit where Credit is Due. Goals for this Lecture. Introduction to Design Credit where Credit is Due Lecture 17: Intro. to Design (Part 1) Kenneth M. Anderson Object-Oriented Analysis and Design CSCI 6448 - Spring Semester, 2002 Some material presented in this lecture is taken

More information

CAS 703 Software Design

CAS 703 Software Design Dr. Ridha Khedri Department of Computing and Software, McMaster University Canada L8S 4L7, Hamilton, Ontario Other 1 2 3 4 Other Principle of Least Privilege Principle of Fail-Safe Defaults Principle of

More information

Software Design Patterns. Background 1. Background 2. Jonathan I. Maletic, Ph.D.

Software Design Patterns. Background 1. Background 2. Jonathan I. Maletic, Ph.D. Software Design Patterns Jonathan I. Maletic, Ph.D. Department of Computer Science Kent State University J. Maletic 1 Background 1 Search for recurring successful designs emergent designs from practice

More information

Object-Oriented Analysis and Design Using UML (OO-226)

Object-Oriented Analysis and Design Using UML (OO-226) Object-Oriented Analysis and Design Using UML (OO-226) The Object-Oriented Analysis and Design Using UML course effectively combines instruction on the software development processes, objectoriented technologies,

More information

CHAPTER 9 DESIGN ENGINEERING. Overview

CHAPTER 9 DESIGN ENGINEERING. Overview CHAPTER 9 DESIGN ENGINEERING Overview A software design is a meaningful engineering representation of some software product that is to be built. Designers must strive to acquire a repertoire of alternative

More information

Lecture 17: (Architecture V)

Lecture 17: (Architecture V) Lecture 17: (Architecture V) Software System Design and Implementation ITCS/ITIS 6112/8112 091 Fall 2008 Dr. Jamie Payton Department of Computer Science University of North Carolina at Charlotte Oct. 30,

More information

Oral Questions. Unit-1 Concepts. Oral Question/Assignment/Gate Question with Answer

Oral Questions. Unit-1 Concepts. Oral Question/Assignment/Gate Question with Answer Unit-1 Concepts Oral Question/Assignment/Gate Question with Answer The Meta-Object Facility (MOF) is an Object Management Group (OMG) standard for model-driven engineering Object Management Group (OMG)

More information

The ATCP Modeling Framework

The ATCP Modeling Framework The ATCP 2+9+1 Modeling Framework Bobbi Underbakke Adaptive Team Collaboration, Inc. 800.837.0677 atcprocess.com Adaptive Team Collaboration, Inc. March 22, 2005 Chris Armstrong Armstrong Process Group,

More information

S T R U C T U R A L M O D E L I N G ( M O D E L I N G A S Y S T E M ' S L O G I C A L S T R U C T U R E U S I N G C L A S S E S A N D C L A S S D I A

S T R U C T U R A L M O D E L I N G ( M O D E L I N G A S Y S T E M ' S L O G I C A L S T R U C T U R E U S I N G C L A S S E S A N D C L A S S D I A S T R U C T U R A L M O D E L I N G ( M O D E L I N G A S Y S T E M ' S L O G I C A L S T R U C T U R E U S I N G C L A S S E S A N D C L A S S D I A G R A M S ) WHAT IS CLASS DIAGRAM? A class diagram

More information

Introduction to UML p. 1 Introduction to the Object-Oriented Paradigm p. 1 What Is Visual Modeling? p. 6 Systems of Graphical Notation p.

Introduction to UML p. 1 Introduction to the Object-Oriented Paradigm p. 1 What Is Visual Modeling? p. 6 Systems of Graphical Notation p. Introduction p. xxi Introduction to UML p. 1 Introduction to the Object-Oriented Paradigm p. 1 What Is Visual Modeling? p. 6 Systems of Graphical Notation p. 7 Understanding UML Diagrams p. 10 Visual Modeling

More information

Object-Oriented Development and UML. Announcement. Agenda 7/3/2008. Class will resume on July 22. Try to complete the lab assignments by July.

Object-Oriented Development and UML. Announcement. Agenda 7/3/2008. Class will resume on July 22. Try to complete the lab assignments by July. Object-Oriented Development and UML 2 4 pm Thursday 7/3/2008 @JD2211 1 Announcement Class will resume on July 22. Try to complete the lab assignments by July 21. 2 Agenda Review Object-Oriented Analysis

More information

Lecture 13 Introduction to Software Architecture

Lecture 13 Introduction to Software Architecture Lecture 13 Introduction to Software Architecture Software Systems Design and Implementation ITCS/ITIS 6112/8112 Fall 2008 Dr. Jamie Payton Department of Computer Science University of North Carolina at

More information

WHAT IS SOFTWARE ARCHITECTURE?

WHAT IS SOFTWARE ARCHITECTURE? WHAT IS SOFTWARE ARCHITECTURE? Chapter Outline What Software Architecture Is and What It Isn t Architectural Structures and Views Architectural Patterns What Makes a Good Architecture? Summary 1 What is

More information

Learning Objectives. C++ For Artists 2003 Rick Miller All Rights Reserved xli

Learning Objectives. C++ For Artists 2003 Rick Miller All Rights Reserved xli Identify and overcome the difficulties encountered by students when learning how to program List and explain the software development roles played by students List and explain the phases of the tight spiral

More information

What is use case modeling? 10 - UML Overview. Use-Case diagrams CMPSCI520/620. Rick Adrion 2003 (except where noted) 1

What is use case modeling? 10 - UML Overview. Use-Case diagrams CMPSCI520/620. Rick Adrion 2003 (except where noted) 1 What is use case modeling? 10 - UML Overview use case model a view of a system that emphasizes the behavior as it appears to outside users. A use case model partitions system functionality into transactions

More information

UML Fundamental. OutLine. NetFusion Tech. Co., Ltd. Jack Lee. Use-case diagram Class diagram Sequence diagram

UML Fundamental. OutLine. NetFusion Tech. Co., Ltd. Jack Lee. Use-case diagram Class diagram Sequence diagram UML Fundamental NetFusion Tech. Co., Ltd. Jack Lee 2008/4/7 1 Use-case diagram Class diagram Sequence diagram OutLine Communication diagram State machine Activity diagram 2 1 What is UML? Unified Modeling

More information

index_ qxd 7/18/02 11:48 AM Page 259 Index

index_ qxd 7/18/02 11:48 AM Page 259 Index index_259-265.qxd 7/18/02 11:48 AM Page 259 Index acceptance testing, 222 activity definition, 249 key concept in RUP, 40 Actor artifact analysis and iterative development, 98 described, 97 136 in the

More information

CASE TOOLS LAB VIVA QUESTION

CASE TOOLS LAB VIVA QUESTION 1. Define Object Oriented Analysis? VIVA QUESTION Object Oriented Analysis (OOA) is a method of analysis that examines requirements from the perspective of the classes and objects found in the vocabulary

More information

ADVANCED SOFTWARE DESIGN LECTURE 4 SOFTWARE ARCHITECTURE

ADVANCED SOFTWARE DESIGN LECTURE 4 SOFTWARE ARCHITECTURE ADVANCED SOFTWARE DESIGN LECTURE 4 SOFTWARE ARCHITECTURE Dave Clarke 1 THIS LECTURE At the end of this lecture you will know notations for expressing software architecture the design principles of cohesion

More information

Software Service Engineering

Software Service Engineering Software Service Engineering Lecture 4: Unified Modeling Language Doctor Guangyu Gao Some contents and notes selected from Fowler, M. UML Distilled, 3rd edition. Addison-Wesley Unified Modeling Language

More information

SEEM4570 System Design and Implementation. Lecture 10 UML

SEEM4570 System Design and Implementation. Lecture 10 UML SEEM4570 System Design and Implementation Lecture 10 UML Introduction In the previous lecture, we talked about software development life cycle in a conceptual level E.g. we need to write documents, diagrams,

More information

Agile Model-Driven Development with UML 2.0 SCOTT W. AM BLER. Foreword by Randy Miller UNIFIED 1420 MODELING LANGUAGE. gile 1.

Agile Model-Driven Development with UML 2.0 SCOTT W. AM BLER. Foreword by Randy Miller UNIFIED 1420 MODELING LANGUAGE. gile 1. THE OBJECT PRIMER THIRD EDITION Agile Model-Driven Development with UML 2.0 SCOTT W. AM BLER Foreword by Randy Miller UNIFIED 1420 MODELING LANGUAGE gile 1 odeling Contents Acknowledgments Foreword Preface

More information

SEEM4570 System Design and Implementation Lecture 11 UML

SEEM4570 System Design and Implementation Lecture 11 UML SEEM4570 System Design and Implementation Lecture 11 UML Introduction In the previous lecture, we talked about software development life cycle in a conceptual level E.g. we need to write documents, diagrams,

More information

Software Engineering Fall 2015 (CSC 4350/6350) TR. 5:30 pm 7:15 pm. Rao Casturi 09/29/2015

Software Engineering Fall 2015 (CSC 4350/6350) TR. 5:30 pm 7:15 pm. Rao Casturi 09/29/2015 Software Engineering Fall 2015 (CSC 4350/6350) TR. 5:30 pm 7:15 pm Rao Casturi 09/29/2015 http://cs.gsu.edu/~ncasturi1 Class Announcements Grading is done for the Deliverable #2 (Requirement Elicitation)

More information

Chapter 1: Principles of Programming and Software Engineering

Chapter 1: Principles of Programming and Software Engineering Chapter 1: Principles of Programming and Software Engineering Data Abstraction & Problem Solving with C++ Fifth Edition by Frank M. Carrano Software Engineering and Object-Oriented Design Coding without

More information

For 100% Result Oriented IGNOU Coaching and Project Training Call CPD TM : ,

For 100% Result Oriented IGNOU Coaching and Project Training Call CPD TM : , Course Code : MCS-032 Course Title : Object Oriented Analysis and Design Assignment Number : MCA (3)/032/Assign/2014-15 Assignment Marks : 100 Weightage : 25% Last Dates for Submission : 15th October,

More information

Importance of Rational ROSE in Software Development Process Models

Importance of Rational ROSE in Software Development Process Models Importance of Rational ROSE in Software Development Process Models Dr. Ahmad Al-Rababah Rational ROSE An introduction The advantages of visual modeling Modeling is a way of thinking about the problems

More information

Chapter 10 Object-Oriented Design Principles

Chapter 10 Object-Oriented Design Principles Chapter 10 Object-Oriented Design Principles Dr. Supakit Nootyaskool Faculty of Information Technology King Mongkut s Institute of Technology Ladkrabang Outline Object-oriented design: bridging from analysis

More information

StarUML Documentation

StarUML Documentation StarUML Documentation Release 2.0.0 MKLab November 20, 2014 Contents 1 Basic Concepts 3 1.1 Project.................................................. 3 1.2 Model Element, View Element, and Diagram..............................

More information

Software Architecture

Software Architecture Software Architecture Does software architecture global design?, architect designer? Overview What is it, why bother? Architecture Design Viewpoints and view models Architectural styles Architecture asssessment

More information

CS342: Software Design. November 21, 2017

CS342: Software Design. November 21, 2017 CS342: Software Design November 21, 2017 Runnable interface: create threading object Thread is a flow of control within a program Thread vs. process All execution in Java is associated with a Thread object.

More information

Chapter 6 System Design: Decomposing the System

Chapter 6 System Design: Decomposing the System Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 6 System Design: Decomposing the System Requirements Elicitation & Analysis results in; Non-functional requirements and constraints

More information