CSCI 639 Topics in Software Engineering Assignment #3 Fall 2008.

Slides:



Advertisements
Similar presentations
Chapter 11 Component-Level Design
Advertisements

Searching for Data Relationship between searching and sorting Simple linear searching Linear searching of sorted data Searching for string or numeric data.
Deliverable #8: Detailed Design - Overview due: Wednesday, 7 March All Deliverable materials are to be posted into Team Concert. Your to.
1 Layers Data from IBM-Rational and Craig Larman’s text integrated into these slides. These are great references… Slides from these sources have been modified.
© Lethbridge/Laganière 2001 Chapter 9: Architecting and designing software1 Layers Data from IBM-Rational and Craig Larman…
© 2010 University of California, Irvine – André van der Hoek1June 10, 2015 – 06:18:06 Informatics 121 Software Design I Lecture 10 André van der Hoek &
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.
Detailed Design Kenneth M. Anderson Lecture 21
THE OBJECT-ORIENTED DESIGN WORKFLOW Interfaces & Subsystems.
CSCI 639 Topics in Software Engineering Assignment #5 Fall 2008.
Introduction to UML Visual modeling Models and its importance
Oct. 9, 2003CS WPI1 CS 509 Design of Software Systems Lecture #6 Thursday, Oct. 9, 2003.
1 CS 691z / 791z Topics on Software Engineering Chapter 17: Interfaces and Subsystems [Arlow & Neustadt, 2002] March 6, 2007.
Feb. 27, 2001CSci Clark University1 CSci 250 Software Design & Development Lecture #13 Tuesday, Feb. 27, 2001.
Objectives Explain the purpose and objectives of object- oriented design Develop design class diagrams Develop interaction diagrams based on the principles.
Feb. 20, 2001CSci Clark University1 CSci 250 Software Design & Development Lecture #11 Tuesday, Feb. 20, 2001.
CSCI 639 Topics in Software Engineering Assignment #4 Fall 2006.
Object-Oriented Analysis and Design
CS 8532: Adv. Software Eng. – Spring 2007 Dr. Hisham Haddad Tuesday Class will start momentarily. Please Stand By … CS 8532: Advanced Software.
The Design Discipline.
Systems Analysis and Design in a Changing World, Fifth Edition
Implementation Yaodong Bi. Introduction to Implementation Purposes of Implementation – Plan the system integrations required in each iteration – Distribute.
An Introduction to Software Architecture
Project Overview for CEN 4010 The team projects will consist of a series of iterations which are composed of a number of ‘activities’ which we will call.
Project Deliverables Version 1: 08/30/2005 Note: This document contains the deliverables for a two semester course. These items WILL change as the courses.
RUP Design RUP Artifacts and Deliverables
Prepared by: Sanaz Helmi Hoda Akbari Zahra Ahmadi Sharif University of Tech. Summer 2006 An Introduction to.
Project Deliverables CEN Engineering of Software 2.
Systems Analysis and Design in a Changing World, 6th Edition
12 Systems Analysis and Design in a Changing World, Fifth Edition.
SWE © Solomon Seifu ELABORATION. SWE © Solomon Seifu Lesson 11 Subsystem Design.
High-Level Design With Sequence Diagrams COMP314 (based on original slides by Mark Hall)
Presented by: CHAN LAI SAN ( ) REBAH DAW SARREB ( ) FIDA AL-OBAISI ( ) 08 April 2008 (Tuesday 6pm – 7:30pm)
1 ITEC 3010 “Systems Analysis and Design, I” LECTURE 10: Use Case Realizations [Prof. Peter Khaiter]
Chapter 17 GRASP: Designing Objects with Responsibilities. 1CS6359 Fall 2011 John Cole.
Copyrighted material John Tullis 10/17/2015 page 1 04/15/00 XML Part 3 John Tullis DePaul Instructor
Project Deliverables CIS 4328 – Senior Project 2 And CEN Engineering of Software 2.
Deliverable #9 – Detail Design Subsystem Design and Realization ALL of your design class model elements must have the package or subsystem they are associated.
Systems Analysis and Design in a Changing World, 3rd Edition
Design Patterns CSCI 5801: Software Engineering. Design Patterns.
Object Oriented Design Jerry KotubaSYST Object Oriented Methodologies1.
Project Deliverables CIS 4328 – Senior Project 2 And CEN Engineering of Software 2.
Part VII: Design Continuous
Introduction to Design Patterns Part 1. © Lethbridge/Laganière 2001 Chapter 6: Using design patterns2 Patterns - Architectural Architectural Patterns:
Project Deliverables CIS 4328 – Senior Project 2 And CEN Engineering of Software 2.
Project Deliverables CEN Engineering of Software 2.
Project Deliverables CIS 4328 – Senior Project 2 And CEN Engineering of Software 2.
Project Deliverables Version 5: 04/12/2005 Note: This document contains the deliverables from the first semester. Do review these, as there are changes.
Homework #8 - Deliverable 5 due: 2 December 1. Exec Summary 2. Revisit Use Cases 3. The Analysis Model Class Diagrams Interaction Diagrams 4. Non-Functional.
Project Deliverables CIS 4328 – Senior Project 2 And CEN Engineering of Software 2.
Project Deliverables Deliverable 1 Posted Version Numbers will reflect added Deliverable numbers.
Documenting an Architecture 10 pages, half pictures.
Project Deliverables Version 8: 11/23/04 Final Final Version for First Semester.
Project Deliverables Version 9: 04/03/06 Note: This document contains the deliverables for a two semester course. It is a living document and changes every.
11 Systems Analysis and Design in a Changing World, Fifth Edition.
Project Deliverables Version 1: 08/29/2005 Note: This document contains the deliverables for a two semester course. These items WILL change as the courses.
Project Deliverables Version 1: 7/13/2006.
Layers Data from IBM-Rational and Craig Larman’s text integrated into these slides. These are great references… Slides from these sources have been modified.
The Object Oriented Approach to Design
MATLAB: Structures and File I/O
Component-Level Design
Introduction to Design Patterns Part 1
Documenting an Architecture
Layers Data from IBM-Rational and Craig Larman’s text integrated into these slides. These are great references… Slides from these sources have been modified.
An Introduction to Software Architecture
CS 8532: Advanced Software Engineering
CIS 4328 – Senior Project 2 And CEN Engineering of Software 2
CIS 4328 – Senior Project 2 And CEN Engineering of Software 2
CIS 4328 – Senior Project 2 And CEN Engineering of Software 2
Remarks on Software Design
Presentation transcript:

