Design in IS Development. IS Design in general The satisfaction of new information requirements. Considering the interaction between humans and the new.

Slides:



Advertisements
Similar presentations
© 2005 by Prentice Hall Appendix 3 Object-Oriented Analysis and Design Modern Systems Analysis and Design Fourth Edition Jeffrey A. Hoffer Joey F. George.
Advertisements

Object-Oriented Analysis and Design CHAPTERS 15: UML INTERACTION DIAGRAMS 1.
Object-Oriented Application Development Using VB.NET 1 Chapter 5 Object-Oriented Analysis and Design.
© 2006 ITT Educational Services Inc. SE350 System Analysis for Software Engineers: Unit 9 Slide 1 Appendix 3 Object-Oriented Analysis and Design.
Software Engineering COMP 201
Summary Class responsibility cards can be used to help allocate responsibilities between different classes. The use of stereotype classes, such as entity,
Lecture 5a: Sequence Interaction Diagrams CSE 111 Copyright W. Howden1.
03/12/2001 © Bennett, McRobb and Farmer Class Design Based on Chapter 14 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and Design.
Essentials of interaction diagrams Lecture Outline Collaborations Interaction on collaboration diagrams Sequence diagrams Messages from an object.
03/12/2001 © Bennett, McRobb and Farmer Object Interaction Based on Chapter 9 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and.
IMS1805 Systems Analysis Topic 3: Doing Analysis (continued from previous weeks)
Object Collaborations. Objectives: Object Interaction (cont.) You will be able to:  Use sequence diagrams to detail object interactions.
Requirements Analysis
Sequence Diagram. What is Sequence Diagram?  Sequence Diagram is a dynamic model of a use case, showing the interaction among classes during a specified.
WXGC6102: Object-Oriented Techniques Object Interaction – Sequence Diagrams References: Chapter 9 of Bennett, McRobb and Farmer: Object Oriented Systems.
Lab 6 CPIT 250 System Analysis and Design.
SE-565 Software System Requirements More UML Diagrams.
Object-oriented design Part 4: More UML. Interfaces An interface is a language construct specific to Java Java does not support multiple inheritance Interfaces.
Karolina Muszyńska Based on: S. Wrycza, B. Marcinkowski, K. Wyrzykowski „Język UML 2.0 w modelowaniu SI”
An Object-Oriented Approach to Programming Logic and Design
University of Toronto at Scarborough © Bennett, McRobb and Farmer 2005 CSCC40 classes 1 Use CasesUse Case Model Campaign Management PackageModelSub-system.
03/12/2001 © Bennett, McRobb and Farmer Object Interaction Based on Chapter 9 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and.
SOFTWARE DESIGN Design Concepts Design is a meaningful engineering representation of something that is to be built It can be traced to a customer’s requirements.
1 Sequence Diagrams (Based on Stevens and Pooley (2006, Chapters 9, 10) and Fowler (2004, Chapter 4)) David Meredith Aalborg University.
Y2 eProjects Session 4 – Advanced Topics. Objectives  Dynamic Models  Design Patterns (Optional)  Software testing (for S4) ACCP i7.1\Sem3_4\eProject\T4.
10/27/20151 WXGC6102: Object-Oriented Techniques Requirements Analysis References: Chapter 7 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis.
© Bennett, McRobb and Farmer Requirements Analysis Based on Chapter 7 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and Design.
Unit 1 INTRODUCTION TO MODELING AND CLASS MODEL Ref : L7-UML.PDF.
Discovering object interaction. Use case realisation The USE CASE diagram presents an outside view of the system. The functionality of the use case is.
 C-style pointer-based arrays  Have great potential for errors and several shortcomings  C++ does not check whether subscripts fall outside the range.
