Sept. 18, 2003CS 509 - WPI1 CS 509 Design of Software Systems Lecture #3 Thursday, Sept. 18, 2003.

Slides:



Advertisements
Similar presentations
From use cases to classes (in UML). A use case for writing use cases Use case: writing a use case Actors: analyst, client(s) Client identifies and write.
Advertisements

Karolina Muszyńska Based on:
Object-Oriented Application Development Using VB.NET 1 Chapter 5 Object-Oriented Analysis and Design.
Solutions to Review Questions. 4.1 Define object, class and instance. The UML Glossary gives these definitions: Object: an instance of a class. Class:
Practical Business Modeling in the Unified Process Tom Morgan Software Architect, Fidelity National Information Services
OOAD Using the UML - Use-Case Analysis, v 4.2 Copyright  Rational Software, all rights reserved 1/18 Use Case Analysis – continued Control Classes.
March 15, 2004CS WPI1 CS 509 Design of Software Systems Lecture #8 Monday, March 15, 2004.
Object-Oriented Analysis and Design
Chapter 1 Object-Oriented System Development
Practical Object-Oriented Design with UML 2e Slide 1/1 ©The McGraw-Hill Companies, 2004 PRACTICAL OBJECT-ORIENTED DESIGN WITH UML 2e Chapter 5: Restaurant.
CAP 252 Lecture Topic: Requirement Analysis Class Exercise: Use Cases.
Feb. 13, 2001CSci Clark University1 CSci 250 Software Design & Development Lecture #9 Tuesday, Feb. 13, 2001.
Chapter 3 Database Management
Object Oriented System Development with VB .NET
Irwin/McGraw-Hill Copyright © 2004 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS6th Edition.
Feb. 2, 2004CS WPI1 CS 509 Design of Software Systems Lecture #3 Monday, Feb. 2, 2004.
Nov. 13, 2003CS WPI1 CS 509 Design of Software Systems Lecture #11 Thursday, Nov. 13, 2003.
Oct. 9, 2003CS WPI1 CS 509 Design of Software Systems Lecture #6 Thursday, Oct. 9, 2003.
Sept. 11, 2003CS WPI1 CS 509 Design of Software Systems Lecture #2 Thursday, Sept. 11, 2003.
Oct. 2, 2003CS WPI1 CS 509 Design of Software Systems Lecture #5 Thursday, Oct. 2, 2003.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
Systems Analysis & Design Sixth Edition Systems Analysis & Design Sixth Edition Toolkit Part 5.
Feb. 23, 2004CS WPI1 CS 509 Design of Software Systems Lecture #5 Monday, Feb. 23, 2004.
© Copyright Eliyahu Brutman Programming Techniques Course.
March 22, 2004CS WPI1 CS 509 Design of Software Systems Lecture #9 Monday, March 22, 2004.
Feb. 27, 2001CSci Clark University1 CSci 250 Software Design & Development Lecture #13 Tuesday, Feb. 27, 2001.
Chapter 7: The Object-Oriented Approach to Requirements
The Software Development Life Cycle: An Overview
Systems Analysis – Analyzing Requirements.  Analyzing requirement stage identifies user information needs and new systems requirements  IS dev team.
March 13, 2001CSci Clark University1 CSci 250 Software Design & Development Lecture #15 Tuesday, March 13, 2001.
Systems Analysis and Design in a Changing World, 6th Edition
MIS 385/MBA 664 Systems Implementation with DBMS/ Database Management Dave Salisbury ( )
Chapter 10 Information Systems Analysis and Design
Systems Analysis and Design in a Changing World, Fifth Edition
1 CS 501 Spring 2002 CS 501: Software Engineering Lecture 9 Techniques for Requirements Definition and Specification I.
© 2007 by Prentice Hall 1 Introduction to databases.
1 Systems Analysis and Design in a Changing World, Thursday, January 18, 2007.
BTS330: Business Requirements Analysis using OO Lecture 7: Understanding User Requirements.
CS 4310: Software Engineering Lecture 4 System Modeling The Analysis Stage.
Systems Analysis and Design in a Changing World, 3rd Edition
CS206 System Analysis and Design Note 1 By ChangYu 1 Course Information Lecturer NameCHANG YU Web sitewww.chuhai.edu.hk/changyu/
Systems Analysis & Design 7 th Edition Chapter 5.
Systems Analysis and Design 8 th Edition Chapter 6 Object Modeling.
Activity & Class Modeling Labs Discussion p3 T120B pavasario sem.
7 Systems Analysis and Design in a Changing World, Fifth Edition.
Carmen David, Senior BA Business Analysis Carmen David, Senior BA Business Analysis Foundation in Business Analysis Session 7 MODELLING REQUIREMENTS.
CIS 112 Exam Review. Exam Content 100 questions valued at 1 point each 100 questions valued at 1 point each 100 points total 100 points total 10 each.
Jan. 26, 2004CS WPI1 CS 509 Design of Software Systems Lecture #2 Monday, Jan. 26, 2004.
Concepts of Database Management Seventh Edition Chapter 1 Introduction to Database Management.
CS212: Object Oriented Analysis and Design Lecture 32: Use case and Class diagrams.
Chapter 16 UML Class Diagrams 1CS6359 Fall 2012 John Cole.
Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall Object-Oriented Systems Analysis and Design Using UML Systems Analysis and Design,
March 1, 2004CS WPI1 CS 509 Design of Software Systems Lecture #6 Monday, March 1, 2004.
1 Week 6 Software Engineering Fall Term 2015 Marymount University School of Business Administration Professor Suydam.
Object Oriented Analysis and Design Introduction to Rational Rose.
Activity & Class Modeling Labs Discussion p3 T120B pavasario sem.
Oct. 16, 2003CS WPI1 CS 509 Design of Software Systems Lecture #7 Thursday, Oct. 16, 2003.
Team Skill 3 - Defining the System (Chapters of the requirements text ) Sriram Mohan 1.
11 Systems Analysis and Design in a Changing World, Fifth Edition.
1 M206 Chapter 31: An Overview of Software Development 1.Defining the problem 2.Analyzing the requirement – constructing initial structural model 3.Analyzing.
1 January 31, Documenting Software William Cohen NCSU CSC 591W January 31, 2008.
The Movement To Objects
School of Business Administration
Modelling Concepts Based on Chapter 5 Bennett, McRobb and Farmer
Unified Modeling Language
Introduction to Unified Modeling Language (UML)
The Process of Object Modeling
The Object Oriented Approach to Design
Design and Programming
Program Documentation
Presentation transcript:

