Modeling Context with an Architecture Viewpoint

The context of a software system comprises the knowledge that architects need to have about the environment in which a system is expected to operate. Contextual knowledge, however, is often unknown or overlooked. This results in software architects designing systems based on assumptions that are largely unfounded and can potentially lead to system failures. To address this problem, this paper presents a Context Description Viewpoint that captures context in software architecture. The viewpoint is based on the results of a literature review that analyzed the state-of-the-art in context, its elements, and modeling techniques. We evaluated and revised the viewpoint by using two case studies based on real-world projects. The case studies showed that the viewpoint is expressive enough to capture context. For software architects it represents a reusable work product to design software systems and to help them identify, capture, and analyze contextual knowledge.

[1]  K. Eric Harper,et al.  Exploring Software Architecture Context , 2015, 2015 12th Working IEEE/IFIP Conference on Software Architecture.

[2]  Klaus Pohl,et al.  Modelling Contextual Information about Scenarios , 1999 .

[3]  Eoin Woods,et al.  Software Systems Architecture: Working with Stakeholders Using Viewpoints and Perspectives , 2005 .

[4]  Plamen Petrov,et al.  The Need for a Multilevel Context-Aware Software Architecture Analysis and Design Method with Enterprise and System Architecture Concerns as First Class Entities , 2011, 2011 Ninth Working IEEE/IFIP Conference on Software Architecture.

[5]  Kurt Sandkuhl,et al.  Capability-as-a-Service: Towards Context Aware Business Services , 2014, 2014 IEEE 18th International Enterprise Distributed Object Computing Conference Workshops and Demonstrations.

[6]  Maria da Graça Campos Pimentel,et al.  Toward a Domain-Independent Semantic Model for Context-Aware Computing , 2005, LA-WEB.

[7]  Stefan Biffl,et al.  An Architecture Framework for Collective Intelligence Systems , 2015, 2015 12th Working IEEE/IFIP Conference on Software Architecture.

[8]  José Luis Borbinha,et al.  Modeling Contextual Concerns in Enterprise Architecture , 2011, 2011 IEEE 15th International Enterprise Distributed Object Computing Conference Workshops.

[9]  Mary Shaw,et al.  Deciding what to design: closing a gap in software engineering education , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

[10]  Philippe Kruchten,et al.  The 4+1 View Model of Architecture , 1995, IEEE Softw..

[11]  Barbara Kitchenham,et al.  Procedures for Performing Systematic Reviews , 2004 .

[12]  Ralf Tönjes,et al.  Survey of Context Provisioning Middleware , 2013, IEEE Communications Surveys & Tutorials.

[13]  Raian Ali,et al.  A goal-based framework for contextual requirements modeling and analysis , 2010, Requirements Engineering.

[14]  Vasile-Marian Scuturici,et al.  An Ontology-Based Approach to Context Modeling and Reasoning in Pervasive Computing , 2007, Fifth Annual IEEE International Conference on Pervasive Computing and Communications Workshops (PerComW'07).

[15]  Koen De Bosschere,et al.  Towards an Extensible Context Ontology for Ambient Intelligence , 2004, EUSAI.

[16]  Jongmyung Choi,et al.  Software Engineering Issues in Developing a Context-aware Exhibition Guide System , 2008, 2008 Ninth ACIS International Conference on Software Engineering, Artificial Intelligence, Networking, and Parallel/Distributed Computing.