180 likes | 656 Views
Component Based Software Engineering. Ravi Kumar Mylavarapu. Objectives. To explain that CBSE is used to develop standard components To explain the laws of software development To describe component and component integration To discuss the problems with off shelf components.
E N D
Component Based Software Engineering Ravi Kumar Mylavarapu
Objectives • To explain that CBSE is used to develop standard components • To explain the laws of software development • To describe component and component integration • To discuss the problems with off shelf components
Topics Covered • Introduction • Laws of software Evolution • Why CBSE • Selection issues • Integration issues • Maintenance issues • Attractiveness for different domains • The success of CBSD
Introduction • Why Component Based Software Development • Technology in parallel with EJB,CORBA,COM/DCOM • Facilitates maintenance and evolution of systems by customizing and replacing their components • Add compatible components and upgrade the software or the suite performance(E.g. windows update)
Laws governing software development • Continuing change • Increasing complexity • Self regulation • Conservation of organizational stability
Laws governing software development contd.. • Conservation of familiarity • Continuing growth • Declining quality • Feed back systems
Implementation • CBSE based software engineering is an approach to software development that relies on software reuse -Reusability -Sustainability -Extensibility
Reusability • Reusing components in different systems Reusing components demands certain constraints like the necessity for .. Good documentation Well organized reuse process Similar architecture C1 Application1 Application2 C1 C2 C3 C1 C4 C5
Substitutability • Alternative implementation of a component may be used • The component used should meet the system requirements Application1 Application1 c1 c2 c3 C1’ c2 c3
Extensibility • Extending components that are part of a system • Add additional Components c1 c2 c3 C2+ c1 c3 c1 c2 c3 c1 c2 c4 c3
Maintenance • Component integration is relatively easy, the main focus is on maintenance. Component Customer Builder Integrator
Off the shelf component maintenance • Maintaining the software that is integrated from off the shelf components Frozen Functionality Component Incompatible Upgrades Troazen horses Unreliable components Wrappers
Attractiveness for different domains • Business point of view -Shorter time-to-market,lower development and maintenance costs • Advantages from technical and engineering point of view -Relative ease in understanding • Advantages from strategic point of view of a society -Increasing software market, generation of new companies
The success… • 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
Conclusion • What did we learn • What is CBSE • Laws governing software evolution • Implementation of CBSE • Maintenance of CBSE • In shelf components • Off the shelf components • Attractiveness for different domains • The success
References 1.Software evolution in the age of component-based software engineering M.M. Lehman and J. F. Rami 2.Towards Component-Based Software Engineering Gilda Pour San Jose State University U.S.A. 3.Maintaining Component based software systems .Jeffrey Voes Reliable Software Technologies. 4) S. Ali, H. J. Siegel, M. Maheswaran, D. Hensgen, and S. Sedigh-Ali. Representing task and machine heterogeneities for heterogeneous computing systems. Tamkang Journal of Science and Engineering, Special 50th Anniversary Issue, 3(3):195-207, invited, Nov. 2000. 5)S. Sedigh-Ali, A. Ghafoor, and R.A. Paul. Software engineering metrics for COTS-based systems. IEEE Computer, Special Issue on Software Engineering on Internet Time, 34(5):44-50, cover feature, May 2001. 6) Monitoring Software Components and Component-Based Software Jerry Gao, Ph.D., Eugene Y. Zhu, Simon Shim, Ph.D.San Jose State University.
References Contd.. 7) Generation of Distributed System Test-beds from High-level Software Architecture Descriptions John Grundy1,, Yuhong Cai1 and Anna Liu2 8) Component-Based Software Development Approach:Is It the Next Silver Bullet? Workshop Moderator: Gilda Pour Department of Computer, Information, and Systems Engineering San Jose State University San Jose, CA 9) Moving toward Component-Based Software Development Approach Dr. Gilda Pour Department of Computer, Information, and Systems Engineering San Jose State University, San Jose. 10)Supporting evolution in component-based development using component librariesCasanova, M.; Van Der Straeten, R.; Jonckers, V. 11)Software Maintenance and Reengineering, 2003. Proceedings. Seventh European Conference on , 26-28 March 2003