Sept. 18, 2003CS WPI1 CS 509 Design of Software Systems Lecture #3 Thursday, Sept. 18, 2003

Sept. 18, 2003CS WPI2 §Term Project administration §Return Quiz #1 – well done! §Questions §Phase 2 – Functional Specifications §Specifications Exercises §Review Chapter 5 §Analysis Exercises Class Format for Today

Sept. 18, 2003CS WPI3 Meeting Coordinator Project §Turn in Phase 1 (Requirements) document and group evaluation forms l An was sent out to the class mailing list to remind students about the evaluation forms. Did everyone receive the message? §Hand out Phase 2 document

Sept. 18, 2003CS WPI4 Return Quiz #1 Solutions are available on Course Web Site

Sept. 18, 2003CS WPI5 Questions? §From last week’s class §From the reading §Anything else?

Sept. 18, 2003CS WPI6 Phase 2 Functional Specifications

Sept. 18, 2003CS WPI7 Discussion §What is a Functional Specification? §What purpose does it serve? §What goes into a FS document?

Sept. 18, 2003CS WPI8 Introduction §One of the most common documents used in commercial software industry §Developers might not have much input into requirements §Often your only chance to negotiate features §May need to be updated if requirements change

Sept. 18, 2003CS WPI9 Purpose §Further define goals and scope of the system by detailing functionality §Determine which features impact usability §Distinguish between necessary features and “wish list” features §Get client to sign-off l Consider FS to be like a contract

Sept. 18, 2003CS WPI10 Contents §Introduction l State purpose, scope and objectives §Detailed Functionality l Explain how requirements will be covered §Glossary §Mock-up or Prototype l Show what features will look like l Pictures often worth more than words

