160 likes | 302 Views
Hybrid approach to component based Engineering. Introduction. Component based development (CBD). Pros and Cons of Component based Development. Using hybrid approach. Introduction.
E N D
Hybrid approach to component based Engineering Introduction. Component based development (CBD). Pros and Cons of Component based Development. Using hybrid approach. Term Paper Presentation
Introduction Component - A software component is a unit of composition with contractually specified interface and explicit context dependencies only. A software component can be deployed independently and is subject to composition by third party's. Term Paper Presentation
Component Based Development and objectives Definition: It is the creation and deployment of software-intensive systems assembled from components, as well as the development and harvesting of such components. Objectives: Reuse components, lower development costs, lower maintenance costs and increase productivity. Term Paper Presentation
Differences between CBD and conventional reuse Term Paper Presentation
Differences between component and object Specialization - a component is a specialization of an object. A Component is an object, but an object isn't necessarily a Component. Scale - Components tend to encapsulate more than one object. Functional Responsibilities - The container, or environment, within which the Component lives, may place certain responsibilities on it. Functional Limitations - Again the container may impose restrictions on the functionality of the Component. Term Paper Presentation
Component based development Lifecycle Analysis Component Acquisition Component –Oriented Design Component Composition Integration Test System Test Fig 1: Lifecycle of component based development Term Paper Presentation
Component development and application development Application requirements (component composition) Component Development Application Domain Application Requirements Component based design methodology Domain Analysis Modeling Component / applicationdevelopment support Component design and implementation Component composition Component warehouse and broker Domain components Application systems Fig 2: component development and application development using components Term Paper Presentation
Components notation in UML <<interface>> <<subsystem>> Canonical Form <<subsystem>> Elided Form Term Paper Presentation
Pros of CBD Unit of maintenance and upgrade Parallel development Scalable Infrastructure standardized. Manageable and self contained units. Higher level capabilities. Reduces complexity. Incremental testing. Higher flexibility in meeting various requirements. Term Paper Presentation
Cons of CBD Requires trusted components. Requires component certification. Composition predictability. Rapidly changing standards. Skilled people are required for developing. Term Paper Presentation
Using hybrid approach Vertical framework – developing vertical components. Horizontal framework – developing horizontal components. Term Paper Presentation
Vertical framework services restricted to single domain such as Accounting, Manufacturing or Insurance Policy Management. Term Paper Presentation
Horizontal framework services across the different verticals. E. g. Network security. Term Paper Presentation
Known Component Models EJB CORBA COM+ Term Paper Presentation
References Ivica Crnkovic, “Component-based software engineering – New challenges in software development”, http://www.idt.mdh.se/~icc/, last visited 10/22/2003. Ivica Crnkovic and Magnus Larson, “Component-based software engineering – New Paradigm of software development”, http://www.idt.mdh.se/~icc/, last visited 10/22/2003. Ivica Crnkovic and Magnus Larson, “Demands on component-based Development”, Proc. 22nd International Conference on software Engineering, ACM Press, 2000 Term Paper Presentation