Research Group for Applied Software Engineering
Forschungsgruppe für Angewandte Softwaretechnik

Hauptseminar Model-Based Testing for Outsourcing Software Testing

Prof. Bernd Bruegge, Ph.D.
Lilith Al-Jadiri



Hauptseminar Model-Based Testing for Outsourcing Software Testing

Registration

To register for this seminar, send mail to Lilith Al-Jadiri. Topics are awarded on a first come, first serve basis.

Intended Audience

Students with a Vordiplom and some system development experience (e.g., a Software Engineering Praktikum or Software Engineering Lecture).

Topics

TopicPresenterPaperSlides (pdf)
I David Leuschner    
II Friedrich Kammerlander    
III Christian Konrad    
IV Borislav Vangelov    
V Stefan Foerster    
VI    
VII    
VIII    
IX Simon Stenzel  
X Jason Franklin  
XI    
XII Christian Unger  
XIII    
XIV    
XV    
XVI Markus Maier  
XVII    

 

Content:

I.

Basics and Terminology of Software Testing

  • What is error/fault/bug/failure/testing
  • Overview of  the (general) fundamental testing process:
    • Test planning
    • Test analysis and design (specification)
    • Test realization and execution
    • Test evaluation and reporting
    • Test termination and documentation
  • Classify terminology according to aspects of testing process:
    • Test plan, Test strategy, Test concept, Test suite, log./high-level/abstract Test cases vs. concrete/low-level/executable Test cases, Test control, Test configuration, Test architecture, Test oracle, Test harness, etc.
  • Dimensions of software testing:
    • What is the surrounding software development process? (v-model/agile, unit/system/user level, planning, documentation,....)
    • What is tested?
    • Software characteristics  (design/code/binary, embedded?, language, ...)
    • Requirements  (functional/performance/reliability/..., behaviour/data oriented, precision)
  • Which tests?
    • Purpose  (kind of coding errors, missing/additional requirements, development/regression)
    • technique  (adequacy criterion: how to generate how many tests)
    • Assumptions  (limitations, simplifications, heuristics)
  • How to test?  (manual/automated, platform, reproducable)
  • How are the results evaluated? (quality model, priorities, risks)
  • Who performs which task?  (programmer, tester, user, third party)
    • Test generation, implementation, execution, evaluation



II.

Outsourcing Software Testing

  • What is outsourcing? Offshoring? What are challenges in software testing?
  • What are the advantages and drawbacks of offshoring Software Testing?
  • What are the best practices of outsourcing software testing.
  • What are the criteria (check-list) that decide whether a software testing project is offshore-able or not?
  • How can one tailor or alter software testing processes and activities to make it suitable for offshoring?
  • This point is related to point 4, , The influence of offshoring on communication, roles, choice of testing method (e.g. Model based Testing), tools, etc.



III.

Application of MBT

  • What is Model-based Testing (MBT)?
  • What are the main activities of the MBT process (e.g. Build Model, Test Generation, and Test Execution)?
  • Which activities can be automated and how?
  • What are the benefits/trade-offs of MBT in comparison with other conventional approaches (e.g. text driven, keyword driven testing)?
  • Which products or testing types are suitable for MBT, why or why not?
  • Examples of the application of MBT


Literature:

  • Model-based Testing: http://www.cs.helsinki.fi/u/paakki/lindholm.pdf
  • Applying Models: http://www.geocities.com/harry_robinson_testing/ApplyingModels.pdf
  • Graph Theory Techniques in Model-Based Testing http://www.geocities.com/harry_robinson_testing/graph_theory.htm
  • Model-based Testing: http://www.geocities.com/model_based_testing/sqw97.pdf
  • Model-based Software Testing: http://www.geocities.com/model_based_testing/ModelBasedSoftwareTesting.pdf
  • SOFTWARE ACQUISITION GOLD PRACTICE MODEL-BASED TESTING
  • Obstacles and opportunities for model-based testing in an industrial software environment.



IV.

UML Testing Profile (U2TP) and TTCN-3

  • UT2P basics
  • TTCN-3 basics
  • U2TP and TTCN-3
  • how can they be used together for testing
  • how to convert from u2tp to ttcn-3
  • Aplication examples
  • Application area (what kinds of tests/systems)
  • Future work



V.

Business Process Modeling Notation (BPMN) What does it mean for testers?

  • What is BPMN?
  • BPMN basics
  • General uses of BPMN
  • Value of Modeling in BPMN
  • Relevance of BPMN to testers
    • What kind of tests may be modeled with BPMN
    • Example
  • Limitations of BPMN
  • Future work

Literature:

  • Introduction to BPMN, Stephen A. White, IBM Cooperation



VI.

Matthias Riebisch, Ilka Philippow, Marco Götze. UML-Based Statistical Test Case Generation . In Objects, Components, Architectures, Services, and Applications for a Networked World (Net.ObjectDays Conference), Lecture Notes in Computer Science, Band 2591, Erfurt, Deutschland, 2002. Springer-Verlag.


VII.

