Traceability Method for Software Engineering Documentation



Similar documents
UML-based Test Generation and Execution

Component visualization methods for large legacy software in C/C++

Design of Visual Repository, Constraint and Process Modeling Tool based on Eclipse Plug-ins

Formalization of Functional Requirements and Their Traceability in UML Diagrams A Z Notation Based Approach

Dynamic Monitoring Interval to Economize SLA Evaluation in Cloud Computing Nor Shahida Mohd Jamail, Rodziah Atan, Rusli Abdullah, Mar Yah Said

A Traceability Approach to Support Object-oriented Software

A Hierarchical Self-X SLA for Cloud Computing

Overview. Stakes. Context. Model-Based Development of Safety-Critical Systems

Towards Modeling and Transformation of Security Requirements for Service-oriented Architectures

Keywords document, agile documentation, documentation, Techno functional expert, Team Collaboration, document selection;

A Variability Viewpoint for Enterprise Software Systems

Towards a Multi-Domain Model-Driven Traceability Approach

Efficient Service Broker Policy For Large-Scale Cloud Environments

MDE Adoption in Industry: Challenges and Success Criteria

UPROM Tool: A Unified Business Process Modeling Tool for Generating Software Life Cycle Artifacts

Regression Testing Based on Comparing Fault Detection by multi criteria before prioritization and after prioritization

Model-Driven Software Configuration Management and Environment Model

Monitoring Performances of Quality of Service in Cloud with System of Systems

Measuring the Impact of Changing Requirements on Software Project Cost: An Empirical Investigation

Towards Collaborative Requirements Engineering Tool for ERP product customization

A Change Impact Analysis Tool for Software Development Phase

ASCETiC Whitepaper. Motivation. ASCETiC Toolbox Business Goals. Approach

Agile Methods and Software Maintenance by Dr. David F. Rico, PMP, CSM

Virtualization Technologies (ENCS 691K Chapter 3)

Sub Code: CP7007 Sub Name: SOFTWARE REQUIREMENTS ENGINEERING Branch / Year: ME CSE / I Year Staff in charge: Dr.M.Senthil Kumar

A Visualization Approach for Bug Reports in Software Systems

Software Engineering/Courses Description Introduction to Software Engineering Credit Hours: 3 Prerequisite: (Computer Programming 2).

Case Study: Inception Phase. L. ch. 3-5

Using Requirements Traceability Links At Runtime A Position Paper

Web-based Multimedia Content Management System for Effective News Personalization on Interactive Broadcasting

A UML 2 Profile for Business Process Modelling *

An architecture for open and scalable WebGIS

Questions? Assignment. Techniques for Gathering Requirements. Gathering and Analysing Requirements

Architecture Centric Development in Software Product Lines

The Impact of Software Quality on Maintenance Process

Industrial Adoption of Automatically Extracted GUI Models for Testing

Tracing Requirements and Source Code during Software Development

SERG. Reconstructing Requirements Traceability in Design and Test Using Latent Semantic Indexing

Method of Fault Detection in Cloud Computing Systems

An Object Oriented Role-based Access Control Model for Secure Domain Environments

Agile Requirements Traceability Using Domain-Specific Modelling Languages

AN INTELLIGENT TUTORING SYSTEM FOR LEARNING DESIGN PATTERNS

Multifunctional Barcode Inventory System for Retailing. Are You Ready for It?

Scenario-based Requirements Engineering and User-Interface Design

packet retransmitting based on dynamic route table technology, as shown in fig. 2 and 3.

Chapter 5. Regression Testing of Web-Components

Evaluation of a Use-Case-Driven Requirements Analysis Tool Employing Web UI Prototype Generation

An Aspect-Oriented Product Line Framework to Support the Development of Software Product Lines of Web Applications

UML-based Conceptual Design Approach for Modeling Complex Processes in Web Application

Logical Data Models for Cloud Computing Architectures

Do you know? "7 Practices" for a Reliable Requirements Management. by Software Process Engineering Inc. translated by Sparx Systems Japan Co., Ltd.

GenericServ, a Generic Server for Web Application Development

Generating Enterprise Applications from Models

Implementing Digital Forensic Readiness for Cloud Computing Using Performance Monitoring Tools

2. Research and Development on the Autonomic Operation. Control Infrastructure Technologies in the Cloud Computing Environment

Which Documentation For Software Maintenance?

Research and realization of Resource Cloud Encapsulation in Cloud Manufacturing

A Framework of Model-Driven Web Application Testing

Proceedings of the 6th Educators Symposium: Software Modeling in Education at MODELS 2010 (EduSymp 2010)

