SFB 501
A1 | ![]() | ||
![]() | Staff | ||
Techniques, methods, and tools for software development must be tested
experimentally,
in order to gain experiences regarding their strengths and weaknesses under
different
project conditions. Such experiences are an indispensable requirement for the
effective
reuse of techniques, methods, and tools, as well as for their systematic
improvement.
| |||
A2 | ![]() | ||
![]() | Staff | ||
Software development processes contain a multitude of individual processes. We distinguish between technically-oriented processes for the creation of SE products, and management-oriented processes for the coordination of distributed team and individual activities. Running a project efficiently requires a tool for the integrated support of both types of processes. The following main resaerch topics are:
| |||
A3 | ![]() | ||
![]() | Staff | ||
In large software development processes, reuse has to be supported by providing a shared data repository which has to fulfill lots of heterogeneous data management as well as data processing demands. On one hand (data management needs), it is required to manage simply structured data, e. g., measurement data, and complex structured design objects in an integrated way. On the other hand (data processing needs), server-side as well as client-side processing mechanisms are required to support application efficiency. At a first glance, object-relational database technology seems to be best suited for these purposes, since the extensibility property of object-relational database management systems (ORDBMS) promises the possibility of tailoring the database system to the application needs. Although there are already commercially available DBMS calling themselves object-relational, it is by far not clear yet, what the best way of integrating object-oriented and relational modeling concepts is and which extensibility features and processing models an ORDBMS should support. The SENSOR project aims at contributing to answering these questions and finding the best ways to effectively exploit ORDBMS features in the field of software development applications. | |||
B1 | ![]() | ||
![]() | Staff | ||
The development of high quality software requires effective and efficient software development processes. Their use presumes the experimentally-based adaptation of development processes to specific project goals and characteristics. Software development processes must be achieved empirically. Effective support of the experimental optimization of software development processes requires easy replication and/or modification of experiments; effective support of application development requires easy adaptation of software process models and measurement plans. The long-term goal of sub-project B1 is to support the execution of experiments through easy instantiation of generic experimentation plans and/or generic process models. To achieve this goal the focus is on the following mutually complementary topics:
| |||
B2 | ![]() | ||
![]() | Staff | ||
Software engineering processes are highly creative and therefore prone
to frequent changes during both the planning phase and process
enactment. Due to the long project duration, and to the fact that
experience with a particular kind of software project is often gained
only while executing this project, project plans often turn out to be
inadequate and need to be adapted. In large, distributed software
projects, these changes can easily lead to problems: some concerned
people may not be informed of the change in time to adjust their own
products before a deadline, or perhaps are not notified of the change at
all.
| |||
B4 | ![]() | ||
![]() | Staff | ||
Complex systems often are concurrent and distributed. Because of their
distributed nature, communication systems are usually an integral part
of these systems, they form the basis for applications and operating
systems. Due to the large variety of applications and technologies,
the requirements on communication systems are diverse, and therefore
cannot be satisfied by a small number of general-purpose protocol stacks.
| |||
B5 | ![]() | ||
![]() | Staff | ||
Operating systems are the indispensable basis for the run-time support of large application systems. Especially in the case of embedded systems with their diverse requirements concerning the amount of run-time support and concerning the quality of operating system services, there is a natural demand for highly specialized solutions. Current approaches to the customization of operating systems do not support this demand sufficiently. The subproject's aim therefore is to develop methods, techniques, and tools to support the construction of run-time platforms that are tailored for a specific application. The scientific approach is based on an open architecture for run-time platforms and on an appropriate component technology allowing for the reuse of component code while at the same time supporting the flexible customization of components by generators and generic parameters. Techniques and methods for coding and reusing the operating system expert's knowledge further allow to guide and partly automate the development process by tools. | |||
B10 | ![]() | ||
![]() | Staff | ||
The main goal of project B10 is the examination of reuse activities in
the software development process. Experience has shown that reuse has to
start in the early phases of development in order to be effective. At
his point, it can noticeably limit possible solutions to a manageable
amount in which searching for reusable artefacts makes sense. To achieve
this goal, software architecture is used as the carrier of reusable
domain knowledge as well as basis for further reuse activities. The
software architecture is embedded in a core system which additionaly
offers architecture compatible reusable artefacts and a specific development
process. This process describes how the reusable artefacts have to be
adapted to solve a concrete problem. | |||
C1 | ![]() | ||
![]() | Staff | ||
The use of formal description techniques can support the development
of large systems, because they allow a precise specification of systems
and they are a prerequisite for automatic analyses. The investigation
and improvement of the methodical usage of formal description techniques
is the goal of subproject C1.
| |||
D1 | ![]() | ||
![]() | Staff | ||
The project has two major goals:
Building automation systems can be executed and
tested in real or
simulated building environments. Solutions for both cases and
combinations
of the two are provided.
In parallel, the generation of building and person
simulators is pursued. Object orientation and design patterns are
employed
to automate the generation process. | |||
2000-07-11
SFB 501 - Development of Large Systems with Generic Methods