Lionel C. Briand,Yvan Labiche. A UML-Based Approach to System Testing. In 4th International Conference on the Unified Modeling Language (UML), Toronto, Kanada, 2001.


VIII.

Mike Barnett, Wolfgang Grieskamp, Lev Nachmanson, Wolfram Schulte, Nikolai Tillman, Margus Veanes. Model-Based Testing with AsmL.NET. In 1st European Conference on Model-Driven Software Engineering, Nürnberg, Deutschland, 2003.

Scenario-oriented Modeling in AsmL and its Instrumentation for Testing

Mike Barnett, Wolfgang Grieskamp, Yuri Gurevich,

Wolfram Schulte, Nikolai Tillmann and Margus Veanes

Microsoft Research, Foundations of Software Engineering, REDMOND


IX.

Tsun S. Chow. Testing Software Design Modeled by Finite-State Machines. IEEE Transactions on Software Engeneering, SE-4(3):178-187, 1978.

A useful FSM representation for test suite design and development


X.

Automation of GUI testing using a model-driven approach

Thomas J. Ostrand, Marc J. Blacer. The Category-Partition Method for Specifying and Generating Functional Tests. Communications of the ACM, 31(6):676-686, 1988.


 XI.

Supaporn Kansomkeat, Wanchai Rivepiboon. Automated-Generating Test Case Using UML Statechart Diagrams. In Annual Research Conference of the South African Institute of Computer Scientists and Information Technologists on Enablement Through Technology (SAICSIT), Fourways, Südafrika, 2003.

D. Seifert, S. Helke, T. Santen. Test Case Generation for UML Statecharts. In Perspectives of System Informatics (PSI), Lecture Notes In Computer Science, Band 2890, Novosibirsk, Russland, 2003. Springer-Verlag.

Jeff Offutt, Aynur Abdurazik. Generating Tests from UML Specifications. In 2nd International Conference on the Unified Modeling Language (UML), Fort Collins, Colorado, USA, 1999.


XII.

A State-based Approach to Integration Testing based on UML Models

Jeff Offutt, Aynur Abdurazik. Using UML Collaboration Diagrams for Static Checking and Test Generation. In 3rd International Conference on the Unified Modeling Language (UML), York, Großbritanien, 2000.


XIII.

Wang Linzhang, Yuan Jiesong, Yu Xiaofeng, Hu Jun, Li Xuandong, Zheng Guoliang. Generating Test Cases from UML Activity Diagram Based on Gray-Box Method . In 11th Asia-Pacific Software Engineering Conference (APSEC), Busan, Korea, 2004. IEEE Computer Society Press.

Andreas Reuys, Sacha Reis, Erik Kamsties, Klaus Pohl. Derivation of Domain Test Scenarios from Activity Diagrams. In International Workshop on Product Line Engineering The Early Steps: Planning, Modeling, and Managing (PLEES), Erfurt, Deutschland, 2003.


XIV.

Øystein Haugen, Ketil Stølen. STAIRS: Steps to Analyze Interactions with Refinement Semantics. In 6th International Conference on the Unified Modeling Language (UML), Lecture Notes in Computer Science, Band 2863. Springer-Verlag, 2003.

Falk Fraikin, Thomas Leonhardt. SeDiTeC - Testing Based on Sequence Diagram. In 17th IEEE International Conference on Automated Software Engineering (ASE), Edinburgh, Großbritannien, 2002.


XV.

User Community Modeling Language (UCML) for Performance Testing

Rodgers, Nigel, "UCML", 6/16/2004

 17. Warren, Brian, Ceridian, "UCML 1.1 Visio stencils", 6/9/2004


XVI.

R. E. Filman, T. Elrad, S. Clarke, and M. Ak?sit., Aspect-Oriented Software Development, Addison-Wesley, 2004.

Evaluating an Aspect-Oriented Approach for Production-Testing Software

A Model-Based Approach to Test Generation for Aspect-Oriented Programs


XVII.

Towards Model-Based Testing of Web Services

Time and Location

This Seminar will be held as a block Seminar. Due to the large number of topics, however, we will require to schedule 2 to 3 dates. The first date will be the 31st of January, 2007.

Requirements

  • High motivation for the topic
  • A presentation of about 30 - 40 minutes
  • Independent literature research
  • Attendence to all presentations and active discussion in the seminar

 

Notes

  • This seminar is conducted in English
  • Successfull participation can be accredited with a "Überfachliches Grundlagenseminar" or a Hauptseminar Schein.
  • SWS: 2

 

Useful links

  • Tips for the presentation
    • How to Present a Paper in Theoretical Computer Science: A Speaker's Guide for Students
  • Paper about writing good papers
  • Literature search
    • Citeseer (free access)
    • ACM Digital Library (access from TUM, configure your browser to use proxy.biblio.tu-muenchen.de:8080 as http proxy)


Supervisor

Professor

Bernd Bruegge Prof. Bernd Brügge, Ph.D.


Contact

Lilith Al-Jadiri Lilith Al-Jadiri