Reverse engineering concurrent UML state machines using black box testing and genetic programming

Loading...
Thumbnail Image
Authors
Drusinsky, Doron
Subjects
Machine Learning
Concurrent UML state machines
Concurrency decomposition
Genetic programming
Reverse engineering
Advisors
Date of Issue
2017-08-10
Date
Publisher
SpringerLink
Language
Abstract
This paper presents a technique for reverse engineering, a software system generated from a concurrent unified modeling language state machine implementation. In its first step, a primitive sequential finite-state machine (FSM) is deduced from a sequence of outputs emitted from black box tests applied to the systems’ input interface. Next, we provide an algorithmic technique for decomposing the sequential primitive FSM into a set of concurrent (orthogonal) primitive FSMs. Lastly,we showa genetic programming machine learning technique for discovering local variables, actions performed on local and non-binary output variables, and two types of intra-FSM loops, called counting-loops and while-loops.
Type
Article
Description
The article of record as published may be found at http://link.springer.com/article/10.1007/s11334-017-0299-9
Series/Report No
Department
Computer Science (CS)
Organization
Naval Postgraduate School (U.S.)
Identifiers
NPS Report Number
Sponsors
Funder
Format
12 p.
Citation
Drusinsky, Doron. "Reverse engineering concurrent UML state machines using black box testing and genetic programming." Innovations in Systems and Software Engineering 13.2-3 (2017): 117-128.
Distribution Statement
Rights
This publication is a work of the U.S. Government as defined in Title 17, United States Code, Section 101. Copyright protection is not available for this work in the United States.
Collections