CSCI 639 Topics in Software Engineering Assignment #3 Fall 2008

Assignment #3 – Layered Architecture Layers: –You are to design a layered architectural prototype to accommodate your application requirements. –The named layers are to consist of major subsystems and packages, their contents (other subsystems, packages, etc.). All component dependencies (coupling) are to be indicated via appropriate UML connectors. –The main purpose and suggested contents of each of your layers must be spelled out in a text- accompanying document. (see lecture slides for examples)

Assignment #3 – Layered Architecture Subsystems / Packages. –For each subsystem, you should provide a single sentence citing the purpose of the subsystem (that is, how it ‘coheres’). –You should provide a rationale explaining exactly why specific subsystems / packages were placed in their respective layers; that is, a record of your design decisions. (Cohesion) –The detailed contents of the subsystems / packages (subsystems, packages, classes and their associations / dependencies) of each design element should be supplied at this time (cohesion). This means that classes, for example, constituting a subsystem or package, must have their properties named and methods (responsibilities) cited – as much as possible. –You should NOT INCLUDE the detailed description of properties (that is, float, char, integer, String, etc.) nor the number and types of parameters for the methods nor the algorithms, etc. used by the methods. Only named methods / return items.

Assignment #3 – Layered Architecture These models should be realized in Rose. Supplement this layered model separately as needed in Word. Assignment #7 should have the Rose model in a folder with your other Rose models. Of course, this is merely a significant extension of what you already have. So, there should be a Rose folder. Also, all supporting new documents for Assignment #3 that are associated with this deliverable need to be in a folder entitled: Architectural Support Documents, and reside in the Assignment #3 parent folder.

Assignment #3 – Layered Architecture Please note that your architectural modeling (layers and their components, etc.) should be captured in Rose: Logical View, Design Model, Layer. The Layer has subfolders for packages, subsystems, etc., which you will like (I hope). There are mechanisms for, say, a subsystem, to name the subsystem and site the dependencies and interfaces related to this subsystem. Approximately what I’d like your deliverable to look like:

… … … Presentation Layer Application Layer Middleware Layer Name each of your layers (probably four…), subsubsystems, packages, classes, etc. etc. See next page. Subsystem name Package Name Subsystem name Package name Subsystem name However many Architectural Layers – the basic idea … additional layers as you decide.

You will communicate the interface of each component by taking each component (subsystem) and showing the responsibilities of the subsystem by showing the interface class. (Note the stereotype below) You will need to show the arguments that are part of the signature. Please note that a package has no specific interface and thus the classes in a package needs to explicitly show its public interface. (name interface) > Maintain Database Addrec(xxxx, xx) bool UpdateRec(xx, xx) int DeleteREc(xxxxxx) etc…… Components and Their Interfaces

You may combine this drawing with the previous drawing; otherwise, make this separate. For each component, you should also – as much as possible - include the classes and their properties/methods that are needed to ‘realize’ the interface. Recognize those signatures in the interface must be accommodated by the classes or other components (along with other dependencies ‘they’ might have) in the subsystem. You may also show any dependencies these objects will experience with realizing the interface… (name interface) > Maintain Database Addrec(xxxx, xx) bool UpdateRec(xx, xx) int DeleteREc(xxxxxx) etc…… … …… Design Elements in Each Component 1..2 * Add properties, methods, and anything else that will assist in realizing the interface. Showing a dependency between this object (in sub) and an object in another design element (package, here) We are saying that the interface is realized by this combination of objects and dependencies. XXXX Package