Transcript
Group Members
Names Roll-No
Wasim Raza BSCS-13-F-293
Hafiza Sanila Sajid BSCS-13-F-274
Kulsoom Akhlaq BSCS-13-F-252
Syeda Rabia Fatima BSCS-13-F-255
Hafsa Rehman BSCS-13-F-248
What is Component-Based Software Engineering (CBSE)? Component
◦ What is a component?◦ Aspects of well-designed components
Integration of components Advantages of CBSE Disadvantages of CBSE
Key Points
To explain that CBSE is used to develop standard components
To explain the laws of software development
To describe component and component integration
Objectives
Component-based software engineering is the idea of building software from established software components, as opposed to building the software from the ground up.
Components interact through well-defined interfaces.
What is CBSE?
Software Reuse In most engineering disciplines, systems are
designed by composition (building system out of components that have been used in other systems)
Software engineering has focused on custom development of components
To achieve better software quality, more quickly, at lower costs, software engineers are beginning to adopt systematic reuse as a design process
Benefits of Reuse
Increased Reliability◦ components already exercised in working systems
Reduced Process Risk◦ less uncertainty in development costs
Effective Use of Specialists◦ reuse components instead of people
Standards Compliance◦ embed standards in reusable components
Accelerated Development◦ avoid custom development and speed up delivery
Continuing change
Increasing complexity
Self regulation
Conservation of organizational stability
Laws governing software development
Conservation of familiarity
Continuing growth
Declining quality
Feed back systems
Laws governing software development contd..
CBSE based software engineering is an approach to software development that relies on software reuse
• Reusability
• Sustainability
• Extensibility
Implementation
Reusability Reusing components in different systems
Reusing components demands certain constraints like the necessity for ..
Good documentationWell organized reuse processSimilar architecture
C1
Application1 Application2
C1 C2 C3 C1 C4 C5
Alternative implementation of a component may be used
The component used should meet the system requirements
Sustainability
Application 1 Application2c1 c2 c3 C1’ c2 c3
Extending components that are part of a system
Add additional Components
Extensibility
c1 c2 c3
c1C2+ c3
c1 c2 c3
c2 c4 c3c1
Component integration is relatively easy, the main focus is on maintenance.
Maintenance
Component
Builder Integrator Customer
Commercial Off-the-Shelf Software COTS systems are usually complete applications
library the off an applications programming interface (API)
Building large systems by integrating COTS components is a viable development strategy for some types of systems (e.g. E-commerce or video games)
Divides large projects into smaller subprojects CBSE is language independent. Reduced time to market Increased productivity/quality Reusability of components Easy to replace components
Advantages of CBSE
Making Components Reusable◦ Increased Development time◦ Harder to identify requirements◦ Decreases usability
Choosing Middleware◦ Incompatible technologies
Testing is Harder◦ Unknown uses of components
High initial cost ◦ Training of developers
Disadvantages of CBSE
Component based approach has been successful in many application domains
Web and internet based applications
Office applications like the GUI tools
Telecommunications and consumer electronics
The success…
Software evolution in the age of component-based software engineering M.M. Lehman and J. F. Rami
Towards Component-Based Software Engineering Gilda Pour San Jose State University U.S.A.
Maintaining Component based software systems .Jeffrey Voes Reliable Software Technologies.
References
top related