Graph-based Traceability – A Comprehensive Approach

In recent years, traceability has been globally accepted as being a key success factor of software development projects. However, the multitude of different, poorly integrated taxonomies, approaches and technologies impedes the application of traceability techniques in practice. This paper presents a comprehensive view on traceability, pertaining to the whole software development process. Based on the state of the art, the field is structured according to six specific activities related to traceability as follows: definition, recording, identification, maintenance, retrieval, and utilization. Using graph technology, a comprehensive and seamless approach for supporting these activities is derived, combining them in one single conceptual framework. This approach supports the definition of metamodels for traceability information, recording of traceability information in graph-based repositories, identification and maintenance of traceability relationships using transformations, as well as retrieval and utilization of traceability information using a graph query language. The approach presented here is applied in the context of the ReDSeeDS project (Requirements Driven Software Development System) that aims at requirements-based software reuse. ReDSeeDS makes use of traceability information to determine potentially reusable architectures, design, or code artifacts based on a given set of reusable requirements. The project provides case studies from different domains for the validation of the approach.

[1]  Andrian Marcus,et al.  Recovering documentation-to-source-code traceability links using latent semantic indexing , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[2]  Andreas von Hessling Semantic User Profiles and their Applications in a Mobile Environment , 2004 .

[3]  Christoph Wernhard,et al.  Tableaux between proving, projection and compilation , 2007 .

[4]  Julian Richardson,et al.  Traceability Through Automatic Program Generation , 2003 .

[5]  Manfred Kamp Managing a multi-file, multi-language software repository for program comprehension tools: a generic approach , 1998, Proceedings. 6th International Workshop on Program Comprehension. IWPC'98 (Cat. No.98TB100242).

[6]  Darijus Strašunskas Traceability in Collaborative Systems Development from Lifecycle Perspective – A Position Paper , 2002 .

[7]  Andy Schürr,et al.  GRAS, a Graph-Oriented (Software) Engineering Database System , 1995, Inf. Syst..

[8]  Genny Tortora,et al.  Recovering traceability links in software artifact management systems using information retrieval methods , 2007, TSEM.

[9]  Philipp Schaer,et al.  State-of-the-Art: Interaktion in Erweiterten Realitäten , 2007 .

[10]  Anna Perini,et al.  Automating Model Transformations in Agent-Oriented Modelling , 2005, AOSE.

[11]  David W. Binkley,et al.  Program slicing , 2008, 2008 Frontiers of Software Maintenance.

[12]  Lutz Priese,et al.  Some Examples of Semi-rational and Non-semi-rational DAG Languages , 2006 .

[13]  Jürgen Ebert,et al.  A first proposal for an overall structure of an enhanced reality framework , 2007 .

[14]  Masaki Ogino,et al.  Getting closer: How Simulation and Humanoid League can benefit from each other , 2005, AMiRE.

[15]  Toshiaki Arai,et al.  Hybrid State Machines with Timed Synchronization for Multi-Robot System Specification , 2005, 2005 portuguese conference on artificial intelligence.

[16]  Jonathan I. Maletic,et al.  An XML based approach to support the evolution of model-to-model traceability links , 2005, TEFSE '05.

[17]  Jürgen Ebert,et al.  Meta-CASE in Practice: a Case for KOGGE , 1997, CAiSE.

[18]  Jon Oldevik,et al.  Traceability in Model to Text Transformations , 2006 .

[19]  J. Ebert,et al.  Querying Software Abstraction Graphs , 2008 .

[20]  Jürgen Ebert,et al.  GUPRO - Generic Understanding of Programs , 2002, Electron. Notes Theor. Comput. Sci..

[21]  J. Dick Rich Traceability , 2002 .

[22]  LuciaAndrea De,et al.  Recovering traceability links in software artifact management systems using information retrieval methods , 2007 .

[23]  Matthias Jarke,et al.  Requirements tracing , 1998, CACM.

[24]  Joachim Baumeister,et al.  Knowledge Engineering and Software Engineering , 2005 .

