March 22, 2004CS 509 - WPI1 CS 509 Design of Software Systems Lecture #9 Monday, March 22, 2004.

Slides:



Advertisements
Similar presentations
Component-Based Software Engineering Main issues: assemble systems out of (reusable) components compatibility of components.
Advertisements

Domain Engineering Silvio Romero de Lemos Meira
Main issues: • Why is reuse so difficult • How to realize reuse
CS487 Software Engineering Omar Aldawud
Chapter 2 – Software Processes
Sixth Hour Lecture 10:30 – 11:20 am, September 9 Framework for a Software Management Process – Artifacts of the Process (Part II, Chapter 6 of Royce’ book)
March 15, 2004CS WPI1 CS 509 Design of Software Systems Lecture #8 Monday, March 15, 2004.
ITEC200 Week01 Introduction to Software Design.
Feb. 13, 2001CSci Clark University1 CSci 250 Software Design & Development Lecture #9 Tuesday, Feb. 13, 2001.
Feb. 2, 2004CS WPI1 CS 509 Design of Software Systems Lecture #3 Monday, Feb. 2, 2004.
1 Software Testing and Quality Assurance Lecture 15 - Planning for Testing (Chapter 3, A Practical Guide to Testing Object- Oriented Software)
Oct. 9, 2003CS WPI1 CS 509 Design of Software Systems Lecture #6 Thursday, Oct. 9, 2003.
Sept. 11, 2003CS WPI1 CS 509 Design of Software Systems Lecture #2 Thursday, Sept. 11, 2003.
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
Oct. 2, 2003CS WPI1 CS 509 Design of Software Systems Lecture #5 Thursday, Oct. 2, 2003.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Feb. 23, 2004CS WPI1 CS 509 Design of Software Systems Lecture #5 Monday, Feb. 23, 2004.
Oct. 30, 2003CS WPI1 CS 509 Design of Software Systems Lecture #9 Thursday, Oct. 30, 2003.
CS350/550 Software Engineering Lecture 1. Class Work The main part of the class is a practical software engineering project, in teams of 3-5 people There.
© Copyright Eliyahu Brutman Programming Techniques Course.
April 13, 2004CS WPI1 CS 562 Advanced SW Engineering General Dynamics, Needham Tuesdays, 3 – 7 pm Instructor: Diane Kramer.
Page 1 Building Reliable Component-based Systems Chapter 4 - Component Models and Technology Chapter 4 Component Models and Technology.
Page 1, July 3, 2015 CBSE – graduate course Component-Based Software Engineering Building reliable component-based systems Overview
Introduction to Software Design Chapter 1. Chapter 1: Introduction to Software Design2 Chapter Objectives To become familiar with the software challenge.
Enterprise Architecture
 1. Introduction  2. Development Life-Cycle  3. Current Component Technologies  4. Component Quality Assurance  5. Advantages and Disadvantages.
Continuation From Chapter From Chapter 1
Documenting Software Architectures
Software Engineering Muhammad Fahad Khan
CS101 Introduction to Computing Lecture SW Development Methodology.
Nature of Software Design
University of Utah SoCCS Lecture 61 Architecture – An Introduction CS Lecture 6 Nathan Dykman.
Software Engineering Chapter 8 Fall Analysis Extension of use cases, use cases are converted into a more formal description of the system.Extension.
Software Design: An Introduction by David Budgen Presented by Shane Marcus EEL 6883 – Spring 2007 Presented by Shane Marcus EEL 6883 – Spring 2007.
Programming in Java Unit 3. Learning outcome:  LO2:Be able to design Java solutions  LO3:Be able to implement Java solutions Assessment criteria: 
Odyssey A Reuse Environment based on Domain Models Prepared By: Mahmud Gabareen Eliad Cohen.
What is a Business Analyst? A Business Analyst is someone who works as a liaison among stakeholders in order to elicit, analyze, communicate and validate.
Basic Concepts Software Architecture. What is Software Architecture? Definition: – A software architecture is the set of principal design decisions about.
University of Southern California Center for Systems and Software Engineering Model-Based Software Engineering Supannika Koolmanojwong Spring 2013.
CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Chapter 6 System Engineering Overview of System Engineering.
CS3773 Software Engineering Lecture 04 UML Class Diagram.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 05. Review Software design methods Design Paradigms Typical Design Trade-offs.
Rational Unified Process Fundamentals Module 5: Implementing RUP.
Sept. 18, 2003CS WPI1 CS 509 Design of Software Systems Lecture #3 Thursday, Sept. 18, 2003.
CS 772: Global Knowledge Networks V. “Juggy” Jagannathan CSEE, West Virginia University.
Chapter 2 – Software Processes Lecture 1 Chapter 2 Software Processes1.
Software Architectural Views By the end of this lecture, you will be able to: list and describe the views in the 4+1 view model of software architecture.
Chapter 4 Basic Object-Oriented Concepts. Chapter 4 Objectives Class vs. Object Attributes of a class Object relationships Class Methods (Operations)
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Feb. 9, 2004CS WPI1 CS 509 Design of Software Systems Lecture #4 Monday, Feb. 9, 2004.
Chapter 16 UML Class Diagrams 1CS6359 Fall 2012 John Cole.
March 1, 2004CS WPI1 CS 509 Design of Software Systems Lecture #6 Monday, March 1, 2004.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
Requirements Analysis
CSIS 4850: CS Senior Project – Spring 2009 CSIS 4850: Senior Project Spring 2009 Object-Oriented Design.
Oct. 16, 2003CS WPI1 CS 509 Design of Software Systems Lecture #7 Thursday, Oct. 16, 2003.
Sadegh Aliakbary Sharif University of Technology Fall 2010.
Enterprise Architectures Course Code : CPIS-352 King Abdul Aziz University, Jeddah Saudi Arabia.
CS 389 – Software Engineering
Object-Oriented Analysis and Design
The Systems Engineering Context
Lecture 9- Design Concepts and Principles
Overview of System Engineering
Chapter 2 – Software Processes
Component-Based Software Engineering
Software Engineering Lecture #14.
Lecture 9- Design Concepts and Principles
Requirements Engineering Introduction
CS 8532: Advanced Software Engineering
CS310 Software Engineering Lecturer Dr.Doaa Sami
Presentation transcript:

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