March 22, 2004CS WPI1 CS 509 Design of Software Systems Lecture #9 Monday, March 22, 2004
March 22, 2004CS WPI2 §Term Project Administration §Questions §Quiz #5 §Review of Chapter 17 §In-class Exercise: l Review of HIS Analysis Class Format for Today
March 22, 2004CS WPI3 Term Project Administration §How is Phase 5 going? §Presentations for last class: l Prepare something from your HIS Design l Bring printouts or PowerPoint on floppy/CD l Plan 30 – 40 minutes per group §Post-mortem review l If there’s time after the presentations l Think about what went well, what didn’t go well Term Project(s) and course as a whole
March 22, 2004CS WPI4 Questions? §About what was covered last time §From the reading §About the Term Project §Anything else?
March 22, 2004CS WPI5 Quiz #5 Chapters 14, 15, 17 From Budgen
March 22, 2004CS WPI6 Chapter 17 Component-Based Design
March 22, 2004CS WPI7 The Component Concept §Main purpose is for reuse l Reduce production & maintenance costs l Component user is another manufacturer §Examples from other industries l Cars, building construction, electronics §2 requirements for reuse (need standards) l Well defined functionality l Well defined interface
March 22, 2004CS WPI8 Software Components §In addition to reuse, must also be independently deliverable l What does this mean? §Other terms: black box, plug-and-play §Need to consider both use & design of components – dependent upon: l Component model l Composition standard
March 22, 2004CS WPI9 Representation Forms §Characteristics of a software component l See Figure 17.1, page 406 l Additional specification of dependencies §What’s good and what’s bad about the UML component diagram? l What other forms might be used?
March 22, 2004CS WPI10 The Business Context §Various stakeholders have different roles l See Figure 17.2, page 407 §What is meant by a component marketplace? §Discuss key roles in CBSE development: l Component Providers l Component Integrators l Customers §Why should customers care about CBSE?
March 22, 2004CS WPI11 Designing with Components §How and when to find needed components §Horizontal vs. vertical integration l See Figure 17.3, page 409 l What differences need to be considered? §Discuss strategies: l Element first l Framework first
March 22, 2004CS WPI12 Searching for Components §No standards for ‘component catalogs’ §Describe in as many ways as possible l Attribute-value, enumerated, faceted, keyword §Keyword searches produce best results §Search results must be studied further l Supporting documentation required to acquire understanding of components §Recent work on component brokers
March 22, 2004CS WPI13 Fitting Components Together §Model & predict aggregate behavior §Identify potential for problems l See Figure 17.4, page 411 §Discuss types of problems: l Overlapping, missing or redundant functionality l Architectural mismatches: Packaging, type of control, information flow, synchronization and ‘binding’ issues §Which is the worst kind of problem? Why? l What can be done about it?
March 22, 2004CS WPI14 Models and Methods §No model for component-based design process currently exists – Why not? l Opportunistic in form: Dependent on availability of components Influenced by descriptions, experience, prototypes l Inconsistent representations l Too complex for systematic, procedural forms §Component-based design practices are not well enough understood
March 22, 2004CS WPI15 Designing Components §Guidelines based around properties: l For components in general l Those needed for a particular architectural style §Discuss component use case study l Major points on page 415 §One estimate of cost: l Developing a reusable component requires 3 – 4 times the resources required for non-component implementation
March 22, 2004CS WPI16 COTS Extreme §Black box nature, integrator has no control: l Form, properties, knowledge of inner workings §Sometimes capable of parameterization or customization l Depending on financial or political clout of client §Discuss Figure 17.5, page 416 §Key factor to consider is ‘shelf-life’ Why?
March 22, 2004CS WPI17 In-class Exercise Review HIS Analyses