Object Interaction. Object Diagrams. Object Diagrams Object
|
|
- Silas Malone
- 8 years ago
- Views:
Transcription
1 Object Interaction Object Diagrams Object collaboration using CRC cards Object collaboration using a Sequence Diagram Object collaboration using a Collaboration diagram How to cross-check check between Interaction/Collaboration diagrams and a Class Diagram Object Interaction -- 1 Object Diagrams Model the instances of things contained in class diagrams. Show a set of objects and their relationships at a point in time. Used to model a snapshot of the system at a moment in time and rendering a set of objects, their state, and their relationships. Freeze a moment in time. Object Interaction -- 2 Page 1
2 Simple Objects : Course Bill Clinton courseno: csc340" description: OOAD" Jaelson: instructor : student Monica: student someone : Object Interaction -- 3 Multiobjects Multiobjects: set of objects, with undefined number of elements p2: Instructorr c1: Course c3: Course c2: Course : Student : Student Multiobjects Object Interaction -- 4 Page 2
3 Communication and Collaboration between Objects Fundamental to OO Which object should be responsible for each part of the overall behavior? Allocating operations to appropriate classes. Atribute X Complex tasks What collaborations between objects are required to generate the overall application functionality? Identifying what messages should be sent between objects and the conditions under which they should be sent. Object Interaction -- 5 Object Interaction and Collaboration Objects only contain data and methods which are relevant to their own responsibilities They don t know about other objects data. To get the kind of functionality which is required for a system to work, the objects have to work together collaborate Objects collaborate by sending messages to one another calling operations of the required instance Objects can only send messages to one another if there is an association between them Therefore, there must be an association between their classes Object Interaction -- 6 Page 3
4 Responsibilities One way of viewing the problem of assigning operations is in terms of the responsibilities of the objects. A responsibility is high level description of something a class can do. Reflects the knowledge or information that is available to that class, either stored within its own attribute or requested via collaboration with other classes. Object Interaction -- 7 Responsibilities The aim of OO-Analysis-and-Design is to distribute system functionality evenly among its classes Not that all classes have exactly equal levels of responsibilities, but rather that each class should have appropriate responsibility When responsibilities are evenly distributed, each class tends not to be unduly complex Easier to develop, to test and maintain Resilient to change in its requirements A class that it relatively small and self-contained has much greater potential for reuse Object Interaction -- 8 Page 4
5 CRC (Class Responsibility Collaboration) Cards One way to assign operations to objects is to work with CRC Cards to determine the responsibilities of each object. CRC stands for: Class Responsibility Collaboration CRC can be used at several different stages of project, for different purposes Here we use it in modeling object interaction Object Interaction -- 9 CRC Cards These are cards which for each class show what its responsibilities are, in terms of its attributes the operations it can carry out the names of the other classes it needs to collaborate with in order to carry out its responsibilities Object Interaction Page 5
6 Role Play with CRC Cards In analysis we can spend time role playing with CRC cards to try to sort out the responsibilities of objects and to determine which are the other objects they need to collaborate with in order to carry out those responsibilities Often the responsibilities start out being vague and not as precise as the operations which may only become clear as we move into design. Sometimes we need to role play the objects in the system and test out the interactions between them. Object Interaction I m a Campaign... I m a Campaign. I know my title, start date, finish date and how much I am estimated to cost. When I ve been completed, I know how much I actually cost and when I was completed. I can calculate the difference between my actual and estimated costs. When I ve been paid for, I know when the payment was made. I can calculate the contribution made to me by each member of staff who worked on me. Object Interaction Page 6
7 I m a CreativeStaff... I m a CreativeStaff. I know my staff no, name, start date and qualification. I can calculate how much bonus I am entitled to at the end of the year. Does it make sense to include I can calculate the contribution made to each campaign I have worked on by each member of staff who worked on it. or does that belong in Campaign? Object Interaction Class: Campaign Responsibilities: Title StartDate FinishDate EstimatedCost ActualCost CompletionDate DatePaid AssignManager RecordPayment Completed GetCampaignContribution CostDifference Collaborating Classes CreativeStaff Object Interaction Page 7
8 Class: CreativeStaff Responsibilities: StaffNo StaffName StaffStartDate Qualification Collaborating Classes CalculateBonus ChangeGrade Campaign StaffGrade Grade Object Interaction Sequence Diagrams CRC cards and role playing may help to find out what the responsibilities of objects are and which other objects they need to collaborate with, but They do not provide a way of documenting these interactions for a particular Use Case -> Sequence Diagrams An interaction is a behavior that comprises a set of messages exchanged among a set of objects within a context to accomplish a purpose. A message is a specification of a communication between objects that conveys information with the expectation that activity will ensue. Message types: sync, async, time-out, uncommitted, etc. Object Interaction Page 8
9 Sequence Diagrams There will be a Sequence Diagram (SD!) for each Use Case in the system. We draw SDs in order to document how objects collaborate to produce the functionality of each use case. The SDs show the data and messages which pass across the system boundary and the messages being sent from one object to another in order to achieve the overall functionality of the Use Case Object Interaction Sequence Diagrams A Sequence Diagram can be seen as an expansion of a use case to the lowest possible level of detail. Sequence diagrams can be drawn at different levels of details and also to meet different purposes at several stages in the development life-cycle. Analysis Sequence Diagrams normally do not include design objects Specify message in any detail Object Interaction Page 9
10 Example: Add a new Campaign This SD is for the Use Case Add a new Campaign Add a new Campaign Staff Contact Add a new Campaign Description Find Client by Name Create New Campaign Find Creative Staff Member by Name Assign Campaign Manager Client New AssignManager Campaign CreativeStaff Object life line activation Object Interaction Example: Add a new Campaign Title of Use Case Operations/Messages Add a new Campaign Description Find Client by Name Create New Campaign Find Creative Staff Member by Name Assign Campaign Manager Client New AssignManager Campaign CreativeStaff Statements System Boundary Objects Object Interaction Page 10
11 Example: Printing :PrintDialogue :Spooler :Printer :Queue Print PrintFile(file) GetStatus Branching [Ready] Print [Offline] ErrorBox [Busy] PutInQueue (file) Ready GetNext Object Interaction Notation The name of the class and the name of the instance of that class (object), if required, at the top of the column that represents it. Including the arrows marked makes it easier to follow the flow of control from object to object The vertical line for each object represents its lifeline The thick bar represents its activation i.e. when it is doing something Object Interaction Page 11
12 Sequence Diagrams: UML This procedure call (operation) is creating an instance of class A createobj() obja:a objb:b doit() These return arrows are optional in a procedural flow of control Object Interaction The box representing an object is drawn at the top if the object already exists, and at the point where the object is created if it is created within this use case, i.e. at the start of its lifeline Change Staff Member's Grade Sequence Diagrams: UML. Description :StaffMember :Grade OldGrade:StaffGrade Get StaffMember by Name - Change Grade (StaffName) ChangeGrade (ChangeDate, NewGrade) Get Existing Grade - Create New StaffGrade - New (StartDate) NewGrade:StaffGrade Set FinishDate of Old Grade - SetFinishDate (FinishDate) - Object Interaction Page 12
13 Structures The statements in SDs can be structured using the three structures which are common to all computer programs: Sequence - one statement following another; ion - a choice between alternatives if statement if... else statement case statement Iteration - repeating statement(s) in a loop controlled by a condition for... next while... do... loop until... do... loop Object Interaction Iteration Iteration (repetition of an operation) is shown with an asterisk Each StaffMember will be selected in turn Once selected, the CalculateBonus message will be sent to the one currently selected There is only one loop! Calculate Staff Bonuses Description Start For Each StaffMember next Staff Member Calculate Bonus for Staff Member Iteration * CalculateBonus StaffMember Object Interaction Page 13
14 Drawing SDs For a particular use case, start by identifying which objects might be involved You may not get this right, but you can always change it Imagine that there is a use case required by Agate called Check Campaign Budget Each Campaign has an EstimatedCost attribute and each Advert has an EstimatedCost attribute The purpose of the use case is to check that the total estimated cost of all the adverts is less than that for the campaign as a whole. Which objects are involved? Object Interaction Drawing SDs Campaign Class diagram showing aggregation Contains 1 * Advert Object Interaction Page 14
15 Drawing SDs Class diagram for Campaign class Campaign +Title : String +CampaignStartDate : Date +CampaignFinishDate : Date +EstimatedCost : Money +ActualCost : Money +CompletionDate : Date +DatePaid : Date -StaffCount : Integer = 0 +Completed (CompletionDate : Date, ActualCost : Money) +SetFinishDate (FinishDate : Date) +RecordPayment (DatePaid : Date) +CostDifference ():Money +GetCampaignContribution ():Money +CheckBudget ():Money Object Interaction Drawing SDs Class diagram for Advert class #Title : String #Type : String #TargetDate : Date #CompletedDate : Date #EstimatedCost : Money Advert +SetCompleted (CompletedDate : Date =Today's Date) +GetTitle () :String +GetType () :String +GetTargetDate () :Date +GetCompletedDate () :Date +GetCost () : Money Object Interaction Page 15
16 Drawing SDs What is the first thing to do? the relevant Campaign, probably using its name How we select it may be something we leave until we get into design: it could be from a list box it could involve a separate window on the screen it could involve some kind of index These are design issues, which we shall leave for now, although we would document them if the customer expressed a preference at this stage Object Interaction Drawing SDs Check Campaign Budget Description Campaign :Campaign :Advert We can add in a Check Campaign Budget Description :Campaign :Advert Campaign - Object Interaction Page 16
17 Drawing SDs We then need to send a message to the Campaign to check its budget. Check Campaign Budget Description Campaign - Check Budget CheckBudget :Campaign :Advert Note there is no here. Where does control go? Object Interaction Drawing SDs Check Campaign Budget Description :Campaign :Advert Campaign - Check Budget CheckBudget For each Advert Get Cost of Advert * GetCost Note the * for iteration. We are assuming here that the Campaign knows about all the Adverts that are contained in it by means of the Aggregation. Object Interaction Page 17
18 Drawing SDs What happens next? Check Campaign Budget Description Campaign - Check Budget For each Advert Get Cost of Advert Cost of Advert CheckBudget :Campaign * GetCost :Advert Advert returns its cost, in this case the EstimatedCost of the Advert Object Interaction Drawing SDs This has to happen for every Advert in the Campaign, so there s a loop Check Campaign Budget Description Campaign - Check Budget For each Advert Get Cost of Advert Cost of Advert Next Advert CheckBudget :Campaign * GetCost :Advert Once all the Adverts costs have been fetched and totalled up, the total can be taken away from the EstimatedCost of the Campaign. Object Interaction Page 18
19 Drawing SDs Check Campaign Budget Description Campaign - Check Budget For each Advert Get Cost of Advert Cost of Advert Next Advert (Estimated Cost - Cost of Adverts) CheckBudget Campaign * GetCost Advert If it is negative, then the Campaign is likely to exceed its budget Object Interaction Relationship to Class Diagram Advert #Title : String #Type : String #TargetDate : Date #CompletedDate : Date #EstimatedCost : Money #ActualCost : Money +SetCompleted (CompletedDate : Date =Today's Date) +GetTitle () :String +GetType () :String +GetTargetDate () :Date +GetCompletedDate () :Date +GetCost () : Money We could add a new attribute to Advert called ActualCost, which is set when the Advert is completed Now GetCost can return the ActualCost if it exists, otherwise the EstimatedCost Object Interaction Page 19
20 Collaboration Diagram Emphasizes the organization of the objects that participate in an interaction. Shows interaction without the time dimension but do include object links. Collaboration diagrams are intended to model scenaria; each scenario describes a possible sequence of events and actions. For complex use cases use several collaboration diagrams; make sure each collaboration diagram is simple and easy to understand. Object Interaction Collaboration Diagram The interaction starts from an actor. Links between objects are shown and may indicate the direction of navigability with arrowheads. Messages are shown beside the links with a directional arrow. Messages are numbered to show their sequence. Object Interaction Page 20
21 Ex: Courses to Teach 1: Inform(courseList) : Professor 3:Propose(courseList ) 4:Agree(courseList ) :Administrator 2: *[for each professor] Inform(courseList) 5: Update(courseList ) AssociateChair :Professor <<entity>> : CourseInfo 6: *[For each course] Update() <<entity>> : CourseOffering 7: *[For each professor] Update() <<entity>> : ProfessorInfo Object Interaction Ex: Add course offerring 1: add a course course options form 3: select course offering 2: display : Professor course form 5: get professor (professor id) 4: add professor (professor i d) course 6: add professor (professor) course offering Object Interaction Page 21
22 Sequence Diagram X Collaboration Diagram Sequence diagrams and collaboration diagrams are semantically equivalent. You can take a diagram in one form and convert it to the other without loss of information. To model flows of control by time ordering (Sequence diagram). Emphasizes the passing of messages as they unfold over time -> visualization of Use Case scenario. To model flows of control by organization (Collaboration Diagram). Emphasizes the structural relationships among instances in the interaction -> visualization of multiple concurrent flows of control Object Interaction Relationship to Class Diagram All operations shown on the collaboration and sequence diagrams must be present in the destination classes on the class diagram. Links shown on the collaboration diagram normally correspond to associations on the class diagram. Object Interaction Page 22
23 Additional Readings [Booch99] Booch, G. et all. The Unified Modeling Language User Guide. Chapters 15, 18, 27. Addison-Wesley. [Jacobson92] Jacobson, I. et all. Object-Oriented Software Engineering: A Use-Case Driven Approach. Addison-Wesley. [Fowler00] Fowler, M. et all. UML Distilled: A Brief Guide to the Standard Object Modelling Language. Chapter 5. Addison-Wesley. Object Interaction Page 23
III. Class and Object Diagrams
III. Class and Object Diagrams Classes, Attributes and Operations Objects and Multi-objects Generalization and Inheritance Associations and Multiplicity Aggregation and Composition How to Use Class Diagrams
More informationIII. Class and Object Diagrams
III. Class and Object Diagrams Classes, Attributes and Operations Objects and Multi-objects Generalization and Inheritance Associations and Multiplicity Aggregation and Composition Business Objects and
More informationGénie Logiciel et Gestion de Projets. Software Requirements Engineering
Génie Logiciel et Gestion de Projets Software Requirements Engineering 1 Software Requirements Engineering Roadmap Software Requirements User requirements versus system requirements Functional and non-functional
More informationGénie Logiciel et Gestion de Projets. Software Requirements Engineering
Génie Logiciel et Gestion de Projets Software Requirements Engineering 1 Software Requirements Engineering Roadmap Software Requirements User requirements versus system requirements Functional and non-functional
More informationLectures 2 & 3: Introduction to Modeling & UML. Getting started
Lectures 2 & 3: Introduction to Modeling & UML Why Build Models? What types of Models to build Intro to UML Class Diagrams Relationship between UML and program code Uses of UML 202 Steve Easterbrook. This
More informationSequence Diagram Tutorial. From: UML Distilled, Third Edition, Chapter 4 M. Fowler
Sequence Diagram Tutorial From: UML Distilled, Third Edition, Chapter 4 M. Fowler Use Cases and Scenarios A use case is a collection of interactions between external actors and a system In UML, a use case
More informationSequence Diagrams. Massimo Felici. Massimo Felici Sequence Diagrams c 2004 2011
Sequence Diagrams Massimo Felici What are Sequence Diagrams? Sequence Diagrams are interaction diagrams that detail how operations are carried out Interaction diagrams model important runtime interactions
More informationTDDC88 Lab 2 Unified Modeling Language (UML)
TDDC88 Lab 2 Unified Modeling Language (UML) Introduction What is UML? Unified Modeling Language (UML) is a collection of graphical notations, which are defined using a single meta-model. UML can be used
More informationCase studies: Outline. Requirement Engineering. Case Study: Automated Banking System. UML and Case Studies ITNP090 - Object Oriented Software Design
I. Automated Banking System Case studies: Outline Requirements Engineering: OO and incremental software development 1. case study: withdraw money a. use cases b. identifying class/object (class diagram)
More informationIn this Lecture you will Learn: Systems Development Methodologies. Why Methodology? Why Methodology?
In this Lecture you will Learn: Systems Development Methodologies What a systems development methodology is Why methodologies are used The need for different methodologies The main features of one methodology
More informationObject-oriented design methodologies
Object-oriented design methodologies An object-oriented methodology is defined as the system of principles and procedures applied to object-oriented software development. Five years ago, there was no standard
More informationObject Oriented Programming. Risk Management
Section V: Object Oriented Programming Risk Management In theory, there is no difference between theory and practice. But, in practice, there is. - Jan van de Snepscheut 427 Chapter 21: Unified Modeling
More informationUse Cases. Use Cases Diagrams
Use Cases Use cases Information Acquisition -- 1 Use Cases Diagrams Textual descriptions of the functionality of the system from user s perspective In our case we consider is the ACTOR perspective Used
More informationDesigning Real-Time and Embedded Systems with the COMET/UML method
By Hassan Gomaa, Department of Information and Software Engineering, George Mason University. Designing Real-Time and Embedded Systems with the COMET/UML method Most object-oriented analysis and design
More informationUML SUPPORTED SOFTWARE DESIGN
UML SUPPORTED SOFTWARE DESIGN Darko Gvozdanović, Saša Dešić, Darko Huljenić Ericsson Nikola Tesla d.d., Krapinska 45, HR-0000 Zagreb, Croatia, tel.: +385 365 3889, faks: +385 365 3548, e-mail: darko.gvozdanovic@etk.ericsson.se
More informationII. Conceptual Modeling
II. Conceptual Modeling Engineering Software Models in Software Engineering What is Conceptual Modeling? Origins 2003 John Mylopoulos and Steve Easterbrook Conceptual Modeling -- 1 Engineering Software
More informationSOFTWARE PROCESS MODELS
SOFTWARE PROCESS MODELS Slide 1 Software Process Models Process model (Life-cycle model) - steps through which the product progresses Requirements phase Specification phase Design phase Implementation
More information3C05: Unified Software Development Process
3C05: Unified Software Development Process 1 Unit 5: Unified Software Development Process Objectives: Introduce the main concepts of iterative and incremental development Discuss the main USDP phases 2
More informationBasic Unified Process: A Process for Small and Agile Projects
Basic Unified Process: A Process for Small and Agile Projects Ricardo Balduino - Rational Unified Process Content Developer, IBM Introduction Small projects have different process needs than larger projects.
More informationIRA 423/08. Designing the SRT control software: Notes to the UML schemes. Andrea Orlati 1 Simona Righini 2
Designing the SRT control software: Notes to the UML schemes Andrea Orlati 1 Simona Righini 2 1 - I.N.A.F. Istituto di Radioastronomia. 2 Dip. Astronomia - Università degli Studi di Bologna. Dicembre 2008
More informationPROJECT MANAGEMENT METHODOLOGY OF OBJECT- ORIENTED SOFTWARE DEVELOPMENT
PROJECT MANAGEMENT METHODOLOGY OF OBJECT- ORIENTED SOFTWARE DEVELOPMENT Ing. David BEDNÁŘ, Doctoral Degree Programme (2) Dept. of Information Systems, FIT, BUT E-mail: bednar@fit.vutbr.cz Supervised by:
More informationUnit I Page No. 1 System Development Object Basics Development Life Cycle Methodologies Patterns Frameworks Unified Approach UML
Unit I Page No. 1 System Development Object Basics Development Life Cycle Methodologies Patterns Frameworks Unified Approach UML System Development (SD) : - o SD refers to all activities that go into producing
More informationAspect Oriented Strategy to model the Examination Management Systems
Aspect Oriented Strategy to model the Examination Management Systems P.Durga 1, S.Jeevitha 2, A.Poomalai 3, Prof.M.Sowmiya 4 and Prof.S.Balamurugan 5 Department of IT, Kalaignar Karunanidhi Institute of
More informationA UML Introduction Tutorial
A UML Introduction Tutorial 1/27/08 9:55 PM A UML Introduction Tutorial In this tutorial you will learn about the fundamentals of object oriented modelling, the Unified Modelling Language and the software
More information[1] http://en.wikipedia.org/wiki/first-mover_advantage [2] http://www.acunote.com
-Gene Sher Software Development Processes: Those in engineering and science will sooner or later either be members of teams solving some large project, or be managing teams solving some large project.
More informationDesign and UML Class Diagrams. Suggested reading: Practical UML: A hands on introduction for developers http://dn.codegear.
Design and UML Class Diagrams Suggested reading: Practical UML: A hands on introduction for developers http://dn.codegear.com/article/31863 UML Distilled Ch. 3, by M. Fowler 1 Big questions What is UML?
More informationUse Case Diagrams. Tutorial
Use Case Diagrams Tutorial What is a use case? A requirements analysis concept A case of a use of the system/product Describes the system's actions from a the point of view of a user Tells a story A sequence
More informationSoftware Requirements Specification of A University Class Scheduler
Software Requirements Specification of A University Class Scheduler Deanna M. Needell Jeff A. Stuart Tamara C. Thiel Sergiu M. Dascalu Frederick C. Harris, Jr. Department of Computer Science University
More informationDEVELOPING REQUIREMENTS FOR DATA WAREHOUSE SYSTEMS WITH USE CASES
DEVELOPING REQUIREMENTS FOR DATA WAREHOUSE SYSTEMS WITH USE CASES Robert M. Bruckner Vienna University of Technology bruckner@ifs.tuwien.ac.at Beate List Vienna University of Technology list@ifs.tuwien.ac.at
More informationUsing UML Part Two Behavioral Modeling Diagrams
UML Tutorials Using UML Part Two Behavioral Modeling Diagrams by Sparx Systems All material Sparx Systems 2007 Sparx Systems 2007 Page 1 Trademarks Object Management Group, OMG, Unified Modeling Language,
More informationEvaluation of a Use-Case-Driven Requirements Analysis Tool Employing Web UI Prototype Generation
Evaluation of a Use-Case-Driven Requirements Analysis Tool Employing Web UI Prototype Generation SHINPEI OGATA Course of Functional Control Systems, Graduate School of Engineering Shibaura Institute of
More informationMasters of Science in Software & Information Systems
Masters of Science in Software & Information Systems To be developed and delivered in conjunction with Regis University, School for Professional Studies Object Oriented Design Table of Contents January
More informationUML: Unified Modeling Language
UML: Unified Modeling Language Story: What UML is for Some of the main diagrams are and what you use them for Class diagrams and class forms Use Case Diagrams Sequence (Event) Diagram State Diagrams An
More informationHow To Draw A Cell Phone Into A Cellphone In Unminimal Diagram (Uml)
UML Tutorial: Collaboration Diagrams Robert C. Martin Engineering Notebook Column Nov/Dec, 97 In this column we will explore UML collaboration diagrams. We will investigate how they are drawn, how they
More informationI219 Software Design Methodology
I219 Software Design Methodology JAIST Master s Program Fall 2014 Nguyen Van Vu nvu@fit.hcmus.edu.vn Topics Course Introduction Objectives and Scope Evaluation Policies Content and Schedule Basic Concepts
More information(BA122) Software Engineer s Workshop (SEW)
Training for the Business Analyst (BA122) Software Engineer s Workshop (SEW) Duration: 4 days CDUs (Continuing Development Units): 28 Description: A practical workshop covering the role of the Business-Systems
More informationSoftware Development: An Introduction
Software Development: An Introduction Fact: Software is hard. Imagine the difficulty of producing Windows 2000 29 million lines of code 480,000 pages of listing if printed a stack of paper 161 feet high
More informationCHAPTER 1 Introduction
CHAPTER 1 Introduction Software Engineering Why & What Product & Process Correctness & Traceability Software Process Activities Waterfall Iterative & Incremental Development Sample Processes + Unified
More informationObject Oriented Design
Object Oriented Design Kenneth M. Anderson Lecture 20 CSCI 5828: Foundations of Software Engineering OO Design 1 Object-Oriented Design Traditional procedural systems separate data and procedures, and
More informationSoftware Design Models, Tools & Processes *
Software Design Models, Tools & Processes * Lecture 1: Software Design and Software Development Process Cecilia Mascolo * Thanks to Alan Blackwell and Jim Arlow for le7ng me use some of their slides. About
More informationWeek 1: Introduction. Transcript of Week 1 Podcast
Transcript of Week 1 Podcast Week 1: Introduction This is the Week 1 Podcast for the course, Information System and Service Analysis and Design. This week is about Project Management. Systems development
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 informationExecution of A Requirement Model in Software Development
Execution of A Requirement Model in Software Development Wuwei Shen, Mohsen Guizani and Zijiang Yang Dept of Computer Science, Western Michigan University {wwshen,mguizani,zijiang}@cs.wmich.edu Kevin Compton
More informationDynamics CRM for Outlook Basics
Dynamics CRM for Outlook Basics Microsoft Dynamics CRM April, 2015 Contents Welcome to the CRM for Outlook Basics guide... 1 Meet CRM for Outlook.... 2 A new, but comfortably familiar face................................................................
More informationUse Cases. Reference: Craig Larman, Applying UML and Patterns, Ch. 6
Use Cases Reference: Craig Larman, Applying UML and Patterns, Ch. 6 Use Case What it is: Text story Widely used to discover and record (mostly functional) requirements What is it about: Some actor(s) using
More informationCommunication Diagrams
Communication Diagrams Massimo Felici Realizing Use cases in the Design Model 1 Slide 1: Realizing Use cases in the Design Model Use-case driven design is a key theme in a variety of software processes
More informationCHAPTER_3 SOFTWARE ENGINEERING (PROCESS MODELS)
CHAPTER_3 SOFTWARE ENGINEERING (PROCESS MODELS) Prescriptive Process Model Defines a distinct set of activities, actions, tasks, milestones, and work products that are required to engineer high quality
More information2. Analysis, Design and Implementation
2. Subject/Topic/Focus: Software Production Process Summary: Software Crisis Software as a Product: From Individual Programs to Complete Application Systems Software Development: Goals, Tasks, Actors,
More informationA comparison of BON and Hodge-Mock. oriented software development methodologies
A comparison of BON and Hodge-Mock software development methodologies December 2012 Abbas Naderi Afooshteh (abiusx@acm.org) 91211054 Sharif University of Technology 1. Introduction This whitepaper intends
More informationUniversiti Teknologi MARA. Requirement Analysis Using UML Approach for Research Management System (RMS)
C^tJ O19OO(^'J.Tfi^'i- Universiti Teknologi MARA Requirement Analysis Using UML Approach for Research Management System (RMS) Enamul Hasan Bin Rusly Thesis submitted in fulfillment of the requirements
More informationIntroduction. UML = Unified Modeling Language It is a standardized visual modeling language.
UML 1 Introduction UML = Unified Modeling Language It is a standardized visual modeling language. Primarily intended for modeling software systems. Also used for business modeling. UML evolved from earlier
More informationApplying 4+1 View Architecture with UML 2. White Paper
Applying 4+1 View Architecture with UML 2 White Paper Copyright 2007 FCGSS, all rights reserved. www.fcgss.com Introduction Unified Modeling Language (UML) has been available since 1997, and UML 2 was
More informationInformation Systems Analysis and Design CSC340. 2004 John Mylopoulos. Software Architectures -- 1. Information Systems Analysis and Design CSC340
XIX. Software Architectures Software Architectures UML Packages Client- vs Peer-to-Peer Horizontal Layers and Vertical Partitions 3-Tier and 4-Tier Architectures The Model-View-Controller Architecture
More informationObject Oriented Analysis and Design and Software Development Process Phases
Object Oriented Analysis and Design and Software Development Process Phases 28 pages Why object oriented? Because of growing complexity! How do we deal with it? 1. Divide and conquer 2. Iterate and increment
More informationTypes of UML Diagram. UML Diagrams 140703-OOAD. Computer Engineering Sem -IV
140703-OOAD Computer Engineering Sem -IV Introduction to UML - UML Unified Modeling Language diagram is designed to let developers and customers view a software system from a different perspective and
More informationCourse Registration Case Study
Course Registration Case Study Table of Contents Case Study...1 Case Study Background... 2 Course Registration System Problem Statement... 2 The Role of Tools... 2 Project Summary... 2 The Inception Phase...
More informationUse Cases and Scenarios
Use Cases and Scenarios We Will Cover What is a use-case Use-case versus user interaction Use-Case diagrams The constructs in the use-case diagrams Capturing the use-case High-level use-case Extended use-case
More informationExercise 8: SRS - Student Registration System
You are required to develop an automated Student Registration System (SRS). This system will enable students to register online for courses each semester. As part of the exercise you will have to perform
More informationIV. Software Lifecycles
IV. Software Lifecycles Software processes and lifecycles Relative costs of lifecycle phases Examples of lifecycles and processes Process maturity scale Information system development lifecycle Lifecycle
More informationTowards an Integration of Business Process Modeling and Object-Oriented Software Development
Towards an Integration of Business Process Modeling and Object-Oriented Software Development Peter Loos, Peter Fettke Chemnitz Univeristy of Technology, Chemnitz, Germany {loos peter.fettke}@isym.tu-chemnitz.de
More informationMODERN OBJECT-ORIENTED SOFTWARE DEVELOPMENT
MODERN OBJECT-ORIENTED SOFTWARE DEVELOPMENT A.N. Dunlop University of Southampton, SO17 1BJ, England Abstract Object-oriented (OO) programming has been around for a few years and there are many users of
More informationHow to make a good Software Requirement Specification(SRS)
Information Management Software Information Management Software How to make a good Software Requirement Specification(SRS) Click to add text TGMC 2011 Phases Registration SRS Submission Project Submission
More informationModeling a Problem Scenario with UML
1 Table of Contents 1 Table of Contents... 1 2 Problem Statement... 1 3 Overview... 1 3.1 Background... 1 3.2 Overall Description... 1 4 Constraints... 2 5 Functional Specifications... 2 5.1 Student...
More informationModellistica Medica. Maria Grazia Pia, INFN Genova. Scuola di Specializzazione in Fisica Sanitaria Genova Anno Accademico 2002-2003
Modellistica Medica Maria Grazia Pia INFN Genova Scuola di Specializzazione in Fisica Sanitaria Genova Anno Accademico 2002-2003 Lezione 18-19 The Unified Process Static dimension Glossary UP (Unified
More informationObject-Oriented Design Guidelines
Adaptive Software Engineering G22.3033-007 Session 8 Sub-Topic 3 Presentation Object-Oriented Design Guidelines Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute
More informationUsing Use Cases for requirements capture. Pete McBreen. 1998 McBreen.Consulting
Using Use Cases for requirements capture Pete McBreen 1998 McBreen.Consulting petemcbreen@acm.org All rights reserved. You have permission to copy and distribute the document as long as you make no changes
More informationAlgorithm & Flowchart & Pseudo code. Staff Incharge: S.Sasirekha
Algorithm & Flowchart & Pseudo code Staff Incharge: S.Sasirekha Computer Programming and Languages Computers work on a set of instructions called computer program, which clearly specify the ways to carry
More informationUse-Case Analysis. ! What is it? ! From where did it come? ! Now part of UML
Use-Case Analysis Use-Case Analysis! What is it?! An informal, user-friendly, technique useful for functional requirements analysis and specification! From where did it come?! Ivar Jacobson, a Swedish
More informationMenouer Boubekeur, Gregory Provan
Software Requirements Menouer Boubekeur, Gregory Provan Lectures Introduction to UML Introduction to Requirements Analysis Advanced techniques for Requirement Analysis M. Boubekeur, CSL, University College
More informationTitle: Topic 3 Software process models (Topic03 Slide 1).
Title: Topic 3 Software process models (Topic03 Slide 1). Topic 3: Lecture Notes (instructions for the lecturer) Author of the topic: Klaus Bothe (Berlin) English version: Katerina Zdravkova, Vangel Ajanovski
More information11 November 2015. www.isbe.tue.nl. www.isbe.tue.nl
UML Class Diagrams 11 November 2015 UML Class Diagrams The class diagram provides a static structure of all the classes that exist within the system. Classes are arranged in hierarchies sharing common
More informationContents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53
Preface xvi Part I Introduction and System Engineering 1 Chapter 1 Introduction 2 1.1 What Is Software Engineering? 2 1.2 Why Software Engineering? 3 1.3 Software Life-Cycle Activities 4 1.3.1 Software
More informationUML Tutorial: Sequence Diagrams.
UML Tutorial: Sequence Diagrams. Robert C. Martin Engineering Notebook Column April, 98 In my last column, I described UML Collaboration diagrams. Collaboration diagrams allow the designer to specify the
More informationDISCLAIMER OVERVIEW WHY DO WE MODEL WHAT IS QUALITY? Jeff Jacobs, jmjacobs@jeffreyjacobs.com
DEVELOPING HIGH CLASS UML CLASS MODELS Jeff Jacobs, jmjacobs@jeffreyjacobs.com DISCLAIMER The views presented here are those of the presenter and do not represent those of any other person, organization,
More informationUnderstanding Data Flow Diagrams Donald S. Le Vie, Jr.
Understanding Flow Diagrams Donald S. Le Vie, Jr. flow diagrams (DFDs) reveal relationships among and between the various components in a program or system. DFDs are an important technique for modeling
More informationMapping from Business Processes to Requirements Specification
Extended abstract 1/5 Mapping from Business Processes to Requirements Specification Svatopluk Štolfa, Ivo Vondrák Department of Computer Science, VŠB - Technical University of Ostrava, 17.listopadu 15,
More informationLecturer: Sebastian Coope Ashton Building, Room G.18 E-mail: coopes@liverpool.ac.uk. COMP 201 web-page: http://www.csc.liv.ac.
Lecturer: Sebastian Coope Ashton Building, Room G.18 E-mail: coopes@liverpool.ac.uk COMP 201 web-page: http://www.csc.liv.ac.uk/~coopes/comp201 Lecture 18 Introductory Case Study Introduction to UML During
More informationATM Case Study OBJECTIVES. 2005 Pearson Education, Inc. All rights reserved. 2005 Pearson Education, Inc. All rights reserved.
1 ATM Case Study 2 OBJECTIVES.. 3 2 Requirements 2.9 (Optional) Software Engineering Case Study: Examining the Requirements Document 4 Object-oriented design (OOD) process using UML Chapters 3 to 8, 10
More informationThe Unified Software Development Process
The Unified Software Development Process Technieche Universal Darmstadt FACHBEREICH IN-FORMAHK BLIOTHEK Ivar Jacobson Grady Booch James Rumbaugh Rational Software Corporation tnventar-nsr.: Sachgebiete:
More informationAssuming the Role of Systems Analyst & Analysis Alternatives
Assuming the Role of Systems Analyst & Analysis Alternatives Nature of Analysis Systems analysis and design is a systematic approach to identifying problems, opportunities, and objectives; analyzing the
More informationSecurity Contact User Guide
Introduction Child Support Online is the Internet Web site where employers and the Office of the Attorney General (OAG) of Texas, Child Support Division (CSD), come together to help families in need of
More informationProcess Modeling Notations and Workflow Patterns
Process Modeling Notations and Workflow Patterns Stephen A. White, IBM Corp., United States ABSTRACT The research work of Wil van der Aalst, Arthur ter Hofstede, Bartek Kiepuszewski, and Alistair Barros
More informationTable of Contents Author s Preface... 3 Table of Contents... 5 Introduction... 6 Step 1: Define Activities... 7 Identify deliverables and decompose
1 2 Author s Preface The Medialogist s Guide to Project Time Management is developed in compliance with the 9 th semester Medialogy report The Medialogist s Guide to Project Time Management Introducing
More informationDetecting Defects in Object-Oriented Designs: Using Reading Techniques to Increase Software Quality
Detecting Defects in Object-Oriented Designs: Using Reading Techniques to Increase Software Quality Current Research Team: Prof. Victor R. Basili Forrest Shull, Ph.D. Guilherme H. Travassos, D.Sc. (1)
More informationState of Practice in Modeling and Model-Driven Development
State of Practice in Modeling and Model-Driven Development Dr. Darius Šilingas Head of Solutions Department @ No Magic Europe darius.silingas@nomagic.com About Lecturer Dr. Darius Šilingas ü Head of Solutions
More informationTool Support for Software Variability Management and Product Derivation in Software Product Lines
Tool Support for Software Variability Management and Product Derivation in Software s Hassan Gomaa 1, Michael E. Shin 2 1 Dept. of Information and Software Engineering, George Mason University, Fairfax,
More informationGet Started. Log in to PowerSchool Parent Portal. PowerSchool Parent Portal Start Page
Get Started To get started, you must log in to PowerSchool Parent Portal Log in to PowerSchool Parent Portal Before you can log in to PowerSchool Parent Portal, you will need your school s PowerSchool
More informationISSUES OF STRUCTURED VS. OBJECT-ORIENTED METHODOLOGY OF SYSTEMS ANALYSIS AND DESIGN
ISSUES OF STRUCTURED VS. OBJECT-ORIENTED METHODOLOGY OF SYSTEMS ANALYSIS AND DESIGN Mohammad A. Rob, University of Houston-Clear Lake, rob@cl.uh.edu ABSTRACT In recent years, there has been a surge of
More informationSysML Modelling Language explained
Date: 7 th October 2010 Author: Guillaume FINANCE, Objet Direct Analyst & Consultant UML, the standard modelling language used in the field of software engineering, has been tailored to define a modelling
More informationSemantic Object Language Whitepaper Jason Wells Semantic Research Inc.
Semantic Object Language Whitepaper Jason Wells Semantic Research Inc. Abstract While UML is the accepted visual language for object-oriented system modeling, it lacks a common semantic foundation with
More informationThis document is provided "as-is". Information and views expressed in this document, including URLs and other Internet Web site references, may
This document is provided "as-is". Information and views expressed in this document, including URLs and other Internet Web site references, may change without notice. Some examples depicted herein are
More informationInstructional Design Framework CSE: Unit 1 Lesson 1
Instructional Design Framework Stage 1 Stage 2 Stage 3 If the desired end result is for learners to then you need evidence of the learners ability to then the learning events need to. Stage 1 Desired Results
More informationAnnouncements. SE 1: Software Requirements Specification and Analysis. Review: Use Case Descriptions
Announcements SE 1: Software Requirements Specification and Analysis Lecture 4: Basic Notations Nancy Day, Davor Svetinović http://www.student.cs.uwaterloo.ca/ cs445/winter2006 uw.cs.cs445 Send your group
More informationAppendix... B. The Object Constraint
UML 2.0 in a Nutshell Appendix B. The Object Constraint Pub Date: June 2005 Language The Object Constraint Language 2.0 (OCL) is an addition to the UML 2.0 specification that provides you with a way to
More informationA UML Documentation for an Elevator System. Distributed Embedded Systems, Fall 2000 PhD Project Report
A UML Documentation for an Elevator System Distributed Embedded Systems, Fall 2000 PhD Project Report December 2000 A UML documentation for an elevator system. Introduction This paper is a PhD project
More informationModeling the User Interface of Web Applications with UML
Modeling the User Interface of Web Applications with UML Rolf Hennicker,Nora Koch,2 Institute of Computer Science Ludwig-Maximilians-University Munich Oettingenstr. 67 80538 München, Germany {kochn,hennicke}@informatik.uni-muenchen.de
More informationIn this Lecture you will Learn: Development Process. Unified Software Development Process. Best Practice
In this Lecture you will Learn: Development Chapter 5C About the Unified Software Development How phases relate to workflows in an iterative life cycle An approach to system development Major activities
More informationA HW/SW Codesign Methodology based on UML
A HW/SW Codesign Methodology based on UML How to apply a model based UML design for an embedded system By Senior Consultant Kim Bjerge (kim.bjerge@teknologisk.dk) Copyright 2008 Danish Technological Institute
More informationUML basics: An introduction to the Unified Modeling Language
Copyright Rational Software 2003 http://www.therationaledge.com/content/jun_03/f_umlintro_db.jsp UML basics: An introduction to the Unified Modeling Language by Donald Bell IBM Global Services Way back
More informationSoftware Project Management and UML
Software Project Management and UML Ali Bigdelou Computer Aided Medical Procedures (CAMP), Technische Universität München, Germany Outline Intro to Software Project Management Project Requirements Specification
More information