skip to main content
10.1145/1083200.1083213acmotherconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
Article

Leveraging architectural models to inject trust into software systems

Published: 15 May 2005 Publication History

Abstract

Existing software systems have become increasingly durable and their lifetimes have significantly lengthened. They are increasingly distributed and decentralized. Our dependence on them has grown tremendously. As such, the issues of trustworthiness and security have become prime concerns in designing, constructing, and evolving software systems. However, the exact meanings of these concepts are not universally agreed upon, nor is their role in the different phases of the software development lifecycle. In this paper, we argue that trustworthiness is a more broadly encompassing term than security, and that the two are often interdependent. We then identify a set of dimensions of trustworthiness. Finally, we analyze how the key elements of a software system's architecture can be leveraged in support of those trustworthiness dimensions. Our ultimate goal is to apply these ideas in the context of a concrete software architecture project. The goal of this paper is more modest: to understand the problem area and its relation to software architecture.

References

[1]
Chung, L., Nixon, B. A., Yu, E. and Mylopoulos, J. Non-Functional Requirements in Software Engineering. Kluwer Academic Publishers, Boston Hardbound, ISBN 0-7923-8666-3 October 1999, 472 pp.
[2]
Bernstein, L. Trustworthy Software Systems. ACM SIGSOFT Software Engineering Notes, Page 4, Vol 30 No. 1, January 2005.
[3]
Gasser, M. Building a secure computer system. Van Nostrand Reinhold Co., New York, NY, USA, ISBN 0-442-23022-2 1988, 288 pp.
[4]
Devanbu, P. T., and Stubblebine, S. Software Engineering for Security: a Roadmap. In The Future of Software Engineering. Special volume of the proceedings of the 22nd International Conference on Software Engineering, June 2000.
[5]
Perry, D. E. and Wolf, A. L. Foundations for the Study of Software Architecture. ACM SIGSOFT Software Engineering Notes, Volume 17, Number 4, 1992.
[6]
Medvidovic, N., Mikic-Rakic, M., and Mehta, N. Improving Dependability of Component-Based Systems via Multi-Versioning Connectors. In Architecting Dependable Systems. Lecture Notes in Computer Science (LCNS 2677). R. de Lemos, C. Gacek, and A. Romanovsky (Eds.), 2003.
[7]
Roshandel, R. Calculating Architectural Reliability via Modeling and Analysis. In Proceeding of the Doctoral Symposium of the 26th International Conference on Software Engineering (ICSE26), Edinburgh, UK, May 2004.
[8]
Littlewood, B. and Strigini, L. Software reliability and dependability: a roadmap. In Proceedings of the Conference on The Future of Software Engineering, Limerick, Ireland, pp. 175--188, 2000.
[9]
Misra K. Reliability Analysis and Prediction, Elsevier, 1992.
[10]
Medvidovic, N. and Taylor, R. N. A Classification and Comparison Framework for Software Architecture Description Languages. IEEE Transactions on Software Engineering, Vol. 26, No. 1, pp. 70--93, January, 2000.
[11]
Goel, A. L. and Okumoto K. Time-Dependent Error-Detection Rate Models for Software Reliability and Other Performance Measures, IEEE Trans. on Reliability, 28(3):206--211, 1979.
[12]
Jelinski, Z. and Moranda, P. B. Software Reliability Research, Statistical Computer Performance Evaluation, edited by W. Freigerger, Academic Press, 1972.
[13]
Wang W., Wu Y., and Chen M. An architecture-based software reliability model, in Proc. of Pacific Rim International Symposium on Dependable Computing, 1999.
[14]
Mikic-Rakic, M., and Medvidovic, N. Software Architectural Support for Disconnected Operation in Highly Distributed Environments. Proceedings of International Symposium on Component-based Software Engineering, pp. 23--39, 2004.
[15]
Bashir, I., Serafini, E., and Wall, K. Securing network software applications: introduction. Communications of the ACM, Vol. 44, Issue 2, pp. 28--30, February 2001.
[16]
Department of Defense. DOD Trusted Computer System Evaluation Criteria. DOD 5200.28-STD. Washington D.C. Department of Defense (U.S. Government Printing Office number 008-000-00461-7), 1985.
[17]
Shaw, M., Clements, P. A Field Guide to Boxology: Preliminary Classification of Architectural Styles for Software Systems. Proc. COMPSAC97, 21st Int'l Computer Software and Applications Conference, pp. 6--13, August 1997.
[18]
McLean, J. Security models. In J. Marciniak, editor, Encyclopedia of Software Engineering. Wiley Press, 1994.
[19]
Bell, D. and LaPadula, L. Secure computer systems: Unified exposition and multics interpretation. Technical Report ESDTR-75-306, MITRE Corp., Bedford, Mass., March 1976.
[20]
Jurjens, J. Towards Secure Systems Development with UMLsec. In Fundamental Approaches to Software Engineering (FASE/ETAPS 2001).
[21]
Mattmann, C, Malek, S, Beckman, N, Mikic-Rakic, M, Medvidovic, N, and Crichton, D. GLIDE: A Grid-based, Light-weight Infrastructure for Data-intensive Environments, Proceedings of 2005 European Grid Conference, Feb. 2005.
[22]
Bidan, C. and Issarny, V. Security benefits from software architecture. In Proceedings of COORDINATION'97: Coordination Languages and Models, pages 64--80, 1997.
[23]
Mattmann, C, Crichton, D, Hughes, J. S., Kelly, S., and Ramirez, P. Software Architecture for Large-scale, Distributed, Data-intensive Systems. Proceedings of IEEE/IFIP Working Conference on Software Architecture, June 2004.
[24]
Xenitellis, S. (2002a). Security vulnerabilities in event-driven systems. Proceedings of IFIP SEC'2002. Pp. 147--160.
[25]
Xenitellis, S. A New Avenue of Attack: Event-driven System Vulnerabilities. Proceedings of European Conference on Information Warfare and Security, MCIL. Pp. 177--185.
[26]
Li, P., and Zdancewic, S. Practical Information-flow Control in Web-based Information Systems. Submitted, Nov. 2004. Paper available at: http://www.seas.upenn.edu/~lipeng/homepage/papers/lz05sp.pdf.
[27]
Wohlstadter, E., Jackson, S., Devanbu, P. DADO: Enhancing middleware to support cross-cutting features in distributed, heterogeneous systems, Proceedings of the International Conference on Software Engineering, 2003.
[28]
Baumann A., Appavoo, J., Da Silva, D., Krieger, O. and Wisniewski, R. W. Improving Operating System Availability With Dynamic Update, OASIS (Workshop on Operating System and Architectural Support for the on demand IT InfraStructure) pp. 21--27, October 9, 2004, Boston Massachusetts.
[29]
Hicks, M., Moore, J. T., and Nettles. S. Dynamic software updating. In Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), pages 13--23. ACM, June 2001.
[30]
Knight, J. C. and Leveson, N. G. An Experimental Evaluation of the Assumption of Independence in Multi-version Programming, IEEE Transactions on Software Engineering, Vol. SE-12, No. 1 (January 1986), pp. 96--109.
[31]
Shimeall, T. J. and Leveson, N. G. An Empirical Comparison of Software Fault Tolerance and Fault Elimination. IEEE Transactions on Software Engineering, vol. 17, no. 2, pp. 173--182, February 1991.
[32]
Moore, A. P. & Ellison, R. J. TRIAD: A Framework for Survivability Architecting. Proceedings of the Workshop on Survivable and Self-Regenerative Systems, 10th ACM Conference on Computer and Communications Security. Washington, D.C., October 31, 2003.
[33]
ACM SIGSOFT Workshop on Self-Healing Systems (WOSS02), http://www-2.cs.cmu.edu/~garian/woss02/, 2002.
[34]
ACM SIGSOFT Workshop on Self-Healing Systems (WOSS04), http://www-2.cs.cmu.edu/~garlan/woss04/, 2004.
[35]
2003 ACM Workshop on Survivable and Self-Regenerative Systems, http://ist.psu.edu/s2/ACM-SRS.html, 2003.
[36]
Ying, S. Fault Tolerance Computing - Draft. http://www.ece.cmu.edu/~koop-man/des_s99/fault_tolerant/index.html.
[37]
M. R. Lyu, ed., Software Fault Tolerance Chichester, England: John Wiley and Sons, Inc., 1995.
[38]
Lee, I. and Iyer, R. K. Faults, Symptoms, and Software Fault Tolerance in the Tandem GUARDIAN90 Operating System, IEEE 1993, pp. 20--29.
[39]
Mikic-Rakic, M. and Medvidovic, N. Towards a Framework for Classifying Disconnected Operation Techniques. Proceedings of the ICSE Workshop on Architecting Dependable Systems, 2003.
[40]
Shaw, M. and Garlan, D. Software Architecture: Perspectives on an Emerging Discipline. Prentice Hall, ISBN 0-13-182957-2, 242 pp.
[41]
Goseva - Popstojanova, K. and Trivedi, K. S. Architecture Based Software Reliability. Proc. of ASSM 2000 Int. Conf on Applied Stochastic System Modeling, March 2000, Kyoto, Japan.
[42]
Rosenberg, L., Hammer, T. and Shaw, J. Software Metrics and Reliability. Proceedings of IEEE International Symposium on Software Reliability Engineering, 1998.
[43]
Ellison, R. J., Fisher, D. A., Linger, R. C., Lipson, H. F., Longstaff, T. A., Mead, N. Survivability: Protecting Your Critical Systems. IEEE Internet Computing, Vol. 3, No. 6, 1999.
[44]
http://www-scf.usc.edu/~sbanerje/Trustworthiness/trust-taxonomy.pdf

