1 / 15

RNDS Deployment, Collaborations and Sequences

RNDS Deployment, Collaborations and Sequences. CS 236700: Software Design Winter 2004-2005/T6. Reminder: Homework bonus program. Report a bug Report a programming challenge. RNDS: The story so far. Problem description SRS Use case model SDD Class design Sequence, Deployment

Télécharger la présentation

RNDS Deployment, Collaborations and Sequences

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. RNDS Deployment, Collaborations and Sequences CS 236700: Software Design Winter 2004-2005/T6

  2. Reminder: Homework bonus program • Report a bug • Report a programming challenge

  3. RNDS: The story so far • Problem description • SRS • Use case model • SDD • Class design • Sequence, Deployment • Detailed class design • Coding • Design patterns

  4. Deployment diagram (1/2) • Deployment (in design) • The configuration of the running system in a real-world environment • Show relationships between Nodes • What is a node? • A “location” where run-time entities “live” • Run-time entities: objects, components • Has a memory • Usually has processing capabilities • Nodes usually represent: • Executables (processes) • Distinct hardware (workstations, I/O devices)

  5. Deployment diagram (2/2) • Deployment diagram • Shows dependency between nodes • In most cases shows instances of nodes • Analogous to a diagram of running objects • Nodes are typically singletons/anonymous • It is possible (but not common) to show types of nodes • Analogous to class diagram • Relevant components/objects inside a node are usually shown • Notation • A network of Node symbols • Edges between nodes => communication relationship • Dashed arrows => dependency between components • Preferably thru interface

  6. Components • What are components? • A replaceable part of the system • Provides implementation • Conforms to a set of interfaces • Components vs. classes • Every class is (usually) a trivial component • Usually components include several classes/packages • Not always coherent

  7. Components considerations • The major tradeoff: • Simplicity vs. Modularity • Few components => System is simple • “Everybody” knows each other • Usually hard-coded within constructors • On the other hand: poor modularity • Many components => System is complex • Implementing inter-component relationship is difficult • Techniques for overcoming the problem: • Unique identifiers • Interfaces • Central registry • Configuration values processed in run-time • On the other hand: the system is highly modular

  8. Deployment diagram (sample)

  9. Deployment diagram (RNDS) • Devices: RF, GPS • Processes: RNDS station

  10. Package Diagram

  11. Collaborations • What is a collaboration? • An arrangement of objects within a context • Properties • The collaboration is aimed at achieving some goal • Object (possibly) fulfill a predefined role • A single object may fulfill more than one role • Roles are only meaningful within their context • A parameterized collaboration is a Pattern • Collaboration diagram • Shows Interaction between the participating objects • Relationship are indicated by arrows (messages, composition, …) • Time is indicated by “sequence number”

  12. Collaboration Diagram

  13. Sequence Diagrams • Describes how groups of objects interact • Shows messages passed (between objects) over time • Properties • Captures the behavior of a single scenario • The most popular way for representing a use-case • Actually shows the same information as a collaboration diagram • Sequence diagrams (SD) vs. Collaboration Diagrams (CD) • SD: Shows time clearly; object relationships are implicit • CD: Shows object relationships clearly; time has no visual representation

  14. Sequence Diagram: Adding a message • Adding actors, objects: • Drag-and-drop

  15. Sequence Diagram: GPS update • Do you like this design?

More Related