[25]  Keunhyuk Yeom,et al.  A Metamodeling Approach to Tracing Variability between Requirements and Architecture in Software Product Lines , 2007, 7th IEEE International Conference on Computer and Information Technology (CIT 2007).

[26]  Denys Poshyvanyk,et al.  When and how to visualize traceability links? , 2005, TEFSE '05.

[27]  Rüdiger Grimm,et al.  Lehramtsbezogene Bachelor- und Masterstudiengänge im Fach Informatik an der Universität Koblenz-Landau, Campus Koblenz , 2008 .

[28]  Hermann Kaindl,et al.  The missing link in requirements engineering , 1993, SOEN.

[29]  Jürgen Ebert,et al.  Web Engineering does profit from a Functional Approach , 2005 .

[30]  Roelf J. Wieringa,et al.  An Introduction to Requirements Traceability , 1995 .

[31]  R. Adams Proceedings , 1947 .

[32]  Andreas Winter,et al.  Referenz-Metaschema für visuelle Modellierungssprachen , 2001, Softwaretechnik-Trends.

[33]  Bernhard Beckert TABLEAUX 2005 Position Papers and Tutorial Descriptions , 2005 .

[34]  Ilka Philippow,et al.  Rule-Based Maintenance of Post-Requirements Traceability Relations , 2008, 2008 16th IEEE International Requirements Engineering Conference.

[35]  Agris Sostaks,et al.  Tool support for MOLA , 2006, Electron. Notes Theor. Comput. Sci..

[36]  Stefan Stein,et al.  Entwicklung einer Architektur für komplexe kontextbezogene Dienste im mobilen Umfeld , 2008 .

