Collaborative architecture design and evaluation

In this paper we describe a collaborative environment created to support distributed evaluation of a complex system architecture. The approach couples an interactive architecture browser with collaborative walkthroughs of an evolving architectural representation. The collaborative architecture browser was created to facilitate involvement of project stakeholders from geographically dispersed, heterogeneous organizations. The paper provides a rationale for the approach, describes the system created to facilitate distributed-collaborative architecture evaluation, and reports on evaluation results from an ongoing, very-large scale application integration project with the United States Marine Corps. The paper contributes to research on early architecture requirements engineering, architecture evaluation, and software tools to support distributed-collaborative design.

[1]  Mary Beth Rosson,et al.  Paradox of the active user , 1987 .

[2]  Audris Mockus,et al.  Challenges of global software development , 2001, Proceedings Seventh International Software Metrics Symposium.

[3]  Mark S. Ackerman,et al.  The Intellectual Challenge of CSCW: The Gap Between Social Requirements and Technical Feasibility , 2000, Hum. Comput. Interact..

[4]  John Bennett,et al.  Reflective conversation with materials , 1996 .

[5]  Jonathan Grudin Return on investment and organizational adoption , 2004, CSCW.

[6]  P. Kidwell,et al.  The trouble with computers: Usefulness, usability and productivity , 1996, IEEE Annals of the History of Computing.

[7]  Kent Beck,et al.  Extreme Programming Explained: Embrace Change (2nd Edition) , 2004 .

[8]  M. Scriven The methodology of evaluation , 1966 .

[9]  Peter Checkland,et al.  Systems Thinking, Systems Practice , 1981 .

[10]  Jakob Nielsen,et al.  Usability engineering , 1997, The Computer Science and Engineering Handbook.

[11]  NiemeläEila,et al.  A survey on software architecture analysis methods , 2002 .

[12]  Muhammad Ali Babar,et al.  Comparison of scenario-based software architecture evaluation methods , 2004, 11th Asia-Pacific Software Engineering Conference.

[13]  Evan W. Duggan Generating Systems Requirements With Facilitated Group Techniques , 2003, Hum. Comput. Interact..

[14]  John M. Carroll,et al.  Making Use: Scenario-Based Design of Human-Computer Interactions , 2000 .

[15]  Liming Zhu,et al.  An exploratory study of groupware support for distributed software architecture evaluation process , 2004, 11th Asia-Pacific Software Engineering Conference.

[16]  Rikard Land Improving quality attributes of a complex system through architectural analysis-a case study , 2002, Proceedings Ninth Annual IEEE International Conference and Workshop on the Engineering of Computer-Based Systems.

[17]  T.M. Duffy,et al.  Scenario-Based Design: Envisioning Work and Technology in System Development [Book Review] , 1996, IEEE Transactions on Professional Communication.

[18]  D. Schoen,et al.  The Reflective Practitioner: How Professionals Think in Action , 1985 .

[19]  Jason Jerald,et al.  Distributed design review in virtual environments , 2000, CVE '00.

[20]  Pentti Marttiin,et al.  Experiences in System Architecture Evaluation: A Communication View for Architectural Design , 2005, Proceedings of the 38th Annual Hawaii International Conference on System Sciences.

[21]  J. Herbsleb,et al.  Global software development , 2001 .

[22]  Neil A. M. Maiden,et al.  Provoking Creativity: Imagine What Your Requirements Could Be Like , 2004, IEEE Softw..

[23]  Daniela E. Damian,et al.  Addressing the challenges of software industry globalization: the workshop on global software development , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[24]  Jonathan Grudin,et al.  Groupware and social dynamics: eight challenges for developers , 1994, CACM.

[25]  Thomas K. Landauer,et al.  Trouble with Computers: Usefulness, Usability, and Productivity , 1996 .

[26]  Horst Lichter,et al.  Prototyping in industrial software projects—bridging the gap between theory and practice , 1994, ICSE '93.

[27]  Denise Silver,et al.  Joint Application Development , 1995 .

[28]  Christof Ebert,et al.  Improving Validation Activities in a Global Software Development , 2000, IWSM.

[29]  Sandeep Purao,et al.  Situating evaluation in scenarios of use , 2004, CSCW.

[30]  Kent L. Beck,et al.  Extreme programming explained - embrace change , 1990 .

[31]  Michael J. Muller,et al.  Participatory design , 1993, CACM.

[32]  Donald A. Sch The reflective practitioner: how professionals think in action , 1983 .

[33]  Douglas Schuler,et al.  Participatory Design: Perspectives on Systems Design , 1993 .

[34]  J. Alberto Espinosa,et al.  The effect of time separation on coordination costs in global software teams: a dyad model , 2004, 37th Annual Hawaii International Conference on System Sciences, 2004. Proceedings of the.

[35]  Barry W. Boehm,et al.  A spiral model of software development and enhancement , 1986, Computer.

[36]  Frederick P. Brooks,et al.  No Silver Bullet: Essence and Accidents of Software Engineering , 1987 .

[37]  Rick Kazman,et al.  Evaluating Software Architectures: Methods and Case Studies , 2001 .

[38]  Ivar Jacobson,et al.  The unified modeling language reference manual , 2010 .

[39]  Enid Mumford,et al.  Systems Design Ethical Tools for Ethical Change , 1996 .

[40]  Eila Niemelä,et al.  A Survey on Software Architecture Analysis Methods , 2002, IEEE Trans. Software Eng..

[41]  Leonard J. Bass,et al.  SAAM: a method for analyzing the properties of software architectures , 1994, Proceedings of 16th International Conference on Software Engineering.

[42]  Stephen J. Andriole Fast, cheap requirements prototype, or else! , 1994, IEEE Software.

[43]  Rick Kazman,et al.  A Software Architecture Reconstruction Method , 1999, WICSA.

[44]  Claude J. Elie,et al.  Remote Usability Evaluation: Overview and Case Studies , 2002, Int. J. Hum. Comput. Interact..

[45]  Paul Clements,et al.  Software architecture in practice , 1999, SEI series in software engineering.

[46]  Liming Zhu,et al.  A framework for classifying and comparing software architecture evaluation methods , 2004, 2004 Australian Software Engineering Conference. Proceedings..

[47]  Chi-yue Chiu,et al.  Communication and Shared Reality: Implications for the Psychological Foundations of Culture , 2001 .

[48]  Steve Benford,et al.  Object-focused interaction in collaborative virtual environments , 2000, TCHI.

[49]  Hideaki Kuzuoka,et al.  Fractured Ecologies: Creating Environments for Collaboration , 2003, Hum. Comput. Interact..

[50]  Thomas K. Landauer,et al.  The trouble with computers , 1995 .

[51]  Alistair G. Sutcliffe,et al.  Scenario-based assessment of nonfunctional requirements , 2005, IEEE Transactions on Software Engineering.

[52]  Mary Beth Rosson,et al.  Requirements Development in Scenario-Based Design , 1998, IEEE Trans. Software Eng..

[53]  Barry W. Boehm,et al.  Software Engineering Economics , 1993, IEEE Transactions on Software Engineering.