CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Class Project OO Design Document Here is what you need to do for your class project.

Slides:



Advertisements
Similar presentations
Generalizable Element Namespace Model Element name visibility isSpecification Classifier isRoot Constraint Body Use Cases CS/SWE 421 Introduction to Software.
Advertisements

Chapter 11 Component-Level Design
Robert B. Jackson Brigham Young University John W. Satzinger
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.
Object-Oriented Analysis and Design
Introduction To System Analysis and Design
1 Software Testing and Quality Assurance Lecture 12 - The Testing Perspective (Chapter 2, A Practical Guide to Testing Object-Oriented Software)
Slide 1 Systems Analysis & Design CS183 Spring Semester 2008 Dr. Jonathan Y. Clark Course Website:
CSCI 639 Topics in Software Engineering Assignment #5 Fall 2008.
1 SYSTEM and MODULE DESIGN Elements and Definitions.
Use Case Analysis – continued
1 REQUIREMENTS ENGINEERING and SYSTEMS ANALYSIS Elements and Definitions.
Software Design Description (SDD) Diagram Samples
The Unified Modeling Language (UML) Class Diagrams.
The Project AH Computing. Functional Requirements  What the product must do!  Examples attractive welcome screen all options available as clickable.
IT 499 Bachelor Capstone Week 9.
CS 8532: Adv. Software Eng. – Spring 2007 Dr. Hisham Haddad Tuesday Class will start momentarily. Please Stand By … CS 8532: Advanced Software.
Slide 12.1 © The McGraw-Hill Companies, CS 4310: Software Engineering Lecture 7 Systems Analysis Object-Oriented Design.
CSIS 4850: Senior Project Fall 2008 Scope Statement and Project Plan.
1 Object-Oriented Testing CIS 375 Bruce R. Maxim UM-Dearborn.
CS 3610: Software Engineering – Spring 2009 Dr. Hisham Haddad – CSIS Dept. Class Project OO Design Document Here is what you need to do for your class.
High-Level Design With Sequence Diagrams COMP314 (based on original slides by Mark Hall)
CMPT 275 Software Engineering
Object-Oriented Analysis and Design An Introduction.
SOFTWARE DESIGN (SWD) Instructor: Dr. Hany H. Ammar
Requirements Specification for Lab3 COP4331 and EEL4884 OO Processes for Software Development © Dr. David A. Workman School of Computer Science University.
Scis.regis.edu ● CS-432: Modern Software Engineering Week 2 Dr. Jesús Borrego Lead Faculty, COS Regis University 1.
CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Chapter 2 The Software Process Discussion of the Software Process: Process Framework,
CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Chapter 6 System Engineering Overview of System Engineering.
Systems Analysis and Design in a Changing World, 3rd Edition
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
CS 4850: Senior Project - Spring 2009 CS 4850: Senior Project Spring 2009 Scope Statement and Project Plan.
CS 4850/01: CS Senior Project Fall 2014 Scope Statement and Project Plan.
UHD::3320::CH121 DESIGN PHASE Chapter 12. UHD::3320::CH122 Design Phase Two Aspects –Actions which operate on data –Data on which actions operate Two.
CS 4850: Senior Project Fall 2014 Object-Oriented Design.
9-1 © Prentice Hall, 2004 Chapter 9: Analysis Classes Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey.
An Introduction to the Unified Modeling Language
1 CS Tutorial 5 Frid. Oct 23, 2009 Design Document Tutorial.
CS 4850: Senior Project – Spring 2009 CS 4850: Senior Project Spring 2009 Overview of Software Requirements and OO Analysis.
CS 8532: Adv. Software Eng. – Spring 2007 Dr. Hisham Haddad Class Project – Software Development Plan Class will start momentarily. Please Stand By … CS.
CS 8532: Advanced Software Engineering Dr. Hisham Haddad Overview of Object-Oriented Design Highlights of OOD Concepts, Components, and Process.
Requirements Management with Use Cases Module 10: Requirements Across the Product Lifecycle Requirements Management with Use Cases Module 10: Requirements.
1 CSCD 326 Data Structures I Software Design. 2 The Software Life Cycle 1. Specification 2. Design 3. Risk Analysis 4. Verification 5. Coding 6. Testing.
1 Class Diagrams. 2 Overview Class diagrams are the most commonly used diagrams in UML. Class diagrams are for visualizing, specifying and documenting.
CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Chapter 3 Prescriptive Process Models Discussion of the Software Process models:
Generalizable Element Namespace Model Element name visibility isSpecification Classifier isRoot Constraint Body Use Cases CS/SWE 421 Introduction to Software.
Requirement engineering & Requirement tasks/Management. 1Prepared By:Jay A.Dave.
Capturing Requirements. Questions to Ask about Requirements 1)Are the requirements correct? 2)Consistent? 3)Unambiguous? 4)Complete? 5)Feasible? 6)Relevant?
CSIS 4850: CS Senior Project – Spring 2009 CSIS 4850: Senior Project Spring 2009 Object-Oriented Design.
Analysis Classes. What Is an Analysis Class?  A class that represents initial data and behavior requirements, and whose software and hardware-oriented.
Project Management Requirements Prof. Ralph Locurcio, PE Dr. Troy Nguyen, PE.
McGraw-Hill/Irwin© 2008 The McGraw-Hill Companies, All Rights Reserved Chapter 17 Object-Oriented Design and Modeling Using the UML.
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
Unified Modeling Language (UML)
CS 8532: Adv. Software Eng. – Spring 2007 Dr. Hisham Haddad Discussion of Course Syllabus Class will start momentarily. Please Stand By … CS 8532: Advanced.
CS 8532: Adv. Software Eng. – Spring 2009 Dr. Hisham Haddad , Monday Class will start momentarily. Please Stand By … CS 8532: Advanced Software.
OOAD Using the UML - Use-Case Analysis, v 4.2 Copyright  Rational Software, all rights reserved 1 Use Case Analysis – Part 4 Analysis Mechanisms.
CS 350 – Software Design UML – The Unified Modeling Language – Chapter 2 The Unified Modeling Language is a visual language used to create models of programs.
Design Concepts ch-8
Advanced Higher Computing Science
Analysis Classes Unit 5.
The Object Oriented Approach to Design
Object-Oriented Design
Component-Level Design
Class will start momentarily. Please Stand By …
Object oriented analysis and design
CS 8532: Advanced Software Engineering
SOFTWARE DESIGN (SWD) Instructor: Dr. Hany H. Ammar
CS 8532: Advanced Software Engineering
Presentation transcript:

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Class Project OO Design Document Here is what you need to do for your class project SDD...

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Software Design Documentation Class project design will focus on component-level design. That is, the detailed design of class attributes (variables) and methods. Since there no single template for OO SDD, we’ll modify (reuse) the SRS document to capture major sections of SDD shown on the following slide. Section 3 of the SRS (Specific Requirements) is the major section for your SDD. You’ll expand the class tables of the SRS to include more design details about class variables and methods. You’ll need to update diagrams in the SRS as per changes made during the design phase, and any diagrams missing from the SRS should be included in the SDD submission.

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Major Sections of OO SDD Other sections and subsections may be added as needed. Table of Contents 1. Introduction (About the SDD) 1.1 Purpose 1.2 Scope 1.3 Definitions, acronyms, and abbreviations 1.4 References 2. Object Descriptions (Object Design) (Use table format from SRS) 3. Sequence Diagrams (Update from SRS as needed) 4. Object Collaboration Diagrams (Update from SRS as needed) 5. Object Behavior Diagrams (Update from SRS as needed) 6. Data Design (Data structures and data table design) 7. Other Design Requirements (Any design requirements specific to your project)

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Object Design (1) Here, focus on the component-level design of your objects (attributes and methods) and their messages. 1 - Data structure design 2 - Algorithm design Make sure to adhere to “information Hiding” and “functional independence” concepts as you design your objects.

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Object Design (2) (Class Diagram) - Create a specification class diagram by expanding the conceptual class diagram you created for the SRS. The new diagram should include: - other classes and relationships needed for modeling the solution (those are classes of interest to you - the designer) - details of new classes (attributes and operations) - Include the class diagram at beginning of section 2 of the SDD (slide #3), before the class description tables.

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Object Design (3) (Data Structure Design) For each attribute (variable) in each class, you need to provide more information about it (add columns to top part of the class table from the SRS). Such information include, but note limited to, the type, initial value, valid range of values (upper and lower values), visibility (public or private), what it represent ($, age, grade, etc…), and possible other information… For aggregate data structures (arrays, records, lists, etc…), define needed data structures (if any) in conjunction with class operations. Document your data structures in section 6 (Data Design) of the SDD (slide #3).

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Object Design (4) (Algorithmic Design) For each operation of the class, provide an algorithm description as a self-contained module (add a new column to the table for this purpose). Consider dividing complex operations into separate smaller operations, such that each smaller operation performs a well-defined functions. Apply stepwise refinement concept, such that: - define operation interfaces (list of parameters if any) - fill-in operation body sections - refine body details as needed Note: The level of details of your algorithmic description should be sufficient enough so that the implementer can translated it to source code without help from you (the designer).

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Modeling Diagrams Revise UML sequence diagrams you have in the SRS to include newly added control objects during the design phase and to reflect any changes made to the use-cases. Include revised diagrams in section 3 of the SDD (slide #3). Revise UML object collaboration diagrams you have in the SRS to include newly added control objects during the design phase. Include revised diagrams in section 4 of the SDD (slide #3). Revise UML state transition (behavior) diagrams you have in the SRS to include newly added control objects during the design phase. Include revised diagrams in section 5 of the SDD (slide #3).

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Please Remember… - The SDD has to be self-contained document. Thus, it should includes all the sections outlined in the TOC on slide #3. - SDD content should be updated from that of the SRS to include information and modeling of control objects. Those are implementation related classes that you did not include in the SRS (boundary and control classes) - Most design effort is spent on the object design (algorithmic and data structures details) - Make sure to include information and/or diagrams that were missing from your SRS. - Any other design requirements specific to your application go into section 7.

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. SDD Submission Submit a complete SDD as outline in slide #3. When appropriate, include references toward the end of the document. Review your SDD in conjunction with your SRS and check for flow, consistency, and potential updates to the SRS (if any) Due in class on Wednesday 11/18/09. The cover page should be similar to that of the SRS and to include names, project title, class, semester, and submission date. Please bring professionally prepared printed copy to class and send an electronic copy to the instructor (Word or PDF format).

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Last Slide