Traceability in Requirement Specifications Using Natural Languages

Size: px
Start display at page:

Download "Traceability in Requirement Specifications Using Natural Languages"

Transcription

1 Traceability in Requirement Specifications Using Natural Languages Kroha, P., Hnetynka, P., Simko, V., Vinarek, J. 1 Traceability and Requirements In software evolution and maintenance, traceability of requirements is very important [9]. When we move from analysis to design, we assign requirements to the design elements that will satisfy them. When we test and integrate code, our concern is to use traceability to determine which requirements led to each piece of code. Afterwards, when a change is planned we need to start impact analysis before the planned changes to identify how the system will be affected by a proposed change. Traceability tools help analysts understand the implications of a proposed change and ensure that no extraneous code exists. 1.1 Introduction Originally, traceability of requirements was investigated. The intention was find whether all requirements are implemented and that for any change in a requirement all its impacts can be found. There are impacts Fig. 1 in other requirements, there are impacts in design, implementation, black-box and white-box test cases, and in user documentation [20]. A requirements traceability matrix was used as a prerequisite for this purpose. A traceability matrix is a table that correlates any two documents that support software development. It represents a matching between high-level requirements and detailed, low-level requirements, e.g. detailed design, test plan, test cases. Usually, identifiers of high-level documents are column names and identifiers of low-level documents are row names. A marked table element means that there is a relation between the corresponding documents. The purpose of traceability matrix construction was to find whether all requirements described in high-level documents are implemented and tested in low-leveldocuments. Lately, it was necessary to accept that developers do not build the requirements traceability matrix to the proper level of detail because its maintenance is time consuming, even tough case tools such as DOORS [7], and Rational RequisitePro [18] support the process originally meant. Currently, requirements traceability is defined as the ability to follow the life of a requirement in both a forward and backward direction [11]. 1

2 Figure 1: Traceability in requirements Even though, we mention textual requirement specifications here, traceability concerns all free text documents expressed in natural language that have some relation to the program, e.g. user manuals, logs of errors, maintenance journals, design decisions, reports from inspection and review sessions, and also annotations of individual programmers and teams. In addition, free text documents often contain the available know-how knowledge of the application domain in form of explain notices. Additionally, diagrammatic representations, e.g. UML diagrams, are often supplemented with explanatory text as comments that help in communication between stakeholders. The possibility to trace code to free text documents can also help to locate reusecandidate components because it is usually difficult to specify which program unit should be design as reusable from the very beginning. Briefly, we can say that traceability links between areas of code and related sections of free text documents that are important for program comprehension and program maintenance. Traceability is very important in safety-critical systems because they producer are often legally required to demonstrate that all parts of the code trace back to valid requirements. There are laws such as the US Sarbanes-Oxley Act of 2002 requiring to implement change management processes with explicit traceability for software systems that can impact the balance sheet [6]. 2

3 1.2 Types of Traceability The process of software development can be seen as using a chain of editors. Programmers use these editors usually in a specific order, e.g. from analysis to coding. Any decision in a specific element of this chain has to be propagated to both ends of the chain to preserve the consistence of the documents. In principle, changes of maintenance or/and evolution may initially have been made to any of the documents (free text, diagrams, source code), and have then to be propagated to other remaining documents. More or less, we can distinguish two main types of traceability methods described in research papers: Updating requirements first and propagating the change to the code, i.e. creating traceability links top-down from free text documents of high-level to source code [19]. This means that links are propagated from high-level abstraction to lowlevel abstraction. This approach will be called a normative approach [14] or forward traceability. It is an ideal maintenance process. Creating traceability links bottom-up from source code to high-level free text documents, i.e. propagating links from low-level abstraction to high-level abstraction, that is a sort of reverse engineering [4]. This approach will be called a trace generation approach [12] or backward traceability or after the fact requirements tracing in [12]. As written above, traceability is necessary to provide maintenance and evolution of program systems. Ideally, both processes - maintenance and evolution - should follow the software development process phases. This means that requirements on program changes and program enhancements should be collected and than, at suitable time points, new analysis, design, implementation, test cases and other documents (we can denote them as free text documents even though they can contain coded diagrams) should be made as an impact of changes in requirements. If this methodology is strictly followed it is recommended to generate specific notices or frames in documents of design, source code, and test cases that denote borders and bidirectional links between parts of these documents (automatically generated or manually derived) from parts of requirements. This approach we used in our tool TESSI 2.3. Actually, it happens often that, e.g. because of the urgent call of an unhappy customer, engineers (programmers) make changes directly in source code without running the whole software development process [16]. In this case, some high-level documents become outdated and inconsistency between the high-level documents (original requirement specification and design specification) and source code occurs very probably. In such a case, the only possibility to find the links between the high-level free text documents and the source code is to try some kind of back propagation of changes in the source code. This means that we first have changes in source code and than we are looking for their impact in parts of requirements and other free text documents that have to be changed. Traceability will be recovered in this case. This approach described 3

4 in 3.2 uses methods of information retrieval [2] that is based on the assumption that engineers use meaningful names for program items, such as functions, variables, types, classes, and methods. Manual traces tend to be inconsistent and incomplete. This is the reason why tools are built to implement automatic tracing. Case tools support the forward tracing and special tools that we discuss later support backward tracing. 2 Traceability Top-Down Traditionally, traceability links are stored in tables (spreadsheets, databases) or requirements management tools such as Telelogics DOORS or IBMs Rational RequisitePro. Such links are build during the program development but they tend to deteriorate during a project as time-pressured team members fail to update them [6]. Available requirement management tools provide limited support for link creation and maintenance, offering features such as drag-and-drop techniques for creating links, visualization for traces, and denoting links to artifacts that were modified because they might have become outdated. This is referred to as in-place traceability in [6] where specialized tool Poirot is described. To achieve traceability in this way in maintenance of legacy systems is practically unachievable task because legacy systems were not initially developed supporting the idea of traceability. 2.1 Traceability and Identified Static Model In requirements, parts of UML model can be recognized and identified. It can be done partially automatically and partially manual. Class diagram (class hierarchy and associations), attributes, and methods (their existence) are parts of the UML model that describe the static structure. Their identification can be done automatically with some necessary human interaction because of the complexity of real world semantics. The often used method is based on the grammatical inspection [1]. This method offers a judgment saying that nouns in sentences of requirement specifications may have a link to classes in the corresponding UML model, verbs may represent methods or relationships, and adjectives may represent a value of an attribute. Because of the natural language complexity, this method works satisfactorily only when using a human interaction. 2.2 Traceability in System RequisitePro RequisitePro is a professional tool offered by IBM. Traceability links requirements to related requirements of same or different types. RequisitePros traceability feature makes it easy to track changes to a requirement throughout the development cycle. Without traceability, each change would require a review of your documents to determine which, if any, elements need updating. If either end-point of the connection is changed, the relationship becomes suspect. If you modify the text or selected attributes of a requirement that is traced to or traced 4

