A Practical Architecture-Centric Analysis Process

  • Antonio Bucchiarone
  • Henry Muccini
  • Patrizio Pelliccione
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4214)


When engineering complex and distributed software and hardware systems (increasingly used in many sectors, such as manufacturing, aerospace, transportation, communication, energy and health-care), dependability has became a must, since failures can have economics consequences and can also endanger human life.

Software Architectures (SA) can help improving the overall system dependability, providing a system blueprint that can be validated and that can guide all phases of the system development. Even if much work has been done on this direction, three important topics require major investigation: how different analysis techniques can be integrated together, how results obtained with SA-based analysis can be related to requirements and coding, and how to integrate new methodologies in the industrial software development life-cycle.

In this paper we propose an architecture-centric analysis process which allows formal analysis driven by model-based architectural specifications. This analysis process satisfies the industrial requirements, since it is tool supported and based on semi-formal (UML-based) specifications.


Model Checker Software Architecture Atomic Function Sequence Diagram Architectural Model 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Pressman, R.: Software Engineering - A Practitioner’s Approach, pp. 28–29. McGraw-Hill, Singapore (1987)Google Scholar
  2. 2.
    Bertolino, A., Inverardi, P., Muccini, H.: Formal Methods in Testing Software Architectures. In: Bernardo, M., Inverardi, P. (eds.) SFM 2003. LNCS, vol. 2804, pp. 122–147. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  3. 3.
    Hofmeister, C., Nord, R., Soni, D.: Applied Software Architecture. Addison-Wesley, Reading (1998)Google Scholar
  4. 4.
    Bass, L., Clements, P., Kazman, R.: Software Architecture in Practice, 2nd edn. SEI Series in Software Eng. Addison-Wesley Professional, Reading (2003)Google Scholar
  5. 5.
    Bertolino, A., Marchetti, E., Muccini, H.: Introducing a Reasonably Complete and Coherent Approach for Model-based Testing. In: Testing and Analysis of Component-Based Systems Workshop, Tacos (2004)Google Scholar
  6. 6.
    Medvidovic, N., Taylor, R.N.: A Classification and Comparison Framework for Software Architecture Description Languages. IEEE TSE 26(1) (2000)Google Scholar
  7. 7.
    Medvidovic, N., Rosenblum, D.S., Redmiles, D.F., Robbins, J.E.: Modeling Software Architectures in the Unified Modeling Language. ACM TOSEM 11(1) (2002)Google Scholar
  8. 8.
    STRAW 2003: Second Int. Workshop From Software Requirements to Architectures, Portland, Oregon, USA (May 09, 2003)Google Scholar
  9. 9.
    Mustapic, G., Wall, A., Norstrom, C., Crnkovic, I., Sandstrom, K., Andersson, J.: Real world influences on software architecture - interviews with industrial system experts. In: Fourth Working IEEE/IFIP Conference on Software Architecture, WICSA 2004, pp. 101–111 (2004)Google Scholar
  10. 10.
    Bril, R.J., Krikhaar, R.L., Postma, A.: Architectural Support in Industry: a reflection using C-POSH. Journal of Software Maintenance and Evolution (2005)Google Scholar
  11. 11.
    Sommerville, I.: Software engineering, 7th edn. Addison-Wesley Longman Publishing Co., Inc., Boston (2004)Google Scholar
  12. 12.
    Autili, M., Pelliccione, P.: Towards a Graphical Tool for Refining User to System Requirements. In: 5th GT-VMT 2006 - ETAPS 2006 (to appear in ENTCS) (2006)Google Scholar
  13. 13.
    Dwyer, M.B., Avrunin, G.S., Corbett, J.C.: Patterns in property specifications for finite-state verification. In: ICSE, pp. 411–420 (1999)Google Scholar
  14. 14.
    PSC Project : PSC web site (2005),
  15. 15.
    Autili, M., Inverardi, P., Pelliccione, P.: A scenario based notation for specifying temporal properties. In: 5th International Workshop on Scenarios and State Machines: Models, Algorithms and Tools (SCESM 2006), Shanghai, China. ACM Press, New York (2006)Google Scholar
  16. 16.
    Buchi, J.: On a decision method in restricted second order arithmetic. In: International Congress on Logic, Method and Philosophical Sciences (1960)Google Scholar
  17. 17.
    CHARMY Project: Charmy Web Site (2004),
  18. 18.
    Inverardi, P., Muccini, H., Pelliccione, P.: Charmy: an extensible tool for architectural analysis. In: ESEC/FSE-13: Proceedings of the 10th European software engineering conference, pp. 111–114. ACM Press, New York (2005)Google Scholar
  19. 19.
    Holzmann, G.J.: The SPIN Model Checker: Primer and Reference Manual. Addison-Wesley, Reading (2003)Google Scholar
  20. 20.
    Manna, Z., Pnueli, A.: The temporal logic of reactive and concurrent systems. Springer, New York (1992)Google Scholar
  21. 21.
    Pelliccione, P., Muccini, H., Bucchiarone, A., Facchini, F.: TeStor: Deriving Test Sequences from Model-Based Specifications. In: Heineman, G.T., Crnković, I., Schmidt, H.W., Stafford, J.A., Szyperski, C., Wallnau, K. (eds.) CBSE 2005. LNCS, vol. 3489, pp. 267–282. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  22. 22.
    Hartman, A.: Model Based Test Generation Tools. Technical report, AGEDIS project Downloads (2002)Google Scholar
  23. 23.
    Abi-Antoun, M., Aldrich, J., Garlan, D., Schmerl, B., Nahas, N., Tseng, T.: Improving System Dependability by Enforcing Architectural Intent. In: ICSE 2005 Work. on Architecting Depend. Systems (2005)Google Scholar
  24. 24.
    Hacklinger, F.: Java/a - taking components into java. In: Proc. 13th ISCA Int. Conf. Intelligent and Adaptive Systems and Software Engineering (IASSE 2004), pp. 163–169 (2004)Google Scholar
  25. 25.
    ETSI EN 300 417: Transmission and Multiplexing (TM); Generic requirements of transport functionality of equipment. Eur. Telecom. Standards Institute (2001)Google Scholar
  26. 26.
    ITU-TG.783: SERIES G: Transmission Systems and Media, Digiral Systems and Networks - Digital terminal equipments - Principal characteristics of multiplexing equipment for the synchronous digital hierarchy. Int. Telecommunication Union (1997)Google Scholar
  27. 27.
    Cardone, M.: Experiencing Architectural Analysis in Industrial Contexts. Master’s thesis, Computer Science Department. University of L’Aquila, Italy (2005)Google Scholar
  28. 28.
    Smolander, K., Hoikka, K., Isokallio, J., Kataikko, M., Makela, T.: What is Included in Software Architecture? - A Case Study in Three Software Organizations. In: 9th IEEE International Conference on Engineering of Computer-Based Systems, pp. 131–138 (2002)Google Scholar
  29. 29.
    Jacobson, I., Booch, G., Rumbaugh, J.: The Unified Software Development Process. Object Technology Series. Addison Wesley, Reading (1999)Google Scholar
  30. 30.
    Atkinson, C., Bayer, J., Bunse, C., Kamsties, E., Laitenberger, O., Laqua, R., Muthig, D., Paech, B., Wüst, J., Zettel, J.: Component-Based Product-Line Engineering with UML. Addison-Wesley, Reading (2001)Google Scholar
  31. 31.
    TOGAF 8: The Open Group Architecture Framework (2005),
  32. 32.
    Souza, D.D., Wills, A.C.: Objects, components, and frameworks with UML. In: The Catalysis approach, Addison-Wesley, Reading (1998)Google Scholar
  33. 33.
    Muccini, H., Inverardi, P., Pelliccione, P.: DUALLY: Putting in Synergy UML 2.0 and ADLs. In: 5th IEEE/IFIP Working Conference on Software Architecture (WICSA 2005) (2005)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Antonio Bucchiarone
    • 1
    • 3
  • Henry Muccini
    • 2
  • Patrizio Pelliccione
    • 2
  1. 1.Istituto di Scienza e Tecnologie dell’Informazione “A. Faedo” (ISTI-CNR), Area della Ricerca CNR di PisaPisaItaly
  2. 2.Computer Science DepartmentUniversity of L’AquilaL’AquilaItaly
  3. 3.IMT Graduate SchoolLuccaItaly

Personalised recommendations