Software Engineering - A Roadmap
Software Engineering - A Roadmap
Domain specificity
Compositionality
Configurability
NF Properties
Service view
Perspectives
Architecture
Lifecycles
Change
1.1 PML must be tolerant and allow for incomplete,
informal, and partial specification
Domain specificity
Compositionality
Configurability
NF Properties
Service view
Perspectives
Architecture
Lifecycles
Change
Domain specificity
Compositionality
Configurability
NF Properties
Service view
Perspectives
Architecture
Lifecycles
Change
3.1 Teach reverse engineering, program understanding, 25
and software analysis in computer science, computer
engineering, and software engineering curricula.
4 Testing Links
Domain specificity
Compositionality
Configurability
NF Properties
Service view
Perspectives
Architecture
Lifecycles
Change
Domain specificity
Compositionality
Configurability
NF Properties
Service view
Perspectives
Architecture
Lifecycles
Change
5.1 The production of new management approaches to
evolution, leading to better understanding of the
relationships between technology and business.
Domain specificity
Compositionality
Configurability
NF Properties
Service view
Perspectives
Architecture
Lifecycles
Change
Domain specificity
Compositionality
Configurability
NF Properties
Service view
Perspectives
Architecture
Lifecycles
Change
7.1 To identify appropriate language means for modelling
an "aspect" of a system.
Domain specificity
Compositionality
Configurability
NF Properties
Service view
Perspectives
Architecture
Lifecycles
Change
Domain specificity
Compositionality
Configurability
NF Properties
Service view
Perspectives
Architecture
Lifecycles
Change
9.1 Checking conformance of code to designs is likely to
become a central problem for software analysis.
9.2 Tools that analyze designs in their own right will grow
in importance.
Domain specificity
Compositionality
Configurability
NF Properties
Service view
Perspectives
Architecture
Lifecycles
Change
Domain specificity
Compositionality
Configurability
NF Properties
Service view
Perspectives
Architecture
Lifecycles
Change
11.1 Representing behaviour (including concurrency and
duration of activities) and being able to analyse it.
There may be many different kinds of behaviour and
there is no obvious necessity to have a universal
representation - quite the opposite! Engineering tools
are the most useful when they are specific, so different
classes of problems may demand differing languages
to represent them.
Domain specificity
Compositionality
Configurability
NF Properties
Service view
Perspectives
Architecture
Lifecycles
Change
12.1 Shifting the focus from software reliability to user-
centred measures of dependability in complete
software-based systems.
Domain specificity
Compositionality
Configurability
NF Properties
Service view
Perspectives
Architecture
Lifecycles
Change
Domain specificity
Compositionality
Configurability
NF Properties
Service view
Perspectives
Architecture
Lifecycles
Change
14.1 The development of a system architecture that supports 4
the precise specification of the interfaces between
components in the value domain and in the temporal
domain, such that the components can be developed
and tested independently.
Domain specificity
Compositionality
Configurability
NF Properties
Service view
Perspectives
Architecture
Lifecycles
Change
Domain specificity
Compositionality
Configurability
NF Properties
Service view
Perspectives
Architecture
Lifecycles
Change
16.1 Integrating security considerations smoothly into early 2
life-cycle activities: uniform application of cost-benefit
analyses to both functional, and security requirements;
unified modelling approaches to integrate the
engineering of both functional requirements and
security requirements.
Domain specificity
Compositionality
Configurability
NF Properties
Service view
Perspectives
Architecture
Lifecycles
Change
Domain specificity
Compositionality
Configurability
NF Properties
Service view
Perspectives
Architecture
Lifecycles
Change
17.5 Middleware is the most likely vehicle by which novel 8
perspectives on mobility grounded in clean formal
models and effective technical solutions will make their
way into industrial practice.
Domain specificity
Compositionality
Configurability
NF Properties
Service view
Perspectives
Architecture
Lifecycles
Change
18.1 The development of methodologies, formalisms, and
tool and environment support for separation, extraction
and integration of concerns
Domain specificity
Compositionality
Configurability
NF Properties
Service view
Perspectives
Architecture
Lifecycles
Change
19.1 Functionality & efficiency. The basic core functions of
SCM systems, like versioning, data management or
workspace support, are still semantically weak, they
lack usability, adaptability and so on.
Domain specificity
Compositionality
Configurability
NF Properties
Service view
Perspectives
Architecture
Lifecycles
Change
Domain specificity
Compositionality
Configurability
NF Properties
Service view
Perspectives
Architecture
Lifecycles
Change
21.1 The field of software engineering can heavily profit 18
from markup languages, since they provide validation
of structure, display-independent formats and
sophisticated linking capabilities.
Domain specificity
Compositionality
Configurability
NF Properties
Service view
Perspectives
Architecture
Lifecycles
Change
Domain specificity
Compositionality
Configurability
NF Properties
Service view
Perspectives
Architecture
Lifecycles
Change
23.1 Empirical study play a fundamental role in modern
science, helping us understand how and why things
work, and allowing us to use this understanding to
materially alter our world.
Domain specificity
Compositionality
Configurability
NF Properties
Service view
Perspectives
Architecture
Lifecycles
Change
24.5 Handle the key factors largely missing from the usual 22
metrics approaches (causality, uncertainty, and
combining different, often subjective, evidence) using
causal modelling (for example Bayesian nets), empirical
software engineering, and multi-criteria decision aids.
25 Software Engineering Education Links
Domain specificity
Compositionality
Configurability
NF Properties
Service view
Perspectives
Architecture
Lifecycles
Change
25.1 Identifying distinct roles in software development and
providing appropriate education for each.