VAIL-Plant Asset Integrity Management System. Software Development Process

Chapter 2 Addendum (More on Virtualization)

Model Driven Testing AGEDIS Architecture Interfaces and Tools

Business Analyst Interview Questions And Answers

2015 IBM Continuous Engineering Open Labs Target to better LEARNING

Model Driven Interoperability through Semantic Annotations using SoaML and ODM

Secure State UML: Modeling and Testing Security Concerns of Software Systems Using UML State Machines

Defining and Checking Model Smells: A Quality Assurance Task for Models based on the Eclipse Modeling Framework

Linking BPMN, ArchiMate, and BWW: Perfect Match for Complete and Lawful Business Process Models?

Access Control of Cloud Service Based on UCON

Traceability Patterns: An Approach to Requirement-Component Traceability in Agile Software Development

i-questionnaire A Software Service Tool for Data

Modeling the User Interface of Web Applications with UML

WELCOME TO CITUS CLOUD LOAD TEST

Model Based Software Development for DDG 1000 Advanced Gun System

Integrity 10. Curriculum Guide

Software Quality Assurance Plan

FERSOFT Software Project Management Plan Version 1.0 OBTRS ONLINE BUS TICKET RESERVATION SYSTEM

Business Process Modelling Languages, Goals and Variabilities

Multi-objective Design Space Exploration based on UML

Search Query and Matching Approach of Information Retrieval in Cloud Computing

Transcription:

www.ijcsi.org 216 Traceability Method for Software Engineering Documentation Nur Adila Azram 1 and Rodziah Atan 2 1 Department of Information System, Universiti Putra Malaysia, Company Serdang, Selangor, Malaysia 2 Department of Information System, Universiti Putra Malaysia, Company Serdang, Selangor, Malaysia Abstract Traceability has been widely discussed in research area. It has been one of interest topic to be research in software engineering. Traceability in software ation is one of the interesting topics to be research further. It is important in software ation to trace out the flow or process in all the s whether they depends with one another or not. In this paper, we present a traceability method for software engineering ation. The objective of this research is to facilitate in tracing of the software ation. Keywords: Traceability, Method, Software Engineering, Software Documentation. 1. Introduction Traceability can be described as the ability to track and follow processes that links and depends with one another to complete a certain job. It is one of important criteria in software engineering quality factors in which it describes and follows the life of a software objects in term of modeling the relations between software artifacts explicitly [1]. Traceability increases the understandability in complexity of relations and dependencies among objects generated in software development. It is important in facilitates system developers to keep track on their system development from the requirements until the implementations especially on large and complex system. Furthermore, traceability essential in tracking system flows for maintenance purpose. Issues on traceability have been widely discussed by researchers in software engineering. There are many approaches, method, framework or tool that has been proposed by researchers for solving problems regarding traceability in software engineering areas such as software design and testing. Traceability in software engineering ation also important so that people involves in the software system can trace everything from the ation for many purpose such as maintenance. In this paper, we presented a traceability method for software engineering ation tracing. The method use is based on a previous research. The remaining of this paper is structured as follows. In section 2, we make a review on related topic of the research. In section 3, we present the methodology. In section 4, we present the experimental setup for software engineering case studies ation. Finally, in Section 5, we conclude the work. 2. Review on Related Topic The review is divided into to sections which are:- 2.1) Software Engineering Traceability 2.2) Software Documentation 2.1 Software Engineering Traceability In the context of software engineering, traceability has been an important aspect of software development that is often required by various professional standards and government agencies [2]. It can be defined as the ability to describe and follow the life of a software object and a means for modeling the relations between software artifacts in an explicit way [1]. Developers use traceability in keeping track their development activities so that any changes made can be track down. From the review, one research use an approach which is usage-centered traceability process that utilizes UML class diagrams to define traceability strategies for a project and then visually represents trace queries as constraints upon subsets of the model [3]. Visual Trace Modeling Language (VTML) designed to increase the benefits of tracing, through making it more accessible to software developers and other project stakeholders. Their approach utilizes typical UML class diagrams to model trace queries as a set

