|Title:||A comparison of component-based software engineering and model-driven development from the ProCom perspective|
Component-based software engineering (CBSE) and model-driven development (MDD) are two relatively new approaches for handling the complexity of software systems.
CBSE promotes building software systems from pre-existing software components. The central idea behind CBSE is to separate the system development from the development of components, and, ideally, build systems by finding appropriate components and simply plugging them together. A component should be reused across different systems.
A paramount concept in CBSE is the component model. A component model provides methods and rules for (i) component specification and (ii) component composition. A component is distinguished from other forms of packaged software by conformance to a component model.
MDD promotes tackling with software complexity by raising the abstraction level of software systems to a higher level than code, closer to concepts from the application domain than to algorithmic concepts. This enables the developer to focus on the application logic, without worrying about implementation details. Ideally, models would be used for code generation, but also for generation of non-implementation artifacts such as documentation, tests, deployment scripts or other models.
In CBSE models exist in order to enable various analyses, but the focus is on composition of components' code. Thus, CBSE is mainly a bottom-up approach. MDD is a top-down approach, as it promotes incrementally transforming models of a system to code. However, CBSE and MDD overlap to some extent, and are not mutually exclusive. This makes it worthwhile to compare the two.
ProCom is a component model designed for development of component-based embedded systems in the vehicular-, automation- and telecommunication domains. It clearly considers components as first-class entities, following CBSE principles. However, at the same time it supports different views of a component by providing various models (architectural model, behavioral model...), adhering well to the MDD approach.
The goal of this thesis is to systematically compare CBSE and MDD. In particular, the comparison should focus on ProCom. The thesis work should include the following:
studying basic principles of CBSE,
studying basic principles of MDD,
studying basic principles of ProCom,
comparing CBSE and MDD in general,
comparing CBSE and MDD from the ProCom viewpoint.
The required result is a thesis report covering all of the aforementioned.
|Prel. end date:||2011-06-01|
|Student:||Nikolay Grozev email@example.com|
firstname.lastname@example.org, +46 21 10 15 68