Development of a Robust Parser for Extracting Artifacts during Model-based Testing from UML Diagrams

Size: px
Start display at page:

Download "Development of a Robust Parser for Extracting Artifacts during Model-based Testing from UML Diagrams"

Transcription

1 International Journal of Software Engineering and Technology Development of a Robust Parser for Extracting Artifacts during Model-based Testing from UML Diagrams Oluwatolani Oluwagbemi and Hishammuddin Asmuni Department of Software Engineering Universiti Teknologi Malaysia Johor Bahru, Malaysia tolapeace@gmail.com, hishamasmuni@gmail.com Abstract The foundation of any software testing process is test case generation. If test cases are poorly generated, model-based software testing results becomes unreliable or misleading. In model-based software testing, test cases are generated from any modeling tool that contains user s requirements. To generate test cases from modeling tools, a parser is required to read, extract, interpret and display parsed requirements or artifacts which are executed to generate test cases. Existing model-based testing techniques lacks parsers that are capable of reading, extracting and interpreting all diagrams contained in a modeling tool at runtime. This has caused flexibility problems during test case generation. Consequently, this research aims to develop a scalable parser that can aid automatic test case generation from all UML diagrams at runtime. Index Terms Artifacts, modeling diagrams, test cases, parser, requirements, scalability I. INTRODUCTION In model-based testing, test cases are derived from the modeling diagrams used to represent the requirements of stakeholders [1]. These modeling diagrams consist of use case, sequence, activity, class, collaboration, deployment, state chart and component diagrams. A model-based software testing technique compares a system under test (SUT) with stakeholder s requirements represented in any of the software development modeling languages like unified modeling language (UML), ArgoUML, Rational Rose or Magic Draw in order to ensure requirements conformance [2,3]. For modelbased testing to take place, a parser is required to extract artifacts from modeling diagrams which are executed to generate test cases. Model based testing (MBT) consist of three basic flows of procedural events [4] described as follows: (i) the modeling tool used in representing stakeholder s requirements (ii) the parser required to extract artifacts from the modeling diagram and (iii) a test case generation algorithm Generating test cases is considered to be very important because, it is the fundamental activity in model-based software testing process [5]. There are many existing techniques utilized in software testing process. Whatever technique is being utilized, the major activity of a software testing process is considered to be test case generation [6]. These are used to derive test scenarios of the system under development in order to conduct conformance testing. The reliability of test results depends on the type of coverage criteria and the robustness of the test case generation algorithm. Kaur and Vig [6] identified three major techniques for software testing as (i) Search-based software testing, (ii) Finite state machine and (iii) Model-based testing; while Anand et al. [1] identified five major techniques used for software testing as (i) Symbolic execution and program structural coverage testing, (ii) Model-based testing, (iii) Combinatorial testing, (iv) Adaptive random testing, and (v) Search-based testing. However, the focus of this research is on model-based software testing technique. II. RELATED WORKS Li et al. [5] developed a new test case generation model for activity diagrams using extension theory technique (Extenics). They used the Euler circuit algorithm to automatically generate test case in a reduced form while maintaining good adequacy criteria that is capable of detecting more software defects. The authors in [7] proposed an approach for generating test cases from behavioural UML diagrams (sequence and activity). They achieved their aim by transforming the diagrams into graph and developed an algorithm to generate test cases from the graph. Their approach reduced the numbers of generated test suits while achieving good test coverage criteria. Several authors [8-11] have also attempted to develop test case generation techniques that catered for activity, use case and state chart diagrams respectively. Shirole et al. [12] worked on the development of test cases for object oriented software. Genetic algorithm was used to achieve their aim while a parser was developed with JAVA to extract all possible information from the saved.mdl file extension of the UML class diagram. They used the depth first search algorithm to generate test cases. Also, in [13], the authors developed a technique for generating test cases for object diagrams while in [14], the authors developed techniques to generate test cases from three different UML diagrams at runtime. Furthermore, the technique proposed in [15] employed activity path coverage criterion to identify synchronization and loop faults from activity diagrams. In 43

2 [16], the authors invented a new technique for deriving test cases from UML activity diagrams with the help of gray-box testing technique. Test scenarios were generated within a particular coverage criterion to avoid explosion of path in the loop while the authors in [17] presented a test case generation approach from activity diagrams which haphazardly generate numerous arbitrary test cases but a program was implemented to trace those arbitrary generated test cases by simple path coverage criteria so as to obtain a reduced test suit that meets the test adequacy criteria. Finally, the authors in [18] developed a test case generation model for branch testing using genetic algorithm. III. PROBLEM DESCRIPTION The precise challenges been faced by existing model-based test case generation systems using UML diagrams can be summarized as follows: (i) Lack of parser that is capable of extracting artifacts from all UML diagrams at runtime; (ii) Lack of adequate test coverage criteria There are absences of techniques that are capable of reading, extracting and interpreting artifacts from all UML diagrams at runtime. This is a challenge because, if a project requirement is modeled with a particular diagram that does not tally with the underlying diagram of a test case generation system, testers will be forced to either convert the diagram employed in modeling user s requirements to the default diagram of the test case generation system or boycott the testing phase. When the former is executed, there will be high possibility of misrepresenting requirements during the conversion which can lead to the generation of vague or incomplete test cases. Table 1 shows the modeling tools and the number of diagrams that some of the existing works have utilized in generating test cases at runtime. From the literature, the highest number of diagram that existing techniques can generate test cases at runtime from is three [14]. Therefore, to enhance flexible and efficient test case generation process, what is needed is a parser that is capable of extracting artifacts from all UML diagrams at runtime. Table 1 Description of Existing Techniques Authors Diagram used at runtime Tool used [13] Object Rational Rose [14] Sequence, Use case and Magic draw class diagram s [16] Activity UML [19] State charts Magic Draw [20] Use case and sequence UML diagrams [21] Sequence UML [22] Sequence UML [23] Activity UML [24] Activity UML [25] Sequence and class Rational Rose [26] Activity UML Also, existing test case generation algorithms lack robust test coverage criteria during test case generation. Consequently test cases are randomly generated based on haphazardly selected artifacts [6].This problem has led to the development of incomprehensive or incomplete test cases which are eventually misleading during requirements conformance testing. As software systems become more critical for business revolutions, the software development process is becoming more agile, distributed and challenging. Business organizations are now beginning to search for software developers or software development companies with proven software testing capabilities because, they cannot afford to loss competitive edge to other players in the market or industry due to faulty software systems. Again, since testing consumes a substantial amount of the development time, it is indeed imperative to develop an automatic test case generation algorithm for model-based testing which supports the commencement of the software testing process immediately after the design phase of the system life cycle or as soon as the modeled requirements becomes available. This is especially necessary as the quest for robust systems development that will meet global requirements for centralized and distributed systems is on high toll. Therefore, testing is crucial to enhance user satisfaction and reduce support cost. IV. PROPOSED METHOD The method implored in this research for parsing artifacts is based on trees as abstract data types. A tree is a special type of graph that contain no cycles. A tree T is defined as a set of nodes V with one node designated as the root node, and a list of edges E connecting the nodes without creating cycles. The edges connect parent nodes to child nodes. When two nodes are connected by an edge, the node closer to the root node is called the parent and the other node is called the child. The height of a tree is the number of edges from the root to the most distant leaf node. If a node is not the root and not a leaf node then it is called an internal node. In the context of this research, a requirement is designated as node while the attributes describing the functionalities of each requirement are considered to be edges. Requirements and their attributes are represented in any of the UML diagrams. The proposed technique accepts input only in XMI format. As mentioned previously, this research utilized the ArgoUML tool due to the fact that, it is open source. Therefore, the diagram is first exported to XMI format within the modeling environment of the tool (from File Export XMI). It is worthy to note that, different modeling tools store their modeled artifacts in various formats. For example, rational rose stores its artifacts in.mdl format while ArgoUML stores its artifacts in XMI format. After exporting in XMI format, the proposed technique converts the artifacts into a tree by identifying the requirements with specific xmi:id as nodes and the xmi:dref as edges, which stands for the attributes associated with each node (Figure 1). 44