Information Systems Engineering Interaction Diagrams: Sequence Diagram Collbortion Diagram.
Course Instructor: Kashif Ihsan 1. Chapter # 3 2.
© 2010 Bennett, McRobb and Farmer1 Object Interaction – Interaction Overview Diagrams Timing Diagrams Based on Chapter 09 Bennett, McRobb and Farmer Object.
University of Toronto at Scarborough © Bennett, McRobb and Farmer 2005 CSCC40 communication and sequence diagrams : listCampaigns *[For.
WXGC6102: Object-Oriented Techniques Object Interaction – Interaction Overview Diagrams Timing Diagrams References: Chapter 9 of Bennett, McRobb and Farmer:
1 CSE323 การวิเคราะห์และออกแบบระบบ (Systems Analysis and Design) Lecture 07: Object Interaction and Specifying Operations.
Design Jon Walker. More UML ● What is UML again?
Sequence Diagrams CSIS3600. Sequence Diagrams A sequence diagram shows an interaction arranged in time sequence. In particular, it shows the objects participating.
Object Oriented Analysis and Design Sequence Diagrams.
© 2010 Bennett, McRobb and Farmer1 Requirements Analysis 2: Realizing Use Cases Based on Chapter 7 of Bennett, McRobb and Farmer: Object Oriented Systems.
Karolina Muszyńska Based on: S. Wrycza, B. Marcinkowski, K. Wyrzykowski „Język UML 2.0 w modelowaniu SI”
(14-2) UML Instructor - Andrew O’Fallon CptS 122 (December 2, 2015) Washington State University.
© Bennett, McRobb and Farmer Object Interaction – Sequence Diagrams Based on Chapter 9 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis.
Chapter 3: Introducing the UML
 The Sequence Diagram models the collaboration of objects based on a time sequence.  It shows how the objects interact with others in a particular scenario.
Appendix Object-Oriented Analysis and Design: Use Cases and Sequence Diagrams Modern Systems Analysis and Design Fifth Edition Jeffrey A. Hoffer Joey F.
Ondřej Přibyl Faculty of Transportation Sciences, CTU DESIGN OF ITS SYSTEMS Project support 1 3 PROJECT SUPPORT Use cases.
Sequence Diagram Lecture # 1. Sequence Diagram Definition A Sequence diagram is an interaction diagram that shows how the objects and classes involved.
Appendix 3 Object-Oriented Analysis and Design
Object Interaction – Interaction Overview Diagrams Timing Diagrams
UML Diagrams By Daniel Damaris Novarianto S..
Unified Modeling Language Tutorial
WXGC6102: Object-Oriented Techniques
Sequence Diagrams.
Object-Oriented Systems Analysis and Design Using UML
Prepared By Sidra Noureen
Sequence Diagram.
UML Diagrams Jung Woo.
Sequence Diagrams.
Business System Development
UML dynamic Modeling (Behavior Diagram)
Dynamic Modeling: Defining Classes
Object Oriented Analysis and Design
IMAT5205 Systems Analysis and Design
Week 12: Activity & Sequence Diagrams
Interaction diagrams.
Object Interaction – Sequence Diagrams
Systems Analysis and Design I
CIS 375 Bruce R. Maxim UM-Dearborn
Appendix 3 Object-Oriented Analysis and Design
Presentation transcript:

Design in IS Development

IS Design in general The satisfaction of new information requirements. Considering the interaction between humans and the new IS - “the quality without a name” (Gabriel) Creative consideration of the fit between an IS and its human environment

Design in O-O systems development Design of classes - attributes and operations Creation of implementation classes (e.g. for user interface) Grouping of classes into packages - aids further abstraction.

Design of Objects Establish important attributes and operations for each class. Establish data type for each attribute (range depends on implementation tool used) Establish operations that use the attributes (responsibilities of the class)

Good object design Two essential concepts: coupling and cohesion Coupling = extent to which one module needs to be informed about the contents of another or receive messages from it. Cohesion = extent to which the components of a module are logically related

Minimise Coupling Message passing between classes is essential but should be minimised: can complicate a system if over-used. Classes should be as self-contained as possible. But note: inheritance is effectively a form of strong coupling.

Maximise cohesion “cohesion measures the degree of connectivity among elements of a single module” (Booch). Attributes clearly describe the same type of object. Operations use the attributes to perform actions relevant to that class.

Lecturer lecturerName lecturerAddress roomNumber roomLength roomWidth calculateRoomSpace() Figure 13.7 Good operation cohesion but poor class cohesion. (Bennett et al)

Sequence Diagrams Show an interaction between objects arranged in a time sequence Can be drawn at different levels of detail and to meet different purposes at several stages in the development life cycle Typically used to represent the detailed object interaction that occurs for one use case or for one operation

Sequence Diagrams Vertical dimension shows time Objects involved in interaction appear horizontally across the page and represented by lifelines Messages are shown by a solid horizontal arrow The execution of an operation is shown by an activation

Sequence diagram :Client :Campaign :Advert getName() listCampaigns() listAdverts() *getCampaign Details() Advert() *getAdvert Details() newAd:Advert addNewAdvert() Object lifeline Activation Object creation Campaign Manager

Boundary & Control Classes listCampaigns() *getCampaignDetails() Advert() *getAdvertDetails() addNewAdvert() :AddAdvertUI :AddAdvert :Client :Campaign :Advert showClientCampaigns() selectClient() selectCampaign() showCampaignAdverts() listAdverts() createNewAdvert() addNewAdvert() newAd:Advert startInterface() *getClient() Campaign Manager

Reflexive Messages :Client :Campaign :Advert getName() listCampaigns() checkCampaignBudget() *getCampaign Details() *getCost() getOverheads() Campaign Manager

Focus of Control Indicates times during an activation when processing is taking place within that object Parts of an activation that are not within the focus of control represent periods when, for example, an operation is waiting for a return from another object May be shown by shading those parts of the activation rectangle that correspond to active processing by an operation

Focus of Control :Client :Campaign :Advert getName() listCampaigns() checkCampaignBudget() *getCampaignDetails() * getCost() getOverheads() Campaign Manager

Return A return is a return of control to the object that originated the message that began the activation Returns are shown with a dashed arrow, but it is optional to show them at all since it can be assumed that control is returned to the originating object at the end of the activation

Message Types A synchronous message or procedural call, shown with a full arrowhead, causes the invoking operation to suspend execution until the focus of control has been returned to it An asynchronous message, drawn with an open arrowhead, does not cause the invoking operation to halt execution while it awaits a return

Object Destruction listAdverts() deleteAdvert() Object destruction :Campaign :Advert destroy() *getAdvertDetails() X