Cited By

View all
  • (2023)A Composable Just-In-Time Programming Framework with LLMs and FBP2023 IEEE High Performance Extreme Computing Conference (HPEC)10.1109/HPEC58863.2023.10363587(1-8)Online publication date: 25-Sep-2023
  • (2021)Trust Mining: Analyzing Trust in Collaborative Business ProcessesIEEE Access10.1109/ACCESS.2021.30755689(65044-65065)Online publication date: 2021
  • (2020)An Approach to Analyze Vulnerability of Information Flow in Software ArchitectureApplied Sciences10.3390/app1001039310:1(393)Online publication date: 4-Jan-2020
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
SESS '05: Proceedings of the 2005 workshop on Software engineering for secure systems—building trustworthy applications
May 2005
112 pages
ISBN:1595931147
DOI:10.1145/1083200
  • cover image ACM SIGSOFT Software Engineering Notes
    ACM SIGSOFT Software Engineering Notes  Volume 30, Issue 4
    July 2005
    1514 pages
    ISSN:0163-5948
    DOI:10.1145/1082983
    Issue’s Table of Contents

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 15 May 2005

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Acceptance Rates

Overall Acceptance Rate 8 of 11 submissions, 73%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)2
  • Downloads (Last 6 weeks)1
Reflects downloads up to 05 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2023)A Composable Just-In-Time Programming Framework with LLMs and FBP2023 IEEE High Performance Extreme Computing Conference (HPEC)10.1109/HPEC58863.2023.10363587(1-8)Online publication date: 25-Sep-2023
  • (2021)Trust Mining: Analyzing Trust in Collaborative Business ProcessesIEEE Access10.1109/ACCESS.2021.30755689(65044-65065)Online publication date: 2021
  • (2020)An Approach to Analyze Vulnerability of Information Flow in Software ArchitectureApplied Sciences10.3390/app1001039310:1(393)Online publication date: 4-Jan-2020
  • (2018)Modelling trust and risk for cloud servicesJournal of Cloud Computing: Advances, Systems and Applications10.1186/s13677-018-0114-77:1(1-16)Online publication date: 1-Dec-2018
  • (2016)Reusable Secure Connectors for Secure Software ArchitectureProceedings of the 15th International Conference on Software Reuse: Bridging with Social-Awareness - Volume 967910.1007/978-3-319-35122-3_13(181-196)Online publication date: 5-Jun-2016
  • (2015)Cyber-foraging for improving survivability of mobile systemsMILCOM 2015 - 2015 IEEE Military Communications Conference10.1109/MILCOM.2015.7357644(1421-1426)Online publication date: Oct-2015
  • (2015)Models for Cloud Risk Assessment: A TutorialAccountability and Security in the Cloud10.1007/978-3-319-17199-9_7(154-184)Online publication date: 1-Apr-2015
  • (2014)Trust Management and Its ChallengesTrust Management in Mobile Environments10.4018/978-1-4666-4765-7.ch003(31-52)Online publication date: 2014
  • (2012)Privacy, Security and Trust in Cloud ComputingPrivacy and Security for Cloud Computing10.1007/978-1-4471-4189-1_1(3-42)Online publication date: 27-Jun-2012
  • (2011)Autonomic Trust Management for a Component-Based Software SystemIEEE Transactions on Dependable and Secure Computing10.1109/TDSC.2010.478:6(810-823)Online publication date: 1-Nov-2011
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media