www.ijcsi.org 217 of constraints enforced onto a division of traceability meta-model. Research by Jane Cleland-Huang, Jane Huffman Hayes, J. M. Domel (2009) propose a model-based traceability approach to help developers in getting advantages from traces they develop and also planning trace strategies in a graphical modeling environment [4]. The approach proposed consists of four different layers which are strategic layer, management layer, stored query layer and executable layer. All of the elements for this approach are represented in XML. The domain for demonstrating this approach is a traffic simulator project that composed of requirements, UML class diagrams, code, test cases and test case results. In another research, they presented a rule-based approach to support the automatic generation of traceability relations between s which are different parts of the requirements ations of a software system and analysis object models (AOM) that specify the main entities in the application domain of a system [5]. The generation is done based on two traceability rules that are RTOM rules and IREQ rules. This approach is evaluated by implementation of a prototype traceability tool that implemented in Java and uses the XML parser for Java. They used the metrics of precision and recall for the traceability evaluation which are different from this research. 3. Methodology The method used in software engineering ation tracing is based on a previous research by [1] that used the example of collaborative writing (CW) in software product line (SPL) engineering domain. There are three SPL engineering traceability issues that have been presented by them which are traceability links between feature and structural models, traceability links between SPL level and product level models and lastly traceability links between generic and concrete structural models. To be more specific, the description of each issue is in Table 1. They presented the framework of the tracing which is shown in Figure 1. From the framework, the tracing is done from feature model to structural model (a1 and b2) and from SPL level and Product level (a2 and b1). Issue 1 2 3 Table 1: of SPL engineering traceability issues Clear ation of the dependency between feature model of SPL and products. The ation of where SPL commonality is realized in the different products. Documentation of the generic models embodied by the concrete structural solutions develops for the product line. Another review is made on a research that presents an approach to customize traceability to the situation at hand [1]. This approach is done by scope the traces to be maintained to the activities that stakeholders must do. Core traceability paths that link activities to be supported are defined. They use the domain of software product line (SPL) engineering to test the approach. This approach has been selected in the research as the software engineering traceability method for software engineering ation tracing. 2.1 Software Documentation Software ation has been one of the important things in software development. It may be described as any artifact intended to communicate information on the software system [6]. Documentation has been well-known on the list of recommended practices to improve development and help maintenance [7]. It has been one of the oldest recommended practices. There have been many problems regarding ation such as nonexistent or of poor quality [8, 9]; over abundant and without a definite objective [10] and tracking of process or flow between various s that depends with one another. Fig. 1 Framework of previous research.

www.ijcsi.org 218 Based on the issues, we proposed the traceability metrics and attributes that are significant to our research for verifying and validating the tracing result. The proposed metrics are shown in Table 2 while the attributes are shown in Table 3. We take the concept of the tracing from the framework and modify it to suit in our own domain. The modified framework is shown in Figure 2. From the modified framework, the tracing is done from Document 1 to Document 2, Document 2 to Document 3 and Document 1 to Document 3. Table 2: The proposed traceability metrics Metric Dependency Commonalit y Structural Solution Dependency of keyword from one to another. Similarity of keyword within a or from one to another. Standard ation followed. Table 3: The proposed attributes 4. Experimental Setup Fig. 2 The modified framework. Attribute used linked Dependency of keyword used common keyword Keyword linked Categorization of Scope of Document compliance Total number of used for tracing. Total number of that linked with one another. Percentage of dependency between s. Total number of keyword used for tracing. Total number of common keyword used in each. Percentage of keyword that linked between s. Type of. Total range cover by following standard ation. Document compliance percentage following standard ation The experiment is set up to test and validate the method that we proposed. We use two software engineering case studies which are e-perubatan and e-exchange system. These two systems is a web-based application which developed for in-house usage. We use two s (Software Requirement Specification and Software Detail Design) and source code files from the two case studies for our experiment. The illustration of the tracing following the modified framework is shown in Figure 3. Fig. 3 Illustration of the tracing.

