Skip to main content
Log in

Describing and assessing availability requirements in the early stages of system development

  • Regular Paper
  • Published:
Software & Systems Modeling Aims and scope Submit manuscript

Abstract

Non-functional aspects such as timing constraints, availability, and fault tolerance are critical in the design and implementation of distributed real-time systems. As a result, it is becoming crucial to model and analyze non-functional requirements at the early stages of the software development life cycle. The widespread interest in dependability modeling and analysis techniques at the requirements phase provides the major motivation for this research. This paper presents a novel approach to describe and validate high-level availability requirements using the Use Case Maps (UCM) language of the ITU-T User Requirements Notation standard. The proposed approach relies on a mapping of availability architectural tactics to UCM models. The resulting extensions are described using a metamodel and are implemented within the jUCMNav tool. Early assessment and characterization of the means to achieve availability are then performed using a matrix representation allowing for feature-based availability composition and reasoning. We demonstrate the applicability of our approach through a case study of lawful intercept and ACL-based forwarding features on IP routers.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16

Similar content being viewed by others

Notes

  1. SAForum: www.saforum.org.

  2. www.cisco.com/en/US/prod/collateral/routers/ps5763/prod_brochure0900aecd800f8118.pdf.

  3. The LI feature is called Flow-Tap Application, part of Flow Monitoring feature, implemented in JUNOS 9.6 (www.juniper.net).

  4. Alcatel-Lucent 1357 Unified Lawful Interception Suite (http://www.alcatel-lucent.com).

  5. Many Cisco platforms including GSR12k and CRS-1 implement LI feature (www.cisco.com).

  6. www.cisco.com/en/US/docs/routers/crs/software/crs_r4.2/security/configuration/guide/b_syssec_cg42crs_chapter_0110.html.

  7. Implementing Access Lists and Prefix Lists on Cisco IOS XR Software: www.cisco.com/en/US/docs/ios_xr_sw/iosxr_r3.7/addr_serv/configuration/guide/ic37alpl.pdf.

References

  1. Alur, R., Dill, D.L.: A theory of timed automata. Theor. Comput. Sci. 126(2), 183–235 (1994). doi:10.1016/0304-3975(94)90010-8

    Article  MATH  MathSciNet  Google Scholar 

  2. Amyot, D., Mussbacher, G.: User requirements notation: the first ten years, the next ten years (invited paper). J. Softw. 6(5), 747–768 (2011)

    Article  Google Scholar 

  3. ANSI/IEEE: Standard Glossary of Software Engineering Terminology, STD-729-1991 (1991)

  4. AsmL: Microsoft Research: The Abstract State Machine Language. http://research.microsoft.com/en-us/projects/asml/ (2011)

  5. Avizienis, A., Laprie, J.C., Randell, B., Landwehr, C.: Basic concepts and taxonomy of dependable and secure computing. IEEE Trans. Dependable Secure Comput. 1(1), 11–33 (2004)

    Article  Google Scholar 

  6. Baker, F., Foster, B., Sharp, C.: Cisco Architecture for Lawful Intercept in IP Networks. RFC 3924 (Informational) (2004). http://www.ietf.org/rfc/rfc3924.txt

  7. Bass, L., Clements, P., Kazman, R.: Software Architecture in Practice. Addison-Wesley Longman Publishing Co., Inc., Boston, MA (2003)

    Google Scholar 

  8. Bernardi, S., Flammini, F., Marrone, S., Merseguer, J., Papa, C., Vittorini, V.: Model-driven availability evaluation of railway control systems. In: Proceedings of the 30th International Conference on Computer Safety, Reliability, and Security, SAFECOMP’11, pp. 15–28. Springer, Berlin (2011)

  9. Bernardi, S., Merseguer, J., Petriu, D.C.: A dependability profile within MARTE. Softw. Syst. Model. 10(3), 313–336 (2011). doi:10.1007/s10270-009-0128-1

    Google Scholar 

  10. Bernardi, S., Merseguer, J., Petriu, D.C.: Adding dependability analysis capabilities to the MARTE profile. In: MoDELS ’08: Proceedings of the 11th International Conference on Model Driven Engineering Languages and Systems, pp. 736–750. Springer, Berlin (2008)

  11. Bondavalli, A., Cin, M.D., Latella, D., Majzik, I., Pataricza, A., Savoia, G.: Dependability analysis in the early phases of UML-based system design. Comput. Syst. Sci. Eng. 16(5), 265–275 (2001)

    Google Scholar 

  12. Chen, D., Dharmaraja, S., Chen, D., Li, L., Trivedi, K., Some, R., Nikora, A.: Reliability and availability analysis for the jpl remote exploration and experimentation system. In: Dependable Systems and Networks, 2002. DSN 2002. Proceedings. International Conference on, pp. 337–342 (2002). doi: 10.1109/DSN.2002.1028918

  13. Cin, M.D.: Extending UML towards a useful OO-language for modeling dependability features. In: Object-Oriented Real-Time Dependable Systems. The Ninth IEEE International Workshop on Object-Oriented Real-Time Dependable Systems (WORDS 2003), pp. 325–330 (2003). doi:10.1109/WORDS.2003.1267547

  14. Forum, S.A.: Application Interface Specification. Availability Management, Framework SAI-AIS-AMF-B.04.01

  15. Forum, S.A.: Application Interface Specification. Overview SAI-Overview-B.05.03

  16. Forum, S.A.: Application Interface Specification. Software Management, Framework SAI-AIS-SMF-A.01.02

  17. Gokhale, S., Crigler, J., Farr, W., Wallace, D.: System availability analysis considering hardware/software failure severities. In: Software Engineering Workshop, 2005. 29th Annual IEEE/NASA, pp. 47–56 (2005)

  18. Goseva-Popstojanova, K., Trivedi, K.S.: Architecture-based approach to reliability assessment of software systems. Perform. Eval. 45, 179–204 (2001)

    Article  MATH  Google Scholar 

  19. Hassine, J.: Formal Semantics and Verification of Use Case Maps. Ph.D. Thesis, Concordia University, Montreal (2008)

  20. Hassine, J.: Early Schedulability Analysis with Timed Use Case Maps. In: SDL’09: Proceedings of the 14th International SDL Conference on Design for Motes and Mobiles, pp. 98–114 (2009)

  21. Hassine, J.: Early availability requirements modeling using Use Case Maps. In: 8th International Conference on Information Technology: New Generations (ITNG2011), Modeling and Analysis of Dependable Embedded and Real-time Software Systems Track. 11–13 April 2011, Las Vegas, Nevada, USA, pp. 754–759. IEEE Computer Society (2011)

  22. Hassine, J., Gherbi, A.: Exploring early availability requirements using Use Case Maps. In: Ober, I., Ober, I. (eds.) SDL 2011: Integrating System and Software Modeling, Lecture Notes in Computer Science, vol. 7083, pp. 54–68. Springer, Berlin(2012)

  23. Hassine, J., Rilling, J., Dssouli, R.: Timed Use Case Maps. In: System Analysis and Modeling: Language Profiles, 5th International Workshop, SAM 2006, Kaiserslautern, Germany, May 31-June 2, 2006, Revised Selected Papers, pp. 99–114 (2006)

  24. Hassine, J., Rilling, J., Dssouli, R.: Formal Verification of Use Case Maps with Real Time Extensions. In: SDL 2007: Design for Dependable Systems, 13th International SDL Forum, Paris, France, September 18–21, Proceedings, pp. 225–241 (2007)

  25. Hatebur, D., Heisel, M.: A foundation for requirements analysis of dependable software. In: Buth, B., Rabe, G., Seyfarth, T. (eds.) Computer Safety, Reliability, and Security, Lecture Notes in Computer Science, vol. 5775, pp. 311–325. Springer, Berlin (2009)

  26. Ibe, O., Howe, R., Trivedi, K.: Approximate availability analysis of VAXcluster systems. IEEE Trans. Reliab. 38(1), 146–152 (1989)

    Google Scholar 

  27. Immonen, A., Niemelä, E.: Survey of reliability and availability prediction methods from the viewpoint of software architecture. Softw. Syst. Model. 7, 49–65 (2008)

    Article  Google Scholar 

  28. ITU-T: E.800: Terms and Definitions Related to Quality of Service and Network Performance including Dependability. http://www.itu.int/md/T05-SG02-080506-TD-WP2-0121/en (2008)

  29. ITU-T: Recommendation Z. 151(10/12), User Requirements Notation (URN) Language Definition. Geneva, Switzerland. http://www.itu.int/rec/T-REC-Z.151/en (2012)

  30. Jalote, P.: Fault Tolerance in Distributed Systems. Prentice Hall, Englewood Cliffs, NJ (1994)

    Google Scholar 

  31. jUCMNav v4.4.0: jUCMNav Project (tool, documentation, and meta-model). (2010). http://jucmnav.softwareengineering.ca/jucmnav. Last accessed, March 2012

  32. Kaaniche, M., Kanoun, K., Rabah, M.: A framework for modeling availability of e-business systems. In: Proceedings of the Tenth International Conference on Computer Communications and Networks 2001, pp. 40–45 (2001). doi:10.1109/ICCCN.2001.956217

  33. Kanoun, K., Borrel, M., Morteveille, T., Peytavin, A.: Availability of cautra, a subset of the French air traffic control system. IEEE Trans. Comput. 48(5), 528–535 (1999). doi:10.1109/12.769435

    Article  Google Scholar 

  34. Laprie, J., Avizienis, A., Kopetz, H.: Dependability: Basic Concepts and Terminology. Springer, Secaucus, NJ (1992)

    Book  MATH  Google Scholar 

  35. Montecchi, L., Lollini, P., Bondavalli, A.: Dependability concerns in model-driven engineering. In: 14th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing Workshops (ISORCW), pp. 254–263 (2011). doi:10.1109/ISORCW.2011.32

  36. Mustafiz, S., Sun, X., Kienzle, J., Vangheluwe, H.: Model-driven assessment of system dependability. Softw. Syst. Model. 7, 487–502 (2008)

    Article  Google Scholar 

  37. OMG: Object Management Group. UML Profile for Modeling Quality of Service and Fault Tolerant Characteristics and Mechanisms. OMG document formal. V1.1/08-04-05 (2008)

  38. Pai, G.J., Dugan, J.B.: Automatic synthesis of dynamic fault trees from UML system models. In: Software Reliability Engineering, International Symposium on 0, p. 243 (2002). doi:10.1109/ISSRE.2002.1173261

  39. Petriu, D., Amyot, D., Woodside, M.: Scenario-based performance engineering with UCMNAV. In: SDL’03: Proceedings of the 11th International Conference on System Design, pp. 18–35. Springer, Berlin (2003)

  40. Rossebø, J.E.Y., Lund, M.S., Husa, K.E., Refsdal, A.: A conceptual model for service availability. In: Quality of Protection: Security Measurements and Metrics (2006)

  41. Scott, J., Kazman, R.: Realizing and Refining Architectural Tactics: Availability. Technical Report. Carnegie Mellon University, Software Engineering Institute (2009)

  42. Shooman, M.: Software Engineering: Design, Reliability, and Management. McGraw-Hill Computer Science Series. McGraw-Hill, New York (1983)

    Google Scholar 

  43. Sun, H., Han, J., Levendel, H.: A generic availability model for clustered computing systems. In: Dependable Computing, 2001. Proceedings. 2001 Pacific Rim International Symposium on, pp. 241–248 (2001). doi:10.1109/PRDC.2001.992704

  44. Trivedi, K., Kim, D.S., Roy, A., Medhi, D.: Dependability and security models. In: 7th International Workshop on Design of Reliable Communication Networks (DRCN), pp. 11–20 (2009)

  45. Yin, L., Fricks, R., Trivedi, K.: Application of semi-markov process and CTMC to evaluation of ups system availability. In: Reliability and Maintainability Symposium, 2002. Proceedings. Annual, pp. 584–591 (2002). doi:10.1109/RAMS.2002.981706

Download references

Acknowledgments

Dr. Jameleddine Hassine would like to acknowledge the support provided by the Deanship of Scientific Research at King Fahd University of Petroleum & Minerals (KFUPM) for funding this work through project No. FT101011.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jameleddine Hassine.

Additional information

Communicated by Prof. Robert France.

The author would like to acknowledge the support provided by the Deanship of Scientific Research at King Fahd University of Petroleum & Minerals (KFUPM) for funding this work through project No. FT101011.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Hassine, J. Describing and assessing availability requirements in the early stages of system development. Softw Syst Model 14, 1455–1479 (2015). https://doi.org/10.1007/s10270-013-0382-0

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-013-0382-0

Keywords

Navigation