The Current State of CBSE

Slides:



Advertisements
Similar presentations
Architecture Representation
Advertisements

Chapter 2 – Software Processes Lecture 1 1Chapter 2 Software Processes.
Chapter 7 – Object-Oriented Design
Basic Concepts in Component-Based Software Engineering
OASIS Reference Model for Service Oriented Architecture 1.0
Stuart Sim Chief Architect Global Education & research Sun Client Solutions Blog:
CBSD – Component Based Software Development - Introduction -
THE OBJECT-ORIENTED DESIGN WORKFLOW Interfaces & Subsystems.
© Copyright Eliyahu Brutman Programming Techniques Course.
Software Engineering Module 1 -Components Teaching unit 3 – Advanced development Ernesto Damiani Free University of Bozen - Bolzano Lesson 2 – Components.
Page 1 Building Reliable Component-based Systems Chapter 4 - Component Models and Technology Chapter 4 Component Models and Technology.
Object Oriented Analysis and Design Using the UML
Component-Based Software Engineering (CBSE) Speaker: Jerry Gao Ph.D. San Jose State University URL:
QoS-enabled middleware by Saltanat Mashirova. Distributed applications Distributed applications have distinctly different characteristics than conventional.
Quality Assurance for Component- Based Software Development Cai Xia (Mphil Term1) Supervisor: Prof. Michael R. Lyu 5 May, 2000.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 19 Slide 1 Component-based software engineering 1.
An Introduction to Software Architecture
Software Models (Cont.) 9/22/2015ICS 413 – Software Engineering1 -Component-based software engineering -Formal Development Model.
Software Component Technology and Component Tracing CSC532 Presentation Developed & Presented by Feifei Xu.
SWE © Solomon Seifu ELABORATION. SWE © Solomon Seifu Lesson 11 Subsystem Design.
By Xiangzhe Li Thanh Nguyen.  Introduction  Terminology  Architecture  Component  Connector  Configuration  Architectural Style  Architectural.
Basic Concepts Software Architecture. What is Software Architecture? Definition: – A software architecture is the set of principal design decisions about.
95-843: Service Oriented Architecture 1 Master of Information System Management Service Oriented Architecture Lecture 3: SOA Reference Model OASIS 2006.
Chapter 10 Analysis and Design Discipline. 2 Purpose The purpose is to translate the requirements into a specification that describes how to implement.
Service Oriented Architecture CCT355H5 Professor Michael Jones Suezan Makkar.
Component-Based Software Engineering(CBSE) Xingui Tang CS532, Fall /6/2015.
Component Oriented Programming 1 Introduction to COP.
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
Part VII: Design Continuous
MODEL-BASED SOFTWARE ARCHITECTURES.  Models of software are used in an increasing number of projects to handle the complexity of application domains.
CBSE Component Based Software Engineering cs. upt
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 32. Review Behavioral Patterns – Observer Pattern – Chain of command.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 15. Review Interaction-Oriented Software Architectures – MVC.
Introduction to business component technologies. Component definitions Szyperski: A software component is a unit of composition with contractually specified.
Basic Concepts and Definitions
1 SOA Seminar Seminar on Service Oriented Architecture SOA Reference Model OASIS 2006.
 Copyright 2005 Digital Enterprise Research Institute. All rights reserved. SOA-RM Overview and relation with SEE Adrian Mocan
