You are on page 1of 16

Component Based Software

Engineering

Presented by
Homer LeMar
March 30th , 2005
Outline
 Component Based Software
Engineering (CBSE) Overview
 Advantages/Disadvantages of CBSE
 CBSE vs. Traditional Software
Engineering (SE)
What is a Component?
 “A software component is a software
element that conforms to a component
model, and can be independently
deployed and composed without
modification according to a
composition standard.”

[1],[2]
What is a Component?-cont..
 Component Model
 Interaction Standards
 Clearly Defined Interface
 Composition Standards
 Describe how components can be composed into larger structures
 Substitutions
 Example: COM
CBSE Definition
 Developing new software from pre-
built components.
 Attempt to make an association
between SE and other engineering
disciplines.
Advantages of CBSE
 Management of Complexity
 Reduce Development Time
 Increased Productivity
 Improved Quality

[3]
Disadvantages of CBSE
 Development of Components
 Lack of Components
 Component Maintenance Costs
 Reliability and Sensitivity to changes
 Unsatisfied Requirements
 Trust

[3]
More on Trust
 Components come in several forms
 Binary
 Source Code
 Need a Certification Standard
 Tests
 Environments
CBSE vs. Traditional SE
 CBSE views the system as a set of
off-the-shelf components integrated
within an appropriate architecture.
 SE seeks to create a system from
scratch.
CBSE vs. Traditional SE-cont..
 CBSE Life Cycle is CBSE Waterfall
Find Requirements
shorter. Select
 CBSE develops Design
Architecture. Adapt Implementation
Test Test
 CBSE is less
Deploy Release
expensive Replace Maintenance

[3]
CBSE vs. Traditional SE-cont..
CBSE vs. Traditional SE-cont..
 CBSE does not have any standard
development models like UML for SE.
 CBSE is young, therefore long term
maintainability is largely unknown.

[4]
CBSE vs. Traditional SE-cont..
 SE can fulfill requirements more
easily.
 CBSE fulfillment of requirements is
based on the available components.
Consequences of CBSE
 Promote Large Scale Reuse
 Reduce Cost
Summary
 Young discipline
 CBSE involves developing a system
from pre-built software components
 It has Advantages and Disadvantages.
References
 [1] Council, William T. and Heineman, George T., “Component-Based
Software Engineering.” Addison-Wesley: Upper Saddle River, 2001.
 [2] Pour, Gilda, “Component-Based Software Development approach: New
Oppurtunities and Challenges,” Proceedings of the 26th International
Conference on Technology of Object-Oriented Languages and Systems,
1998.
 [3] Crnkovic, Ivica, “Component-based Software Engineering – New
Challenges in Software Development,” in 27th Int. Conf. Information
Technology Interfaces ItI 2003, June 1-19, 2003, Cavtat, Croatia.
 [4] Way, Ju An, “Towards Component-Based Software Engineering,”
Proceedings of the eighth annual consortium on Computing in Small
Colleges Rocky Mountain conference, pg. 177-189, Orem, Utah, 2000.

You might also like