5 from another requirement, RequisitePro marks the relationship between the two requirements suspect. Traceability relationships cannot have circular references. For instance, a traceability relationship cannot exist between a requirement and itself, nor can a relationship indirectly lead back to a previously traced from node. RequisitePro runs a check for circular references each time you establish a traceability relationship. The trace to/trace from state represents a bidirectional dependency relationship between two requirements. The trace to/trace from state is displayed in a Traceability Matrix or Traceability Tree when you create a relationship between two requirements. Traceability relationships may be either direct or indirect. In a direct traceability relationship, a requirement is physically traced to or from another requirement. For example, if Requirement A is traced to Requirement B, and Requirement B is traced to Requirement C, then the relationships between Requirements A and B and between Requirements B and C are direct relationships.the relationship between Requirements A and C is indirect. Indirect relationships are maintained by RequisitePro; you cannot modify them directly. Direct and indirect traceability relationships are depicted with arrows in traceability views. Direct relationships are presented as solid arrows, and indirect relationships are dotted and lighter in color. A hierarchical relationship or a traceability relationship between requirements becomes suspect if RequisitePro detects that a requirement has been modified. If a requirement is modified, all its immediate children and all direct relationships traced to and from it are suspect. When you make a change to a requirement, the suspect state is displayed in a Traceability Matrix or a Tree. Changes include modifications to the requirement name, requirement text, requirement type, or attributes. 2.3 Traceability in System TESSI Some help can be done by applying of part-of-speech tagging analysis and searching for templates in the tree structure that represents the parsed sentence. We made some experiments based on grammatical templates taken from experience and described as trees in a domain-specific language using our system TESSI (the last version of TESSI in [15]). When a template matched a part of requirement specification text then an entity of the corresponding UML-model was generated. Its representation was propagated through XMI-interface to the tool Rational Rose that makes possible to draw the corresponding UML-model diagram and to generate the corresponding code-template. The tool TESSI builds and maintains some important relationships between requirements and parts of the resulted system, e.g. bi-directional links between the identified entities in sentences of textual requirements and the corresponding entities of the model. These links will be followed during an adaptive maintenance. This helps to hold requirements and programs consistent and supports the concept of software evolution in which every change in the software system should start with the change of the requirements specification and follow the life-cycle of development. Requirements traceability paths: There is a path (a trace) from top level requirements into detailed requirements. 5

6 The structure of requirement specification mirrors the abstraction levels of specification, i.e. requirements build a tree structure in that some requirements explain specific cases of more abstract requirements. There is an interesting problem how to find these relations between requirements that represent the relation of specialization. There are paths representing (tracing) semantic relationships among requirement specifications. The problem is that requirement specifications may have mutual influence, i.e. there are some semantic relationships between them and, in some cases, it is not possible to change them independently. There is a next interesting problem how to find the mutual semantic dependencies between parts of requirement specifications. Usually, there is a trace from requirements into design. However, it is possible that requirements and design are independent. There is a trace from requirements into test procedures. First, we develop blackbox test procedures based on requirements. We have to know how to change the black-box test procedures when changing requirements. White-box test procedures exist for all classes and their methods, i.e. changing the structure of classes and methods will impact the white-box test procedures. Trace requirements into user documentation plan means that the system functionality is completely described in User Manual and other documentation. New appended features in requirements have to be followed by newly appended chapters in User Manual. 3 Traceability Bottom-Up As we mentioned above, engineers maintaining software systems are often forced by dead lines to change source code first and hope that they will change other documents some other time. In this way, document inconsistency occurs because requirements remain unchanged. So, it is necessary to change the corresponding documents of the higher abstract level, e.g. requirement specifications, to preserve consistency. In principle, the process has two steps: to find keywords that specify the same concept in all documents, to build links between corresponding documents based on the keywords found We describe these both steps in subsections below in more details. 3.1 Identification of Requirements-related Changes in Source Code The backward traceability is based on the following known phenomenon. When writing the code programmers often use the mnemonics for identifiers of functions, variables, types, classes, and methods. The analysis of these mnemonics, so called changerelated keywords [14], can help to associate high-level concepts with program parts. 6

7 Requirements tracing of this kind consists of: document parsing, candidate link generation, candidate link evaluation, and traceability analysis. In this context, it is necessary to identify a subset of changes in source code that have an impact on requirements, so called requirements-related changes, because there are some changes in source code that correspond to bug fixing or refactoring and do not have any impact on requirements. In information retrieval, we can used a controlled vocabulary. This means that semantics of documents is represented by a set of keywords (descriptors) selected from a vocabulary given before. A query is than represented by a set of keywords specific for it and selected from the same vocabulary. In the past, authors were asked to describe the content of their papers using this technology. Similary, the keywords can be chosen from an analyst-defined ontology, created in advance. A keyword-matching algorithm is then applied to build lists of low-level elements that may potentially satisfy a given high-level requirement. These are called candidate links [12]. There is another possibility how to do it. This process is called normalization. We can automatically select all unique words of a document and than : we eliminate such words that are too much common or too much specialized (Zipf law). we extract nouns because we believe that nouns are the most important components of semantical meaning, we apply algorithm of stemming to reduce the number of words to words stems we apply algorithms of lemmatization to reduce the influence of grammar we can assign weights to words calculated from their frequency in document and normalized by the document length Keywords occurring in documents of both high-level and low-level are called candidate links. They are used for traceability matrix construction. In methods of top-down traceability, the analyst examines the text of the requirements visually after candidate links are found, determines the meanings of the documents in relation, compares the meanings, and decides whether the meanings are sufficiently close, i.e. whether candidate links are really links. The goal is to find high-level requirements that do not have children under low-level documents and the low-level documents or elements that do not have parents in higher level. This was originally called traceability analysis. Its goal was to find not implemented requirements or to find parts of code that became obsolete after requirements have been changed. 7

8 Currently, it has been found that maintenance top-down is too much time-consuming. Engineers being under time pressure make changes directly in source code, and because of that it is necessary to use bottom-up methods. So, it is necessary to find a matching between identifiers of source code elements that were changed during the last maintenance step and all documents on higher levels concerned. We assume that traceability links existed before changes and therefor we are looking for links between changed elements in source code and other documents. This reduces the set of keywords that are denoted as keywords of requirements-related changes. In [14], the following types of requirements-related changes caused by changes in source code have been identified: Changes in methods bodies are in most cases related to refactoring and/or bug fixes. Additions of new elements (classes, methods, package, fields) are usually related to the addition or extension of features. Additions and removals of elements having similar names are usually rename operations. This can be very misleading as addition of elements is likely to relate to feature extension while renames are simple refactorings. Changes in methods signature are usually related to refactoring. Changes in private elements can affect the external behaviour of the system. Additions of several methods having the same name (the same name but different parameters) are usually related to the same feature, i.e they have the same behavior. In practice, programmers use compound identifiers, e.g. firstnameabbreviation. The naming convention differs from one language to another. The keywords suitable for link search have to be extracted from identifiers. In paper [14], the camelcase convention is mentioned, which is used in several programming languages (e.g. Java and.net). In this convention, the names are split according to the position of capital letters in the name. The question of element granularity is discussed in [8]. They evaluated the economic value of tracing at lower levels of granularity measured by the effort needed to create the links versus value returned through tracing at various levels of precision. Their case study showed a tenfold increase in granularity returned only a twofold improvement in precision. To determine the set of candidates of keywords the processing of names of added or deleted elements were not enough. It is necessary to analyze the context of the change, i.e. we look at the call hierarchy of the element (a method or a class). By call hierarchy we mean all the methods/classes that are invoking the considered method or those invoking the a constructor of the considered class. The authors of [14] expect that going back by one, two or three levels in the call hierarchy should be enough to 8

