Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "CSCI 639 Topics in Software Engineering Assignment #3 Fall 2008."— Presentation transcript:

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

2 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)

3 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.

4 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.

5 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:

6 … … … 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.

7 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

8 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


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

Similar presentations


Ads by Google