[37]  Jane Cleland-Huang,et al.  Poirot: A Distributed Tool Supporting Enterprise-Wide Automated Traceability , 2006, 14th IEEE International Requirements Engineering Conference (RE'06).

[38]  Depaul,et al.  Dynamically Tracing Non-Functional Requirements through Design Pattern Invariants , 2003 .

[39]  R. D. Williams,et al.  Managing the development of reliable software , 1975, Reliable Software.

[40]  Patrick E. O'Neil,et al.  System Description , 2005 .

[41]  Patricio Letelier A Framework for Requirements Traceability in UML-based Projects , 2002 .

[42]  Dietrich Paulus,et al.  Methods for polyp detection in colonoscopy videos: a review , 2008 .

[43]  Rob J. van Glabbeek,et al.  Five Determinisation Algorithms , 2008, CIAA.

[44]  Agris Sostaks,et al.  The Implementation of MOLA to L3 Compiler , 2008 .

[45]  Steffen Staab,et al.  A model of events based on a foundational ontology , 2009 .

[46]  B. Meyer,et al.  Tests and Proofs : Papers Presented at the Second International Conference TAP 2008 Prato , Italy , April 2008 , 2008 .

[47]  Oliver Obst,et al.  HTN Planning for Flexible Coordination Of Multiagent Team Behavior , 2005 .

[48]  Matthias Jarke,et al.  Toward Reference Models of Requirements Traceability , 2001, IEEE Trans. Software Eng..

[49]  Olly Gotel,et al.  An analysis of the requirements traceability problem , 1994, Proceedings of IEEE International Conference on Requirements Engineering.

[50]  Jean Bézivin,et al.  Weaving Models with the Eclipse AMW plugin , 2006 .

[51]  Audris Kalnins,et al.  Model Transformation Language MOLA , 2003, MDAFA.

[52]  Francisco A. C. Pinheiro Design of a hyper-environment for tracing object-oriented requirements , 1997 .

[53]  J. van Leeuwen,et al.  Advanced Information Systems Engineering , 1999, Lecture Notes in Computer Science.

[54]  George Spanoudakis,et al.  Software Traceability : A Roadmap , 2005 .

[55]  Richard F. Paige,et al.  Engineering a DSL for Software Traceability , 2009, SLE.

[56]  Klaus Pohl,et al.  Process-Centered Requirements Engineering , 1996 .

[57]  R. D. Williams Managing the development of reliable software , 1975 .

[58]  Alexander Egyed,et al.  A scenario-driven approach to traceability , 2001, Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001.

[59]  Guy L. Steele,et al.  The Java Language Specification , 1996 .

[60]  Peter Baumgartner,et al.  Hyper Tableaux with Equality , 2007, CADE.

[61]  Anastasia Meletiadou,et al.  Begriffsbestimmung und erwartete Trends im IT-Risk-Management , 2007 .

[62]  Jürgen Ebert,et al.  Graph Technology in Reverse Engineering: The TGraph Approach , 2008, Workshop Software Reengineering.

[63]  Dewayne E. Perry,et al.  Recovering and using use-case-diagram-to-source-code traceability links , 2007, ESEC-FSE '07.

[64]  David Notkin,et al.  Software reflexion models: bridging the gap between source and high-level models , 1995, SIGSOFT FSE.

[65]  Mario Schaarschmidt,et al.  Social networking platforms as creativity fostering systems: research model and exploratory study , 2008 .

[66]  Kevin Read,et al.  CAMPUS NEWS - Artificial Intelligence Methods Combined for an Intelligent Information Network , 2007, AmI Workshops.

[67]  Hannes Schwarz,et al.  Towards Querying of Traceability Information in the Context of Software Evolution , 2008, Workshop Software Reengineering.

[68]  Achim Rettinger,et al.  Intelligent exploration for genetic algorithms: using self-organizing maps in evolutionary computation , 2008, GECCO '05.

[69]  Jonathan I. Maletic,et al.  Proceedings of the 3rd international workshop on Traceability in emerging forms of software engineering , 2005 .

[70]  Melanie Volkamer,et al.  Security Requirements for Non-political Internet Voting , 2006, Electronic Voting.

[71]  Nicholas Drivalos,et al.  Towards Rigorously Defined Model-to-Model Traceability , 2008 .

[72]  Steffen Staab,et al.  Networked RDF graphs , 2007 .

[73]  Volker Haarslev,et al.  Querying the Semantic Web with Racer + nRQL , 2004 .

[74]  Andy Schürr,et al.  GXL: A graph-based standard exchange format for reengineering , 2006, Sci. Comput. Program..

[75]  Carl K. Chang,et al.  Event-Based Traceability for Managing Evolutionary Change , 2003, IEEE Trans. Software Eng..

[76]  Andreas Winter,et al.  Querying as an enabling technology in software reengineering , 1999, Proceedings of the Third European Conference on Software Maintenance and Reengineering (Cat. No. PR00090).

[77]  Andy Schürr,et al.  GRAS, a Graph-Oriented (Software) Engineering Database System , 1995, Inf. Syst..

[78]  Giuliano Antoniol,et al.  Maintaining traceability links during object‐oriented software evolution , 2001, Softw. Pract. Exp..

[79]  Richard N. Taylor,et al.  An end-to-end industrial software traceability tool , 2007, ESEC-FSE '07.

[80]  Andreas Winter,et al.  Metamodel-driven Service Interoperability , 2005 .

[81]  Benno Stein,et al.  Proceedings of the Second International Workshop on Text-Based Information Retrieval , 2005 .

[82]  Giuliano Antoniol,et al.  Recovering Traceability Links between Code and Documentation , 2002, IEEE Trans. Software Eng..

[83]  Jürgen Ebert,et al.  Ein Referenzschema für die Sprachen der IEC 61131 , 2008 .

[84]  Kenneth M. Anderson,et al.  A Framework for Mapping Traceability Relationships , 2003 .

[85]  Steffen Staab,et al.  Adding Formal Semantics to MPEG-7: Designing a Well-Founded Multimedia Ontology for the Web , 2007 .

[86]  Boris Böhlen Ein parametrisierbares Graph-Datenbanksystem für Entwicklungswerkzeuge , 2006, Softwaretechnik-Trends.

[87]  J. Ebert,et al.  Using the TGraph Approach for Model Fact Repositories , 2008 .

[88]  Jane Huffman Hayes,et al.  Advancing candidate link generation for requirements tracing: the study of methods , 2006, IEEE Transactions on Software Engineering.

[89]  Åsa G. Dahlstedt,et al.  Requirements Interdependencies-Moulding the State of Research into a Research Agenda , 2003 .

[90]  Steffen Staab,et al.  TwoUse: Integrating UML models and OWL ontologies , 2007 .

[91]  Julia Rubin,et al.  Model traceability , 2006, IBM Syst. J..

[92]  Jürgen Ebert,et al.  A Declarative Approach to Graph Based Modeling , 1994, WG.

[93]  Björn Regnell,et al.  An industrial survey of requirements interdependencies in software product release planning , 2001, Proceedings Fifth IEEE International Symposium on Requirements Engineering.

[94]  Jim Steel,et al.  MOF QVT final adopted specification: meta object facility (MOF) 2.0 query/view/transformation specification. , 2005 .

[95]  Krzysztof Czarnecki,et al.  Feature-based survey of model transformation approaches , 2006, IBM Syst. J..

[96]  Fachbereich Informatik,et al.  Finite Automata on Unranked and Unordered DAGs Extented Version , 2007 .

[97]  Tassilo Horn,et al.  The GReTL Transformation Language , 2011, ICMT@TOOLS.

[98]  Matthias Bohnen,et al.  RoboCup 2008 Mixed Reality League Team Description , 2008 .

[99]  Kurt Mehlhorn,et al.  The LEDA Platform of Combinatorial and Geometric Computing , 1997, ICALP.

[100]  Frédéric Jouault Loosely Coupled Traceability for ATL , 2005 .

[101]  Andrea Zisman,et al.  Traceability and completeness checking for agent-oriented systems , 2008, SAC '08.

[102]  Marion Langer,et al.  KI 2005 Workshop 7 Mixed-reality as a challenge to image understanding and artificial intelligence September 11 th , 2005 Koblenz , 2005 .

[103]  Rüdiger Grimm,et al.  Anforderungsanalyse für Risk-Management-Informationssysteme (RMIS) , 2009 .

[104]  Yonggang Zhang,et al.  Empowering Software Maintainers with Semantic Web Technologies , 2007, ESWC.

[105]  Francisco A. C. Pinheiro Formal and Informal Aspects of Requirements Tracing , 2000, WER.

[106]  Xiping Song,et al.  Lessons learned from building a Web-based requirements tracing system , 1998, Proceedings of IEEE International Symposium on Requirements Engineering: RE '98.

[107]  Ivan Kurtev,et al.  Change Impact Analysis based on Formalization of Trace Relations for Requirements , 2008 .

[108]  AntoniolGiuliano,et al.  Recovering Traceability Links between Code and Documentation , 2002 .

[109]  Lutz Priese,et al.  Automatische See-Through Kalibrierung , 2007 .

[110]  István Ráth,et al.  Incremental pattern matching in the viatra model transformation system , 2008, GRaMoT '08.

[111]  Joseph A. Goguen,et al.  An Object-Oriented Tool for Tracing Requirements , 1996, IEEE Softw..

[112]  Ivan Kurtev,et al.  Traceability-based change management in operational mappings , 2007 .

[113]  Ulrich Furbach,et al.  CAMPUS NEWS - an Information Network for Pervasive Universities , 2007, GI Jahrestagung.

[114]  Juan Garbajosa,et al.  Analyzing and Systematizing Current Traceability Schemas , 2006, 2006 30th Annual IEEE/NASA Software Engineering Workshop.

[115]  B. Westfechtel,et al.  GRAS, a graph-oriented database system for (software) engineering applications , 1993, Proceedings of 6th International Workshop on Computer-Aided Software Engineering.

[116]  Matthias Jarke,et al.  The software information base: A server for reuse , 2005, The VLDB Journal.