9 gather relevant information about the context of the change. Additionally, keywords can be obtained from comments of classes, methods, and parent classes. After the keywords extraction, there are many irrelevant keywords in the list of candidates such as keywords relating to implementation details (set, get, string, etc. ), very general keywords in the project (e.g. the name of the project), or stop words (as mentioned above 3.1 that might appear in the documentation of elements (a, the, that, etc.). It is important to filter out as many of these irrelevant keywords as possible. It can be done manually or automatically using their frequency of occurrence, i.e. Zipf law will be applied. Finally, the remained keywords signalizing changes can be grouped together. One possible way to group changes is to consider all changes affecting a class as a single change, where the keywords extracted from all the changes in that class are grouped together. 3.2 Identification of Links between Code and Requirements After keywords (called change-related elements) in source code (in general, keywords in a low-level document) have been identified that might cause changes in requirements, methods of information retrieval [17] are used that are based on the idea that the name of an element in the source code usually reflects its intended function described in requirements and that programmers use the same words for the same entities during the whole software development process, i.e. a specific noun in requirements is used in the same sense as the class name in the corresponding UML diagram and as the class name in the corresponding Java program etc. In paper [2], which can be seen as a representative of this approach, two models are used to generate links: A probabilistic model In the probabilistic model, we use a classifier, e.g. a Bayes classifier, to assign a probability to every word taken from a prescribed vocabulary (given by Zipf law) in each free text document. The free text documents are then classified, i.e. we created classes of documents that have similar probabilities of the same words. Then we use the same classification procedure (the same prescribed vocabulary) for source code documents to score the sequences of mnemonics extracted from each source code component. A high score indicates a high probability that a particular sequence of mnemonics be relevant to the free text document. So, we interpret it as an indication of the existence of a semantic link between the component from which the sequence had been extracted and the class of the free text documents. A vector space model In the vector space model, free text documents and source code documents are represented as vectors in an n-dimensional space, where n is the number of words in the prescribed vocabulary, i.e. each word of the prescribed vocabulary is represented by a space dimension. Documents are ranked against each other by computing a similarity function between the corresponding vectors. Very often, the cosine similarity function 9

10 will be used, i.e. the similarity of two documents corresponds to the cosine of the angle between the vectors of these two documents. In the paper [2], the authors showed that it is possible to retrieve traceability links from source code to textual manual (library LEDA - 95 KLOC, 208 classes, and 88 manual pages) with a recall of 100 % but with a precision of 13 %. They used their tool RETRO described in [13]. Goals for an effective requirements tracing tool and the corresponding tracing tool RETRO are described in [12]. 3.3 Using the Bottom-Up Traceability Technology Above, we described two phases of the reverse traceability. Now, we present their cooperation. First, the changes between the two versions of the source code have to be detected and the relevant changes have to be identified that are likely to affect the external behavior based on the rules given in 3.1 taken from [14]. The source code comparing strategy consists in focusing on only two types of change: addition and removal of elements that are packages, classes, methods and fields. The comparing is done based on the name only. By detecting all added elements, this approach is detecting the main code changes that relate to feature addition/extension as mentioned in 3.1. To filter out renames, the names and the call hierarchy (for classes and methods) of the added and the removed elements is compared. If the added and deleted elements belong to the same parent element (e.g. two fields belong to the same class) and if they have similar names, then the change is considered as a rename and is ignored by our approach. Using the steps above, a list of program elements is obtained whose changes might have impact on requirements. Then, for each identified program element a list of keywords has to be extracted from the names of the changed elements, from their documentation, and from their call hierarchy. Finally, the extracted keywords have to be traced to the requirements specification in order to identify outdated ones. The approach described above can either be used in a fully automated way, where the changes are directly traced to requirements or in a semi-automated way, where the user can filter out manually the changes that he thinks are not relevant before running the tracing [14]. 3.4 Evaluation of Bottom-Up Traceability In paper [14], there is an interesting evaluation of their method (described briefly above). First, they evaluate the effectiveness of their approach for identifying requirementsrelated changes using the evaluation question: 10

11 Figure 2: Evaluation of precision and recall of traced links EQ1: How effective are the proposed heuristics for differentiating between changes which impact requirements and those which do not? Results: Using their comparing tool, 33 classes were identified, covering 12 of the 14 requirementsrelated changes. Among the 33 identified classes, 26 actually contained parts of the 14 changes. The other 7 classes were simple refactorings. Thus, the approach achieved a precision of 26 / 33 = 79 % and a recall of 12 / 14 = 85.7 %. Second, they evaluate the effectiveness of using change-related keywords for tracing the changes to requirements instead of tracing classes directly, thus validating the second and third step of their approach that we described in 3.3. The evaluation question is: EQ2: Does the approach of change-based tracing give better results than the classbased tracing? If yes, how much? Result is given in Fig. 2 and means that the enhancement of keywords from class names to other (discussed in 3.3 brings better precision and recall. 4 Conclusion Concluded, information retrieval techniques can provide a way to recovering traceability links between the documentation of a system and its source code (between highlevel documents and low-level documents) and reduce the manual effort required from 11

12 the engineer to maintain the software system. Document matching is done automatically, and the analyst then inspects the candidate links. Its full automation cannot be achieved because of uncertainty of natural language. The experiments have shown [2] that it is possible to achieve a very high recall (about 100 % ) but with the accompanying precision about 14 %. Because of using natural language, problems caused by ambiguity can be expected. This means that different modules are programmed from different programmers (different team from different countries) who can have different interpretation for words. In information retrieval, a large free text of a document provides a context of the used word but it is not the case of comments in source programs. Of course, it is necessary to avoid reusing the same term to describe different concepts in different domains. Such a semantic gap can be resolved by defining domain-specific synonyms and by a tool that decides about their matching. The domain description is based on a wellconstructed project glossary, defined during initial discovery meetings with stakeholders and used consistently throughout product development. It will generally increase consistency in term usage and subsequently improve traceability. Experiences are described in [21]. They weighted keywords from glossary more highly than other types of keywords and have got an advantage in precision and recall. Acknowledgments This work was partially supported by the Grant Agency of the Czech Republic project P103/11/1489. References [1] Abbott, R.J.: Program design by informal english descriptions. Communications of the ACM, 26(11), pp , [2] Antoniol, G., Canfora, G., Casazza, G., De Lucia, A., Merlo, E.: Recovering Traceability Links between Code and Documentation. IEEE Transactions on Software Engineering, Vol. 28, No. 10, October 2002 [3] Charrada2012 Charrada, E.B., Koziolek, A., Glinz, M.: Identifying Outdated Requirements Based on Source Code Changes. In: Proceedings Requirement Engineering 2012, Chicago, IEEE [4] Charrada, E.B., and Glinz, M.: An automated hint generation approach for supporting the evolution of requirements specifications. In: Proc. Joint ERCIM Workshop Software Evolution (EVOL) and Int. Workshop Principles of Software Evolution (IWPSE), pp. 5862, [5] Cleland-Huang, J., Chang, C.K., and Christensen, M.: Eventbased traceability for managing evolutionary change. IEEE Trans. Softw. Eng., Vol. 29, No. 9, pp ,

13 [6] Cleland-Huang, J., Settimi, R., Romanova, E., Berenbach, B., and Clark, S.: Best Practices for Automated Traceability. IEEE, June [7] Telelogic product DOORS, doorsers/doors/index.cfm, [8] Egyed,A. et al.: A Value-Based Approach for Understanding Cost-Benefit Trade- Offs During Automated Software Traceability. In: Proceedings of the 3rd International Workshop Traceability in Emerging Forms of Software Engineering, ACM Press, pp. 2-7, [9] Ernst, N., Borgida, A., and Mylopoulos, J.: Requirements evolution drives software evolution. In: Proc. Joint ERCIM Workshop Software Evolution (EVOL) and Int. Workshop Principles of Software Evolution (IWPSE), pp. 1620, [10] Gemeinhardt, L.: Connecting TESSI and Rational Rose by means of XML. Project Report, TU Chemnitz, (In German) [11] Gotel, O.C.Z., and Finkelstein, A.C.W.: An Analysis of the Requirements Traceability Problem. Proceedings of the 1st IEEE International Conference Requirements Engineering, IEEE CS Press, pp , [12] Hayes, J., Dekhtyar, A., and Sundaram, S.: Advancing candidate link generation for requirements tracing: the study of methods. IEEE Trans. Softw. Eng., vol. 32, no. 1, pp. 419, Jan [13] Hayes, J., Dekhtyar, A., Sundaram, S., Holbrook, E., S. Vadlamudi, S., and April, A.: REquirements TRacing On target (RETRO): improving software maintenance through traceability recovery. Innovations in Systems and Software Engineering, Vol. 3, No. 3, pp , [14] Herrmann, A., Wallnofer, A., and B. Paech, B.: Specifying changes only a case study on delta requirements. In: Requirements Engineering: Foundation for Software Quality, pp. 4558, [15] Kroha, P., Janetzko, R., Labra, J. E.: Ontologies in Checking for Inconsistency of Requirements Specification. In: Dokoohaki, N., Zavoral, F., Noll, J.(Eds.): Proceedings of the 3rd International Conference on Advances in Semantic Processing SEMAPRO 2009, IEEE Computer Society, Sliema, Malta, October [16] Lethbridge, T.C., Singer, J., and Forward, A.: How software engineers use documentation: The state of the practice. IEEE Softw., vol. 20, no. 6, pp. 3539, [17] Oliveto, R., Gethers, M., Poshyvanyk, D., and De Lucia, A.: On the equivalence of information retrieval methods for automated traceability link recovery. In: Proceedings of International Conference Program Comprehension, pp. 6871, [18] Rational RequisitePro, tools/reqpro/,

14 [19] de Souza, S.C.B., Anquetil, N., and de Oliveira, K.M.: A study of the documentation essential to software maintenance. In: Proceedings of International Conference Design of communication: documenting and designing for pervasive information, SIGDOC05, pp. 6875, [20] Spence, I., Probasco, L.: Traceability Strategies for Managing Requirements with Use Cases. Rational Software White Paper, 2000 [21] Zou, X., Settimi, R., and Cleland-Huang, J.: Phrasing in Dynamic Requirements Trace Retrieval. In: Proc. 30th Ann. Intl Computer Software and Applications Conf., IEEE CS Press, pp ,

Enhancing Requirement Traceability Link Using User's Updating Activity

Enhancing Requirement Traceability Link Using User's Updating Activity ISSN (Online) : 2319-8753 ISSN (Print) : 2347-6710 International Journal of Innovative Research in Science, Engineering and Technology Volume 3, Special Issue 3, March 2014 2014 International Conference

More information

Interactive Recovery of Requirements Traceability Links Using User Feedback and Configuration Management Logs

Interactive Recovery of Requirements Traceability Links Using User Feedback and Configuration Management Logs Interactive Recovery of Requirements Traceability Links Using User Feedback and Configuration Management Logs Ryosuke Tsuchiya 1, Hironori Washizaki 1, Yoshiaki Fukazawa 1, Keishi Oshima 2, and Ryota Mibe

More information

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

SERG. Reconstructing Requirements Traceability in Design and Test Using Latent Semantic Indexing Delft University of Technology Software Engineering Research Group Technical Report Series Reconstructing Requirements Traceability in Design and Test Using Latent Semantic Indexing Marco Lormans and Arie

More information

Verifying Business Processes Extracted from E-Commerce Systems Using Dynamic Analysis

Verifying Business Processes Extracted from E-Commerce Systems Using Dynamic Analysis Verifying Business Processes Extracted from E-Commerce Systems Using Dynamic Analysis Derek Foo 1, Jin Guo 2 and Ying Zou 1 Department of Electrical and Computer Engineering 1 School of Computing 2 Queen

More information

Traceability Method for Software Engineering Documentation

Traceability Method for Software Engineering Documentation 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,

More information

Change Pattern-Driven Traceability of Business Processes

Change Pattern-Driven Traceability of Business Processes Proceedings of the International MultiConference of Engineers and Computer Scientists 2014 Vol I,, March 12-14, 2014, Hong Kong Change Pattern-Driven Traceability of Business Processes Watcharin Uronkarn

More information

A Traceability Approach to Support Object-oriented Software

A Traceability Approach to Support Object-oriented Software A Traceability Approach to Support Object-oriented Software Othman Mohd Yusop Centre for Advanced Software Engineering Universiti Teknologi Malaysia 54100 Jln Semarak, K. Lumpur othmanyusop@utm.my Dr.

More information

Recovering Traceability Links between Requirements and Source Code using the Configuration Management Log *

Recovering Traceability Links between Requirements and Source Code using the Configuration Management Log * IEICE TRANS. FUNDAMENTALS/COMMUN./ELECTRON./INF. & SYST., VOL. E85-A/B/C/D, No. xx JANUARY 20xx 1 PAPER Recovering Traceability Links between Requirements and Source Code using the Configuration Management

More information

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

Component visualization methods for large legacy software in C/C++ Annales Mathematicae et Informaticae 44 (2015) pp. 23 33 http://ami.ektf.hu Component visualization methods for large legacy software in C/C++ Máté Cserép a, Dániel Krupp b a Eötvös Loránd University mcserep@caesar.elte.hu

More information

Natural Language to Relational Query by Using Parsing Compiler

Natural Language to Relational Query by Using Parsing Compiler Available Online at www.ijcsmc.com International Journal of Computer Science and Mobile Computing A Monthly Journal of Computer Science and Information Technology IJCSMC, Vol. 4, Issue. 3, March 2015,

More information

JRefleX: Towards Supporting Small Student Software Teams

JRefleX: Towards Supporting Small Student Software Teams JRefleX: Towards Supporting Small Student Software Teams Kenny Wong, Warren Blanchet, Ying Liu, Curtis Schofield, Eleni Stroulia, Zhenchang Xing Department of Computing Science University of Alberta {kenw,blanchet,yingl,schofiel,stroulia,xing}@cs.ualberta.ca

More information

Rule-Based Maintenance of Post-Requirements Traceability Relations

Rule-Based Maintenance of Post-Requirements Traceability Relations Rule-Based Maintenance of Post-Requirements Traceability Relations Patrick Mäder 1, Orlena Gotel 2 and Ilka Philippow 1 1 Department of Software Systems Ilmenau Technical University, Germany patrick.maeder

More information

Cost-Effective Traceability Links for Architecture-Level Software Understanding: A Controlled Experiment

Cost-Effective Traceability Links for Architecture-Level Software Understanding: A Controlled Experiment Cost-Effective Traceability Links for Architecture-Level Software Understanding: A Controlled Experiment Muhammad Atif Javed, Srdjan Stevanetic and Uwe Zdun Software Architecture Research Group University

More information

The Specific Text Analysis Tasks at the Beginning of MDA Life Cycle

The Specific Text Analysis Tasks at the Beginning of MDA Life Cycle SCIENTIFIC PAPERS, UNIVERSITY OF LATVIA, 2010. Vol. 757 COMPUTER SCIENCE AND INFORMATION TECHNOLOGIES 11 22 P. The Specific Text Analysis Tasks at the Beginning of MDA Life Cycle Armands Šlihte Faculty

More information

RETRATOS: Requirement Traceability Tool Support

RETRATOS: Requirement Traceability Tool Support RETRATOS: Requirement Traceability Tool Support Gilberto Cysneiros Filho 1, Maria Lencastre 2, Adriana Rodrigues 2, Carla Schuenemann 3 1 Universidade Federal Rural de Pernambuco, Recife, Brazil g.cysneiros@gmail.com

More information

A Requirements-to-Implementation Mapping Tool for Requirements Traceability

A Requirements-to-Implementation Mapping Tool for Requirements Traceability A Requirements-to-Implementation Mapping Tool for Requirements Traceability Jorge Esparteiro Garcia1,3*, Ana C. R. Paiva2,3 1 Polytechnic Institute of Viana do Castelo, Praca General Barbosa, Viana do

More information

Supporting Software Development Process Using Evolution Analysis : a Brief Survey

Supporting Software Development Process Using Evolution Analysis : a Brief Survey Supporting Software Development Process Using Evolution Analysis : a Brief Survey Samaneh Bayat Department of Computing Science, University of Alberta, Edmonton, Canada samaneh@ualberta.ca Abstract During

More information

Mining Text Data: An Introduction

Mining Text Data: An Introduction Bölüm 10. Metin ve WEB Madenciliği http://ceng.gazi.edu.tr/~ozdemir Mining Text Data: An Introduction Data Mining / Knowledge Discovery Structured Data Multimedia Free Text Hypertext HomeLoan ( Frank Rizzo

More information

Requirements Management

Requirements Management MS Excel / Word, and ReqIF Export / Import and Round-trip Medical & Automotive Requirements and Risk (FMEA, IEC 62304, IEC 61508, ISO 26262...) Enterprise Architect and Atlassian JIRA integration Requirements

More information

An Approach towards Automation of Requirements Analysis

An Approach towards Automation of Requirements Analysis An Approach towards Automation of Requirements Analysis Vinay S, Shridhar Aithal, Prashanth Desai Abstract-Application of Natural Language processing to requirements gathering to facilitate automation

More information

Building a Question Classifier for a TREC-Style Question Answering System

Building a Question Classifier for a TREC-Style Question Answering System Building a Question Classifier for a TREC-Style Question Answering System Richard May & Ari Steinberg Topic: Question Classification We define Question Classification (QC) here to be the task that, given

More information

Efficient Techniques for Improved Data Classification and POS Tagging by Monitoring Extraction, Pruning and Updating of Unknown Foreign Words

Efficient Techniques for Improved Data Classification and POS Tagging by Monitoring Extraction, Pruning and Updating of Unknown Foreign Words , pp.290-295 http://dx.doi.org/10.14257/astl.2015.111.55 Efficient Techniques for Improved Data Classification and POS Tagging by Monitoring Extraction, Pruning and Updating of Unknown Foreign Words Irfan

More information

Using Library Dependencies for Clustering

Using Library Dependencies for Clustering Using Library Dependencies for Clustering Jochen Quante Software Engineering Group, FB03 Informatik, Universität Bremen quante@informatik.uni-bremen.de Abstract: Software clustering is an established approach

More information

BUSINESS RULES AND GAP ANALYSIS

BUSINESS RULES AND GAP ANALYSIS Leading the Evolution WHITE PAPER BUSINESS RULES AND GAP ANALYSIS Discovery and management of business rules avoids business disruptions WHITE PAPER BUSINESS RULES AND GAP ANALYSIS Business Situation More

More information

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

Questions? Assignment. Techniques for Gathering Requirements. Gathering and Analysing Requirements Questions? Assignment Why is proper project management important? What is goal of domain analysis? What is the difference between functional and non- functional requirements? Why is it important for requirements

More information

17 Collaborative Software Architecting through Knowledge Sharing

17 Collaborative Software Architecting through Knowledge Sharing 17 Collaborative Software Architecting through Knowledge Sharing Peng Liang, Anton Jansen, Paris Avgeriou Abstract: In the field of software architecture, there has been a paradigm shift from describing

More information

Parsing Software Requirements with an Ontology-based Semantic Role Labeler

Parsing Software Requirements with an Ontology-based Semantic Role Labeler Parsing Software Requirements with an Ontology-based Semantic Role Labeler Michael Roth University of Edinburgh mroth@inf.ed.ac.uk Ewan Klein University of Edinburgh ewan@inf.ed.ac.uk Abstract Software

More information

Chapter 8 The Enhanced Entity- Relationship (EER) Model

Chapter 8 The Enhanced Entity- Relationship (EER) Model Chapter 8 The Enhanced Entity- Relationship (EER) Model Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 8 Outline Subclasses, Superclasses, and Inheritance Specialization

More information

An Improved VSM-based Post-Requirements Traceability Recovery Approach Using Context Analysis

An Improved VSM-based Post-Requirements Traceability Recovery Approach Using Context Analysis An Improved VSM-based Post-Requirements Traceability Recovery Approach Using Context Analysis Jiale Zhou, Yue Lu, Kristina Lundqvist Mälardalen Real-Time Research Centre, Mälardalen University, Västerås,

More information

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

Do you know? 7 Practices for a Reliable Requirements Management. by Software Process Engineering Inc. translated by Sparx Systems Japan Co., Ltd. Do you know? "7 Practices" for a Reliable Requirements Management by Software Process Engineering Inc. translated by Sparx Systems Japan Co., Ltd. In this white paper, we focus on the "Requirements Management,"

More information

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

Formalization of Functional Requirements and Their Traceability in UML Diagrams A Z Notation Based Approach Formalization of Functional Requirements and Their Traceability in UML Diagrams A Z Notation Based Approach Sabnam Sengupta 1,Swapan Bhattacharya 2 Department of Computer Science & Engineering, Jadavpur

More information

Towards a Multi-Domain Model-Driven Traceability Approach

Towards a Multi-Domain Model-Driven Traceability Approach Towards a Multi-Domain Model-Driven Traceability Approach Masoumeh Taromirad, Nicholas Matragkas, and Richard F. Paige Department of Computer Science, University of York, UK [mt705,nicholas.matragkas,richard.paige]@york.ac.uk

More information

dm106 TEXT MINING FOR CUSTOMER RELATIONSHIP MANAGEMENT: AN APPROACH BASED ON LATENT SEMANTIC ANALYSIS AND FUZZY CLUSTERING

dm106 TEXT MINING FOR CUSTOMER RELATIONSHIP MANAGEMENT: AN APPROACH BASED ON LATENT SEMANTIC ANALYSIS AND FUZZY CLUSTERING dm106 TEXT MINING FOR CUSTOMER RELATIONSHIP MANAGEMENT: AN APPROACH BASED ON LATENT SEMANTIC ANALYSIS AND FUZZY CLUSTERING ABSTRACT In most CRM (Customer Relationship Management) systems, information on

More information

Training Management System for Aircraft Engineering: indexing and retrieval of Corporate Learning Object

Training Management System for Aircraft Engineering: indexing and retrieval of Corporate Learning Object Training Management System for Aircraft Engineering: indexing and retrieval of Corporate Learning Object Anne Monceaux 1, Joanna Guss 1 1 EADS-CCR, Centreda 1, 4 Avenue Didier Daurat 31700 Blagnac France

More information

A Service Modeling Approach with Business-Level Reusability and Extensibility

A Service Modeling Approach with Business-Level Reusability and Extensibility A Service Modeling Approach with Business-Level Reusability and Extensibility Jianwu Wang 1,2, Jian Yu 1, Yanbo Han 1 1 Institute of Computing Technology, Chinese Academy of Sciences, 100080, Beijing,

More information

Requirements Traceability Recovery

Requirements Traceability Recovery MASTER S THESIS Requirements Traceability Recovery - A Study of Available Tools - Author: Lina Brodén Supervisor: Markus Borg Examiner: Prof. Per Runeson April 2011 Abstract This master s thesis is focused

More information

Get the most value from your surveys with text analysis

Get the most value from your surveys with text analysis PASW Text Analytics for Surveys 3.0 Specifications Get the most value from your surveys with text analysis The words people use to answer a question tell you a lot about what they think and feel. That

More information

Automatic Annotation Wrapper Generation and Mining Web Database Search Result

Automatic Annotation Wrapper Generation and Mining Web Database Search Result Automatic Annotation Wrapper Generation and Mining Web Database Search Result V.Yogam 1, K.Umamaheswari 2 1 PG student, ME Software Engineering, Anna University (BIT campus), Trichy, Tamil nadu, India

More information

Transaction-Typed Points TTPoints

Transaction-Typed Points TTPoints Transaction-Typed Points TTPoints version: 1.0 Technical Report RA-8/2011 Mirosław Ochodek Institute of Computing Science Poznan University of Technology Project operated within the Foundation for Polish

More information

ReqXChanger Closing the Gap between Requirements and Modelling

ReqXChanger Closing the Gap between Requirements and Modelling ReqXChanger Closing the Gap between Requirements and Modelling Index: Features Principles Usage Example The Gearwheel between Requirements and Modelling Time- and cost pressure, increasing competition,

More information

Supporting Requirements Traceability through Refactoring

Supporting Requirements Traceability through Refactoring Supporting Requirements Traceability through Refactoring Anas Mahmoud Computer Science and Engineering Mississippi State University Mississippi State, MS, USA amm560@msstate.edu Nan Niu Computer Science

More information

The Concern-Oriented Software Architecture Analysis Method

The Concern-Oriented Software Architecture Analysis Method The Concern-Oriented Software Architecture Analysis Method Author: E-mail: Student number: Supervisor: Graduation committee members: Frank Scholten f.b.scholten@cs.utwente.nl s0002550 Dr. ir. Bedir Tekinerdoǧan

More information

A CONCEPTUAL MODEL FOR REQUIREMENTS ENGINEERING AND MANAGEMENT FOR CHANGE-INTENSIVE SOFTWARE

A CONCEPTUAL MODEL FOR REQUIREMENTS ENGINEERING AND MANAGEMENT FOR CHANGE-INTENSIVE SOFTWARE A CONCEPTUAL MODEL FOR REQUIREMENTS ENGINEERING AND MANAGEMENT FOR CHANGE-INTENSIVE SOFTWARE Jewgenij Botaschanjan, Andreas Fleischmann, Markus Pister Technische Universität München, Institut für Informatik

More information

Modeling Guidelines Manual

Modeling Guidelines Manual Modeling Guidelines Manual [Insert company name here] July 2014 Author: John Doe john.doe@johnydoe.com Page 1 of 22 Table of Contents 1. Introduction... 3 2. Business Process Management (BPM)... 4 2.1.

More information

Improving Traceability of Requirements Through Qualitative Data Analysis

Improving Traceability of Requirements Through Qualitative Data Analysis Improving Traceability of Requirements Through Qualitative Data Analysis Andreas Kaufmann, Dirk Riehle Open Source Research Group, Computer Science Department Friedrich-Alexander University Erlangen Nürnberg

More information

Parsing Technology and its role in Legacy Modernization. A Metaware White Paper

Parsing Technology and its role in Legacy Modernization. A Metaware White Paper Parsing Technology and its role in Legacy Modernization A Metaware White Paper 1 INTRODUCTION In the two last decades there has been an explosion of interest in software tools that can automate key tasks

More information

IMPROVING JAVA SOFTWARE THROUGH PACKAGE STRUCTURE ANALYSIS

IMPROVING JAVA SOFTWARE THROUGH PACKAGE STRUCTURE ANALYSIS IMPROVING JAVA SOFTWARE THROUGH PACKAGE STRUCTURE ANALYSIS Edwin Hautus Compuware Europe P.O. Box 12933 The Netherlands edwin.hautus@nl.compuware.com Abstract Packages are an important mechanism to decompose

More information

Semantic Concept Based Retrieval of Software Bug Report with Feedback

Semantic Concept Based Retrieval of Software Bug Report with Feedback Semantic Concept Based Retrieval of Software Bug Report with Feedback Tao Zhang, Byungjeong Lee, Hanjoon Kim, Jaeho Lee, Sooyong Kang, and Ilhoon Shin Abstract Mining software bugs provides a way to develop

More information

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

Linking BPMN, ArchiMate, and BWW: Perfect Match for Complete and Lawful Business Process Models? Linking BPMN, ArchiMate, and BWW: Perfect Match for Complete and Lawful Business Process Models? Ludmila Penicina Institute of Applied Computer Systems, Riga Technical University, 1 Kalku, Riga, LV-1658,

More information

Rational DOORS Next Generation. Quick Start Tutorial

Rational DOORS Next Generation. Quick Start Tutorial Rational DOORS Next Generation Quick Start Tutorial 1 Contents 1. Introduction... 2 2. Terminology... 3 3. Project Area Preparation... 3 3.1 Creating the project area... 3 4 Browsing Artifacts and Modules...

More information

Software Engineering. Session 3 Main Theme Requirements Definition & Management Processes and Tools Dr. Jean-Claude Franchitti

Software Engineering. Session 3 Main Theme Requirements Definition & Management Processes and Tools Dr. Jean-Claude Franchitti Software Engineering Session 3 Main Theme Requirements Definition & Management Processes and Tools Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute of Mathematical

More information

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

Traceability Patterns: An Approach to Requirement-Component Traceability in Agile Software Development Traceability Patterns: An Approach to Requirement-Component Traceability in Agile Software Development ARBI GHAZARIAN University of Toronto Department of Computer Science 10 King s College Road, Toronto,

More information

Blog Post Extraction Using Title Finding

Blog Post Extraction Using Title Finding Blog Post Extraction Using Title Finding Linhai Song 1, 2, Xueqi Cheng 1, Yan Guo 1, Bo Wu 1, 2, Yu Wang 1, 2 1 Institute of Computing Technology, Chinese Academy of Sciences, Beijing 2 Graduate School

More information

WHITE PAPER DATA GOVERNANCE ENTERPRISE MODEL MANAGEMENT

WHITE PAPER DATA GOVERNANCE ENTERPRISE MODEL MANAGEMENT WHITE PAPER DATA GOVERNANCE ENTERPRISE MODEL MANAGEMENT CONTENTS 1. THE NEED FOR DATA GOVERNANCE... 2 2. DATA GOVERNANCE... 2 2.1. Definition... 2 2.2. Responsibilities... 3 3. ACTIVITIES... 6 4. THE

More information

Semantic annotation of requirements for automatic UML class diagram generation

Semantic annotation of requirements for automatic UML class diagram generation www.ijcsi.org 259 Semantic annotation of requirements for automatic UML class diagram generation Soumaya Amdouni 1, Wahiba Ben Abdessalem Karaa 2 and Sondes Bouabid 3 1 University of tunis High Institute

More information

The Role of Requirements Traceability in System Development

The Role of Requirements Traceability in System Development The Role of Requirements Traceability in System Development by Dean Leffingwell Software Entrepreneur and Former Rational Software Executive Don Widrig Independent Technical Writer and Consultant In the

More information

ONTOLOGY FOR MOBILE PHONE OPERATING SYSTEMS

ONTOLOGY FOR MOBILE PHONE OPERATING SYSTEMS ONTOLOGY FOR MOBILE PHONE OPERATING SYSTEMS Hasni Neji and Ridha Bouallegue Innov COM Lab, Higher School of Communications of Tunis, Sup Com University of Carthage, Tunis, Tunisia. Email: hasni.neji63@laposte.net;

More information

Requirements Management

Requirements Management REQUIREMENTS By Harold Halbleib Requirements Management Identify, Specify, Track and Control Requirements Using a Standard Process About the author... Harold Halbleib has a degree in Electrical Engineering

More information

How to Make a Domain Model. Tutorial

How to Make a Domain Model. Tutorial How to Make a Domain Model Tutorial What is a Domain Model? Illustrates meaningful conceptual classes in problem domain Represents real-world concepts, not software components Software-oriented class diagrams

More information

Recognition. Sanja Fidler CSC420: Intro to Image Understanding 1 / 28

Recognition. Sanja Fidler CSC420: Intro to Image Understanding 1 / 28 Recognition Topics that we will try to cover: Indexing for fast retrieval (we still owe this one) History of recognition techniques Object classification Bag-of-words Spatial pyramids Neural Networks Object

More information

Requirements Analysis through Viewpoints Oriented Requirements Model (VORD)

Requirements Analysis through Viewpoints Oriented Requirements Model (VORD) Requirements Analysis through Viewpoints Oriented Requirements Model (VORD) Ahmed M. Salem Computer Science Department California State University, Sacramento Sacramento, CA 95819 USA Email: salema@ecs.csus.edu

More information

IT services for analyses of various data samples

IT services for analyses of various data samples IT services for analyses of various data samples Ján Paralič, František Babič, Martin Sarnovský, Peter Butka, Cecília Havrilová, Miroslava Muchová, Michal Puheim, Martin Mikula, Gabriel Tutoky Technical

More information

So today we shall continue our discussion on the search engines and web crawlers. (Refer Slide Time: 01:02)

So today we shall continue our discussion on the search engines and web crawlers. (Refer Slide Time: 01:02) Internet Technology Prof. Indranil Sengupta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture No #39 Search Engines and Web Crawler :: Part 2 So today we

More information

Lightweight Data Integration using the WebComposition Data Grid Service

Lightweight Data Integration using the WebComposition Data Grid Service Lightweight Data Integration using the WebComposition Data Grid Service Ralph Sommermeier 1, Andreas Heil 2, Martin Gaedke 1 1 Chemnitz University of Technology, Faculty of Computer Science, Distributed

More information

Automating Requirements Management 1

Automating Requirements Management 1 Automating Requirements Management 1 Karl E. Wiegers Process Impact www.processimpact.com It s no secret that poorly understood user requirements and uncontrolled scope creep lead to many software project

More information

Natural Language Database Interface for the Community Based Monitoring System *

Natural Language Database Interface for the Community Based Monitoring System * Natural Language Database Interface for the Community Based Monitoring System * Krissanne Kaye Garcia, Ma. Angelica Lumain, Jose Antonio Wong, Jhovee Gerard Yap, Charibeth Cheng De La Salle University

More information

Requirements Definition and Management Processes

Requirements Definition and Management Processes Software Engineering G22.2440-001 Session 1 Sub-Topic 1 Requirements Definition & Management Processes and Tools Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute

More information

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

Proceedings of the 6th Educators Symposium: Software Modeling in Education at MODELS 2010 (EduSymp 2010) Electronic Communications of the EASST Volume 34 (2010) Proceedings of the 6th Educators Symposium: Software Modeling in Education at MODELS 2010 (EduSymp 2010) Position Paper: m2n A Tool for Translating

More information

Recovering Workflows from Multi Tiered E-commerce Systems

Recovering Workflows from Multi Tiered E-commerce Systems Recovering Workflows from Multi Tiered E-commerce Systems Maokeng Hung ASUS Tek Computer Inc. Yonghe City, Taipei County 234 Taiwan (R.O.C.) alex1_hung@asus.com.tw Ying Zou Dept. of Electrical and Computer

More information

Development of Enterprise Architecture of PPDR Organisations W. Müller, F. Reinert

Development of Enterprise Architecture of PPDR Organisations W. Müller, F. Reinert Int'l Conf. Software Eng. Research and Practice SERP'15 225 Development of Enterprise Architecture of PPDR Organisations W. Müller, F. Reinert Fraunhofer Institute of Optronics, System Technologies and

More information

SysML Modelling Language explained

SysML Modelling Language explained Date: 7 th October 2010 Author: Guillaume FINANCE, Objet Direct Analyst & Consultant UML, the standard modelling language used in the field of software engineering, has been tailored to define a modelling

More information

Intelligent Analysis of User Interactions in a Collaborative Software Engineering Context

Intelligent Analysis of User Interactions in a Collaborative Software Engineering Context Intelligent Analysis of User Interactions in a Collaborative Software Engineering Context Alejandro Corbellini 1,2, Silvia Schiaffino 1,2, Daniela Godoy 1,2 1 ISISTAN Research Institute, UNICEN University,

More information

Analysis of the Specifics for a Business Rules Engine Based Projects

Analysis of the Specifics for a Business Rules Engine Based Projects Analysis of the Specifics for a Business Rules Engine Based Projects By Dmitri Ilkaev and Dan Meenan Introduction In recent years business rules engines (BRE) have become a key component in almost every

More information

Towards Collaborative Requirements Engineering Tool for ERP product customization

Towards Collaborative Requirements Engineering Tool for ERP product customization Towards Collaborative Requirements Engineering Tool for ERP product customization Boban Celebic, Ruth Breu, Michael Felderer, Florian Häser Institute of Computer Science, University of Innsbruck 6020 Innsbruck,

More information

AUTOMATED REQUIREMENTS TRACEABILITY: THE STUDY OF HUMAN ANALYSTS. A Thesis. Presented to. the Faculty of California Polytechnic State University

AUTOMATED REQUIREMENTS TRACEABILITY: THE STUDY OF HUMAN ANALYSTS. A Thesis. Presented to. the Faculty of California Polytechnic State University AUTOMATED REQUIREMENTS TRACEABILITY: THE STUDY OF HUMAN ANALYSTS A Thesis Presented to the Faculty of California Polytechnic State University San Luis Obispo In Partial Fulfillment of the Requirements

More information

Enterprise Architecture and Knowledge Perspectives on Continuous Requirements Engineering

Enterprise Architecture and Knowledge Perspectives on Continuous Requirements Engineering Enterprise Architecture and Knowledge Perspectives on Continuous Requirements Engineering Marite Kirikova Institute of Applied Computer Systems, Riga Technical University, 1 Kalku, Riga, LV- 1658, Latvia

More information

Utilising Ontology-based Modelling for Learning Content Management

Utilising Ontology-based Modelling for Learning Content Management Utilising -based Modelling for Learning Content Management Claus Pahl, Muhammad Javed, Yalemisew M. Abgaz Centre for Next Generation Localization (CNGL), School of Computing, Dublin City University, Dublin

More information

MODELING OF SERVICE ORIENTED ARCHITECTURE: FROM BUSINESS PROCESS TO SERVICE REALISATION

MODELING OF SERVICE ORIENTED ARCHITECTURE: FROM BUSINESS PROCESS TO SERVICE REALISATION MODELING OF SERVICE ORIENTED ARCHITECTURE: FROM BUSINESS PROCESS TO SERVICE REALISATION Marek Rychlý and Petr Weiss Faculty of Information Technology, Brno University of Technology, Czech Republic, rychly@fit.vutbr.cz,

More information

Managing Software Evolution through Reuse Contracts

Managing Software Evolution through Reuse Contracts VRIJE UNIVERSITEIT BRUSSEL Vrije Universiteit Brussel Faculteit Wetenschappen SCI EN T I A V INCERE T ENE BRA S Managing Software Evolution through Reuse Contracts Carine Lucas, Patrick Steyaert, Kim Mens

More information

SEMANTIC VIDEO ANNOTATION IN E-LEARNING FRAMEWORK

SEMANTIC VIDEO ANNOTATION IN E-LEARNING FRAMEWORK SEMANTIC VIDEO ANNOTATION IN E-LEARNING FRAMEWORK Antonella Carbonaro, Rodolfo Ferrini Department of Computer Science University of Bologna Mura Anteo Zamboni 7, I-40127 Bologna, Italy Tel.: +39 0547 338830

More information

Karunya University Dept. of Information Technology

Karunya University Dept. of Information Technology PART A Questions 1. Mention any two software process models. 2. Define risk management. 3. What is a module? 4. What do you mean by requirement process? 5. Define integration testing. 6. State the main

More information

Goal-Driven Design of a Data Warehouse-Based Business Process Analysis System

Goal-Driven Design of a Data Warehouse-Based Business Process Analysis System Proceedings of the 6th WSEAS Int. Conf. on Artificial Intelligence, Knowledge Engineering and Data Bases, Corfu Island, Greece, February 16-19, 2007 243 Goal-Driven Design of a Data Warehouse-Based Business

More information

Technical Report. The KNIME Text Processing Feature:

Technical Report. The KNIME Text Processing Feature: Technical Report The KNIME Text Processing Feature: An Introduction Dr. Killian Thiel Dr. Michael Berthold Killian.Thiel@uni-konstanz.de Michael.Berthold@uni-konstanz.de Copyright 2012 by KNIME.com AG

More information

A Framework of Model-Driven Web Application Testing

A Framework of Model-Driven Web Application Testing A Framework of Model-Driven Web Application Testing Nuo Li, Qin-qin Ma, Ji Wu, Mao-zhong Jin, Chao Liu Software Engineering Institute, School of Computer Science and Engineering, Beihang University, China

More information

Requirements Traceability

Requirements Traceability UNIVERSITY OF WATERLOO Faculty of Mathematics School of Computer Science CS 645 - Software Requirements Specification and Analysis Requirements Traceability prepared by Michael Morckos ID : 20363329 Electrical

More information

Software Analysis Visualization

Software Analysis Visualization 28th International Conference on Software Engineering Software Analysis Visualization Harald Gall and Michele Lanza !oftware Visualiza"o# Tutorial F7 Software Evolution: Analysis and Visualization 2006

More information

EXPLOITING FOLKSONOMIES AND ONTOLOGIES IN AN E-BUSINESS APPLICATION

EXPLOITING FOLKSONOMIES AND ONTOLOGIES IN AN E-BUSINESS APPLICATION EXPLOITING FOLKSONOMIES AND ONTOLOGIES IN AN E-BUSINESS APPLICATION Anna Goy and Diego Magro Dipartimento di Informatica, Università di Torino C. Svizzera, 185, I-10149 Italy ABSTRACT This paper proposes

More information

Supporting Natural Language Queries across the Requirements Engineering Process

Supporting Natural Language Queries across the Requirements Engineering Process Supporting Natural Language Queries across the Requirements Engineering Process Sugandha Lohar School of Computing DePaul University, Chicago, IL, 60604, USA slohar@cs.depaul.edu Abstract. [Context and

More information

D6 INFORMATION SYSTEMS DEVELOPMENT. SOLUTIONS & MARKING SCHEME. June 2013

D6 INFORMATION SYSTEMS DEVELOPMENT. SOLUTIONS & MARKING SCHEME. June 2013 D6 INFORMATION SYSTEMS DEVELOPMENT. SOLUTIONS & MARKING SCHEME. June 2013 The purpose of these questions is to establish that the students understand the basic ideas that underpin the course. The answers

More information

Designing internal control points in partially managed processes by using business vocabulary

Designing internal control points in partially managed processes by using business vocabulary Designing internal control points in partially managed processes by using business vocabulary Yurdaer N. Doganata, IBM T. J. Watson Research Center Hawthorne, NY 10532 yurdaer@us.ibm.com Abstract The challenges

More information

Facilitating Business Process Discovery using Email Analysis

Facilitating Business Process Discovery using Email Analysis Facilitating Business Process Discovery using Email Analysis Matin Mavaddat Matin.Mavaddat@live.uwe.ac.uk Stewart Green Stewart.Green Ian Beeson Ian.Beeson Jin Sa Jin.Sa Abstract Extracting business process

More information

Financial Trading System using Combination of Textual and Numerical Data

Financial Trading System using Combination of Textual and Numerical Data Financial Trading System using Combination of Textual and Numerical Data Shital N. Dange Computer Science Department, Walchand Institute of Rajesh V. Argiddi Assistant Prof. Computer Science Department,

More information

Selecting a Taxonomy Management Tool. Wendi Pohs InfoClear Consulting #SLATaxo

Selecting a Taxonomy Management Tool. Wendi Pohs InfoClear Consulting #SLATaxo Selecting a Taxonomy Management Tool Wendi Pohs InfoClear Consulting #SLATaxo InfoClear Consulting What do we do? Content Analytics Strategy and Implementation, including: Taxonomy/Ontology development

More information

Folksonomies versus Automatic Keyword Extraction: An Empirical Study

Folksonomies versus Automatic Keyword Extraction: An Empirical Study Folksonomies versus Automatic Keyword Extraction: An Empirical Study Hend S. Al-Khalifa and Hugh C. Davis Learning Technology Research Group, ECS, University of Southampton, Southampton, SO17 1BJ, UK {hsak04r/hcd}@ecs.soton.ac.uk

More information

Reverse Engineering of Relational Databases to Ontologies: An Approach Based on an Analysis of HTML Forms

Reverse Engineering of Relational Databases to Ontologies: An Approach Based on an Analysis of HTML Forms Reverse Engineering of Relational Databases to Ontologies: An Approach Based on an Analysis of HTML Forms Irina Astrova 1, Bela Stantic 2 1 Tallinn University of Technology, Ehitajate tee 5, 19086 Tallinn,

More information

SCADE System 17.0. Technical Data Sheet. System Requirements Analysis. Technical Data Sheet SCADE System 17.0 1

SCADE System 17.0. Technical Data Sheet. System Requirements Analysis. Technical Data Sheet SCADE System 17.0 1 SCADE System 17.0 SCADE System is the product line of the ANSYS Embedded software family of products and solutions that empowers users with a systems design environment for use on systems with high dependability

More information

SEMANTIC WEB BASED INFERENCE MODEL FOR LARGE SCALE ONTOLOGIES FROM BIG DATA

SEMANTIC WEB BASED INFERENCE MODEL FOR LARGE SCALE ONTOLOGIES FROM BIG DATA SEMANTIC WEB BASED INFERENCE MODEL FOR LARGE SCALE ONTOLOGIES FROM BIG DATA J.RAVI RAJESH PG Scholar Rajalakshmi engineering college Thandalam, Chennai. ravirajesh.j.2013.mecse@rajalakshmi.edu.in Mrs.

More information

A Statistical Text Mining Method for Patent Analysis

A Statistical Text Mining Method for Patent Analysis A Statistical Text Mining Method for Patent Analysis Department of Statistics Cheongju University, shjun@cju.ac.kr Abstract Most text data from diverse document databases are unsuitable for analytical

More information

JOURNAL OF OBJECT TECHNOLOGY

JOURNAL OF OBJECT TECHNOLOGY JOURNAL OF OBJECT TECHNOLOGY Online at http://www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2007 Vol. 6, No. 1, January-February 2007 CM Configuration Change Management John D.

More information

Keywords: Regression testing, database applications, and impact analysis. Abstract. 1 Introduction

Keywords: Regression testing, database applications, and impact analysis. Abstract. 1 Introduction Regression Testing of Database Applications Bassel Daou, Ramzi A. Haraty, Nash at Mansour Lebanese American University P.O. Box 13-5053 Beirut, Lebanon Email: rharaty, nmansour@lau.edu.lb Keywords: Regression

More information