Professor Rob Hierons
BA, PhD
School of Computer Science
Chair in Testing
Member of the Testing research group
+44 114 222 1804
Full contact details
School of Computer Science
Regent Court (DCS)
211 Portobello
Sheffield
S1 4DP
- Profile
-
Rob Hierons received a BA in Mathematics (Trinity College, Cambridge), and a Ph.D. in Computer Science (Brunel University). He then joined the Department of Mathematical and Computing Sciences at Goldsmiths College, University of London, before returning to Brunel University in 2000.
He was promoted to full Professor in 2003 and joined The University of Sheffield in 2018.
- Research interests
-
Professor Hierons’ research largely concerns software testing. The main aim of this research is to devise automated techniques (and tools) that generate efficient, systematic test suites on the basis of program code, models or specifications.
Progress in this area can help industry to produce higher quality software and potentially to do so more quickly. He has recently become interested in the testing of autonomous systems, with a particular focus on robotics.
- Publications
-
Books
- Software Engineering for Robotics. Springer International Publishing.
- Preface.
- Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics): Preface.
- Preface.
Journal articles
- Testing using CSP Models: Time, Inputs, and Outputs.. ACM Trans. Comput. Log., 24, 17:1-17:1.
- A Survey of the Metrics, Uses, and Subjects of Diversity-Based Techniques in Software Testing.. CoRR, abs/2311.09714.
- Digital-twin-based testing for cyber–physical systems: A systematic literature review. Information and Software Technology, 107145-107145.
- Farewell after an 11‐year journey as joint editor‐in‐chief. Software Testing, Verification and Reliability, 32(4).
- Metamorphic testing and test automation. Software Testing, Verification and Reliability, 32(3).
- Combinatorial testing and model‐based testing. Software Testing, Verification and Reliability, 32(2).
- Model checking, testing and debugging. Software Testing, Verification and Reliability, 32(1).
- An information theoretic notion of software testability. Information and Software Technology, 143. View this article in WRRO
- Property generation/verification and empirical studies. Software Testing, Verification and Reliability, 31(8).
- Adaptive or embedded software testing and mutation testing. Software Testing, Verification and Reliability, 31(7).
- Editorial: Verification, reliability and performance. Software Testing, Verification and Reliability, 31(6).
- Preface. Theoretical Computer Science, 880, 138-138.
- Minimizing characterizing sets. Science of Computer Programming, 208. View this article in WRRO
- Test case generation for agent-based models: a systematic literature review. Information and Software Technology, 135. View this article in WRRO
- TEA-Cloud: A formal framework for testing cloud computing system. IEEE Transactions on Reliability, 70(1), 261-284. View this article in WRRO
- Editorial: Testing, Debugging, and Defect Prediction. Software Testing Verification and Reliability.
- Using mutual information to test from Finite State Machines: Test suite selection. Information and Software Technology, 132, 106498-106498. View this article in WRRO
- Implementation relations and testing for cyclic systems with refusals and discrete time. Journal of Systems and Software, 170. View this article in WRRO
- Peer Reviewing in Software Engineering. ACM SIGSOFT Software Engineering Notes, 45(4), 18-18.
- On automation in software engineering. Software Testing, Verification and Reliability, 30(6). View this article in WRRO
- Conference Virtualization. Software Testing, Verification and Reliability, 30(4-5).
- Inputs and outputs in CSP: a model and a testing theory. ACM Transactions on Computational Logic, 21(3). View this article in WRRO
- Working Across Boundaries. Software Testing, Verification and Reliability, 30(3).
- Guest Editorial: Special Section on ICTSS. Information and Software Technology, 118, 106222-106222.
- Many-objective test suite generation for software product lines. ACM Transactions on Software Engineering and Methodology, 29(1). View this article in WRRO
- Local Observability and Controllability Analysis and Enforcement in Distributed Testing with Time Constraints. IEEE Access, 1-1. View this article in WRRO
- The world changes. Software Testing, Verification and Reliability, 29(6-7).
- Normalised Squeeziness and Failed Error Propagation. Information Processing Letters, 149, 6-9. View this article in WRRO
- A partial oracle for uniformity statistics. Software Quality Journal. View this article in WRRO
- Using Squeeziness to test component-based systems defined as Finite State Machines. Information and Software Technology, 112, 132-147. View this article in WRRO
- View this article in WRRO Κ-branching UIO sequences for partially specified observable non-deterministic FSMs. IEEE Transactions on Software Engineering.
- FSM quasi-equivalence testing via reduction and observing absence. Science of Computer Programming. View this article in WRRO
- A mapping study on testing non-testable systems. Software Quality Journal, 26(4), 1373-1413. View this article in WRRO
- A tool supported methodology to passively test asynchronous systems with multiple users. Information and Software Technology, 104, 162-178. View this article in WRRO
- Passive testing with asynchronous communications and timestamps. Distributed Computing, 31(5), 327-342. View this article in WRRO
- Bounded Reordering in the Distributed Test Architecture. IEEE Transactions on Reliability, 67(2), 522-537. View this article in WRRO
- Special section of Tests and Proofs 2016.. Formal Asp. Comput., 30, 627-628.
- Testing from Partial Finite State Machines without Harmonised Traces. IEEE Transactions on Software Engineering, 43(11), 1033-1043. View this article in WRRO
- Characterizing Minimal Semantics-preserving Slices of predicate-linear, Free, Liberal Program Schemas.. CoRR, abs/1705.09615.
- On the computational complexity of dynamic slicing problems for program schemas.. CoRR, abs/1705.07686.
- Introduction to the Software Engineering and Formal Methods 2013 special issue. Software & Systems Modeling, 16(1), 5-6.
- Implementation relations and probabilistic schedulers in the distributed test architecture. Journal of Systems and Software, 132, 319-335.
- An extended framework for passive asynchronous testing. Journal of Logical and Algebraic Methods in Programming, 86(1), 408-424.
- Distinguishing Sequences for Distributed Testing: Preset Distinguishing Sequences. The Computer Journal, 60(1), 110-125.
- Parallel Algorithms for Generating Distinguishing Sequences for Observable Non-deterministic FSMs. ACM Transactions on Software Engineering and Methodology, 26(1), 1-34.
- How to manage a conference special issue. Software Testing, Verification and Reliability, 27(3), e1633-e1633.
- Decidability and complexity for quiescent consistency and its variations. Information and Computation, 257, 1-21.
- Parallel Algorithms for Testing Finite State Machines:Generating UIO Sequences. IEEE Transactions on Software Engineering, 42(11), 1077-1091. View this article in WRRO
- Parallel Algorithms for Generating Harmonised State Identifiers and Characterising Sets. IEEE Transactions on Computers, 65(11), 3370-3383.
- SIP: Optimal Product Selection from Feature Models Using Many-Objective Evolutionary Optimization. ACM Transactions on Software Engineering and Methodology, 25(2). View this article in WRRO
- Multi-objective optimisation for regression testing. Information Sciences, 334-335, 1-16.
- Distinguishing Sequences for Distributed Testing: Adaptive Distinguishing Sequences. The Computer Journal, 59(8), 1186-1206.
- The dreaded desk reject. Software Testing, Verification and Reliability, 26(1), 3-3.
- Generating Complete Controllable Test Suites for Distributed Testing. IEEE Transactions on Software Engineering, 41(3), 279-293.
- Special issue on testing, analysis and debugging of concurrent programs. Software Testing, Verification and Reliability, 25(3), 165-166.
- A Test Framework for Communications-Critical Large-Scale Systems. IEEE Software, 32(3), 86-93.
- Incomplete Distinguishing Sequences for Finite State Machines. The Computer Journal, 58(11), 3089-3113.
- A methodology for validating cloud models using metamorphic testing. annals of telecommunications - annales des télécommunications, 70(3-4), 127-135.
- Combining Centralised and Distributed Testing. ACM Transactions on Software Engineering and Methodology, 24(1), 1-29.
- Automated generation of computationally hard feature models using evolutionary algorithms. Expert Systems with Applications, 41(8), 3975-3992.
- Timed implementation relations for the distributed test architecture. Distributed Computing, 27(3), 181-201.
- The Oracle Problem When Testing from MSCs. The Computer Journal, 57(7), 987-1001.
- Amorphous Slicing of Extended Finite State Machines. IEEE Transactions on Software Engineering, 39(7), 892-909.
- Using genetic algorithms to generate test sequences for complex timed systems. Soft Computing, 17(2), 301-315.
- Testing Real-Time Embedded Systems using Timed Automata based approaches. Journal of Systems and Software, 86(5), 1209-1223.
- Towards estimating computer users' mood from interaction behaviour with keyboard and mouse.. Frontiers Comput. Sci., 7, 943-954.
- Guest Editorial: Special Section from the 11th International Conference on Quality Software (QSIC 2011). Information and Software Technology, 55(5), 865-865.
- Implementation Relations for Testing Through Asynchronous Channels. The Computer Journal, 56(11), 1305-1319.
- Verifying and Comparing Finite State Machines for Systems that Have Distributed Interfaces. IEEE Transactions on Computers, 62(8), 1673-1683.
- A framework for pathologies of message sequence charts. Information and Software Technology, 54(11), 1283-1295.
- Implementation relations and test generation for systems with distributed interfaces. Distributed Computing, 25(1), 35-62.
- Squeeziness: An information theoretic measure for avoiding fault masking. Information Processing Letters, 112(8-9), 335-340.
- Using schedulers to test probabilistic distributed systems. Formal Aspects of Computing, 24(4-6), 679-699.
- Controllability Problems in MSC-Based Testing. The Computer Journal, 55(11), 1270-1287.
- Overcoming controllability problems in distributed testing from an input output transition system. Distributed Computing, 25(1), 63-81.
- Oracles for Distributed Testing. IEEE Transactions on Software Engineering, 38(3), 629-641.
- The complexity of asynchronous model based testing. Theoretical Computer Science, 451, 70-82.
- Complexity of Data Dependence Problems for Program Schemas with Concurrency. ACM Transactions on Computational Logic, 13(2), 1-18.
- On the computational complexity of dynamic slicing problems for program schemas. Mathematical Structures in Computer Science, 21(6), 1339-1362.
- Mutation testing on an object-oriented framework: An experience report. Information and Software Technology, 53(10), 1124-1136.
- An integrated search-based approach for automatic testing from extended finite state machine (EFSM) models. Information and Software Technology, 53(12), 1297-1318.
- Automated metamorphic testing on the analyses of feature models. Information and Software Technology, 53(3), 245-258.
- Do moods affect programmers’ debug performance?. Cognition, Technology & Work, 13(4), 245-258.
- Testing timed systems modeled by Stream X-machines. Software & Systems Modeling, 10(2), 201-217.
- A Longitudinal Study of Fan-In and Fan-Out Coupling in Open-Source Systems. International Journal of Information System Modeling and Design, 2(4), 1-26.
- Scenarios-based testing of systems with distributed ports. Software: Practice and Experience, n/a-n/a.
- ICST 2008 Special Issue. Software Testing, Verification and Reliability, 21(1), 1-1.
- Checking Finite State Machine Conformance when there are Distributed Observations. CoRR, abs/1108.5295.
- Controllable Testing from Nondeterministic Finite State Machines with Multiple Ports. IEEE Transactions on Computers, 60(12), 1818-1822.
- Characterizing minimal semantics-preserving slices of predicate-linear, free, liberal program schemas. The Journal of Logic and Algebraic Programming, 80(8), 481-496.
- Decidability of strong equivalence for subschemas of a class of linear, free, near-liberal program schemas. The Journal of Logic and Algebraic Programming, 80(2), 92-112.
- A trajectory-based strict semantics for program slicing. Theoretical Computer Science, 411(11-13), 1372-1386.
- A trajectory-based strict semantics for program slicing. Theoretical Computer Science, 411(1-13), 1372-1386.
- Exploring the Eradication of Code Smells: An Empirical and Theoretical Perspective.. Adv. Softw. Eng., 2010, 820103:1-820103:1.
- Estimating the feasibility of transition paths in extended finite state machines. Automated Software Engineering, 17(1), 33-56. View this article in WRRO
- Practitioner-based measurement. Communications of the ACM, 53(3), 142-147.
- An Empirical Investigation of Code Smell 'Deception' and Research Contextualisation through Paul's Criteria. Journal of Computing and Information Technology, 18(4), 333-333.
- Reaching and Distinguishing States of Distributed Systems. SIAM Journal on Computing, 39(8), 3480-3500.
- Generating a checking sequence with a minimum number of reset transitions. Automated Software Engineering, 17(3), 217-250.
- Canonical finite state machines for distributed systems. Theoretical Computer Science, 411(2), 566-580.
- Checking experiments for stream X-machines. Theoretical Computer Science, 411(37), 3372-3385.
- Complexity of Data Dependence problems for Program Schemas with Concurrency. CoRR, abs/1007.3878.
- Correction to "Reduced Length Checking Sequences" [Sep 02 93-99]. IEEE Transactions on Computers, 58(2), 287-287.
- Testing from a stochastic timed system with a fault model. The Journal of Logic and Algebraic Programming, 78(2), 98-115.
- Mutation testing from probabilistic and stochastic finite state machines. Journal of Systems and Software, 82(11), 1804-1818.
- Overcoming controllability problems with fewest channels between testers. Computer Networks, 53(5), 680-690.
- Using status messages in the distributed test architecture. Information and Software Technology, 51(7), 1123-1130.
- Verdict functions in testing with a fault domain or test hypotheses. ACM Transactions on Software Engineering and Methodology, 18(4), 1-19.
- Using formal specifications to support testing. ACM Computing Surveys, 41(2), 1-76. View this article in WRRO
- Package evolvability and its relationship with refactoring. Electronic Communications of the EASST, 8.
- Testing a deterministic implementation against a non-controllable non-deterministic stream X-machine. Formal Aspects of Computing, 20(6), 597-617.
- Checking sequences for distributed test architectures. Distributed Computing, 21(3), 223-238.
- Heuristics for fault diagnosis when testing from finite state machines. Software Testing, Verification and Reliability, 17(1), 41-57.
- Search Algorithms for Regression Test Case Prioritization. IEEE Transactions on Software Engineering, 33(4), 225-237.
- Reducing the cost of applying adaptive test cases. Computer Networks, 51(1), 224-238.
- Equivalence of linear, free, liberal, structured program schemas is decidable in polynomial time. Theoretical Computer Science, 373(1-2), 1-18.
- Editorial: Addressing industrial challenges—UKTest 2005 and beyond. Software Testing, Verification and Reliability, 16(3), 131-132.
- Improving test quality using robust unique input/output circuit sequences (UIOCs). Information and Software Technology, 48(8), 696-707.
- Achieving communication coverage in testing. ACM SIGSOFT Software Engineering Notes, 31(6), 1-1.
- Overcoming observability problems in distributed test architectures. Information Processing Letters, 98(5), 177-182.
- Separating sequence overlap for automated test sequence generation. Automated Software Engineering, 13(2), 283-301.
- Optimizing the length of checking sequences. IEEE Transactions on Computers, 55(5), 618-629.
- Software Testing Foundations: A Study Guide for the Certified Tester Exam. By Andreas Spillner, Tilo Linz and Hans Schaefer. Published by dpunkt.verlag, Heidelberg, Germany, 2006. ISBN: 3-89864-363-8, pp 266. Software Testing, Verification and Reliability, 16(4), 289-290.
- Avoiding coincidental correctness in boundary value analysis. ACM Transactions on Software Engineering and Methodology (TOSEM), 15(3), 227-241.
- Applying adaptive test cases to nondeterministic implementations. Information Processing Letters, 98(2), 56-60.
- Guest Editorial. Formal Aspects of Computing, 18(1), 1-2.
- A Tribute to Martin Woodward. Software Testing, Verification and Reliability, 16(4), 209-211.
- Constructing multiple unique input/output sequences using metaheuristic optimisation techniques. IEE Proceedings Software, 152(3), 127-140.
- Unifying program slicing and concept assignment for higher-level executable source code extraction. Software: Practice and Experience, 35(10), 977-1006.
- Artificial Intelligence Methods In Software Testing. Edited by Mark Last, Abraham Kandel and Horst Bunke. Published by World Scientific Publishing, Singapore, Series in Machine Perception and Artificial Intelligence, Volume 56, 2004. ISBN: 981-238-854-0. pp. 208. Software Testing, Verification and Reliability, 15(2), 135-136.
- Editorial: Validating our findings. Software Testing, Verification and Reliability, 15(4), 209-210.
- Static Program Slicing Algorithms are Minimal for Free Liberal Program Schemas. The Computer Journal, 48(6), 737-748.
- Software testing in the United Kingdom. Software Testing, Verification and Reliability, 14(3), 165-166.
- Book Reviews. Software Testing, Verification and Reliability, 14(1), 72-73.
- Testability transformation. IEEE Transactions on Software Engineering, 30(1), 3-16.
- CONSIT: a fully automated conditioned program slicer. Software: Practice and Experience, 34(1), 15-46.
- A flexible environment to evaluate state-based test techniques. ACM SIGSOFT Software Engineering Notes, 29(5), 1-3.
- On the testability of SDL specifications. Computer Networks, 44(5), 681-700.
- Testing conformance of a deterministic implementation against a non-deterministic stream X-machine. Theoretical Computer Science, 323(1-3), 191-233.
- Testing from a nondeterministic finite state machine using adaptive state counting. IEEE Transactions on Computers, 53(10), 1330-1342.
- Using a minimal number of resets when testing from a finite state machine. Information Processing Letters, 90(6), 287-292.
- Book Reviews. Software Testing, Verification and Reliability, 13(3), 197-198.
- UIO sequence based checking sequences for distributed test architectures. Information and Software Technology, 45(12), 793-803.
- Generating Candidates When Testing a Deterministic Implementation against a Non-deterministic Finite-state Machine. The Computer Journal, 46(3), 307-318.
- Editorial: Testing in the large through the small?. Software Testing, Verification and Reliability, 13(3), 139-140.
- Formulating software engineering as a search problem. IEE Proceedings - Software, 150, 161-175.
- Equivalence of conservative, free, linear program schemas is decidable. Theoretical Computer Science, 290(1), 831-862.
- Reformulating software engineering as a search problem. IEE Proceedings - Software, 150(3), 161-161.
- Conditioned slicing supports partition testing.. Softw. Test. Verification Reliab., 12, 23-28.
- Reduced length checking sequences. IEEE Transactions on Computers, 37(9), 1111-1117.
- Editorial: Formal methods and testing.. Softw. Test. Verification Reliab., 12, 69-70.
- Comparing test sets and criteria in the presence of test hypotheses and fault domains. ACM Transactions on Software Engineering and Methodology (TOSEM), 11(4), 427-448.
- Testing a system specified using Statecharts and Z. Information and Software Technology, 43(2), 137-149.
- Testing a distributed system: generating minimal synchronised test sequences that detect output-shifting faults. Information and Software Technology, 43(9), 551-560.
- Checking states and transitions of a set of communicating finite state machines. Microprocessors and Microsystems, 24(9), 443-452.
- An overview of program slicing.. Software Focus, 2, 85-92.
- Book Review: Spin Model Checking and Software Verification, Proceedings of the 7th International SPIN Workshop, Stanford, CA, USA, By Klaus Havelund, John Penix and Willem Visser (eds.). LNCS 1885.. Softw. Test. Verification Reliab., 11, 197-198.
- Editorial: special issue on specification-based testing. Software Testing, Verification and Reliability, 10(4), 201-202.
- Testing Conformance to a Quasi-Non-Deterministic Stream X-Machine. Formal Aspects of Computing, 12(6), 423-442.
- Testing Object-Oriented Software: Life-Cycle Solutions, Imran Bashir and Amrit L. Goel, Springer-Verlag, 2000 (Book Review).. Softw. Test. Verification Reliab., 10, 196-196.
- Using Program Slicing to Assist in the Detection of Equivalent Mutants.. Softw. Test. Verification Reliab., 9, 233-262.
- Minimizing the cost of fault location when testing from a finite state machine. Computer Communications, 22(2), 120-127.
- Machine Learning, by Tom M. Mitchell, McGraw-Hill, 1997 (Book Review).. Softw. Test. Verification Reliab., 9, 191-193.
- Editorial: What does testing tell us?. Softw. Test. Verification Reliab., 9, 143-144.
- Correct Systems: Building a Business Process Solution, by Mike Holcombe and Florentin Ipate, Springer-Verlag, 1998 (Book Review).. Softw. Test. Verification Reliab., 9, 76-77.
- Testing of Communicating Systems, Vol. 10 by Myungchul Kim, Sugwon Kang, Keesoo Hong (Eds.).. Comput. Commun., 22, 1619-1620.
- The Zero-Free Intervals for Characteristic Polynomials of Matroids.. Comb. Probab. Comput., 7, 153-165.
- Adaptive Testing of a Deterministic Implementation Against a Nondeterministic Finite State Machine. The Computer Journal, 41(5), 349-355.
- Estimation of failure rate using random and partition testing. Software Testing, Verification and Reliability, 7(3), 153-164.
- Testing from a Finite-State Machine: Extending Invertibility to Sequences. The Computer Journal, 40(4), 220-230.
- Testing from semi-independent communicating finite state machines with a slow environment. IEE Proceedings - Software Engineering, 144(5-6), 291-291.
- Testing from a Z Specification. Software Testing, Verification and Reliability, 7(1), 19-33.
- Extending Test Sequence Overlap by Invertibility. The Computer Journal, 39(4), 325-330.
- Model Independent Refusal Trace Testing. Science of Computer Programming.
- Accelerating Finite State Machine-Based Testing using Reinforcement Learning. IEEE Transactions on Software Engineering.
- Testing causality in scientific modelling software. ACM Transactions on Software Engineering and Methodology. View this article in WRRO
- Incomplete adaptive distinguishing sequences for non-deterministic FSMs. IEEE Transactions on Software Engineering.
- Implementation relations and testing for cyclic systems: adding probabilities. Robotics and Autonomous Systems.
- Modelling Second-Order Uncertainty in State-Based Systems. IEEE Transactions on Software Engineering.
- Removing Redundant Refusals: Minimal Complete Test Suites for Failure. Information and Computation.
- Testing using CSP models: time, inputs, and outputs. ACM Transactions on Computational Logic.
- View this article in WRRO Trustworthy Autonomous Systems through Verifiability. IEEE Computer.
- A More Precise Implementation Relation for Distributed Testing. The Computer Journal, bxv057-bxv057.
- The Effect of the Distributed Test Architecture on the Power of Testing. The Computer Journal, 51(4), 497-510.
- Automated Unique Input Output Sequence Generation for Conformance Testing of FSMs. The Computer Journal, 49(3), 331-344.
- Branch-Coverage Testability Transformation for Unstructured Programs. The Computer Journal, 48(4), 421-436.
- Race and education: policy and politics in Britain. London Review of Education.
Chapters
- Implementation Relations for Distributed Testing, Lecture Notes in Computer Science (pp. 34-48). Springer Nature Switzerland
- Mutation Testing for RoboChart, Software Engineering for Robotics (pp. 345-375). Springer International Publishing
- A Longitudinal Study of Fan-In and Fan-Out Coupling in Open-Source Systems, Frameworks for Developing Efficient Information Systems (pp. 199-224). IGI Global
- Mutation Testing. In Laplante PA (Ed.), Encyclopedia of Software Engineering (pp. 594-602). Taylor & Francis
- Testability Transformation – Program Transformation to Improve Testability, Formal Methods and Testing (pp. 320-344). Springer Berlin Heidelberg
Book reviews
- Testing Commercial-off-the-Shelf Components and Systems. Edited by Sami Beydeda and Volker Gruhn. Published by Springer-Verlag, Heidelberg, Germany, 2005. ISBN: 3-540-21871-8, pp 410. Software Testing, Verification and Reliability, 16(1), 61-61.
- Real-Time Systems and Software, Alan C. Shaw, John Wiley & Sons, 2001, ISBN: 0-471-35490-2, 215 pages, Soft cover. Software Focus, 2(2), 81-81.
Conference proceedings papers
- Bounding random test set size with computational learning theory. Proceedings of the ACM on Software Engineering (PACMSE), Vol. 1(FSE) (pp 2538-2560). Porto de Galinhas, Brazil, 17 July 2024 - 17 July 2024. View this article in WRRO
- Evaluating String Distance Metrics for Reducing Automatically Generated Test Suites. Proceedings of the 5th ACM/IEEE International Conference on Automation of Software Test (AST 2024)
- Challenges in testing of cyclic systems. 2023 27th International Conference on Engineering of Complex Computer Systems (ICECCS), 14 June 2023 - 16 June 2023.
- Metamorphic testing with causal graphs. 2023 IEEE Conference on Software Testing, Verification and Validation (ICST). Dublin, Ireland, 16 April 2023 - 16 April 2023. View this article in WRRO
- Reliable counterparts. Proceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings
- Are 20% of Classes Responsible for 80% of Refactorings?. 2021 47th Euromicro Conference on Software Engineering and Advanced Applications (SEAA), 1 September 2021 - 3 September 2021.
- Removing Redundant Refusals: Minimal Complete Test Suites for Failure Trace Semantics. 2021 36th Annual ACM/IEEE Symposium on Logic in Computer Science (LICS), 29 June 2021 - 2 July 2021. View this article in WRRO
- Four-valued monitorability of ω-regular languages. Formal Methods and Software Engineering : 22nd International Conference on Formal Engineering Methods, ICFEM 2020, Proceedings (pp 198-214). Singapore, 1 March 2021 - 3 March 2021.
- A mechanised proof of an adaptive state counting algorithm. ICTSS 2019 : Testing Software and Systems (pp 176-193). Paris, France, 15 October 2019 - 17 October 2019. View this article in WRRO
- Testing robots using CSP. Tests and Proofs (pp 21-38). Porto, Portugal, 9 October 2019 - 11 October 2019. View this article in WRRO
- An implementation relation for cyclic systems with refusals and discrete time. Software Engineering and Formal Methods 17th International Conference Proceedings (pp 393-409). Oslo, Norway, 18 September 2019 - 20 September 2019. View this article in WRRO
- Message from the A-MOST 2019 Chairs. 2019 IEEE International Conference on Software Testing, Verification and Validation Workshops (ICSTW), 22 April 2019 - 23 April 2019.
- Local Observability and Controllability Enforcement in Distributed Testing (pp 327-338)
- Testing Software and Systems - 30th IFIP WG 6.1 International Conference, ICTSS 2018, Cádiz, Spain, October 1-3, 2018, Proceedings. ICTSS, Vol. 11146
- Smart contracts vulnerabilities: a call for blockchain software engineering?. 2018 International Workshop on Blockchain Oriented Software Engineering (IWBOSE), 20 March 2018 - 20 March 2018.
- Hardness of Deriving Invertible Sequences from Finite State Machines (pp 147-160)
- Constraint-Based Oracles for Timed Distributed Systems (pp 276-292)
- Integrating Graphical and Natural Language Specifications to Support Analysis and Testing. 2017 IEEE 25th International Requirements Engineering Conference Workshops (REW), 4 September 2017 - 8 September 2017.
- A Suspension-Trace Semantics for CSP. 2016 10th International Symposium on Theoretical Aspects of Software Engineering (TASE), 17 July 2016 - 19 July 2016.
- Decidability and Complexity for Quiescent Consistency. Proceedings of the 31st Annual ACM/IEEE Symposium on Logic in Computer Science - LICS '16, 5 July 2016 - 8 July 2016.
- Controllability Through Nondeterminism in Distributed Testing (pp 89-105)
- Resolving the Equivalent Mutant Problem in the Presence of Non-determinism and Coincidental Correctness (pp 123-138)
- Generating Minimum Height ADSs for Partially Specified Finite State Machines (pp 171-179)
- Test and Production Classes of an Industrial C# System: A Refactoring and Fault Perspective. 2015 41st Euromicro Conference on Software Engineering and Advanced Applications, 26 August 2015 - 28 August 2015.
- An analysis of the relationship between conditional entropy and failed error propagation in software testing. Proceedings of the 36th International Conference on Software Engineering - ICSE 2014, 31 May 2014 - 7 June 2014.
- Distinguishing Sequences for Partially Specified FSMs (pp 62-76)
- An Implementation Relation and Test Framework for Timed Distributed Systems (pp 82-97)
- Semantic mutation testing. Science of Computer Programming, Vol. 78(4) (pp 345-363)
- Augmenting Sequence Enumeration with String-Rewriting for Requirements Analysis and Behavioral Specification (pp 179-193)
- Conditional-Based Refactorings and Fault-Proneness: An Empirical Study. 2013 IEEE Sixth International Conference on Software Testing, Verification and Validation Workshops, 18 March 2013 - 22 March 2013.
- Software Engineering and Formal Methods - 11th International Conference, SEFM 2013, Madrid, Spain, September 25-27, 2013. Proceedings. SEFM, Vol. 8137
- Testing with Inputs and Outputs in CSP (pp 359-374)
- Passive Testing with Asynchronous Communications (pp 99-113)
- Specification Mutation Analysis for Validating Timed Testing Approaches Based on Timed Automata. 2012 IEEE 36th Annual Computer Software and Applications Conference, 16 July 2012 - 20 July 2012.
- Model Based Test Automation through Asynchronous Channels. 2012 IEEE 36th Annual Computer Software and Applications Conference Workshops, 16 July 2012 - 20 July 2012.
- Using Time to Add Order to Distributed Testing (pp 232-246)
- SMT-C: A Semantic Mutation Testing Tools for C. 2012 IEEE Fifth International Conference on Software Testing, Verification and Validation, 17 April 2012 - 21 April 2012.
- Semantic Mutation Analysis of Floating-Point Comparison. 2012 IEEE Fifth International Conference on Software Testing, Verification and Validation, 17 April 2012 - 21 April 2012.
- Message from the QSIC 2011 Programme Committee Chairs. 2011 11th International Conference on Quality Software, 13 July 2011 - 14 July 2011.
- A Case Study on the Use of Genetic Algorithms to Generate Test Cases for Temporal Systems (pp 396-403)
- Experimental Comparison of Different Techniques to Generate Adaptive Sequences (pp 404-411)
- Conformance Relations for Distributed Testing Based on CSP (pp 48-63)
- Creating adaptive sequences with genetic algorithms to reach a certain state in a non-deterministic FSM. 2011 IEEE Symposium on Artificial Life (ALIFE), 11 April 2011 - 15 April 2011.
- Proceedings of the 11th International Conference on Quality Software, QSIC 2011, Madrid, Spain, July 13-14, 2011.. QSIC
- GeTeX: A Tool for Testing Real-Time Embedded Systems Using CAN Applications. 2011 18th IEEE International Conference and Workshops on Engineering of Computer-Based Systems, 27 April 2011 - 29 April 2011.
- Conformance Testing from Message Sequence Charts. 2011 Fourth IEEE International Conference on Software Testing, Verification and Validation, 21 March 2011 - 25 March 2011.
- Dagstuhl Seminar 10421 Model-Based Testing in Practice October 18-22, 2010. Dagstuhl Seminar Proceedings, Vol. 10421
- The 'deception' of code smells: An empirical investigation. Proceedings of the International Conference on Information Technology Interfaces, ITI (pp 683-688)
- Model-Based Testing for the Cloud.. Practical Software Testing: Tool Automation and Human Factors, Vol. 10111
- Is a strategy for code smell assessment long overdue?. Proceedings of the 2010 ICSE Workshop on Emerging Trends in Software Metrics - WETSoM '10, 4 May 2010 - 4 May 2010.
- A Multi-criteria Decision Making Framework for Real Time Model-Based Testing (pp 194-197)
- Non-local Choice and Implied Scenarios. 2010 8th IEEE International Conference on Software Engineering and Formal Methods, 13 September 2010 - 18 September 2010.
- Scenarios-Based Testing of Systems with Distributed Ports. 2010 10th International Conference on Quality Software, 14 July 2010 - 15 July 2010.
- Generating Feasible Transition Paths for Testing from an Extended Finite State Machine (EFSM) with the Counter Problem. 2010 Third International Conference on Software Testing, Verification, and Validation Workshops, 6 April 2010 - 10 April 2010.
- An evolutionary study of fan-in and fan-out metrics in OSS. 2010 Fourth International Conference on Research Challenges in Information Science (RCIS), 19 May 2010 - 21 May 2010.
- Automated Test Data Generation on the Analyses of Feature Models: A Metamorphic Testing Approach. 2010 Third International Conference on Software Testing, Verification and Validation, 6 April 2010 - 10 April 2010.
- Testing Probabilistic Distributed Systems (pp 63-77)
- Model-Based Testing in Practice, 17.10. - 22.10.2010. Model-Based Testing in Practice, Vol. 10421
- 10421 Summary - Model-Based Testing in Practice.. Model-Based Testing in Practice, Vol. 10421
- 10421 Abstracts Collection - Model-Based Testing in Practice.. Model-Based Testing in Practice, Vol. 10421
- Semantic Mutation Testing. 2010 Third International Conference on Software Testing, Verification, and Validation Workshops, 6 April 2010 - 10 April 2010.
- An empirical study of "removed" classes in Java open-source systems. Advanced Techniques in Computing Sciences and Software Engineering (pp 99-104)
- A Testability Transformation Approach for State-Based Programs. 2009 1st International Symposium on Search Based Software Engineering, 13 May 2009 - 15 May 2009.
- A Search-Based Approach for Automatic Test Generation from Extended Finite State Machine (EFSM). 2009 Testing: Academic and Industrial Conference - Practice and Research Techniques, 4 September 2009 - 6 September 2009.
- Aiding Test Case Generation in Temporally Constrained State Based Systems Using Genetic Algorithms (pp 327-334)
- JPEG Steganography: A Performance Evaluation of Quantization Tables. 2009 International Conference on Advanced Information Networking and Applications, 26 May 2009 - 29 May 2009.
- Checking Sequence Construction Using Adaptive and Preset Distinguishing Sequences. 2009 Seventh IEEE International Conference on Software Engineering and Formal Methods, 23 November 2009 - 27 November 2009.
- Generating Feasible Transition Paths for Testing from an Extended Finite State Machine (EFSM). 2009 International Conference on Software Testing Verification and Validation, 1 April 2009 - 4 April 2009.
- Simulation Relations for Systems with Distributed Interfaces. 2009 Seventh IEEE International Conference on Software Engineering and Formal Methods, 23 November 2009 - 27 November 2009.
- Using communication coverage criteria and partial model generation to assist software integration testing. Software Quality Journal, Vol. 16(2) (pp 185-211)
- Controllable test cases for the distributed test architecture. Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), Vol. 5311 LNCS (pp 201-215)
- Measuring personality from keyboard and mouse use. Proceedings of the 15th European conference on Cognitive ergonomics the ergonomics of cool interaction - ECCE '08, 16 September 2008 - 19 September 2008.
- Using adaptive distinguishing sequences in checking sequence constructions. Proceedings of the 2008 ACM symposium on Applied computing - SAC '08, 16 March 2008 - 20 March 2008.
- Towards a Computer Interaction-Based Mood Measure Instrument.. PPIG (pp 17-17)
- Extending Stream X-Machines to Specify and Test Systems with Timeouts. 2008 Sixth IEEE International Conference on Software Engineering and Formal Methods, 10 November 2008 - 14 November 2008.
- High Capacity Steganographic Method Based Upon JPEG. 2008 Third International Conference on Availability, Reliability and Security, 4 March 2008 - 7 March 2008.
- Implementation Relations for the Distributed Test Architecture (pp 200-215)
- Formal Methods and Testing, An Outcome of the FORTEST Network, Revised Selected Papers. Formal Methods and Testing, Vol. 4949
- The precursor to an industrial software metrics program. ITI 2008 - 30th International Conference on Information Technology Interfaces, 23 June 2008 - 26 June 2008.
- Testing in the Distributed Test Architecture: An Extended Abstract. 2008 The Eighth International Conference on Quality Software, 12 August 2008 - 13 August 2008.
- A Test Taxonomy Applied to the Mechanics of Java Refactorings (pp 497-502)
- Mutation Testing from Probabilistic Finite State Machines. Testing: Academic and Industrial Conference Practice and Research Techniques - MUTATION (TAICPART-MUTATION 2007), 10 September 2007 - 14 September 2007.
- Mood independent programming. Proceedings of the 14th European conference on Cognitive ergonomics invent! explore! - ECCE '07, 28 August 2007 - 31 August 2007.
- Moods and Programmers' Performance.. PPIG (pp 2-2)
- A Meta-analysis Approach to Refactoring and XP. 2007 IEEE/ACS International Conference on Computer Systems and Applications, 13 May 2007 - 16 May 2007.
- A Thread-tag Based Semantics for Sequence Diagrams. Fifth IEEE International Conference on Software Engineering and Formal Methods (SEFM 2007), 10 September 2007 - 14 September 2007.
- Flexible Behavioural Compatibility and Substitutability for Component Protocols: A Formal Specification. Fifth IEEE International Conference on Software Engineering and Formal Methods (SEFM 2007), 10 September 2007 - 14 September 2007.
- Mutation Testing from Probabilistic Finite State Machines. Testing: Academic and Industrial Conference Practice and Research Techniques - MUTATION (TAICPART-MUTATION 2007), 10 September 2007 - 14 September 2007.
- Refactoring test suites versus test behaviour. Fourth international workshop on Software quality assurance in conjunction with the 6th ESEC/FSE joint meeting - SOQUA '07, 3 September 2007 - 4 September 2007.
- Using partial models to support the testing of distributed systems. Proceedings of the 11th IASTED International Conference on Software Engineering and Applications, SEA 2007 (pp 48-56)
- Thread–Based Analysis of Sequence Diagrams (pp 19-34)
- Programmer's mood and their performance. Proceedings of the 13th Eurpoean conference on Cognitive ergonomics trust and control in complex socio-technical systems - ECCE '06, 20 September 2006 - 22 September 2006.
- Proceedings of the 2006 Workshop on Role of Software Architecture for Testing and Analysis, held in conjunction with the ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA 2006), ROSATEA 2006, Portland, Maine, USA, July 17-20, 2006. ROSATEA
- The Effectiveness of Refactoring, Based on a Compatibility Testing Taxonomy and a Dependency Graph. Testing: Academic & Industrial Conference - Practice And Research Techniques (TAIC PART'06), 29 August 2006 - 31 August 2006.
- ConSUS: a light-weight program conditioner. Journal of Systems and Software, Vol. 77(3) (pp 241-262)
- Eliminating Redundant Tests in a Checking Sequence (pp 146-158)
- Generating feasible input sequences for extended finite state machines (EFSMs) using genetic algorithms. Proceedings of the 2005 conference on Genetic and evolutionary computation - GECCO '05, 25 June 2005 - 29 June 2005.
- Resolving Observability Problems in Distributed Test Architectures (pp 219-232)
- Computing Unique Input/Output Sequences Using Genetic Algorithms (pp 164-177)
- Evolving transformation sequences using genetic algorithms. FOURTH IEEE INTERNATIONAL WORKSHOP ON SOURCE CODE ANALYSIS AND MANIPULATION, PROCEEDINGS (pp 65-74)
- Input Sequence Generation for Testing of Communicating Finite State Machines (CFSMs) (pp 1429-1430)
- How to Overcome the Equivalent Mutant Problem and Achieve Tailored Selective Mutation Using Co-evolution (pp 1338-1349)
- Conditions for Resolving Observability Problems in Distributed Testing (pp 229-242)
- Testing of Communicating Systems, 16th IFIP International Conerence, TestCom 2004, Oxford, UK, March 17-19, 2004, Proceedings. TestCom, Vol. 2978
- Finding building blocks for software clustering. GENETIC AND EVOLUTIONARY COMPUTATION - GECCO 2003, PT II, PROCEEDINGS, Vol. 2724 (pp 2513-2514)
- Search based transformations. GENETIC AND EVOLUTIONARY COMPUTATION - GECCO 2003, PT II, PROCEEDINGS, Vol. 2724 (pp 2511-2512)
- Automatically Generating Information from a Z Specification to Support the Classification Tree Method (pp 388-407)
- Concerning the Ordering of Adaptive Test Sequences (pp 289-302)
- A New Representation And Crossover Operator For Search-based Optimization Of Software Modularization.. GECCO (pp 1351-1358)
- Improving Evolutionary Testing By Flag Removal.. GECCO (pp 1359-1366)
- ConSIT: a conditioned program slicer. Proceedings International Conference on Software Maintenance ICSM-94, 14 October 2000 - 14 October 2000.
- View this article in WRRO Causal test adequacy. 2024 IEEE Conference on Software Testing, Verification and Validation (ICST). Toronto, Canada, 27 May 2024 - 27 May 2024.
- Does an 80:20 rule apply to Java coupling?. 13th International Conference on Evaluation and Assessment in Software Engineering (EASE)
- Testing in the Distributed Test Architecture (pp 157-183)
- Search-Based Amorphous Slicing. 12th Working Conference on Reverse Engineering (WCRE'05)
- Amorphous procedure extraction. Source Code Analysis and Manipulation, Fourth IEEE International Workshop on
- Evolving transformation sequences using genetic algorithms. Source Code Analysis and Manipulation, Fourth IEEE International Workshop on
- Loop squashing transformations for amorphous slicing. 11th Working Conference on Reverse Engineering
- A multiple hill climbing approach to software module clustering. International Conference on Software Maintenance, 2003. ICSM 2003. Proceedings.
- Unions of slices are not slices. Seventh European Conference onSoftware Maintenance and Reengineering, 2003. Proceedings.
- Evolutionary testing supported by slicing and transformation. International Conference on Software Maintenance, 2002. Proceedings.
- VADA: a transformation-based system for variable dependence analysis. Proceedings. Second IEEE International Workshop on Source Code Analysis and Manipulation
- A post-placement side-effect removal algorithm. International Conference on Software Maintenance, 2002. Proceedings.
- Code extraction algorithms which unify slicing and concept assignment. Ninth Working Conference on Reverse Engineering, 2002. Proceedings.
- Expanding an extended finite state machine to aid testability. Proceedings 26th Annual International Computer Software and Applications
- FORTEST: formal methods and testing. Proceedings 26th Annual International Computer Software and Applications
- Pre/post conditioned slicing. Proceedings IEEE International Conference on Software Maintenance. ICSM 2001
- Backward conditioning: a new program specialisation technique and its application to program comprehension. Proceedings 9th International Workshop on Program Comprehension. IWPC 2001
- Node coarsening calculi for program slicing. Proceedings Eighth Working Conference on Reverse Engineering
- Program simplification as a means of approximating undecidable propositions. Proceedings Seventh International Workshop on Program Comprehension
- Efficient state synchronisation in model-based testing through reinforcement learning. 36th IEEE/ACM Automated Software Engineering (ASE), 15 November 2021 - 19 November 2021.
Datasets
- Experimental data from paper "Using Squeeziness to test component-based systems defined as Finite State Machines".
- Normalised Squeeziness and Failed Error Propagation Data.
Preprints
- A Survey of the Metrics, Uses, and Subjects of Diversity-Based Techniques in Software Testing, arXiv.
- Test case generation for agent-based models: A systematic literature review, arXiv.
- Four-valued monitorability of $omega$-regular languages, arXiv.
- Characterizing Minimal Semantics-preserving Slices of predicate-linear, Free, Liberal Program Schemas, arXiv.
- On the computational complexity of dynamic slicing problems for program schemas, arXiv.
- Decidability and Complexity for Quiescent Consistency and its Variations, arXiv.
- Checking Finite State Machine Conformance when there are Distributed Observations, arXiv.
- Complexity of Data Dependence problems for Program Schemas with Concurrency, arXiv.
- Grants
-
Current grants
- Security of Digital Twins in Manufacturing, EPSRC, 10/2021 - 04/2024, £774,954, as Co-PI
- CITCoM: Casual Inference for Testing of Computational Models, EPSRC, 01/2021 - 06/2024, £670,838, as Co-PI
Previous grants
- UKRI Trustworthy Autonomous Systems Node in Verifiability, UKRI, 11/2020 - 10/2024, £2,923,653, as Co-PI
- Verifiably Correct Transactional Memory, EPSRC, 09/2018 - 09/2021, £397,680, as co-PI
- RoboTest: Systematic Model-Based Testing and Simulation of Mobile Autonomous Robots, EPSRC, 04/2018 - 08/2024, £610,060, as PI
- InfoTestSS: Information theory and Test Suite Selection, EPSRC, 01/2017 - 06/2021, £440,393, as PI
- AQUATIC: Assessing the quality of test suides in industrial code, EPSRC, 09/2015 - 12/2018, £332,691, as Co-PI
- Professional activities and memberships
-
Member of the Testing research group