www.ijcsi.org 219 First of all, we need to determine what we want to trace. We called the thing that we want to trace as keyword. The keywords that we have determined will be traced down manually in SRS first. Then we trace them in SDD and source code files. The result of the tracing will show the total number of each keywords traced in each s. Then we proceed we automated tracing using a trace tool that we developed. The results from manual and automated tracing are compared by calculating the percentage of tracing and the percentage of differential rate between them. Table 4 shows the tracing result for e-exchange SRS and Table 5 shows the tracing result for e-exchange SDD. Table 4: Tracing result for e-exchange SRS KEYWORD SRS TRACING MANUAL AUTO DIFFERENCE User ID 8 8 100 0 Password 28 28 100 0 IOCA 63 63 100 0 student 97 96 99 1 Administrat 17 16 94.1 5.9 or Application 42 42 100 0 Exchange 21 20 95.2 4.8 Program update 8 8 100 0 delete 3 3 100 0 insert 1 1 100 0 The result of the tracing are verified and validated with the metrics and attributes that we have proposed. Metric 1 verified the dependency of keywords between SRS-SDD, SDD-SC and SRS-SC. Metric 2 verified the similarity of keywords from SRS to SDD to SC. And lastly Metric 3 verified the compliance percentage of SRS and SDD s with the standard guideline in which we use the IEEE standard guideline. We did not consider source code files for compliance percentage because of the difference programming language used by both case studies. Figure 4 show the verification result of Metric 1 for e- Exchange SRS-SDD keywords dependency. It shows that most of the keywords have 100 percentage linked between SRS and SDD which mean they are highly dependent between SRS and SDD. Figure 5 show the verification result of Metric 2 for e-exchange case study. It shows the number of keywords that are the same with the actual keyword we used in the tracing. Figure 6 show the verification result of Metric 3 for e-exchange SRS and SDD compliance percentage. It shows the compliance percentage of more than 70 which mean they are highly following the standard. Table 5: Tracing result for e-exchange SDD KEYWORD SRS TRACING DIFFERENCE Fig. 4 Verification result for Metric 1. MANUAL AUTO User ID 0 0 - - Password 12 12 100 0 IOCA 19 19 100 0 student 54 56 96.4 3.6 Administrat 8 8 100 0 or Application 24 25 96 4 Exchange 12 12 100 0 Program update 6 6 100 0 delete 1 1 100 0 insert 1 1 100 0 Fig. 5 Verification result for Metric 2.

www.ijcsi.org 220 [7] A. Forward and T. C. Lethbridge, The relevance of software ation, tools and technologies: a survey, In DocEng 02: Proceedings of the 2002 ACM symposium on Document engineering, 2002, pp. 26 33. [8] L. C. Briand. Software ation: How much is enough, In Proceedings of the Seventh European Conference on Software Maintenance and Reengineering (CSMR 03), 2003, pp.13 17. [9] S. Huang and S. Tilley, Towards a ation 74 maturity model, In SIGDOC 03: Proceedings of the 21st annual international conference on Documentation, 2003, pp. 93 99. [10] A. Forward and T. C. Lethbridge, The relevance of software ation, tools and technologies: a survey, In DocEng 02: Proceedings of the 2002 ACM symposium on Document engineering, 2002, pp. 26 33. 5. Conclusions Fig. 6 Verification result for Metric 3. In this paper, we present a traceability method for software engineering ation. We proposed the traceability metrics and attributes for verifying and validating the tracing result. We use ation from two software engineering case studies to implement this method using both manual tracing and automated trace tool. Evaluation of the tracing result from the experiment shows an acceptable tracing result. Thus, we are going to implement this method in a different domain which is in food ingredient ation and evaluate whether we can get the same satisfactory result as in software engineering ation. Nur Adila Azram is a Master degree student of Department of Information System at Universiti Putra Malaysia. She received Bachelor of Computer Science major in Software Engineering from University Putra Malaysia in 2010. She currently continued her study in Master of Science focusing on Software Engineering at University Putra Malaysia. Her research interests are focusing on software engineering traceability method and food traceability. Rodziah Atan is a Associate Professor of Department of Information System at Universiti Putra Malaysia. She received her PhD from University Putra Malaysia in 2005. Her field of interest is software process modeling and pursuing for new knowledge in bioinformatics visualization tools, cloud environment and other software engineering related areas especially software design. References [1] P. Lago, H. Muccini, H.v. Vliet, A scoped approach to traceability management, The Journal of System and Software 82, 2008, pp. 168-182. [2] H.C. Asuncion, F. Francois, R.N. Taylor, An End-to-end Industrial Software Traceability Tool, Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering, 2007, pp.115-124. [3] P. Mäder and J. Cleland-Huang, A Visual Traceability Modeling Language, In Proceedings of ACIVS (2). 2010, 226-240. [4] G. Spanoudakis, A. Zisman, E. Perez-Minana, P. Krause, Rule-based Generation Requirements Traceability Relations, The Journal of Systems and Software 72, 2003, pp. 105 127. [5] J. Cleland-Huang, J.H. Hayes, J.M. Domel, Model-based Traceability, TEFSE '09 Proceedings of the 2009 ICSE Workshop on Traceability in Emerging Forms of Software Engineering, 2009, pp.6-10. [6] S C. B. de Souza, N Anquetil, K. M. de Oliveira, A Study of the Documentation Essential to Software Maintenance, In SIGDOC 05: Proceedings of the 23rd Annual International Conference on Design of Communication: Documenting & Designing for Pervasive Information, 2005,pp. 68-75.