Models of the OASIS SOA Reference Architecture Foundation Ken Laskey Chair, SOA Reference Model Technical Committee 20 March 2013.
Software Architecture Lecture 3
Chapter 3 Introducing SOA
Software Processes (a)
Distribution and components
Software Architecture Lecture 3
Software Project Planning &
Chapter 19: Interfaces and Components
Model-Driven Analysis Frameworks for Embedded Systems
Component Based Software Engineering
Service-centric Software Engineering
Software Architecture Lecture 3
Component-Based Software Engineering: Technologies, Development Frameworks, and Quality Assurance Schemes X. Cai, M. R. Lyu, K.F. Wong, R. Ko.
Service-centric Software Engineering 1
Component-based Software Engineering
Component--based development
Chapter 20 Object-Oriented Analysis and Design
Software Architecture Lecture 3
An Introduction to Software Architecture
Chapter 19: Interfaces and Components
Chapter 19: Interfaces and Components
Software Architecture Lecture 3
Component-based Applications
ISpec: A Compositional Approach to Interface Specification
Quality Assurance for Component-Based Software Development
Chapter 17 - Component-based software engineering
Design Yaodong Bi.
Software Architecture Lecture 3
Interfaces and Components
COMPONENT BASED SYSTEMS: A CLASSIFICATION OF ISSUES
COMPONENT – BASED SOFTWARE ENGINEERING MODULE 2 – SECOND SEMESTER MKHIZE, BSC HONS COMPUTER SCIENCES, DIP IT, ICDL.
Chapter 19: Interfaces and Components
Presentation transcript:

The Current State of CBSE Sule Yildirim, 20. mars 2003

Different Perspectives CBSE with the off the shelf components CBSE with abstract components

Discussion Topics What is CBSE? Why will it work now if it didn’t before? What will it mean to organizations if CBSE does work?

Definitions for component 1) A component is a nontrivial, nearly independent, and replaceable part of a system that fulfills a clear function in the context of a well-defined architecture. A component conforms to and provides the physical realization of a set of interfaces.

Definition Cont’d 2) A runtime software component is a dynamically bindable package of one or more programs managed as a unit and accessed through documented interfaces that can be discovered at runtime.

Definition Cont’d 3) A software component is a unit of composition with contractually specified interfaces and explicit context dependencies only. A software component can ve deployed independently and is subject to third-party composition.

Definition Cont’d 4) A business component represents the software implementation of an autonomous business concept or business process. It consists of the software artifacts necessary to express, implement and deploy the concept as a reusable element of a larger business system.

Interpretations on definitions 1 and 4 (especially) underscore the large grained nature of components.Maybe inferrable from 2 but not from 3. 1 and 3 emphasize context dependencies. Only 3 requires explicit description. Inferrable from 4 but not from 2. The notion of component autonomy varies. Ability to be deployed or executed independently?

Two additional characteristics to definitions The relationship between components and object technology. The relationship between components and software architecture.

The relationship to object technology Object technolgy is neither necessary nor sufficient for CBSE. Becuase, by itself, OT did not express the full range of abstractions needed by CBSE. it is possible to realize CBSE without employing OT. moreover, CBSE might induce changes to system design, project management and organizational style.

Workshop notes on OT discussion OT is far too unstable and contentious and will continue to be so. Distributed OT is an infrastructure plumbing and components are larger-grained abstractiones and implementations applicable to diverse infrastructures.

Are components separable from infrastructures? The degree to which components adhere to some set of predefined constraints and conventions. Components are complex design level entities, that is, both abstractions and implementations.

Why CBSE now? Over the past decade, several underlying technologies matured that permit building components and assembling applications from those components. The business and organizational context within which applications are developed, deployed and maintained has changed.

Maturing component technologies Services include, Find out what components are currently connected to the infrastructure. Make reference to other components via some meaningful scheme. Guarantee once-only delivery of messages between components. Manage transactions consisting of multiple interactions among components Allow secure communication between components.

Evolving business and organizational context The style and architecture of the applications being developed have shifted. Fewer resources are left to build new applications from scratch. Some organizations are locked in their software solutions Build on your own but maintenance of a large software is expensive. Rely on a single product from a single supplier. An organization must maintain some stability and predictability in its market. The goals of CBSE match to answer these problems.

Conclusion Customer demands for flexible enterprises coincides with a maturing technology infastructure for building distributed enterprise systems. CBSE is still evolving but its outlines become clearer all the time.