Traceability decision making in the case of the presence of conflicts (bibtex)
by Egor Erofeev
Abstract:
Nowadays software systems are close connected to a large number of critical tasks in various areas of daily life. Traceability is one of the prerequisites of the ability to reach the high level quality in this and similar software and thus the critical element of any rigorous system. The traceability can be successfully applied in areas like change impact analysis and change management, software validation veriffcation and testing, software reuse, better artifact understanding, thereby increasing the quality and simplicity of software processes. The TM (traceability matrix) is one of the methods of traceability recording and representation. The TM is a document in the form of a table that correlates artifacts within the development process in respect to the traceability relations. One of the TM's disadvantages is that the relations stored in the matrix are typically captured manually and may be error prone for large and complex systems. Another problem is a very large number of decisions that an engineer has to make. This master thesis contributes an approach and algorithms to support trace analysis and minimize the impact of the trace matrix weaknesses. To make the traces establishing process easier, developers or engineers working with TM may provide dependencies between groups of artifacts instead of identifying trace relations between individual artifacts directly. The approach takes a set of such dependencies as input and transforms the input into CNF, what allows to reuse the effectiveness of SAT-solvers to performs the trace analysis and fill up cells of the trace matrix. Usage of effective SAT-solver supports excellent scalability. Additionally, the approach tolerates inconsistencies in the user input using an isolation technique and allows to perform analysis in case of the presence of conflicting dependencies as well as helps an engineer to resolve these conflicts. The empirical evaluation of the approach shows that it provides good performance and, therefore, can be applied for large systems with more than 40K cells in the trace matrix. The algorithm produces correct results following the semantic of dependencies. As expected, in case of incremental reasoning, when a developer adds dependencies step by step, the coverage of the matrix increases with each step to the maximal value. The isolation strategies demonstrate reasonable efficiency, recall and precision depending on the problem size and the number of errors. For error free problems, the algorithm requires maximal 2 seconds to complete the trace analysis even for very large problems. The approach is automatic and tool supported. It allows correct trace analysis with SAT-Solvers in the presence of conflicts and uncertainties, continue working without any adaptions and provides the user support in conflicts resolving. The isolation may be performed on different granularity levels, what facilitates the work to the comfortable level of details.
Reference:
Traceability decision making in the case of the presence of conflicts (Egor Erofeev), Master's thesis, Johannes Kepler University (JKU), Linz, Austria, 2013. (Advisor: Alexander Egyed)
Bibtex Entry:
@MastersThesis{jku2013Erofeev,
  author       = {Egor Erofeev},
  title        = {Traceability decision making in the case of the presence of conflicts},
  school       = {Johannes Kepler University (JKU), Linz, Austria},
  year         = {2013},
  abstract     = {Nowadays software systems are close connected to a large number of
	critical tasks in various areas of daily life. Traceability is one
	of the prerequisites of the ability to reach the high level quality
	in this and similar software and thus the critical element of any
	rigorous system. The traceability can be successfully applied in
	areas like change impact analysis and change management, software
	validation veriffcation and testing, software reuse, better artifact
	understanding, thereby increasing the quality and simplicity of software
	processes. The TM (traceability matrix) is one of the methods of
	traceability recording and representation. The TM is a document in
	the form of a table that correlates artifacts within the development
	process in respect to the traceability relations. One of the TM's
	disadvantages is that the relations stored in the matrix are typically
	captured manually and may be error prone for large and complex systems.
	Another problem is a very large number of decisions that an engineer
	has to make. This master thesis contributes an approach and algorithms
	to support trace analysis and minimize the impact of the trace matrix
	weaknesses. To make the traces establishing process easier, developers
	or engineers working with TM may provide dependencies between groups
	of artifacts instead of identifying trace relations between individual
	artifacts directly. The approach takes a set of such dependencies
	as input and transforms the input into CNF, what allows to reuse
	the effectiveness of SAT-solvers to performs the trace analysis and
	fill up cells of the trace matrix. Usage of effective SAT-solver
	supports excellent scalability. Additionally, the approach tolerates
	inconsistencies in the user input using an isolation technique and
	allows to perform analysis in case of the presence of conflicting
	dependencies as well as helps an engineer to resolve these conflicts.
	The empirical evaluation of the approach shows that it provides good
	performance and, therefore, can be applied for large systems with
	more than 40K cells in the trace matrix. The algorithm produces correct
	results following the semantic of dependencies. As expected, in case
	of incremental reasoning, when a developer adds dependencies step
	by step, the coverage of the matrix increases with each step to the
	maximal value. The isolation strategies demonstrate reasonable efficiency,
	recall and precision depending on the problem size and the number
	of errors. For error free problems, the algorithm requires maximal
	2 seconds to complete the trace analysis even for very large problems.
	The approach is automatic and tool supported. It allows correct trace
	analysis with SAT-Solvers in the presence of conflicts and uncertainties,
	continue working without any adaptions and provides the user support
	in conflicts resolving. The isolation may be performed on different
	granularity levels, what facilitates the work to the comfortable
	level of details.},
  comment      = {Advisor: Alexander Egyed},
  file         = {:MSc Theses\\2013 Egor Erofeev\\Traceability decision making in the Presence of Conflicts-preprint.pdf:PDF},
  keywords     = {FWF P23115},
  paper        = {Publications/MSc Theses/2013 Egor Erofeev/Traceability decision making in the Presence of Conflicts.pdf},
  presentation = {Publications/MSc Theses/2013 Egor Erofeev/Traceability decision making in the Presence of Conflicts presentation.pdf},
  url          = {Publications/MSc Theses/2013 Egor Erofeev/Traceability decision making in the Presence of Conflicts.pdf},
}
Powered by bibtexbrowser