1 / 11

Architecture-based Testing: how MBT may help?

Architecture-based Testing: how MBT may help?. Software Architecture (traditional understanding). The Software Architecture is the earliest model of the whole software system created along the software lifecycle

bishop
Download Presentation

Architecture-based Testing: how MBT may help?

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Architecture-based Testing: how MBT may help?

  2. Software Architecture (traditional understanding) The Software Architecture is the earliest model of the whole software system created along the software lifecycle SA as a high level design blueprint of the system to be used during the system development and later on for maintenance and reuse Describes (in a more or less “formal” notation) how a system is structured intocomponents and connectors(SA topology) and how these elements interact(SA dynamics)

  3. Software Architecture • Let us reason about the Gaudi’s Sagrada Familia • Selected components/interfaces/connectors • Selected SA Style and constraints • Expected behavior • HW/SW/Deployment views • Components’ Nesting and sub-systems • NF attributes • …

  4. Software Architecture (recent/future understanding) • A set of architecture design decisions taken to generate the architecture artifact • An SA is not only the “output” of the design decision process • Design issues, alternative solutions, rationale • Focus on set of Views and Viewpoints, looking at stakeholders and their concerns • Different stakeholders require different views, to solve different concerns • ISO/IEC 42010 (just approved)

  5. 3 2 1 4 0 5 Design Decisions & views • Why a certain architectural style has been selected? • Why a certain technology has been selected? • Why the centralized data solution is more appropriate? • Dependencies among decisions • Structural, Behavioral, Trust, Financial, Performance, … views

  6. Example Picture taken from: http://www.watblog.com/2010/08/18/tcs-to-build-the-%E2%80%98nano-of-it%E2%80%99-cheap-cloud-computing-india/

  7. SA-based Testing and Regression Testing • An implementation should conform to the Architectural specification • Is my implementation really compliant to my architectural specification… [and my design decisions] • SA structure and behavior models used to generate SA-level test specifications • Lessons learned: • The “distance” between SA and code is challenging • The SA model is (by definition) partial and incomplete • non-determinism • Regression Testing to manage the architectural drift Previous work: [TSE04] [JSS06]

  8. Software Architecture-based testing in practice • A project is ongoing with the SEI, on architecture-based testing • CMU SEI, University of L’Aquila, CNR-Pisa • Goal: • To identify industrial needs related to SA-based testing • To identify potential solutions to driving examples • To identify how the testing/analysis community may help to solve industrial needs and driving examples

  9. ? + ? + Tentative driving problem + Fly test [Pictures taken from Google Images]

  10. Question • How (your experience with) MBT may help to deal with this type of problems? • A working group is being formed • MBT, regressiong testing, component-based testing, product line testing, formal verification, software architecture, … • I will appreciate any feedback you might provide

  11. References • [TSE04] H. Muccini, A. Bertolino and P. Inverardi, "Using Software Architecture for Code Testing". In IEEE Transactions on Software Engineering, Vol. 30, Number 3, March 2004, pp. 160-171. • [JSS06] H. Muccini, M. Dias and D. J. Richardson, "Software Architecture-based Regression Testing“.In the Journal of Systems and Software (JSS), Special Issue on "Architecting Dependable Systems". Vol. 79, Issue 10 , October 2006, Pages 1379-1396.

More Related