Dynamic Software Architectures

Total Page:16

File Type:pdf, Size:1020Kb

Dynamic Software Architectures Dynamic Software Architectures A Style-Based Modeling and Refinement Technique with Graph Transformations DISSERTATION in Computer Science submitted to the Faculty of Computer Science, Electrical Engineering, and Mathematics University of Paderborn by Sebastian Th¨one in partial fulfillment of the requirements for the degree of doctor rerum naturalium (Dr. rer. nat.) Paderborn, October 2005 ii Abstract A good architectural design allows to capture the overall complexity of large, distributed systems at a higher level of abstraction. This is especially im- portant for reconfigurable systems where the architectural configuration is subject to (constant) changes at runtime. When designing such a dynamic architecture, the software architect has to bring the functional business re- quirements and the available communication and reconfiguration mechanisms of the intended target platform in line. As it is a complex task to incorporate these often diverging requirements into the architectural model, we propose a stepwise approach similar to the MDA initiative. We start with a platform-independent model capturing the business requirements and add platform-specific details in a later step. For each level of platform abstraction and associated platform, we define an ar- chitectural style which describes the characteristics of the platform. This way, conformance to the architectural style entails consistency between model and the underlying platform. Besides run-time configurations of components and connections, archi- tectural models also comprise the description of processes that control the communication and reconfiguration behavior. To provide operational seman- tics, we formalize architectural models as graphs and architectural styles as graph transformation systems. UML is added as high-level modeling language on top, and profiles are used to adapt UML to certain architectural styles. Due to the stepwise procedure, we also have to ensure the mutual con- sistency between models at different levels of abstraction. For this purpose, we define formal refinement criteria which require that both structural and behavioral properties are preserved at the lower level of abstraction. Based on refinement relationships between abstract and platform-specific architec- tural styles, an algorithm allows to verify that all abstract, business-level behavior can also be realized in the platform-specific architecture and that no new behavior is added. These innovative refinement techniques for graph transformation models facilitate a stepwise, platform-consistent development of dynamic software architectures. iii iv To Andrea and our son Dominik. v vi Acknowledgment As this work would not have been possible without the support I received from many different people, let me take this chance to express my gratitude to them. First of all, I would like to mention my doctoral advisor Prof. Dr. Gregor Engels. Being a member of his research group “Database and Information Systems”, I could always seek his advice and benefit from his comprehensive knowledge of the research area. Regularly pushing for further improvements of my drafts, he substantially contributed to the quality of this thesis. Thanks also go to Prof. Dr. Wilhelm Sch¨afer and Prof. Dr. Leena Suhl for their readiness to become my co-supervisors. In this context, let me especially thank Gregor Engels and Wilhelm Sch¨afer for writing the reviews of this thesis. During my research, I had the lucky chance to collaborate with Luciano Baresi (presently at the Politecnico di Milano), D´anielVarr´o(presently at the Budapest University of Technology and Economics), and especially with Reiko Heckel (presently at the University of Leicester). I benefited very much from their excellent expertise, our productive discussions, and our coopera- tion on several joint publications. Similarly, I would like to thank all members of the Database and Information Systems group in Paderborn for the friendly and convenient working atmosphere I could experience there. My work has been accompanied and financially supported by the Inter- national Graduate School Dynamic Intelligent Systems at the University of Paderborn. I feel very grateful for this support and wish the graduate school a successful continuation of their program for the benefit of many future Ph.D. students. Last but foremost, I would like to thank my wife Andrea for never giving up her patience and warm-hearted encouragement. Thank you all very much! Sebastian Th¨one Paderborn, October 2005 vii viii Contents 1 Introduction 1 1.1 Architecting large, distributed software systems ........ 1 1.2 Dynamic software architectures ................. 7 1.3 Platform-consistent development ................. 10 1.3.1 Platform consistency ................... 10 1.3.2 Different levels of platform abstraction ......... 13 1.3.3 Architecture refinement ................. 16 1.4 Structure of the thesis ...................... 19 2 Survey of related work 21 2.1 Some historical notes ....................... 21 2.2 Requirements ........................... 22 2.2.1 Requirements for architecture descriptions ....... 23 2.2.2 Requirements for platform descriptions ......... 25 2.2.3 Requirements for architecture refinements ....... 26 2.3 Existing approaches and open problems ............. 28 2.3.1 Formal methods for dynamic architectures ....... 28 2.3.2 Platform awareness in architecture descriptions .... 37 2.3.3 Architecture refinement techniques ........... 41 2.4 Summary ............................. 46 3 The style-based approach – an overview 47 3.1 Style-based modeling ....................... 48 3.1.1 Formal, graph-based descriptions ............ 48 3.1.2 UML as concrete syntax ................. 54 3.2 Style-based refinement ...................... 58 4 Graph transformation theory – the formal background 63 4.1 Graphs and graph schemas .................... 64 4.1.1 Type graphs and typing morphisms ........... 65 4.1.2 Attributes and typed attributed graphs ......... 69 ix 4.1.3 Cardinalities and other constraints ........... 72 4.1.4 Graph schemas ...................... 74 4.2 Graph transformations ...................... 74 4.2.1 Informal introduction and example ........... 75 4.2.2 Operational semantics .................. 78 4.2.3 Graph transformation systems .............. 85 4.3 Transformation-based system models .............. 85 4.3.1 Reachability properties and parsing problems ..... 86 4.3.2 Graph transition systems ................. 87 5 Architectural styles as graph transformation systems 93 5.1 Structural parts and their instantiation ............. 94 5.2 Behavioral parts and their instantiation ............. 97 5.2.1 Reconfiguration mechanisms ............... 97 5.2.2 Communication mechanisms ............... 100 5.2.3 Instantiating platform mechanisms in architectural be- havior ........................... 102 5.3 A style for service-oriented architectures ............ 112 5.4 Summary ............................. 118 6 Style-based modeling of dynamic software architectures 119 6.1 Profile for service-oriented architectures ............. 120 6.1.1 Stereotypes concerning structure ............ 120 6.1.2 Stereotypes concerning behavior ............. 122 6.2 Translation into the semantic domain .............. 129 6.3 Summary ............................. 135 7 Style-based refinement of dynamic software architectures 137 7.1 Syntactical versus semantical approaches ............ 138 7.2 Structural refinement ....................... 141 7.2.1 Abstraction relationship between styles ......... 142 7.2.2 Structural refinement criterion .............. 145 7.3 Behavioral refinement ....................... 148 7.3.1 Behavior preservation ................... 148 7.3.2 Observational substitutability .............. 156 7.4 Testing behavioral refinement .................. 162 7.4.1 Testing behavior preservation .............. 162 7.4.2 Testing observational substitutability .......... 166 7.5 Summary ............................. 167 x 8 Existing tool support for modeling and refinement 171 8.1 Graph transformation tools ................... 173 8.1.1 Required features ..................... 173 8.1.2 PROGRES ........................ 175 8.1.3 AGG ............................ 177 8.1.4 FUJABA ......................... 178 8.1.5 CheckVML ........................ 179 8.1.6 GROOVE ......................... 181 8.1.7 Summary ......................... 182 8.2 UML tools and tool integration ................. 184 8.3 Practical example with GROOVE ................ 187 8.4 Summary ............................. 193 9 Conclusion 195 9.1 Evaluation against the requirements ............... 196 9.2 Conclusions and future work ................... 198 A Architectural style for component-based architectures 217 A.1 Graph schema ........................... 217 A.2 Graph transformation rules ................... 219 B Architectural style for service-oriented architectures 229 B.1 Graph schema ........................... 229 B.2 Graph transformation rules ................... 233 C Abstract model of the travel agency architecture 243 D Concrete model of the travel agency architecture 247 xi xii Chapter 1 Introduction The thesis at hand shall contribute to ongoing research on model-driven development techniques for large and possibly distributed software systems. To overcome the complexity of such systems, they have to be decomposed into self-contained components which can be developed independently of each other. The integration of these components happens at the level of software architecture, which represents an abstract view
Recommended publications
  • The Sciences of Design: Observations on an Emerging Field Working Paper
    The Sciences of Design: Observations on an Emerging Field Sandeep Purao Carliss Y. Baldwin Alan Hevner Veda C. Storey Jan Pries-Heje Brian Smith Ying Zhu Working Paper 09-056 Copyright © 2008 by Sandeep Purao, Carliss Y. Baldwin, Alan Hevner, Veda C. Storey, Jan Pries-Heje, Brian Smith, and Ying Zhu Working papers are in draft form. This working paper is distributed for purposes of comment and discussion only. It may not be reproduced without permission of the copyright holder. Copies of working papers are available from the author. The Sciences of Design: Observations on an Emerging Field Sandeep Purao College of IST, Penn State University, Carliss Baldwin Harvard Business School Alan Hevner University of South Florida Veda C. Storey Georgia State University Jan Pries-Heje Roskilde University Brian Smith Penn State University Ying Zhu Georgia State University Excerpted from The Sciences of Design: Observations on an Emerging Field by Purao, Baldwin, Hevner, Storey, Pries-Heje, Smith and Zhu, (c) 2008. Used with permission from Association for Information Systems, Atlanta, GA; 404-413-7444; www.aisnet.org. All rights reserved. Working papers are in draft form. This working paper is distributed for purposes of comment and discussion only. It may not be reproduced without permission of the copyright holder. Copies of working papers are available from the authors. THE SCIENCES OF DESIGN OCTOBER 9, 2008 ABSTRACT The boundaries and contours of design sciences continue to undergo definition and refinement. In many ways, the sciences of design defy disciplinary characterization. They demand multiple epistemologies, theoretical orientations (e.g. construction, analysis or intervention) and value considerations.
    [Show full text]
  • Asp Net Core Request Pipeline
    Asp Net Core Request Pipeline Is Royce always cowled and multilobate when achromatize some wall very instanter and lawlessly? Hobbyless and flustered brazensVladamir regressively? cocainizing her intangibles tiptoed or cluster advertently. Is Patric fuzzed or paintable when cogs some theocracy Or gray may choose to berry the request. Json files etc and community of response body is not inject all low maintenance, we will be same coin. Another through components that asp and cto of. How extensible it crashes, just by one of startup class controller. Do the extended with really very complex scenarios when he enjoys sharing it ever was to delete models first user makes for node. Even add to implement captcha in startup class to the same concept is the reason you want to. Let us a pipeline to any incoming request processing, firefox still create an output? For an app to build a cup of. Razor pages uses handler methods to deal of incoming HTTP request. Ask how the above mentioned in last middleware, the come to tell who are ready simply obsolete at asp and options. Have asp and asp net core request pipeline but will not be mapped to pipeline io threads to work both. The internet and when creating sawdust in snippets or improvements that by one description be a request pipeline branching. Help editing this article, ordinary code inside of hosting infrastructure asp and actions before, we issue was not. The body to deal with minimal footprint to entity framework of needed loans for each middleware will take a docker, that receive criticism.
    [Show full text]
  • Stclang: State Thread Composition As a Foundation for Monadic Dataflow Parallelism Sebastian Ertel∗ Justus Adam Norman A
    STCLang: State Thread Composition as a Foundation for Monadic Dataflow Parallelism Sebastian Ertel∗ Justus Adam Norman A. Rink Dresden Research Lab Chair for Compiler Construction Chair for Compiler Construction Huawei Technologies Technische Universität Dresden Technische Universität Dresden Dresden, Germany Dresden, Germany Dresden, Germany [email protected] [email protected] [email protected] Andrés Goens Jeronimo Castrillon Chair for Compiler Construction Chair for Compiler Construction Technische Universität Dresden Technische Universität Dresden Dresden, Germany Dresden, Germany [email protected] [email protected] Abstract using monad-par and LVars to expose parallelism explicitly Dataflow execution models are used to build highly scalable and reach the same level of performance, showing that our parallel systems. A programming model that targets parallel programming model successfully extracts parallelism that dataflow execution must answer the following question: How is present in an algorithm. Further evaluation shows that can parallelism between two dependent nodes in a dataflow smap is expressive enough to implement parallel reductions graph be exploited? This is difficult when the dataflow lan- and our programming model resolves short-comings of the guage or programming model is implemented by a monad, stream-based programming model for current state-of-the- as is common in the functional community, since express- art big data processing systems. ing dependence between nodes by a monadic bind suggests CCS Concepts • Software and its engineering → Func- sequential execution. Even in monadic constructs that explic- tional languages. itly separate state from computation, problems arise due to the need to reason about opaquely defined state.
    [Show full text]
  • Architectural Models
    C HAPTER 1 3 Architectural Models This chapter describes the architectural models that can be appHed to GMPLS networks. These architectures are not only useful for driving the ways in which networking equipment is deployed, but they are equally important in determining how the protocols themselves are constructed, and the responsibilities of the various protocol components. Several distinct protocol models have been advanced and the choice between them is far from simple. To some extent, the architectures reflect the backgrounds of their proponents: GMPLS sits uncomfortably between the world of the Internet Protocol and the sphere of influence of more traditional telecommunications companies. As a result, some of the architectures are heavily influenced by the Internet, while others have their roots in SONET/SDH, ATM, and even the telephone system (POTS). The supporters of the diff'erent architectures tend to be polarized and fairly dogmatic. Even though there are many similarities between the models, the proponents will often fail to recognize the overlaps and focus on what is different, making bold and forceful statements about the inadequacy of the other approaches. This chapter does not attempt to anoint any architecture as the best, nor does it even try to draw direct comparisons. Instead, each architecture is presented in its own right, and the reader is left to make up her own mind. Also introduced in this chapter is the end-to-end principle that underlies the lETF's Internet architecture and then describes three diff'erent GMPLS architectural models. The peer and overlay models are simple views of the network and are natural derivatives of the end-to-end architectural model: They can be combined into the third model, the hybrid model, which has the combined flexibihty of the two approaches.
    [Show full text]
  • Automated Improvement of Software Architecture Models for Performance and Other Quality Attributes
    Automated Improvement of Software Architecture Models for Performance and Other Quality Attributes Zur Erlangung des akademischen Grades eines Doktors der Ingenieurwissenschaften von der Fakultät für Informatik des Karlsruher Instituts für Technologie (KIT) genehmigte Dissertation von Anne Koziolek geb. Martens aus Oldenburg Tag der mündlichen Prüfung: 14.07.2011 Erster Gutachter: Prof. Dr. Ralf Reussner Zweiter Gutachter: Prof. Dr. Andreas Oberweis KIT – Universität des Landes Baden-Württemberg und nationales Forschungszentrum der Helmholtz-Gemeinschaft www.kit.edu Automated Improvement of Software Architecture Models for Performance and Other Quality Attributes PhD thesis to gain the degree “Doktor der Ingenieurwissenschaften” at the Department of Informatics of the Karlsruhe Institute of Technology (KIT) Dissertation by Anne Koziolek neé Martens Oldenburg Day of defence: 14.07.2011 Referees: Prof. Dr. Ralf Reussner Prof. Dr. Andreas Oberweis KIT – University of the State of Baden-Wuerttemberg and National Laboratory of the Helmholtz Association www.kit.edu Contents Abstract xi Zusammenfassung xiii Danksagungen xvii 1. Introduction 1 1.1. Motivation . 1 1.2. Problem . 4 1.3. Existing Solutions . 5 1.4. Contributions . 6 1.5. Outline . 9 I. Foundations and Related Work 11 2. Component-based Software Architectures and Quality 13 2.1. Component-based Software Architecture . 13 2.1.1. Definitions . 13 2.1.2. Component-based Software Development Process . 17 2.2. Quality of Software Architectures . 18 2.2.1. Quality Attributes of Software Architecture . 18 2.2.2. Quantitative Quality Properties . 21 2.3. Modelling Concepts . 24 2.3.1. Models and Metamodels . 24 2.3.2. Essential Meta Object Facility . 26 2.4. Model-based Quality Prediction .
    [Show full text]
  • Design Science Research and the Grounded Theory
    Association for Information Systems AIS Electronic Library (AISeL) European Conference on Information Systems ECIS 2010 Proceedings (ECIS) 2010 Design Science Research and the Grounded Theory Method: Characteristics, Differences, and Complementary Uses Robert Gregory Goethe University Frankfurt, [email protected] Follow this and additional works at: http://aisel.aisnet.org/ecis2010 Recommended Citation Gregory, Robert, "Design Science Research and the Grounded Theory Method: Characteristics, Differences, and Complementary Uses" (2010). ECIS 2010 Proceedings. 44. http://aisel.aisnet.org/ecis2010/44 This material is brought to you by the European Conference on Information Systems (ECIS) at AIS Electronic Library (AISeL). It has been accepted for inclusion in ECIS 2010 Proceedings by an authorized administrator of AIS Electronic Library (AISeL). For more information, please contact [email protected]. 18th European Conference on Information Systems DESIGN SCIENCE RESEARCH AND THE GROUNDED THEORY METHOD: CHARACTERISTICS, DIFFERENCES, AND COMPLEMENTARY USES Journal: 18th European Conference on Information Systems Manuscript ID: ECIS2010-0045.R1 Submission Type: Research Paper Research methods/methodology, Design/design science, Behavioral Keyword: science, IS research methodologies Page 1 of 12 18th European Conference on Information Systems DESIGN SCIENCE RESEARCH AND THE GROUNDED THEORY METHOD: CHARACTERISTICS, DIFFERENCES, AND COMPLEMENTARY USES Gregory, Robert Wayne, Goethe University Frankfurt, Grüneburgplatz 1, 60323 Frankfurt am Main, Germany, [email protected] Abstract Two research strategies that have received increasing scholarly attention recently in IS are design science research (DSR) and the grounded theory method (GTM). In this paper, we conduct a systematic comparison of the most salient characteristics of both research strategies to identify the differences as well as possible complementary uses in a pluralistic research design.
    [Show full text]
  • The Role of an Architect
    Learn the discipline, pursue the art, and contribute ideas at www.ArchitectureJournal.net Resources you can build on. Journal 15 The Role of an Architect We Don’t Need No Architects! Becoming an Architect in a System Integrator Architecture Journal Profi le: Paul Priess The Open Group’s Architect Certifi cation Programs The Need for an Architectural Body of Knowledge A Study of Architect Roles by IASA Sweden The Softer Side of the Architect An A-Z Guide to Being an Architect ® Contents TM Journal 15 Foreword 1 by Simon Guest We Don’t Need No Architects 2 by Joseph Hofstader What does an architect do? What should an architect do? Join Joseph Hofstader as he examines the role of an architect. Becoming an Architect in a System Integrator 7 by Amit Unde In this article, Amit Unde explores the skills that aspiring architects need in a leading System Integrator. Architecture Journal Profi le: Paul Preiss 10 We chat with Paul Preiss, founder of a nonprofi t group called IASA (International Association of Software Architects). The Open Group’s Architect Certifi cation Programs 13 by Leonard Fehskens Join Leonard Fehskens as he outlines one of the industry’s architect certifi cation programs, Open Group’s ITAC (IT Architect Certifi cation). The Need for an Architectural Body of Knowledge 17 by Miha Kralj Miha Kralj covers an Architectural Body of Knowledge, an effort led by the Microsoft Certifi ed Architect community. A Study of Architect Roles by IASA Sweden 22 by Daniel Akenine Discover a perspective of architect roles through a recent study conducted by the local IASA chapter in Sweden.
    [Show full text]
  • An Application of the Design Science Research Theoretical Framework
    Journal of Advances in Information Technology Vol. 7, No. 4, November 2016 An Application of the Design Science Research Theoretical Framework and Methodology in the Construction of an Approach for Designing Applications in 3D Virtual Worlds William Sawyerr Anglia Ruskin University, Cambridge, United Kingdom Email: [email protected] Abstract—This paper discusses the use of the design science In spite of these ideals, the application development research theoretical framework and methodology for process in VWs is currently at an early stage of constructing an approach for designing applications in 3D development, largely utilising existing methods and tools virtual worlds. The research is about the need for a suitable for application design. These methods and tools were method and tools for designing virtual world applications, mostly developed for managing application design which is evidenced by many of the problems that virtual worlds continue to suffer due to poor design. The proposed activities for the classic types of applications in SE. approach uses the generative design grammar framework Therefore, their use is unsuitable for designing VW and the generative design agent model as tools for designing applications. The use of unsuitable methods and tools for virtual world applications. Preliminary analyses suggest designing VW applications results in poorly designed that, the use of a method and tools created specifically for specifications. Poor design is one of the causes of designing virtual world applications provides a suitable and usability problems in VW applications [2]. Furthermore, robust approach for designing these types of applications. poor design can also adversely affect the adoption and use of VWs [3], [4].
    [Show full text]
  • Let's Get Functional
    5 LET’S GET FUNCTIONAL I’ve mentioned several times that F# is a functional language, but as you’ve learned from previous chapters you can build rich applications in F# without using any functional techniques. Does that mean that F# isn’t really a functional language? No. F# is a general-purpose, multi paradigm language that allows you to program in the style most suited to your task. It is considered a functional-first lan- guage, meaning that its constructs encourage a functional style. In other words, when developing in F# you should favor functional approaches whenever possible and switch to other styles as appropriate. In this chapter, we’ll see what functional programming really is and how functions in F# differ from those in other languages. Once we’ve estab- lished that foundation, we’ll explore several data types commonly used with functional programming and take a brief side trip into lazy evaluation. The Book of F# © 2014 by Dave Fancher What Is Functional Programming? Functional programming takes a fundamentally different approach toward developing software than object-oriented programming. While object-oriented programming is primarily concerned with managing an ever-changing system state, functional programming emphasizes immutability and the application of deterministic functions. This difference drastically changes the way you build software, because in object-oriented programming you’re mostly concerned with defining classes (or structs), whereas in functional programming your focus is on defining functions with particular emphasis on their input and output. F# is an impure functional language where data is immutable by default, though you can still define mutable data or cause other side effects in your functions.
    [Show full text]
  • BIOVIA Pipeline Pilot System Requirements
    SYSTEM REQUIREMENTS PIPELINE PILOT 2020 Copyright Notice ©2019 Dassault Systèmes. All rights reserved. 3DEXPERIENCE, the Compass icon and the 3DS logo, CATIA, SOLIDWORKS, ENOVIA, DELMIA, SIMULIA, GEOVIA, EXALEAD, 3DVIA, 3DSWYM, BIOVIA, NETVIBES, IFWE and 3DEXCITE, are commercial trademarks or registered trademarks of Dassault Systèmes, a French "société européenne" (Versailles Commercial Register # B 322 306 440), or its subsidiaries in the U.S. and/or other countries. All other trademarks are owned by their respective owners. Use of any Dassault Systèmes or its subsidiaries trademarks is subject to their express written approval. Acknowledgments and References To print photographs or files of computational results (figures and/or data) obtained by using Dassault Systèmes software, acknowledge the source in an appropriate format. For example: "Computational results were obtained by using Dassault Systèmes BIOVIA software programs. Pipeline Pilot Server was used to perform the calculations and to generate the graphical results." Dassault Systèmes may grant permission to republish or reprint its copyrighted materials. Requests should be submitted to Dassault Systèmes Customer Support, either by visiting https://www.3ds.com/support/ and clicking Call us or Submit a request, or by writing to: Dassault Systèmes Customer Support 10, Rue Marcel Dassault 78140 Vélizy-Villacoublay FRANCE Contents About This Document 1 Definitions 1 Additional Information 1 Dassault Systèmes Support Resources 1 Pipeline Pilot Server Requirements 2 Minimum Hardware
    [Show full text]
  • Understanding the Creative Mechanisms of Design Thinking: an Evolutionary Approach
    !"#$%&'("#)"*+',$+-%$(').$+/$0,(")&1&+23+4$&)*"+5,)"6)"*7+ 8"+9.2:;')2"(%<+8==%2(0,+ Katja Thoring Roland M. Müller Department of Design Faculty of Business and Economics Anhalt University of Applied Sciences Berlin School of Economics and Law Seminarplatz 2a, 06846 Dessau/Germany Badensche Str. 50/51, 10825 Berlin/Germany +49 (0) 340 5197-1747 +49 (0) 30 85789-387 [email protected] [email protected] 8>?5@8-5+ Since generating creative concepts is one of the core aims In this article, we analyse the concept of design thinking of design thinking, we try to analyse how this is actually with its process, the team structure, the work environment, achieved. The first part of this article presents a short the specific culture, and certain brainstorming rules and overview of the design thinking process, as well as the techniques. The goal of this work is to understand how the involved artefacts and team members, and the underlying creative mechanisms of design thinking work and how they principles and guidelines for the process. In the second might be improved. For this purpose, we refer to the idea of section, we present an overview of the evolutionary theory creativity as an evolutionary process, which is determined of creativity. Both sections also cover the analysis of by generation (i.e., recombination and mutation), selection, existing literature in each area. The third section describes and retention of ideas. We evaluate the design thinking the used methodology, while in the fourth section, the main process in terms of its capabilities to activate these part of this article, we draw a comparison between the two mechanisms, and we propose possible improvements.
    [Show full text]
  • Information Systems Foundations: the Role of Design Science
    Information Systems Foundations: The role of design science Information Systems Foundations: The role of design science Dennis N. Hart and Shirley D. Gregor (Editors) THE AUSTRALIAN NATIONAL UNIVERSITY E P R E S S E P R E S S Published by ANU E Press The Australian National University Canberra ACT 0200, Australia Email: [email protected] This title is also available online at: http://epress.anu.edu.au/is_foundations_citation.html National Library of Australia Cataloguing-in-Publication entry Author: Information Systems Foundations (‘The role of design science’) Workshop (2008 : Canberra, A.C.T.) Title: Information systems foundations : the role of design science / edited by Shirley D. Gregor and Dennis N. Hart. ISBN: 9781921666346 (pbk.) ISBN: 9781921666353 (eBook) Notes: Workshop held at the Australian National University in Canberra from 2-3 October, 2008. Includes bibliographical references. Subjects: Management information systems--Congresses. Information resources management--Congresses. System design--Congresses. Other Authors/Contributors: Gregor, Shirley Diane. Hart, Dennis N. Dewey Number: 658.4038 All rights reserved. No part of this publication may be reproduced, stored in a retrieval system or transmitted in any form or by any means, electronic, mechanical, photocopying or otherwise, without the prior permission of the publisher. Cover design by Teresa Prowse Cover ilustration by Jackson Gable Printed by Griffin Press This edition © 2010 ANU E Press Contents Preface . ix Philosophical Foundations 1 . Identification-interaction-innovation: a phenomenological basis for an information services view . 3 Dirk Hovorka, Matt Germonprez 2 . How critical realism clarifies validity issues in theory- testing research: analysis and case . 21 Robert B. Johnston, Stephen P.
    [Show full text]