Component-Based Software Engineering. M.R.V. Chaudron www.win.tue.nl/~mchaudro Dept. of Mathematics and Computing Science Eindhoven University of Technology. This lecture. Obstacles to CBD CBD Process domain engineering. Obstacles to CBD. Some Obstacles to CBSD.
Dept. of Mathematics and Computing Science
Eindhoven University of Technology
Typically, organisations build many systems in a single domain
Domain Engineering is the activity of collecting, organizing and
storing experience in building systems in a particular domain
Goal: Capitalize the experience/expertise acquired in building systems, in order to build new systems more efficiently
Assets may be software, but also requirements, domain models
In general: domain knowledge
... the process of producing, maintaining and cataloging reusable assets, to make them available to application engineering teams.
Kang, K., et al. Feature-Oriented Domain Analysis (FODA) Feasibility Study (CMU/SEI-90-TR-21, ADA 235785). Pittsburgh, PA: Software Engineering Institute, Carnegie Mellon University, 1990.
Simos, M., et al. Software Technology for Adaptable Reliable Systems (STARS) Organization Domain Modeling (ODM) Guidebook Version 2.0 (STARS-VC-A025/001/00). Manassas, VA: Lockheed Martin Tactical Defense Systems, 1996. Also available onlinehttp://www.asset.com/WSRD/abstracts/ABSTRACT_1176.html
e.g. models, components, generators, reuse infrastructure, ..
Development Domain SW
Assets & Tools
Domain Arch.-Based Design
A domain model is an explicit representation of
knowledge about the domain
FODA: A prominent and user-visible aspect, quality or
characteristic of a system.
ODM: A distinguishable characteristic of a system that is
relevant to a stakeholder of the system
In mobile telephones:
- polyphonic ringtones
- SMS, MMS
- dual, tri-band,
- remote key-lock
A hierarchical decomposition of features.
A concept higher in the tree consists of its children
C. General knowledge about the domain
D. Customers and users
E. The environment
Two concurrent processes
aims to build systems
using existing components
aims to build component to supply to consumers
Assets & Tools
The components selected
influence the architecture!
i.e. discrete set of particular combinations of components
suitable functional & extra-functional properties
Producer or assembler?
What count are the properties of the final systems.
These are not necessarily those of individual
Instead of evalutating components, we should evaluate
- Chapter .. from Mili