Sept. 18, 2003CS WPI11 Specifications Exercises

Sept. 18, 2003CS WPI12 Exercise #1 – Functionality Design and build a “chair” §Definition – what is a chair? l What is its purpose? l What are its salient characteristics? §Functional decisions: l What choices are there? l How do you choose?

Sept. 18, 2003CS WPI13 Exercise #2 – Content Index §Review functional requirements l Configure which types of files to include in Index l Provide editable text box for query input l Remember previous queries for later recall l Provide mechanism to initiate execution of a query l Provide mechanism to cancel execution of a query l Switch between case-sensitive and -insensitive queries l Display query results as a list of files §Choose a few to describe in more detail

Sept. 18, 2003CS WPI14 Analysis Chapter 5

Sept. 18, 2003CS WPI15 Purpose of Analysis §Preliminary stage of Design activities: l Identifying various objects & object types l Identifying associations l Modeling Interactions between objects l Identifying Attributes l Modeling Nontrivial Behavior l Modeling Generalization Relationships

Sept. 18, 2003CS WPI16 Terminology §Entity Object §Boundary Object §Control Object §Association §Nontrivial Behavior (typo in book)

Sept. 18, 2003CS WPI17 Identifying Object Types §Entity Object: l Persistent information tracked by system l E.g. Month, Day, Year §Boundary Object: l Interactions between actors & system l E.g. Button, Display §Control Object: l Tasks performed by User, supported by System l E.g. ChangeDate

Sept. 18, 2003CS WPI18 Heuristics for Object Types §Entity objects: l Box on page 141 §Boundary objects: l Box on page 143 §Control objects: l Box on page 145

Sept. 18, 2003CS WPI19 Associations & Multiplicity §Types of associations: (Example on p. 136) l one-to-one l one-to-many l many-to-many §Symbols used to represent multiplicity: l 1 - may be assumed by default, 2 … n l * - zero or more l + - one or more l ? - zero or one

Sept. 18, 2003CS WPI20 Qualified Associations §Technique for reducing multiplicity, thereby reducing complexity filename DirectoryFile Directory File filename 1* Figure 5-9 (page 138). Example of how a qualified association rule reduces multiplicity

Sept. 18, 2003CS WPI21 Modeling Interactions §Interactions between objects can be modeled using UML Sequence Diagrams l Heuristics for drawing sequence diagrams on page 146 l Points 4 & 5: do these make sense? §New objects may be identified during the Sequence Diagramming activity

Sept. 18, 2003CS WPI22 Identifying Attributes §Properties of individual objects §Each attribute should have: l name identifying it within an object l description to remember what it’s for l type defining legal values it can take on §Heuristics for identifying attributes on page 152

Sept. 18, 2003CS WPI23 Modeling Nontrivial Behavior §Statechart diagrams represent behavior of a single object §Gives a different perspective when compared to Sequence diagrams §How do we know what behavior is “Nontrivial”? l Examples of trivial vs. nontrivial behavior?

Sept. 18, 2003CS WPI24 Generalization Relationships §Generalization relationships between objects can be modeling using UML Class diagrams §Organize concepts into hierarchies from most general to most specific §Eliminate redundancy §Not to be confused with Inheritance: l For organizational purposes only, not reuse l Inheritance comes in during Object Design

Sept. 18, 2003CS WPI25 Analysis Model §Is this a useful activity? l Identifying object types – terminology, concepts l Constructing sequence & state-chart diagrams l Associations and generalizations §At what point does analysis apply to a software development project? §Is it required for this course?

Sept. 18, 2003CS WPI26 Analysis Exercise Identifying Objects & Object Types

Sept. 18, 2003CS WPI27 Exercise #3 – File System (From textbook, exercises #1-5, page 164) §File system with GUI – e.g., File Explorer §Activity: copy file from floppy to hard disk l How is this accomplished? §Tasks: l Identify objects & object types l Identify associations, attributes, generalizations

Sept. 18, 2003CS WPI28 For Next Time UML – Chapter 2