3 modeling tool used in articulating user s requirements. After parsing requirements from a model, an output is generated. The output consists of a tree that contains nodes and edges. The tree is constructed based on the artifacts contained in the XMI file of a given modeling diagram (Algorithm 1). Fig. 1. Parsed artifacts from ArgoUML use case diagram in tree form Each requirement with their respective attributes is identified by the pseudo code described below: startrequirement(string rname, r = requirement" name Attributes atts) endrequirement(rname) The start and end requirement shows that, each requirement and its attributes should be visited once to extract all its artifacts. This cycle is completed for all the requirements and attributes contained in any ArgoUML diagram which are seven in number (Figure 2). ArgoUML Diagrams Use Case Class Sequence Collaboration State chart Activity Deployment Fig. 2. ArgoUML Modeling Diagrams Therefore, the first task in test case generation is to develop a parser that is capable of extracting artifacts from the 1. INPUT: 2. N = Artifacts from the ArgoUML diagram in XMI format. s: an ID of the start requirement d: an ID of the end requirement 3. T (V, E) be a tree graph with a set of V nodes and set of E edges; where V,E is the number of requirement and attributes respectively 4. PARAMETERS: 5. R (s,d), is a nonnegative number that stands for the artifacts where s start node and d is last node. 6. i, j; loop index, T (2, i) is array of vertexes source; T (3, j) is array of vertexes attributes. 7. T(3, j) is array of edges; T(3, i) is array of requirement. 8. For each node and edge VE (i, j) is arrayed of the shortest path from the origin to final node. 9. OUPUT: 10. R: Extracted artifacts. 11. INITIALIZATION: 12. // All nodes from first to last are examined for the edge s connected nodes//applying Rule // For each edge, do the operation in two steps as follows: 14. set ArtifactsArray[1... node-1] = ArtifactsArray(node) = n; Applying Rule BEGIN 16. for all N; 17. for j = first to last edge // j is set to be the artifacts at edges 18. for i = first to last node // i is set to be the artifacts at node 19. if (T(2, j) = i ) // k is set to be end of node of edges. 20. Artifacts = ArtifactsArray(i) + T(3i, j); 21. end if 22. end for 23. end for 24. for i = first to last edges 25. while (the origin (k) is the same in T ) 26. if (T(3, i,j) = ArtifactArray(i) ArtifactArray(j)// Applying Rule T(k) = T(2, i); Extract artifacts// else 28. i = i + 1; 29. k = T(i, j); 30. end if 31. end while 32. end for 33. END Algorithm 1. Artifacts extraction processes The rules enumerated below are considered to enhance the extraction process: Rule 1: If the current requirement is a node, the algorithm pauses and extracts artifacts. 45

4 Rule 2: If the artifacts of the current node have been extracted, the algorithm checks to ensure that, all the corresponding edges of that node (attributes) have been visited. Rule 3: The extracted artifacts are then represented in a tree form as output. Rule 4: The tree is then traversed to generate test cases. V. EXPLANATION OF ALGORITHMIC STEP (i) Input XMI Exported Diagram: The first step of the algorithm is to input the ArgoUML contents of any diagram used to modeled user s requirements in XML Metadata Interchange (XMI) format. XMI format is the standard format used for ArgoUML diagrams portability across different platforms. Thus, single combined XMI file for specified requirements are generated using ArgoUML tool. The XMI file contains all the information needed to interoperate between all the seven diagrams as shown in Figure 2. (ii) Extraction of Class Variables, Boundaries and Operations: The XMI file is traversed for entity declarations. For every diagram, the attributes associated with every entity are obtained (including their boundaries) and the functions as shown below: <UML:Entity xmi:id = nameentity <UML:Attribute xmi:dref = 'atts' (iii) Extraction of Artifacts: In this step, the artifacts in the diagram are extracted based on the node and edges (requirement and attributes). After matching their xmi:id and xmi:dref, one can view the parsed artifacts. By using this technique, artifacts are extracted based on full coverage criteria because all the nodes and edges in a modeling diagram are visited at least once for extraction purposes. However, for efficient execution of test case generations, the following must be fully established: (i) An adequate understanding of the software under test: Before model based testing process is initiated, the software requirements and design documents must have been ready and understood by all relevant stakeholders. (ii) A suitable modeling description of user s requirements: It is pertinent to unambiguously represent requirements using a suitable and formal modeling diagram. This will enhance the possibility of test case generations. If requirements are modeled with informal tools, the required communication standards used to extract information from such diagram will be unavailable hence, test case generations becomes impossible. (iii) Development of a parser: This is required in test cases generation because, it is responsible for extracting information from the formal modeling diagrams used to represent requirements. A parser can be developed in JAVA or C++ which is embedded in the test case generation system to extract relevant artifacts that will eventually be executed for generating test cases. (iv) Test case generation algorithm: This algorithm is required for implementing the test case generation system based on some coverage or selection criteria. Therefore, it becomes necessary to set some parameters during test case generation to optimize the generation process. However, adequate attention must be paid to scalability in order to generate comprehensive test cases. Therefore, whatever criteria are enforced during test case generations, the algorithm should have the capacity of generating test cases based on all the artifacts extracted from the diagram. (v) A validation approach: It is necessary to evaluate the generated test cases in order to determine its relevance and consistency ratio with respect to the software under test. To achieve consistency, robust algorithms are usually required and the relevance of generated test cases could be assessed via statistical tools. The input of a test case generation system consists of all the extracted information contained in the file path of a particular modeling diagram. A good test case generation system should be able to extract artifacts from any diagram D, used to represent stakeholder s requirements at runtime. Assuming n stands for the number of artifact in a modeling diagram, the next artifact can be represented by n+1 until k which marks the end of the artifacts in the diagram D. A scalable parser should be able to extract artifacts from n to k. However, to display the extracted or parsed artifacts; the following steps are executed: Step 1: The space V amongst requirement n+1 and n is computed with Equation 1: V ( n + 1, n) (i) Step 2: The task in Step 1 is extended to determine the remaining artifacts in the diagram that are yet to be visited. This will enhance the generation of comprehensive test cases. The equations reflecting these ideas are enumerated as follows: V ( n + 1, n) = V( n 1, k ) (ii) V ( n + 2, n) = V ( n + 2, k ) (iii) V ( n + 3, n) = V ( n + 3, k ) (iv)... =,..., (v)... =,..., (vi) D m, n = V m, n E m, n ; m, n (vii) From these equations, the activities involved in parsing requirements are manifold as depicted in the subsequent steps. Step 3: Acquiring both the source file and file path of any modeling diagram D used in representing user s requirements. 46

5 Step 4: Processing the parsed information (P) in XMI format, given with Equation (viii); n n V( n 1 V = ( n+ P( n, k ) = min max (viii) k s.t. i & j 1; i= 1 + ) j 1 ) Step 5: Ensuring that, all the artifacts have been visited and extracted from the diagram using Equation (ix). * * * P ( ) = V n+ 1 + V n+ k (ix) Step 6: Equation (x) is used to display parsed requirements. = + = * n * n * P n, k = min V n k i n max V (x) j 1 s.t. i & j 1; VI. IMPLEMENTATION The algorithm of the proposed technique has been implemented with Java programming language. Figures 3 show the snapshot of the interface used to extract artifacts from different diagrams at runtime. As a result, a software tester can utilize this tool to parse requirements from any modeling diagram to generate test cases. To use this tool, the software tester obtains the required diagram representing user s requirements and transforms the diagram into XMI by exporting the diagram in ArgoUML modeling environment. The tool receives the exported diagram in XMI format as and the necessary artifacts are extracted when the tester hits the Generate icon. At this level, the parser is automatically activated to read and interpret the extracted artifact which is displayed almost immediately. Fig. 3. Interface for extracting artifacts from ArgoUML diagrams All the extracted artifacts are displayed on the right hand side of the snapshot called Tree. The Regression icon is meant for re-extraction in an event where requirements evolve or changes are made to the underlying model. In order to ensure accurate test cases generation, the underlying artifacts that constitute a modeling diagram must be parsed in a precise, consistent and unambiguous manner otherwise; the resulting test cases may not produce the expected runtime behaviour of a system. The concept of a parser in the context of this research centers on reading artifacts of ArgoUML diagrams; interpret and convert them to another form based on some pre-defined sets of rules. In simulating the token flow during model execution, the parser attempts to scan through all the artifacts represented in the diagram to ensure that no artifact is unparsed. Unlike the conventional parsers, where artifacts are randomly extracted, which yields vague results. VII. EMPIRICAL VALIDATION The Automated Teller Machine (ATM) project requirements were adopted to validate and test the performance of the implemented algorithm. The ATM is meant to serve a customer at a time. To use an ATM, a customer is assumed to have obtained a valid card which is inserted into the machine to initiate any type of transaction. As soon as the card is inserted, a session is initiated which aims at verifying the card. If the verification is unsuccessful, the card is rejected but if it is successful, the card is accepted and the machine prompts the customer to insert his/her personal identification number (PIN) which is also verified by the bank. Once the PIN is verified, the customer will be required to perform the desired transaction. The card remains inside the machine until the customers confirms the completion of a transaction by terminating the process. In clear terms, the ATM machine is meant to provide the following sets of services which are also considered as the requirements. (a) Cash Withdrawal: A customer should be able withdraw cash within the confines of the stipulated amount. (b) Cash Deposit: A customer should also be able to deposit cash to any account connected to the card by inputting the amount to be deposited into the machine and a message is displayed upon successful or unsuccessful transaction as the case may be. (c) Money Transfer: A customer should be able to effect transfer of funds from one customer to the other. (d) Balance Enquiry: A customer should be able to check his/her balance at his/her own will. The requirements described above are considered to be the major requirements of the ATM project. Each requirement consists of attributes which further describes the specified requirements. Examples of attributes are enumerated below: (a) A customer will desire a secured system with good quality of service such as efficient cash withdrawals, deposits, transfers and balance enquiry. (b) A bank will desire to impose an interest rate when usage is not from its machine (c) Also, all pre and post conditions for a particular requirement to execute can be considered as attributes. To validate the system, requirements were drawn in five different modeling diagrams, which include, use case, activity, class, state chart, and deployment diagrams. The proposed 47

6 parser was efficiently able to extract and interpret artifacts from these diagrams at runtime which are executed to generate test scenarios or cases. Oluwagbemi and Asmuni/ IJSET Vol. 1, No. 2 (2014) VIII. EXPERIMENTAL RESULTS The case scenario involves the development of an automated teller machine. Figure 4-8 summarizes the general description and numbers of extracted artifacts from five modeling diagrams. The artifacts were extracted based on all the descriptive links of each diagram which is also one of the contributions of this technique. Fig. 7. Activity Diagram Fig. 4. Class Diagram Fig. 5. Use Case Diagram Fig. 6. State Chart Diagram Fig. 8. Deployment Diagram From Figures 4-8, the proposed technique was able to extract artifacts from all the descriptive links of the various modeling diagrams used in representing user s requirements. These descriptive links as depicted in the x-axis of all the figures has the capacity of enhancing the generation of comprehensive test cases. This is because; any requirement description not captured in one link can be found or captured in another. With this technique, robust software development process can take place since the testing will be conducted based on the generated test cases obtained from the extracted artifacts of the underlying model. During the experiments, it was discovered that, class diagram had the highest number of extracted artifacts (236 items) as shown in Figure 4. For the use case diagram, 19 items were extracted from various descriptive links as shown in Figure 5, while for the state chart diagram, 47 items were extracted (Figure 6). In Figure 7, the technique was able to extract about 37 items from activity diagram and for the deployment diagram, 56 items were extracted based on the user s requirements (Figure 8). In model-based testing, the robustness or completeness of the generated test cases depends on the coverage criteria (descriptive links) covered during the extraction of the artifacts. It is these extracted artifacts which are represented in a tree form that are traversed to generate test cases. Many authors have opined that, the foundation of any software testing process is test cases generation [5-8]. From this research, we can conclude by saying, the foundation of any test cases generation process in model-based testing is extraction of artifacts from the modeling diagram used to represent requirements. The extraction of artifacts is only achievable by the development of an efficient parser implemented in any of the object oriented programming 48

7 languages such as Java or C++. However, in this research, Java was utilized in implementing the parser described in Section IV. This research is important because, requirements can be modeled using any diagram and these diagrams have different semantics and nomenclatures. From Table 1, it is seen that, existing techniques can only parse requirements from 1 to 3 modeling diagrams at runtime. This means that, testing may not hold if a diagram used to model user s requirements do not fall within the particular diagram that the parser can extract artifacts from. However, with the proposed technique, testers can conveniently conduct testing from any diagram since it can cater for all the modeling diagrams at runtime; particularly, the ArgoUML diagrams which was the tool used to evaluate the performance of the proposed technique. IX. COMPLEXITY ANALYSIS The complexity of the model under test determines the success rate of the parsing process especially when it has to do with response or execution time. The analysis of the complexities associated with parsing requirements during model-based testing is described as follows: Supposing, a model that possess requirements is presented for parsing artifacts, each node of the model is visited once to extract its artifact into a stack, hence O(n). The contents of the stack are parsed and represented in a tree. Therefore, the stack has nxn entries, accessing the stack has time complexity O (n*n). So the time complexity of the model will be O (n 2 ). However, generating parsed requirements from a complex model with N nodes at the top level and other associated nodes k at the lower levels would result in (1+N(k+1)) nodes. A node for the top level consist of subsequent nodes which comprises of `E' edges and each edge may in turn have n sub-edges until `k'. The total edges will amount to m (E(n+k)) edges. Finally, the total number of nodes at the top-most level would be 1+N (k+1). Consequently, the total complexity would be O (1+N (k+1)) (n 2 ). However, space complexity is based on the size of the stack; meaning, the size of the stack depends on the number of nodes and edges. The space complexity of each node is O (n 2 ). For the final parsed requirements, complexity analysis for each node and edges are traversed and the resulting output will be the generated test cases. Let the number of nodes be `N' and edges be E; then, the time complexity is O (N+E). However, the complexity analysis of a model having N nodes and E edges at the top level and m sub-nodes as well as k sub-edges at the lower level will be O (1+m (k+1)) +n (N+E). X. CONTRIBUTION The last three decades have witnessed substantial research in model-based software testing domain. This section aims to articulate the contributions of this research, enumerated as follows: (a) Inadequate test coverage criteria: Existing techniques lack adequate coverage criteria when extracting artifacts for test case generation [5]. However, in this research, artifacts were extracted based on full coverage (transition and message path) criteria where all the nodes and edges of the XMI exported diagram represented in a tree form are visited to extract artifacts. Therefore, with this technique, comprehensive test cases can be generated as soon as the tree is traversed. (b) Inability of reading or extracting artifacts from all modeling diagrams at runtime: There are shortages of concepts as regards parsers that are capable of reading, extracting and interpreting artifacts from all ArgoUML diagrams at runtime. Therefore, a parser capable of extracting artifacts from all diagrams have been proposed and implemented. This will save testers the nightmare of re-drawing or re-modeling from one diagram to the other when the need arises. XI. CONCLUSION/LIMITATION A robust parser for model-based software testing was the focus of this research work. The proposed technique, pseudocode as well as the mathematical descriptions was implemented with Java programming language. This led to the generation of parsed requirements from various ArgoUML modeling diagrams at runtime. The tool was validated using published ATM project requirements where five different diagrams were drawn to model these requirements. The diagrams were then used to evaluate the performance of the proposed parser. The algorithm performed better that the existing ones in terms of being able to read and parser artifacts from five different modeling diagrams. This is an improvement over existing techniques. With the proposed technique, test cases generation becomes comprehensible since artifacts are parsed based on full coverage criteria and not randomly selected criteria. For the future work, we hope to look at the development of an execution algorithm required to convert or traverse the parsed requirements into test cases. Also, the interoperability or compatibility of this technique with other modeling tools such as Rational Rose, Magic Draw, Microsoft Visio among others is worthy of investigation. REFERENCES [1] Anand, S., Burke, E., Chen, T. Y., Clark, J., Cohen, M. B., Grieskamp, W., Zhu, H. (2013). An Orchestrated Survey on Automated Software Test Case Generation. The Journal of Systems and Software 86 (2013) [2] Aggarwal, M., & Sabharwal, S. (2012). Test Case Generation from UML State Machine Diagram: A Survey Third International Conference on In Computer and Communication Technology (ICCCT), pp [3] Ahmed, S. U., Sahare, S. A., & Ahmed, A. (2013). Automatic test case generation using collaboration UML diagrams. World Journal of Science and Technology, 3(1),

8 [4] Dalal, S., Jain, A., Karunanithi, N., Leaton, J. M., Lott, C. M., Patton, G. C., Horowitz, B. M. (1999), Model-based testing in practice, In: ICSE 99, May, pp [5] Li, L., Li, X., He, T., & Xiong, J. (2013). Extenics-based Test Case Generation for UML Activity Diagram. Procedia Computer Science, 17, [6] Kaur, A., & Vig, V. (2012). Systematic Review of Automatic Test Case Generation by UML Diagrams. International Journal of Engineering, 1(6). [7] Swain, S. K., & Mohapatra, D. P. (2010). Test case generation from Behavioral UML Models. International Journal of Computer Applications, 6(8), [8] Kim, H., Kang, S., Baik, J., & Ko, I. (2007). Test cases generation from UML activity diagrams. In Eighth IEEE ACIS International Conference on Software Engineering, Artificial Intelligence, Networking, and Parallel/Distributed Computing, SNPD 2007, Vol. 3, pp [9] Chen, M., Qiu, X., Xu, W., Wang, L., Zhao, J., & Li, X. (2009). UML activity diagram-based automatic test case generation for Java programs., The Computer Journal, 52(5), [10] Hasling, B., Goetz, H., & Beetz, K. (2008). Model based testing of system requirements using UML use case models, In st International IEEE Conference on Software Testing, Verification, and Validation, pp [11] Swain, R., Panthi, V., Behera, P. K., & Mohapatra, D. P. (2012). Automatic Test case Generation From UML State Chart Diagram, International Journal of Computer Applications, 42(7), [12] Shirole, M., Suthar, A., & Kumar, R. (2011). Generation of improved test cases from UML state diagram using genetic algorithm, In ACM Proceedings of the 4th India Software Engineering Conference, pp [13] Prasanna, M., & Chandran, K. R. (2009). Automatic Test Case Generation for UML Object diagrams using Genetic Algorithm Int. J. Advance. Soft Comput. Appl, 1(1), [14] Sawant, V., & Shah, K. (2011). Construction of Test Cases from UML Models, In Technology Systems and Management (pp ). Springer Berlin Heidelberg. [15] Kundu, D., Sarma, M., Samanta, D., & Mall, R. (2009). System testing for object- oriented systems with test case prioritization Software Testing, Verification and Reliability, 19(4), [16] Linzhang, W., Jiesong, Y., Xiaofeng, Y., Jun, H., Xuandong, L., & Guoliang, Z. (2004). Generating test cases from UML activity diagram based on gray-box method, In IEEE 11th Asia-Pacific Software Engineering Conference, 2004, pp [17] Mingsong, C., Xiaokang, Q., & Xuandong, L. (2006). Automatic test case generation for UML activity diagrams, In ACM Proceedings of the 2006 international workshop on Automation of software test (pp. 2-8). [18] Pachauri, A. (2013). Automated test data generation for branch testing using genetic algorithm: An improved approach using branch ordering, memory and elitism Journal of Systems and Software. [19] Kansomkeat, S., & Rivepiboon, W. (2003). Automatedgenerating test case using UML statechart diagrams, In Proceedings of the 2003 annual research conference of the South African institute of computer scientists and information technologists on Enablement through technology, pp [20] Sarma, M., & Mall, R. (2007). Automatic test case generation from UML models, In 10th IEEE International Conference on Information Technology (ICIT 2007), pp [21] Sarma, M., Kundu, D., & Mall, R. (2007), Automatic test case generation from UML sequence diagram, In International Conference on Advanced Computing and Communications, 2007, pp [22] Javed, A. Z., Strooper, P. A., & Watson, G. N. (2007). Automated generation of test cases using model-driven architecture, In Second International Workshop on Automation of Software Test, pp [23] Samuel, P., Mall, R., & Bothra, A. K. (2008). Automatic test case generation using unified modeling language (UML) state diagrams, IET software, 2(2), [24] Farooq, U., Lam, C. P., & Li, H. (2008). Towards automated test sequence generation, In 19th Australian Conference on Software Engineering, pp [25] Biswal, B. N., Nanda, P., & Mohapatra, D. P. (2008). A novel approach for scenario-based test case generation In International Conference on Information Technology, pp [26] Kundu, D., & Samanta, D. (2009). A Novel Approach to Generate Test Cases from UML Activity Diagrams, Journal of Object Technology, 8(3), [27] Hishammuddin, A. (2013) Development of a scalable parser for extracting artifacts during model-based test case generation process, in The 7th Malaysian Software Engineering Conference (MySEC 2013). 50

Test Case Generation Model for UML Diagrams

Test Case Generation Model for UML Diagrams Yasir Dawood Salman, Nor Laily Hashim College of Arts and Sciences, Universiti Utara Malaysia, Sintok, Kedah, 06010, Malaysia. laily@uum.edu.my Abstract The complexity and size of software have been sequentially

More information

Test Cases Generation from UML Activity Diagrams

Test Cases Generation from UML Activity Diagrams Eighth ACIS International Conference on Software Engineering, Artificial Intelligence, Networking, and Parallel/Distributed Computing Test Cases Generation from UML Activity Diagrams Hyungchoul Kim, Sungwon

More information

Test Case Generation for Concurrent System using UML Combinational Diagram

Test Case Generation for Concurrent System using UML Combinational Diagram Test Case Generation for Concurrent System using UML Combinational Diagram Monalisha Khandai #1, Arup Abhinna Acharya #2, Durga Prasad Mohapatra *3 # School of Computer Engineering, KIIT University Bhubaneswar,

More information

Test Case Generation Technique by using Collaboration UML Diagram

Test Case Generation Technique by using Collaboration UML Diagram Test Case Generation Technique by using Collaboration UML Diagram Urooj *, Anil Pandey Department Of Computer Science and Engineering, Invertis University, Bareilly, India Article Info Article history:

More information

Automating the test case generation for Object Oriented Systems using Activity Diagrams

Automating the test case generation for Object Oriented Systems using Activity Diagrams www.ijecs.in International Journal Of Engineering And Computer Science ISSN: 2319-7242 Volume 4 Issue 9 Sep 2015, Page No. 14163-14171 Automating the test case generation for Object Oriented Systems using

More information

Test Case Generation from UML Activity Diagram: The User Perspective Approach

Test Case Generation from UML Activity Diagram: The User Perspective Approach Test Case Generation from UML Activity Diagram: The User Perspective Approach Henok Bekele Save the Children, Addis Ababa, Ethiopia henzena@gmail.com Mesfin Kifle Department of Computer Science, Addis

More information

Analysis of operations and parameters involved in interface for CBSE

Analysis of operations and parameters involved in interface for CBSE Analysis of operations and parameters involved in interface for CBSE P.L. Powar 1, Dr. R.K. Pandey 2, M.P. Singh 3, Bharat Solanki 4 1 Department of Mathematics and Computer Science, R. D. University,

More information

An Efficient Approach for Model Based Test Path Generation

An Efficient Approach for Model Based Test Path Generation An Efficient Approach for Model Based Test Path Generation Aye Aye Kyaw and Myat Myat Min Abstract Software testing plays a vital role in developing software that is freedom from bugs and defects. Manual

More information

Selection of UML Models for Test Case Generation: A Discussion on Techniques to Generate Test Cases

Selection of UML Models for Test Case Generation: A Discussion on Techniques to Generate Test Cases St. Cloud State University therepository at St. Cloud State Culminating Projects in Computer Science and Information Technology Department of Computer Science and Information Technology 6-2018 Selection

More information

Research Scholar, Gitam University, Visakhapatnam, Andhra Pradeshm, India *2

Research Scholar, Gitam University, Visakhapatnam, Andhra Pradeshm, India *2 IJESRT INTERNATIONAL JOURNAL OF ENGINEERING SCIENCES & RESEARCH TECHNOLOGY Automatic Test case Generation from UML Activity Diagrams V.Mary Sumalatha *1, Dr G.S.V.P.Raju 2 1 Research Scholar, Gitam University,

More information

Automation of Semantic Web based Digital Library using Unified Modeling Language Minal Bhise 1 1

Automation of Semantic Web based Digital Library using Unified Modeling Language Minal Bhise 1 1 Automation of Semantic Web based Digital Library using Unified Modeling Language Minal Bhise 1 1 Dhirubhai Ambani Institute for Information and Communication Technology, Gandhinagar, Gujarat, India Email:

More information

Data Flow Testing of UML State Machine Using Ant Colony Algorithm (ACO)

Data Flow Testing of UML State Machine Using Ant Colony Algorithm (ACO) 40 Data Flow Testing of UML State Machine Using Ant Colony Algorithm (ACO) Abdul Rauf College of Computer and Information Sciences Al-Imam Mohammed ibn Saud Islamic University (IMSIU) Riyadh. Saudi Arabia

More information

Learning to Match. Jun Xu, Zhengdong Lu, Tianqi Chen, Hang Li

Learning to Match. Jun Xu, Zhengdong Lu, Tianqi Chen, Hang Li Learning to Match Jun Xu, Zhengdong Lu, Tianqi Chen, Hang Li 1. Introduction The main tasks in many applications can be formalized as matching between heterogeneous objects, including search, recommendation,

More information

ASSURING DATA INTEROPERABILITY THROUGH THE USE OF FORMAL MODELS OF VISA PAYMENT MESSAGES (Category: Practice-Oriented Paper)

ASSURING DATA INTEROPERABILITY THROUGH THE USE OF FORMAL MODELS OF VISA PAYMENT MESSAGES (Category: Practice-Oriented Paper) ASSURING DATA INTEROPERABILITY THROUGH THE USE OF FORMAL MODELS OF VISA PAYMENT MESSAGES (Category: Practice-Oriented Paper) Joseph Bugajski Visa International JBugajsk@visa.com Philippe De Smedt Visa

More information

A Survey on Test Case Generation from UML Model

A Survey on Test Case Generation from UML Model A Survey on Test Case Generation from UML Model Monalisha Khandai #1, Arup Abhinna Acharya #2, Durga Prasad Mohapatra *3 # School of Computer Engineering, KIIT University Bhubaneswar, India * Department

More information

Runtime Verification of Java Programs for Scenario-Based Specifications

Runtime Verification of Java Programs for Scenario-Based Specifications Runtime Verification of Java Programs for Scenario-Based Specifications Li Xuandong, Wang Linzhang, Qiu Xiaokang, Lei Bin Yuan Jiesong, Zhao Jianhua, Zheng Guoliang Department of Computer Science and Technology

More information

International Journal of Software and Web Sciences (IJSWS) Web service Selection through QoS agent Web service

International Journal of Software and Web Sciences (IJSWS)   Web service Selection through QoS agent Web service International Association of Scientific Innovation and Research (IASIR) (An Association Unifying the Sciences, Engineering, and Applied Research) ISSN (Print): 2279-0063 ISSN (Online): 2279-0071 International

More information

An Model Based Test Case Generation Technique Using Genetic Algorithms

An Model Based Test Case Generation Technique Using Genetic Algorithms Volume 1, No. 9, November 2012 ISSN 2278-1080 The International Journal of Computer Science & Applications (TIJCSA) RESEARCH PAPER Available Online at http://www.journalofcomputerscience.com/ An Model

More information

Comparative analyses for the performance of Rational Rose and Visio in software engineering teaching

Comparative analyses for the performance of Rational Rose and Visio in software engineering teaching Journal of Physics: Conference Series PAPER OPEN ACCESS Comparative analyses for the performance of Rational Rose and Visio in software engineering teaching To cite this article: Zhaojun Yu and Zhan Xiong

More information

Part I: Preliminaries 24

Part I: Preliminaries 24 Contents Preface......................................... 15 Acknowledgements................................... 22 Part I: Preliminaries 24 1. Basics of Software Testing 25 1.1. Humans, errors, and testing.............................

More information

Automated Freedom from Interference Analysis for Automotive Software

Automated Freedom from Interference Analysis for Automotive Software Automated Freedom from Interference Analysis for Automotive Software Florian Leitner-Fischer ZF TRW 78315 Radolfzell, Germany Email: florian.leitner-fischer@zf.com Stefan Leue Chair for Software and Systems

More information

Introduction to Interaction Overview Diagram as a Model

Introduction to Interaction Overview Diagram as a Model Introduction to Interaction Overview as a Model Sumender Roy #1 Research Scholar JNTU Kakinada Dr Samuel Vara Prasada Raju #2 Prof. (SDE), Andhra University Abstract UML diagrams became an industry standard

More information

Testing! Prof. Leon Osterweil! CS 520/620! Spring 2013!

Testing! Prof. Leon Osterweil! CS 520/620! Spring 2013! Testing Prof. Leon Osterweil CS 520/620 Spring 2013 Relations and Analysis A software product consists of A collection of (types of) artifacts Related to each other by myriad Relations The relations are

More information

A Transformation-based Approach to Testing Concurrent Programs using UML Activity Diagrams

A Transformation-based Approach to Testing Concurrent Programs using UML Activity Diagrams SOFTWARE PRACTICE AND EXPERIENCE Softw. Pract. Exper. 2014; 00:1 26 Published online in Wiley InterScience (www.interscience.wiley.com). A Transformation-based Approach to Testing Concurrent Programs using

More information

Employment of Multiple Algorithms for Optimal Path-based Test Selection Strategy. Miroslav Bures and Bestoun S. Ahmed

Employment of Multiple Algorithms for Optimal Path-based Test Selection Strategy. Miroslav Bures and Bestoun S. Ahmed 1 Employment of Multiple Algorithms for Optimal Path-based Test Selection Strategy Miroslav Bures and Bestoun S. Ahmed arxiv:1802.08005v1 [cs.se] 22 Feb 2018 Abstract Executing various sequences of system

More information

BRANCH COVERAGE BASED TEST CASE PRIORITIZATION

BRANCH COVERAGE BASED TEST CASE PRIORITIZATION BRANCH COVERAGE BASED TEST CASE PRIORITIZATION Arnaldo Marulitua Sinaga Department of Informatics, Faculty of Electronics and Informatics Engineering, Institut Teknologi Del, District Toba Samosir (Tobasa),

More information

Automated Functional Test Case Prioritization For Increased Rate of Fault Detection

Automated Functional Test Case Prioritization For Increased Rate of Fault Detection IJIRST International Journal for Innovative Research in Science & Technology Volume 1 Issue 7 December 2014 ISSN (online): 2349-6010 Automated Functional Test Case Prioritization For Increased Rate of

More information

Topic: Software Verification, Validation and Testing Software Engineering. Faculty of Computing Universiti Teknologi Malaysia

Topic: Software Verification, Validation and Testing Software Engineering. Faculty of Computing Universiti Teknologi Malaysia Topic: Software Verification, Validation and Testing Software Engineering Faculty of Computing Universiti Teknologi Malaysia 2016 Software Engineering 2 Recap on SDLC Phases & Artefacts Domain Analysis

More information

Impact of Dependency Graph in Software Testing

Impact of Dependency Graph in Software Testing Impact of Dependency Graph in Software Testing Pardeep Kaur 1, Er. Rupinder Singh 2 1 Computer Science Department, Chandigarh University, Gharuan, Punjab 2 Assistant Professor, Computer Science Department,

More information

An Automatic Tool for Checking Consistency between Data Flow Diagrams (DFDs)

An Automatic Tool for Checking Consistency between Data Flow Diagrams (DFDs) An Automatic Tool for Checking Consistency between Data Flow Diagrams (DFDs) Rosziati Ibrahim, Siow Yen Yen Abstract System development life cycle (SDLC) is a process uses during the development of any

More information

Object Use- Cases Clustering using PFT

Object Use- Cases Clustering using PFT 2011 International Conference on Information and Intelligent Computing IPCSIT vol.18 (2011) (2011) IACSIT Press, Singapore Object Use- Cases Clustering using PFT Sunil Kumar 1, Rajesh Kumar Bhatia 2 and

More information

Model Based Testing Using UML Diagram

Model Based Testing Using UML Diagram ISSN 2278 0211 (Online) Model Based Testing Using UML Diagram Simrandeep Kau Department of CSE, CGC, Gharuan, Punjab, India Rupinder Singh Assistant Professor, CSE, Chandigarh University, Punjab, India

More information

A Test Sequence Generation Method Based on Dependencies and Slices Jin-peng MO *, Jun-yi LI and Jian-wen HUANG

A Test Sequence Generation Method Based on Dependencies and Slices Jin-peng MO *, Jun-yi LI and Jian-wen HUANG 2017 2nd International Conference on Advances in Management Engineering and Information Technology (AMEIT 2017) ISBN: 978-1-60595-457-8 A Test Sequence Generation Method Based on Dependencies and Slices

More information

Verification and Validation. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 22 Slide 1

Verification and Validation. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 22 Slide 1 Verification and Validation 1 Objectives To introduce software verification and validation and to discuss the distinction between them To describe the program inspection process and its role in V & V To

More information

10. Software Testing Fundamental Concepts

10. Software Testing Fundamental Concepts 10. Software Testing Fundamental Concepts Department of Computer Science and Engineering Hanyang University ERICA Campus 1 st Semester 2016 Testing in Object-Oriented Point of View Error Correction Cost

More information

ScienceDirect. An Approach for Generating Minimal Test Cases for Regression Testing

ScienceDirect. An Approach for Generating Minimal Test Cases for Regression Testing Available online at www.sciencedirect.com ScienceDirect Procedia Computer Science 47 (2015 ) 188 196 An Approach for Generating Minimal Test Cases for Regression Testing Sapna P G, Arunkumar Balakrishnan

More information

An Agent Modeling Language Implementing Protocols through Capabilities

An Agent Modeling Language Implementing Protocols through Capabilities An Agent Modeling Language Implementing Protocols through Capabilities Nikolaos Spanoudakis 1,2 1 Technical University of Crete, Greece nikos@science.tuc.gr Pavlos Moraitis 2 2 Paris Descartes University,

More information

Human Error Taxonomy

Human Error Taxonomy Human Error Taxonomy The Human Error Taxonomy (HET) provides a structure for requirement errors made during the software development process. The HET can be employed during software inspection to help

More information

Computation Independent Model (CIM): Platform Independent Model (PIM): Platform Specific Model (PSM): Implementation Specific Model (ISM):

Computation Independent Model (CIM): Platform Independent Model (PIM): Platform Specific Model (PSM): Implementation Specific Model (ISM): viii Preface The software industry has evolved to tackle new approaches aligned with the Internet, object-orientation, distributed components and new platforms. However, the majority of the large information

More information

On UML2.0 s Abandonment of the Actors-Call-Use-Cases Conjecture

On UML2.0 s Abandonment of the Actors-Call-Use-Cases Conjecture On UML2.0 s Abandonment of the Actors-Call-Use-Cases Conjecture Sadahiro Isoda Toyohashi University of Technology Toyohashi 441-8580, Japan isoda@tutkie.tut.ac.jp Abstract. UML2.0 recently made a correction

More information

Improving Quality of Products in Hard Drive Manufacturing by Decision Tree Technique

Improving Quality of Products in Hard Drive Manufacturing by Decision Tree Technique Improving Quality of Products in Hard Drive Manufacturing by Decision Tree Technique Anotai Siltepavet 1, Sukree Sinthupinyo 2 and Prabhas Chongstitvatana 3 1 Computer Engineering, Chulalongkorn University,

More information

Transforming UML Collaborating Statecharts for Verification and Simulation

Transforming UML Collaborating Statecharts for Verification and Simulation Transforming UML Collaborating Statecharts for Verification and Simulation Patrick O. Bobbie, Yiming Ji, and Lusheng Liang School of Computing and Software Engineering Southern Polytechnic State University

More information

Automated generation of TTCN-3 test scripts for SIP-based calls

Automated generation of TTCN-3 test scripts for SIP-based calls MIPRO 2010, May 24-28, 2010, Opatija, Croatia Automated generation of TTCN-3 test scripts for SIP-based calls 1 Nenad Katani, 1 Teo Nenadi, 2 Saša Deši, 1 Lea Skorin-Kapov 1 University of Zagreb, FER,

More information

Why testing and analysis. Software Testing. A framework for software testing. Outline. Software Qualities. Dependability Properties

Why testing and analysis. Software Testing. A framework for software testing. Outline. Software Qualities. Dependability Properties Why testing and analysis Software Testing Adapted from FSE 98 Tutorial by Michal Young and Mauro Pezze Software is never correct no matter what developing testing technique is used All software must be

More information

Taxonomy Dimensions of Complexity Metrics

Taxonomy Dimensions of Complexity Metrics 96 Int'l Conf. Software Eng. Research and Practice SERP'15 Taxonomy Dimensions of Complexity Metrics Bouchaib Falah 1, Kenneth Magel 2 1 Al Akhawayn University, Ifrane, Morocco, 2 North Dakota State University,

More information

System Correctness. EEC 421/521: Software Engineering. System Correctness. The Problem at Hand. A system is correct when it meets its requirements

System Correctness. EEC 421/521: Software Engineering. System Correctness. The Problem at Hand. A system is correct when it meets its requirements System Correctness EEC 421/521: Software Engineering A Whirlwind Intro to Software Model Checking A system is correct when it meets its requirements a design without requirements cannot be right or wrong,

More information

2 nd UML 2 Semantics Symposium: Formal Semantics for UML

2 nd UML 2 Semantics Symposium: Formal Semantics for UML 2 nd UML 2 Semantics Symposium: Formal Semantics for UML Manfred Broy 1, Michelle L. Crane 2, Juergen Dingel 2, Alan Hartman 3, Bernhard Rumpe 4, and Bran Selic 5 1 Technische Universität München, Germany

More information

Integrating White- and Black-Box Techniques for Class-Level Regression Testing

Integrating White- and Black-Box Techniques for Class-Level Regression Testing Integrating White- and Black-Box Techniques for Class-Level Regression Testing Sami Beydeda, Volker Gruhn University of Dortmund Computer Science Department Software Technology 44221 Dortmund, Germany

More information

Model-based GUI testing using Uppaal at NOVO Nordisk

Model-based GUI testing using Uppaal at NOVO Nordisk Model-based GUI testing using Uppaal at NOVO Nordisk Ulrik H. Hjort 2, Jacob Illum 1, Kim G. Larsen 1, Michael A. Petersen 2, and Arne Skou 1 1 Department of Computer Science, Aalborg University, Denmark

More information

Coding and Unit Testing! The Coding Phase! Coding vs. Code! Coding! Overall Coding Language Trends!

Coding and Unit Testing! The Coding Phase! Coding vs. Code! Coding! Overall Coding Language Trends! Requirements Spec. Design Coding and Unit Testing Characteristics of System to be built must match required characteristics (high level) Architecture consistent views Software Engineering Computer Science

More information

Application Testability for Fault Detection Using Dependency Structure Algorithm

Application Testability for Fault Detection Using Dependency Structure Algorithm Application Testability for Fault Detection Using Dependency Structure Algorithm 1 Shah Ubaid Nisar, 2 T. S. Shiny. Angel 1 M.Tech Student, 2 Assistant Professor (O.G) Department of Software Engineering,

More information

Towards Automatic Recognition of Fonts using Genetic Approach

Towards Automatic Recognition of Fonts using Genetic Approach Towards Automatic Recognition of Fonts using Genetic Approach M. SARFRAZ Department of Information and Computer Science King Fahd University of Petroleum and Minerals KFUPM # 1510, Dhahran 31261, Saudi

More information

Data Models: The Center of the Business Information Systems Universe

Data Models: The Center of the Business Information Systems Universe Data s: The Center of the Business Information Systems Universe Whitemarsh Information Systems Corporation 2008 Althea Lane Bowie, Maryland 20716 Tele: 301-249-1142 Email: Whitemarsh@wiscorp.com Web: www.wiscorp.com

More information

Trust4All: a Trustworthy Middleware Platform for Component Software

Trust4All: a Trustworthy Middleware Platform for Component Software Proceedings of the 7th WSEAS International Conference on Applied Informatics and Communications, Athens, Greece, August 24-26, 2007 124 Trust4All: a Trustworthy Middleware Platform for Component Software

More information

Web page recommendation using a stochastic process model

Web page recommendation using a stochastic process model Data Mining VII: Data, Text and Web Mining and their Business Applications 233 Web page recommendation using a stochastic process model B. J. Park 1, W. Choi 1 & S. H. Noh 2 1 Computer Science Department,

More information

Ghassan Samara Internet Technology Department Zarqa University, Jordan.

Ghassan Samara Internet Technology Department Zarqa University, Jordan. World of Computer Science and Information Technology Journal (WCSIT) ISSN: 2221-0741 Vol. 7, No. 2, 10-19, 2017 A Practical Approach for Detecting Logical Error in Object Oriented Environment Ghassan Samara

More information

IMPACT OF DEPENDENCY GRAPH IN SOFTWARE TESTING

IMPACT OF DEPENDENCY GRAPH IN SOFTWARE TESTING IMPACT OF DEPENDENCY GRAPH IN SOFTWARE TESTING Pardeep kaur 1 and Er. Rupinder Singh 2 1 Research Scholar, Dept. of Computer Science and Engineering, Chandigarh University, Gharuan, India (Email: Pardeepdharni664@gmail.com)

More information

Guiding System Modelers in Multi View Environments: A Domain Engineering Approach

Guiding System Modelers in Multi View Environments: A Domain Engineering Approach Guiding System Modelers in Multi View Environments: A Domain Engineering Approach Arnon Sturm Department of Information Systems Engineering Ben-Gurion University of the Negev, Beer Sheva 84105, Israel

More information

Detection of Infeasible Paths in Software Testing using UML Application to Gold Vending Machine

Detection of Infeasible Paths in Software Testing using UML Application to Gold Vending Machine I.J. Education and Management Engineering, 2017, 4, 21-28 Published Online July 2017 in MECS (http://www.mecs-press.net) DOI: 10.5815/ijeme.2017.04.03 Available online at http://www.mecs-press.net/ijeme

More information

Optimizing the Software Metrics for UML Structural and Behavioral Diagrams Using Metrics Tool

Optimizing the Software Metrics for UML Structural and Behavioral Diagrams Using Metrics Tool Asian Journal of Computer Science and Technology ISSN: 2249-0701 Vol.7 No.2, 2018, pp. 11-17 The Research Publication, www.trp.org.in Optimizing the Software Metrics for UML Structural and Behavioral Diagrams

More information

Composability Test of BOM based models using Petri Nets

Composability Test of BOM based models using Petri Nets I. Mahmood, R. Ayani, V. Vlassov and F. Moradi 7 Composability Test of BOM based models using Petri Nets Imran Mahmood 1, Rassul Ayani 1, Vladimir Vlassov 1, and Farshad Moradi 2 1 Royal Institute of Technology

More information

CHAPTER 1. Topic: UML Overview. CHAPTER 1: Topic 1. Topic: UML Overview

CHAPTER 1. Topic: UML Overview. CHAPTER 1: Topic 1. Topic: UML Overview CHAPTER 1 Topic: UML Overview After studying this Chapter, students should be able to: Describe the goals of UML. Analyze the History of UML. Evaluate the use of UML in an area of interest. CHAPTER 1:

More information

Mining Rare Periodic-Frequent Patterns Using Multiple Minimum Supports

Mining Rare Periodic-Frequent Patterns Using Multiple Minimum Supports Mining Rare Periodic-Frequent Patterns Using Multiple Minimum Supports R. Uday Kiran P. Krishna Reddy Center for Data Engineering International Institute of Information Technology-Hyderabad Hyderabad,

More information

An Empirical Evaluation of Test Adequacy Criteria for Event-Driven Programs

An Empirical Evaluation of Test Adequacy Criteria for Event-Driven Programs An Empirical Evaluation of Test Adequacy Criteria for Event-Driven Programs Jaymie Strecker Department of Computer Science University of Maryland College Park, MD 20742 November 30, 2006 Abstract In model-based

More information

The TOBIAS test generator and its adaptation to some ASE challenges Position paper for the ASE Irvine Workshop

The TOBIAS test generator and its adaptation to some ASE challenges Position paper for the ASE Irvine Workshop The test generator and its adaptation to some ASE challenges Position paper for the ASE Irvine Workshop Y. Ledru Laboratoire Logiciels Systèmes Réseaux/IMAG BP 72, F-38402 Saint-Martin-d Hères CEDEX, FRANCE

More information

Network Routing Protocol using Genetic Algorithms

Network Routing Protocol using Genetic Algorithms International Journal of Electrical & Computer Sciences IJECS-IJENS Vol:0 No:02 40 Network Routing Protocol using Genetic Algorithms Gihan Nagib and Wahied G. Ali Abstract This paper aims to develop a

More information

Designing and documenting the behavior of software

Designing and documenting the behavior of software Chapter 8 Designing and documenting the behavior of software Authors: Gürcan Güleşir, Lodewijk Bergmans, Mehmet Akşit Abstract The development and maintenance of today s software systems is an increasingly

More information

Specification and Analysis of Contracts Tutorial

Specification and Analysis of Contracts Tutorial Specification and Analysis of Contracts Tutorial Gerardo Schneider gerardo@ifi.uio.no http://folk.uio.no/gerardo/ Department of Informatics, University of Oslo Gerardo Schneider (UiO) Specification and

More information

Chapter 2 Overview of the Design Methodology

Chapter 2 Overview of the Design Methodology Chapter 2 Overview of the Design Methodology This chapter presents an overview of the design methodology which is developed in this thesis, by identifying global abstraction levels at which a distributed

More information

Review on UML CASE Tools

Review on UML CASE Tools Proceedings of the 3rd WSEAS/IASME International Conference on Educational Technologies, Arcachon, France, October 13-15, 2007 347 Review on UML CASE Tools WAN HASNIRA WAN HUSIN, SITI HAFIZAH AB HAMID,

More information

Rational Software White paper

Rational Software White paper Unifying Enterprise Development Teams with the UML Grady Booch Rational Software White paper 1 There is a fundamental paradox at play in contemporary software development. On the one hand, organizations

More information

Improving Quality of Products in Hard Drive Manufacturing by Decision Tree Technique

Improving Quality of Products in Hard Drive Manufacturing by Decision Tree Technique www.ijcsi.org 29 Improving Quality of Products in Hard Drive Manufacturing by Decision Tree Technique Anotai Siltepavet 1, Sukree Sinthupinyo 2 and Prabhas Chongstitvatana 3 1 Computer Engineering, Chulalongkorn

More information

Chapter 8 Software Testing. Chapter 8 Software testing

Chapter 8 Software Testing. Chapter 8 Software testing Chapter 8 Software Testing 1 Topics covered Introduction to testing Stages for testing software system are: Development testing Release testing User testing Test-driven development as interleave approach.

More information

Automatic Merging of Specification Documents in a Parallel Development Environment

Automatic Merging of Specification Documents in a Parallel Development Environment Automatic Merging of Specification Documents in a Parallel Development Environment Rickard Böttcher Linus Karnland Department of Computer Science Lund University, Faculty of Engineering December 16, 2008

More information

Formal specification of semantics of UML 2.0 activity diagrams by using Graph Transformation Systems

Formal specification of semantics of UML 2.0 activity diagrams by using Graph Transformation Systems Formal specification of semantics of UML 2.0 activity diagrams by using Graph Transformation Systems Somayeh Azizi 1, Vahid Panahi 2 Computer science department, Sama Technical and vocational, Training

More information

On UML2.0 s Abandonment of the Actors- Call-Use-Cases Conjecture

On UML2.0 s Abandonment of the Actors- Call-Use-Cases Conjecture Vol. 4, No. 6 Special issue: Use Case Modeling at UML-2004 On UML2.0 s Abandonment of the Actors- Call-Use-Cases Conjecture Sadahiro Isoda, Toyohashi University of Technology, Toyohashi 441-8580, Japan

More information

An Efficient Technique to Test Suite Minimization using Hierarchical Clustering Approach

An Efficient Technique to Test Suite Minimization using Hierarchical Clustering Approach An Efficient Technique to Test Suite Minimization using Hierarchical Clustering Approach Fayaz Ahmad Khan, Anil Kumar Gupta, Dibya Jyoti Bora Abstract:- Software testing is a pervasive activity in software

More information

Model-Based Testing: An Evaluation

Model-Based Testing: An Evaluation Faculty of Economic Sciences, Communication and IT Department of Computer Science Johan Nordholm Model-Based Testing: An Evaluation Degree Project of 30 ECTS credit points Master of Science in Information

More information

Designing Component-Based Architectures with Rational Rose RealTime

Designing Component-Based Architectures with Rational Rose RealTime Designing Component-Based Architectures with Rational Rose RealTime by Reedy Feggins Senior System Engineer Rational Software Rose RealTime is a comprehensive visual development environment that delivers

More information

Some Applications of Graph Bandwidth to Constraint Satisfaction Problems

Some Applications of Graph Bandwidth to Constraint Satisfaction Problems Some Applications of Graph Bandwidth to Constraint Satisfaction Problems Ramin Zabih Computer Science Department Stanford University Stanford, California 94305 Abstract Bandwidth is a fundamental concept

More information

SECURITY TESTING USING MODELS AND TEST PATTERNS. Presented by [Bruno Legeard, Elizabeta Fourneret]

SECURITY TESTING USING MODELS AND TEST PATTERNS. Presented by [Bruno Legeard, Elizabeta Fourneret] Budapest, 26-28 October 2016 SECURITY TESTING USING MODELS AND TEST PATTERNS Presented by [Bruno Legeard, Elizabeta Fourneret] All rights reserved MODEL-BASED SECURITY TESTING Positionning with respect

More information

USTGlobal INNOVATION INFORMATION TECHNOLOGY. Using a Test Design Tool to become a Digital Organization

USTGlobal INNOVATION INFORMATION TECHNOLOGY. Using a Test Design Tool to become a Digital Organization USTGlobal INNOVATION INFORMATION TECHNOLOGY Using a Test Design Tool to become a Digital Organization Overview: Automating test design reduces efforts and increases quality Automated testing resolves most

More information

A Genetic Algorithm for Graph Matching using Graph Node Characteristics 1 2

A Genetic Algorithm for Graph Matching using Graph Node Characteristics 1 2 Chapter 5 A Genetic Algorithm for Graph Matching using Graph Node Characteristics 1 2 Graph Matching has attracted the exploration of applying new computing paradigms because of the large number of applications

More information

SCOS-2000 Technical Note

SCOS-2000 Technical Note SCOS-2000 Technical Note MDA Study Prototyping Technical Note Document Reference: Document Status: Issue 1.0 Prepared By: Eugenio Zanatta MDA Study Prototyping Page: 2 Action Name Date Signature Prepared

More information

Introduction to Data Structures & Algorithm

Introduction to Data Structures & Algorithm Introduction to Data Structures & Algorithm Objectives: By the end of the class, students are expected to understand the following: n data structure and algorithm concept n programming development paradigm

More information

PRIORITIZE REGRESSION TEST CASES

PRIORITIZE REGRESSION TEST CASES PRIORITIZE REGRESSION TEST CASES Avinash Gupta, 2 Dharmender Singh Kushwaha,2 MNNIT Allahabad Email: avinashg.mnnit@gmail.com, 2 dsk@mnnit.ac.in Abstract Test suites can be reduced to a smaller suite that

More information

A FRAMEWORK FOR EFFICIENT DATA SEARCH THROUGH XML TREE PATTERNS

A FRAMEWORK FOR EFFICIENT DATA SEARCH THROUGH XML TREE PATTERNS A FRAMEWORK FOR EFFICIENT DATA SEARCH THROUGH XML TREE PATTERNS SRIVANI SARIKONDA 1 PG Scholar Department of CSE P.SANDEEP REDDY 2 Associate professor Department of CSE DR.M.V.SIVA PRASAD 3 Principal Abstract:

More information

International Journal of Computer Science Trends and Technology (IJCST) Volume 5 Issue 4, Jul Aug 2017

International Journal of Computer Science Trends and Technology (IJCST) Volume 5 Issue 4, Jul Aug 2017 RESEARCH ARTICLE OPEN ACCESS Optimizing Fully Homomorphic Encryption Algorithm using Greedy Approach in Cloud Computing Kirandeep Kaur [1], Jyotsna Sengupta [2] Department of Computer Science Punjabi University,

More information

Scalable Distributed Diagnosis Algorithm for Wireless Sensor Networks

Scalable Distributed Diagnosis Algorithm for Wireless Sensor Networks Scalable Distributed Diagnosis Algorithm for Wireless Sensor Networks Arunanshu Mahapatro and Pabitra Mohan Khilar Department of CSE, National Institute of Technology, Rourkela, India arun227@gmail.com,

More information

Group B Assignment 9. Code generation using DAG. Title of Assignment: Problem Definition: Code generation using DAG / labeled tree.

Group B Assignment 9. Code generation using DAG. Title of Assignment: Problem Definition: Code generation using DAG / labeled tree. Group B Assignment 9 Att (2) Perm(3) Oral(5) Total(10) Sign Title of Assignment: Code generation using DAG. 9.1.1 Problem Definition: Code generation using DAG / labeled tree. 9.1.2 Perquisite: Lex, Yacc,

More information

Spemmet - A Tool for Modeling Software Processes with SPEM

Spemmet - A Tool for Modeling Software Processes with SPEM Spemmet - A Tool for Modeling Software Processes with SPEM Tuomas Mäkilä tuomas.makila@it.utu.fi Antero Järvi antero.jarvi@it.utu.fi Abstract: The software development process has many unique attributes

More information

Improvement of SURF Feature Image Registration Algorithm Based on Cluster Analysis

Improvement of SURF Feature Image Registration Algorithm Based on Cluster Analysis Sensors & Transducers 2014 by IFSA Publishing, S. L. http://www.sensorsportal.com Improvement of SURF Feature Image Registration Algorithm Based on Cluster Analysis 1 Xulin LONG, 1,* Qiang CHEN, 2 Xiaoya

More information

(See related materials in textbook.) CSE 435: Software Engineering (slides adapted from Ghezzi et al & Stirewalt

(See related materials in textbook.) CSE 435: Software Engineering (slides adapted from Ghezzi et al & Stirewalt Verification (See related materials in textbook.) Outline What are the goals of verification? What are the main approaches to verification? What kind of assurance do we get through testing? How can testing

More information

Automated Approach for Anti-Pattern Detection

Automated Approach for Anti-Pattern Detection Automated Approach for Anti-Pattern Detection Neha Nanda Computer Science and Engineering Lovely Professional University, Phagwara, Punjab, India nehananda50@gmail.com Rohitt Sharma Computer Science and

More information

THE SELECTION OF THE ARCHITECTURE OF ELECTRONIC SERVICE CONSIDERING THE PROCESS FLOW

THE SELECTION OF THE ARCHITECTURE OF ELECTRONIC SERVICE CONSIDERING THE PROCESS FLOW THE SELECTION OF THE ARCHITECTURE OF ELECTRONIC SERVICE CONSIDERING THE PROCESS FLOW PETERIS STIPRAVIETIS, MARIS ZIEMA Institute of Computer Control, Automation and Computer Engineering, Faculty of Computer

More information

An UML-XML-RDB Model Mapping Solution for Facilitating Information Standardization and Sharing in Construction Industry

An UML-XML-RDB Model Mapping Solution for Facilitating Information Standardization and Sharing in Construction Industry An UML-XML-RDB Model Mapping Solution for Facilitating Information Standardization and Sharing in Construction Industry I-Chen Wu 1 and Shang-Hsien Hsieh 2 Department of Civil Engineering, National Taiwan

More information

UML Class Diagram from Object Oriented Program for Reverse Engineering Purpose

UML Class Diagram from Object Oriented Program for Reverse Engineering Purpose UML Class Diagram from Object Oriented Program for Reverse Engineering Purpose Guru Prasad Bhandari 1 and Ratneshwer 2 1 DST-CIMS, Banaras Hindu University, Uttar Pradesh-221005, India 2 Department of

More information

The Analysis and Proposed Modifications to ISO/IEC Software Engineering Software Quality Requirements and Evaluation Quality Requirements

The Analysis and Proposed Modifications to ISO/IEC Software Engineering Software Quality Requirements and Evaluation Quality Requirements Journal of Software Engineering and Applications, 2016, 9, 112-127 Published Online April 2016 in SciRes. http://www.scirp.org/journal/jsea http://dx.doi.org/10.4236/jsea.2016.94010 The Analysis and Proposed

More information

INTRODUCTION TO UNIFIED MODELING MODEL (UML) & DFD. Slides by: Shree Jaswal

INTRODUCTION TO UNIFIED MODELING MODEL (UML) & DFD. Slides by: Shree Jaswal INTRODUCTION TO UNIFIED MODELING MODEL (UML) & DFD Slides by: Shree Jaswal What is UML? 2 It is a standard graphical language for modeling object oriented software. It was developed in mid 90 s by collaborative

More information

Rich Hilliard 20 February 2011

Rich Hilliard 20 February 2011 Metamodels in 42010 Executive summary: The purpose of this note is to investigate the use of metamodels in IEEE 1471 ISO/IEC 42010. In the present draft, metamodels serve two roles: (1) to describe the

More information