Information Technology Reference
In-Depth Information
5 Semantic Version Control
Requirements changes frequently occur after a requirements specification is com-
pleted and even during the requirements elicitation step, for various reasons such
as changing business goals and improving information technology. In this situation,
it is a crucial issue to manage requirements changes. More concretely, to record
change histories and rationales, to analyze impacts and change propagations for
keeping consistency etc., developers, including requirements analysts, should have
various versions of elicited and specified requirements and manage them in their
development project. The techniques for version control are significant to support
their tasks by using a computerized tool, and in fact, CVS and Subversion are widely
used as computerized version control tools for source codes. These tools store a cur-
rent version of an artifact and the differences (so called delta) between adjacent
versions in a repository, so that it can recover the older versions by applying the
stored deltas to the current one. However, it is difficult to use these practical version
control tools for managing requirements, because they deal with syntactical aspects
of text documents and adopt line based management, i.e. the delta is generated line
by line. Requirements are modeled and specified not only with natural language
texts but also with tables and diagrams, and they are informal descriptions. Handling
semantic differences between two versions of requirements is very useful to trace the
requirements changes and evolution. The differences in the ontologies mapped from
adjacent versions of the requirements represent the semantic differences between
these requirements.
Figure 8 illustrates the delta of artifacts (requirements) and ontology delta (dif-
ferences of the mapped ontological elements). In the figure, V i (0
n ) and O i
stand for the version V i of the artifact and the ontological elements mapped from V i
i
Vn = V0 + dn - 1 + dn - 2 + ... + d0
Vn = Vn-1 + dn -1
Artifact Delta
d0
dn-2
dn-1
Artifacts
Vn
V0
V1
Vn-1
semantic mapping
Ontology
On-1
On
On-2
O0
O1
Ontology Delta
Od0
Odn-2
Odn-1
On = O0 + Od0 + Od1 + ... + Odn-1
On = On-1 + Odn-1
Fig. 8 Difference deltas in a version control
 
Search WWH ::




Custom Search