_lect9 -component-based sweng - Component-based software engineering Component-based development Component-based software engineering(CBSE is an

_lect9 -component-based sweng - Component-based software...

This preview shows page 1 - 11 out of 47 pages.

Component-based software engineering
Image of page 1
Component-based development Component-based software engineering (CBSE) is an approach to software development that relies on software reuse. It is concerned with assembling of pre-existing software components into larger pieces of software Components are more abstract than object classes and can be considered to be stand-alone service providers. 2
Image of page 2
Component Definition Components provide a service without regard to where the component is executing or its programming language The component is an independent, executable entity. It does not have to be compiled before it is used with other components. The services offered by a component are made available through an interface and all component interactions take place through that interface. 3
Image of page 3
Why CBSE? CBSE increases quality, especially availability and maintainability CBSE increases productivity CBSE shortens development time Independent extensions Component Market Component models lessen unanticipated interactions between components Reduced time to market Reduced Costs 4
Image of page 4
CBSE essentials Component standards to facilitate component integration. Independent components specified by their interfaces. Components do not interfere with each other; Component implementations are hidden; Component platforms are shared and reduce development costs. Middleware that provides support for component inter-operability. 5
Image of page 5
Component characteristics 6
Image of page 6
CBSE problems Component trustworthiness - how can a component with no available source code be trusted? Component certification - who will certify the quality of components? Emergent property prediction - how can the emergent properties of component compositions be predicted? Requirements trade-offs - how do we do trade-off analysis between the features of one component and another? 7
Image of page 7
Disadvantages of CBSE Time to develop software components takes a big effort. Components can be pricey. Requirements in component technologies lacking Conflict between usability and reusability of components. The more general the interface, the greater the reusability but it is then more complex and hence less usable. Maintenance cost for components increased . 8
Image of page 8
Life-Cycle of CBSE 1. Requirements Analysis 2. Software Architecture Selection 3. Component Identification and Customization 4. System Integration 5. System Testing 6. Software Maintenance 9
Image of page 9
Life-Cycle of CBSE 1. Requirements Analysis Determine what functionality is required by client. Look at requirements with possible components in mind. 2. Architecture Selection Choosing a component model to be used in your solution. Determines what components will be available to you.
Image of page 10
Image of page 11

You've reached the end of your free preview.

Want to read all 47 pages?

  • Left Quote Icon

    Student Picture

  • Left Quote Icon

    Student Picture

  • Left Quote Icon

    Student Picture

Stuck? We have tutors online 24/7 who can help you get unstuck.
A+ icon
Ask Expert Tutors You can ask You can ask You can ask (will expire )
Answers in as fast as 15 minutes