Search-Based Software Engineering: Trends, Techniques and Applications 11:19
at concept n1 are also present at concept n2 and that all the optimization techniques
present at n are also present at n .
2 1
It turns out that, for all lattices, there is a unique labeling of nodes, such that an
objective and attribute need appear only once in the labeling. In the case of the SBSE
lattice, the labels correspond to application areas in SE and optimization techniques. An
application area appearing at node n, also implicitly appears at all the nodes reachable
from n moving up the lattice. By symmetric counterpart, an application area that
appears at a node m in the lattice also implicitly appears at all the nodes reachable
from m, traveling down the lattice. Figure 4 includes concepts relating to testing. When
these are removed and the lattice recomputed the effect is merely the disappearance of
those node labels (all of which relate only to testing) at the lowest node in the lattice.
This is merely a reflection of the fact that testing has been optimized using a superset
of all optimization techniques applied to other SE problem domains.
The lattice for the SBSE literature reveals a few interesting properties of the clus-
tering of application areas and techniques. First, it is clear that the testing application
area has had every optimization technique applied to it in the SBSE literature (because
it appears at the bottom of the lattice), while no technique has been applied to every
area (indicating that there are still gaps here). Furthermore, four techniques, TS, SQP,
MA, and EDA, have only been applied so far in Software Testing. Of those techniques
so far explored these are the least widely applied.
It is also clear that the most widely applied techniques are SA and EAs, backing up
the findings of Figure 3. Hill climbing, though popular, has only been applied to design,
maintenance, management, and testing. Only EAs have been applied to agents, while
protocols form an interesting link between PSO and SA. They are the only application
areas (apart from the ubiquitous area of testing) to which both PSO and SA have been
applied.
Figure 4 can also be read like a subsumption diagram. For example, all areas to
which IP, HC, and ACO have been applied have also had SA applied to them and all
these have had EAs applied to them. Reading the relationship in the other direction,
all techniques applied to agents have also been applied to Coding and all these have
been applied to Requirements. Readers may also find other relationships in the lattice
that are of interest, depending upon the particular areas and techniques that are of
interest to them.
10. HOW SBSE REUNITES PREVIOUSLY DIVERGENT AREAS OF SE
In the early development of the field of SE the nascent field split into different topic
areas, with many different disjoint communities focusing on different aspects of the
emerging discipline. Of course, this has been a natural and necessary evolution of the
subject and it was to be expected. However, it has had the disadvantage that it has
created silos of activity with few connections between them.
Fortunately, SBSE acts as a catalyst to remove barriers between subareas, thereby
combating the disadvantages of “silo mentality”. It is interesting to observe how SBSE
creates these linkages and relationships between areas in SE that would otherwise
appear to be completely unrelated. For instance, the problems of requirements engi-
neering and regression testing would appear to be entirely unrelated topics.
Indeed, these two areas of SE soon developed their own series of conferences, with
work on requirements engineering tending to appear in the conference and journal of
the same name, while work on regression testing would tend to appear at conferences
such as the ACM International Symposium on Software Testing and Analysis and the
IEEE International Conference on Software Testing.
However, using SBSE, a clear relationship can be seen between these two problem
domains. As optimization problems they are remarkably similar, although they occur
đang được dịch, vui lòng đợi..