18-Design. Analysis and Design Workflow. Worker Responsibilities. So what do we do next? CMPSCI520/620 Design. Rick Adrion 2003 (except where noted) 1
|
|
- Gwendolyn Lawrence
- 6 years ago
- Views:
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
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 informationUse-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 information17-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 information6 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 informationUse 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 informationDEV475 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 informationSubsystem 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 informationObject-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 informationObject-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 informationObject 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 information2
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 informationIndex. 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 informationSOFTWARE 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 informationObjectives. 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 informationOBJECT 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 informationAnalysis 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 informationUNIT 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 informationUniversity 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 informationCAS 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 informationTopic : 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 informationSoftware 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 information340 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 informationUNIT 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 informationOBJECT 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 informationUnit 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 informationIndex. : (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 informationArchitectural 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 informationEnterprise 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 informationExperiment 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 informationThe 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 informationLab 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 informationUML 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 informationChapter 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 informationArchitecture 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 informationINTERNAL 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 informationIntroduction 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 informationAppendix 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 informationMicrosoft 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 informationElement: 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 informationDesigning 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 informationHippo 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 informationChapter 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 informationIS 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 informationObject-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 information06. 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 informationIn 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 informationUnified 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 informationLogical 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 informationChapter 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 informationChapter 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 informationDesigning 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 informationN-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 informationACRONYMS 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 informationA - 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 informationIntroduction 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 informationCourse "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 informationCHAPTER 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 informationChapter 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 informationS1 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 informationSoftware 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 informationITEC420: 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 informationUNIT 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 information3. 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 informationVALLIAMMAI 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 informationObject-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 informationBuilding 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 informationXIX. 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 informationToday 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 informationCredit 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 informationCAS 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 informationSoftware 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 informationObject-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 informationCHAPTER 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 informationLecture 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 informationOral 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 informationThe 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 informationS 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 informationIntroduction 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 informationObject-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 informationLecture 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 informationWHAT 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 informationLearning 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 informationWhat 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 informationUML 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 informationindex_ 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 informationCASE 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 informationADVANCED 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 informationSoftware 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 informationSEEM4570 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 informationAgile 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 informationSEEM4570 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 informationSoftware 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 informationChapter 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 informationFor 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 informationImportance 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 informationChapter 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 informationStarUML 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 informationSoftware 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 informationCS342: 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 informationChapter 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