Proposal to the NSF Science of Design Program, 2006 SoD-Team: “A Meta-Design Framework for Participative Software Systems” Principal Investigator Gerhard Fischer Center for Lifelong Learning and Design (L3D), Computer Science (CS) Department, Institute of Cognitive Science (ICS), University of Colorado (CU), Boulder Co-Principal Investigators Elisa Giaccardi L3D, Alliance for Technology, Learning and Society (ATLAS), CU Boulder Yunwen Ye L3D, CU Boulder Hal Eden L3D, ICS, University of Colorado, Boulder Fischer et al. i Meta-Design Table of Contents: B. Project Summary ____________________________________________________________ i D. Project Description _________________________________________________________ 1 1. Introduction __________________________________________________________________ 1 2. Problems Addressed by our Proposed Research _____________________________________ 1 3. Meta-Design: An Innovative Framework for the Design of Participative Software Systems __ 2 3.1. 3.2. 3.3. 3.4. 4. Previous and Related Work______________________________________________________ 4 4.1. 4.2. 4.3. 5. 7. Results from Prior NSF Research ______________________________________________________ 4 Previous Work ____________________________________________________________________ 5 Related Work _____________________________________________________________________ 5 Research Objectives and Research Approach _______________________________________ 6 5.1. 5.2. 5.3. 5.4. 6. Participative Software Systems (PSS) __________________________________________________ 2 Meta-Design ______________________________________________________________________ 2 Foundational Concepts ______________________________________________________________ 3 The Uniqueness of Meta-Design ______________________________________________________ 3 The Envisionment and Discovery Collaboratory (EDC)_____________________________________ 6 Specific System Developments________________________________________________________ 7 A Scenario from the Urban-Planning Domain ____________________________________________ 9 A Process Model in Support of Meta-Design: Seeding, Evolutionary Growth, Reseeding __________ 10 Assessment __________________________________________________________________ 11 Research Plan ________________________________________________________________ 13 7.1. 7.2. Timeline ________________________________________________________________________ 13 Research Team ___________________________________________________________________ 14 8. Intellectual Merit _____________________________________________________________ 14 9. Broader Impact ______________________________________________________________ 15 E. References ________________________________________________________________ 1 List of Figures Figure 1: The Architecture of the EDC ____________________________________________________________ 7 Figure 2: The EDC Board with Sketch Pen _________________________________________________________ 8 Figure 3: Google Earth Client ___________________________________________________________________ 8 Figure 4: Initial Version of the EDC Project Builder__________________________________________________ 9 Figure 5: Face-To-Face Collaboration around the EDC ______________________________________________ 10 Fischer et al. ii Meta-Design B. Project Summary B. Project Summary The proposed research will explore meta-design as an innovative framework to address the fundamental challenges in the design of an emerging type of software-intensive systems called participative software systems: achieving the best fit between the software system and its ever-changing context of use, problems, domains, users, and communities of users. This research will define the scientific foundation for designing participative software systems as socio-technical environments that empower users, as owners of problems, to engage actively and collaboratively in the continual development of software systems capable of sustaining personally meaningful activities and coping with their emergent needs. The Problem. In the past decades, the primary goal of most software systems has been to achieve better productivity and reliability, and software engineering research has achieved considerable expertise for these objectives. However, we are now entering a new phase for software development. More and more people are not only using software but also getting involved in developing software to widely varying degrees (13 million estimated in 2012 in the USA alone). Existing software design methodologies focusing primarily on productivity-driven systems are insufficient to cope with the emergence of situated uses and fluctuating requirements encountered by such wide and diversified user involvements. A new class of participative software systems is needed, the design of which does not end at the time of deployment and whose success hinges on continued user participation. Proposed Research. The project will develop a meta-design framework to guide software developers to design participative software systems. Grounded in an assessment of existing design theories as well as the systematic analysis of successful participative software systems, this research will start with a partially articulated meta-design framework, founded on the assumption that meta-designed systems can be supported by the Seeding, Evolutionary Growth, and Reseeding (SER) process model. The project will identify and correlate the technical and social characteristics of participative software systems that support users to collaboratively engage in the design of solutions to their own problems. The identified characteristics will be used to guide new developments of the Envisionment and Discovery Collaboratory (EDC), which will be used by real users to solve complex real-world problems in different design domains. The proposed research will be integrated with a specific major, multi-year urban planning project (an initial collaboration between the stakeholders of this project has already been formed). Careful and systematic assessments of the impacts of design decisions, guided by the initial meta-design framework, on this real-world problem-solving situation will feed back into the refinement of the metadesign framework. The resulting meta-design framework will delineate a design space, define a design process, and identify a set of evaluation criteria for the creation of participative software systems. Intellectual Merits. As software systems are being increasingly woven into daily lives and reshape the way people interact, collaborate, work, and think, requirements for software systems have become more individually differentiated and continuously change during their ongoing use. This research will create the scientific foundation for the design of participative software systems that do not have fixed requirements at any point in time, and necessitate user participation and contribution as a fundamental part of the system. The research will contribute to a better understanding of the complicated interactions of technical and social aspects essential to this challenging domain of a science of design. Broader Impact. The project will bring together researchers from design theory, software engineering, human-computer interaction, and cognitive science to gain insight into how to put owners of problems in charge and make them independent of “high-tech scribes.” It will produce both theoretical and practical outcomes: Theoretically, it will provide a broadly applicable conceptual framework of meta-design. Practically, through the development and application of EDC, it will put computational powers in the hands of users to come up with innovative solutions to complex design problems. Finally, the research will be applied to educate “the minds of the future” by involving undergraduate and graduate students directly in the research activities and by exposing them to new approaches to design. Fischer et al i Meta-Design D. Project Description D. Project Description 1. Introduction The objective of this proposal is to develop a coherent and principled meta-design framework for the development of participative software systems (PSS) that empower users to engage actively and collaboratively in the continual design and evolution of software-intensive systems capable of sustaining personally meaningful activities and coping with emergent needs and objectives. To avoid misunderstandings, we stress that the goal of this project is not to let untrained people (re)develop sophisticated software systems, but to put owners of problems in charge and make them independent of “high-tech scribes.” One of the critical challenges in the creation of software-intensive systems is to achieve the best fit between the system and its ever-changing context of use, problems, domains, users, and communities of users. The meta-design framework sees owners of problems as the ultimate source to achieve the fittest software solutions to their problems, and seeks a systematic way to support them as active contributors and designers while using the system. 2. Problems Addressed by the Proposed Research In the past decades, the primary goal of most software systems has been to achieve better productivity in various domains by automating or supporting established processes and actions. Software engineering research has achieved considerable expertise in creating such productivity-driven software systems to meet the requirements of users. However, we are now entering a new phase for software development. Information technologies have become part of an “upward spiral,” producing vectors of change in cultural values and social practices [Giaccardi, 2004; National-Research-Council, 2003; Winograd, 1995]. As a result, more and more people are not only using software but also getting involved in developing software to widely varying degrees [Scaffidi et al., 2005]. For example, according to survey results and projections from the Bureau of Labor Statistics, the number of people in the United States who can be reported as “nonprofessional” programmers will reach an estimated 13 million in 2012. This constantly reshapes problems by expanding design boundaries and transforming tasks. Existing design frameworks and methodologies for software development [Boehm & Turner, 2004; Gamma et al., 1995; Ingalls et al., 1997], focusing primarily on productivity-driven systems, are insufficient to cope with the need for situated or even unintended uses created by the increasing involvement of domain experts participating as “owners of problems” who can contribute unique expertise to a complex design problem. A new class of participative and creativity-driven software systems is needed (see Section 3.1). The development of such systems cannot be completely delegated to professional software developers because new requirements, which are unimaginable even to the users themselves before using the system, continuously pop up. This requires frameworks and systems focused on continual development, reflection-in-action, and user communities (see Section 3.3). In producing such frameworks, we must achieve the ability to manage the tension between constraint and freedom, between rigor and relevance [Fischer, 2005a]. Our current technologies drive designers to premature formalization, premature commitments, and premature standards; they encumber designers with costs that inhibit backing out from one alternative and exploring others [Curtis et al., 1988]. There is overwhelming evidence for the importance of democratizing innovation and creativity—a challenge that our meta-design framework for participative systems attempts to achieve as a fundamental contribution to a science of design. From the large number of arguments, we will provide a few for illustration: ♣ “We have only scratched the surface of what would be possible if end users could freely program their own applications. As has been shown time and again, no matter how much designers and programmers try to anticipate and provide for what users will need, the effort always falls short Fischer et al D-1 Meta-Design D. Project Description because it is impossible to know in advance what may be needed. End users should have the ability to create customizations, extensions, and applications. [Nardi, 1993] ♣ “The hacker culture and its successes pose by example some fundamental questions about human motivation, the organization of work, the future of professionalism, and the shape of the firm.” [Raymond & Young, 2001] ♣ “Users that innovate can develop exactly what they want, rather than relying on manufacturers to act as their (often very imperfect) agents.” [Hippel, 2005] ♣ "We know we don't have a corner on creativity. There are creative people all around the world, hundreds of millions of them, and they are going to think of things to do with our basic platform that we didn't think of. So the mashup stuff is a wonderful way of allowing people to find new ways of applying the basic infrastructures we're propagating. This will turn out to be a major source of ideas for applying Google-based technology to a variety of applications." Vint Cerf (http://www.computerworld.com/, Nov 25, 2005) 3. Meta-Design: An Innovative Framework for the Design of Participative Software Systems 3.1. Participative Software Systems Participative software systems (PSS) are software-intensive systems whose development does not end at the time of deployment but extends deeply into daily use; they are living entities. They are socio-technical systems [Mumford, 1987] capable of integrating computing infrastructure and participation process in one single platform and supporting collaboration not only about design artifacts but also about the goals of the design activity [Pangaro, 2000]. PSS need to evolve as a result of a flexible and collaborative development process, which in turn modifies the terms of the participation itself in the production of software. They are participative as the result of an “ongoing sociability” between users and programmers, in which demands are made that exceed their easy fit into standardized development practices and social relations [Fuller, 2003]. Their development and success hinges on users’ active and continued participation and contribution as owners of problems and designers. In PSS, users participate in the evolution and adaptation of the system according to their capabilities and on the basis on their own interests or needs. Major dimensions of PSS are: attraction, accessibility, transparency, modifiability, extensibility, and shareability. Examples of PSS include systems such as: slashdot.com, experts-exchange.com, open-source software systems (all of the users being software engineers and programmers), digital libraries, and content management systems such as Wikipedia (http://wikipedia.org/). 3.2. Meta-Design Meta-design [Fischer et al., 2004a; Giaccardi, 2004] is “design for designers,” and participative software systems require their users to be designers. Meta-design is an emerging conceptual framework aimed at defining and creating social and technical infrastructures in which new forms of collaborative design can take place. It extends the traditional notion of system design beyond the original development of a system and it is grounded in the basic assumption that future uses and problems cannot be completely anticipated at design time, when a system is developed. Users, at use time, will discover unforeseen opportunities or mismatches between their needs and the support that an existing system can provide them. These mismatches and opportunities will lead to breakdowns that serve as potential sources of new insights, new knowledge, and new understanding. Fischer et al D-2 Meta-Design D. Project Description Meta-design is a framework applicable to many areas — but information and communication systems and technologies (based on their malleability) provide unique opportunities [Giaccardi, 2004; Hippel, 2005]. In the specific context of this proposal, meta-design enriches traditional software engineering methodologies by viewing software systems as solution spaces rather than as whole packaged solutions, and by viewing professional software developers as solution enablers rather than as solution providers. 3.3. Foundational Concepts Meta-design supports the creation and evolution of PSS as socio-technical environments that: (1) must be flexible and evolve because they cannot be completely designed prior to use; (2) must be designed to evolve to some extent at the hands of the users; and (3) must be designed for participation and collaboration. Continual Development. The goal of making systems modifiable and evolvable by users does not imply transferring the responsibility of good system design to the user [Fischer, 2002]. Domain experts (who see software development as a means to an end) will design tools and create contents of a different quality than professional software designers (for whom software is both a means and an ends). Domain experts are not concerned with the tool per se, but in doing their work. However, if the tool created by the developer does not satisfy the needs or the tastes of the user (who knows best), then the user should be able to adapt the system without always requiring the assistance of the developer. Design as Reflection-in-Action. Complex design problems are ill-defined [Rittel, 1984; Simon, 1996] requiring the integration of problem framing and problem solving. They cannot be delegated from owners of problems to professionals [Fischer, 1994] because they are not understood well enough to be specified accurately in advance and be addressed faultlessly [Brooks, 1987]. Schön [Schön, 1983] characterizes design as a “reflective conversation with the materials of the situation.” Schön argues that the integration of problem framing and problem solving sustained by such a “conversation” is how designers, as owners of problems and reflective practitioners, gradually build their understanding of the problem and its solution. Reflective Communities. The complexity of design problems transcends individual reflective practitioners requiring reflective communities [Fischer, 2005b] that can contribute more knowledge than any single person can possess [Bennis & Biederman, 1997; Leonard & Swap, 1999]. Reflective communities enable people with different knowledge and perspectives to collaborate about their own goals and designs [Pangaro, 2000] by sharing knowledge, information resources, and personally meaningful activities. The result of this ongoing and reflective sociability is software creation, adaptation and evolution [Fuller, 2003]. 3.4. The Uniqueness of Meta-Design In all design processes, two basic stages can be differentiated: design time and use time [Henderson & Kyng, 1991]. At design time, system developers (with or without user participation) create environments and tools for the world as imagined by them to anticipate users’ needs and objectives. At use time, users use the system in the world as experienced. The bridging of these two stages into a unique “design-inuse” continuum encompassing an ongoing conversation both with the design material and among participants differentiates meta-design from other (more established) design frameworks, including: ♣ Professionally dominated design [Illich, 1973], whose focus is on design by anticipation determined by the professional community; ♣ User-centered design [Norman & Draper, 1986], whose focus is on design by anticipation determined by the professional community being informed about the needs and background knowledge of the users; Fischer et al D-3 Meta-Design D. Project Description ♣ Learner-centered design [Soloway et al., 1994], whose focus is on design by anticipation for users to learn and become more proficient in using a system; and ♣ Participatory design [Schuler & Namioka, 1993], whose focus is on design by participation by involving users more deeply in the process as co-designers and empowering them to propose and generate design alternatives. All these design frameworks have the implicit assumption that major design activities end at a certain point after which the system enters use time. Meta-design complements and transcends these design methodologies by creating open and continuously evolvable systems that can be collaboratively extended and even redesigned at use time by users and user communities. However, meta-design is not merely enduser modification and programming. Meta-designed software systems not only provide the technical means for users to customize and extend the systems but also provide social and technical mechanisms to facilitate user participation and collaboration during the design activities. Although different process models have been proposed in software engineering to organize and coordinate development activities with the goal of better coping with constant changes of user requirements (from rapid prototyping to the spiral model), the underlying assumption that user requirements can be obtained remains unchanged. For example, the more recent agile software development model advocates continuous collaboration with users during the whole development process to deal with new and emergent requirements; still, it assumes there exists a point at which the system will be delivered to the user and the design process will end. On the contrary, the meta-design framework we propose in this research assumes that users can never anticipate the requirements of a software-intensive system, particularly a participative software system, prior to real use [Suchman, 1987; Winograd & Flores, 1986]. The design of these systems never ends. 4. Previous and Related Work 4.1. Results from Prior NSF Research Our research during the last 15 years has resulted in the development of conceptual frameworks, computational architectures, prototypes, and community-building efforts that have explored different aspects of a science of design, including domain-oriented design environments, critiquing, design rationale, software reuse and redesign, living organizational memories, and creativity support environments. The proposed principal investigators have received the following NSF awards (also as PIs): 1. #IRI-8722792: G. Fischer, W. Kintsch, C. Lewis, and P. Polson: “Design Principles for Comprehensible Systems” (group grant), 1988-1991, amount: $1,171,246. 2. #IRI-9015441: G. Fischer and R. McCall: “Supporting Collaborative Design with Integrated Knowledge-Based Design Environments,” 1990-1993, amount: $700,000. #IRI-9311839: G. Fischer: “Human-Centered Intelligent Agents Supporting Communication and Collaboration in Domain-Oriented Design Environments,” 1993-1996, amount: $210,000. 4. #RED-9253425: G. Fischer, M. Eisenberg, and H. Eden: “Mastering High-Functionality Computer Systems by Supporting Learning on Demand,” 1992-1995, amount: $1,504,238. 3. 5. #REC-9553771: G. Fischer, M. Eisenberg, A. Repenning, and H. Eden: “Learning by Design: Environments to Support Reinventing and Reengineering Education as a Lifelong Process,” 19951996, amount: $398,482. 6. #REC-9631396: G. Fischer, M. Eisenberg, A. Repenning, and H. Eden: “Lifelong Learning—Bringing Learning Activities to Life,” 1996-1999, amount: $1,935,996. 7. #IRI-9711951: G. Fischer, J. Ostwald, and G. Stahl: “Conceptual Frameworks and Computational Support for Organizational Memories and Organizational Learning,” 1997-2000, amount: $700,000. 8. #CCR-0204277: G. Fischer and Yunwen Ye: “A Social-Technical Approach to the Evolutionary Construction of Reusable Software Component Repositories,” 2002-2004, $160,000. Fischer et al D-4 Meta-Design D. Project Description 9. #REC-0106976: G. Fischer, E. Arias, H. Eden, and M. Eisenberg: “Social Creativity and MetaDesign in Lifelong Learning Communities,” 2001-2004, $1,192,353. These grants were successful in terms of conceptual framework development, community building, technical deliverables, and rich education experiences. They have led to numerous publications (see references). Several of our conceptual frameworks and innovative systems developed with these grants have been used by other research and industrial organizations as building blocks for their own research. About fifteen students graduated with PhDs, and several projects provided research experiences to postdoctoral researchers. Additionally, approximately nine undergraduates gained initial research experience through mentorship and support in our Undergraduate Research Apprenticeship Program [URA, 2005]. The grants most relevant to the proposed research are: ♣ ♣ ♣ Grant 7: This grant focused on developing living organizational memories to support collaborative design. The results included initial development of the seeding, evolutionary growth, reseeding model [Fischer et al., 2001] and advancing participatory design to informed participation [Fischer & Ostwald, 2002]. Grant 8: Under this grant, two of the PIs explored, designed, and evaluated an environment supporting software reuse [Ye & Fischer, 2005] and explored open-source software systems and communities [Ye et al., 2004]. Grant 9: This grant developed initial conceptual frameworks for social creativity [Fischer et al., 2004b] and meta-design [Fischer et al., 2004a], and new innovative technologies (e.g., a seamless integration between physical and computational worlds [Arias et al., 2000], supporting collaborative design among stakeholders coming from different disciplines). 4.2. Previous Work Based on the work described in the previous section, this research will synthesize our long-term research efforts in the Center for Lifelong Learning and Design (L3D), University of Colorado, in understanding and supporting various aspects of design: (1) design as a continuous and reflective conversation with materials [Kapor, 1996; Schön, 1983]; (2) design as a distributed and collaborative process among different stakeholders from different domains [Arias et al., 2000; National-Research-Council, 2003]; and (3) design as a learning process, specifically the integration of design with lifelong learning, as is indicated in the name of our center [Balestri et al., 1992; Fischer, 2000]. Our research program has pursued the exploration and definition of a “science of design” [Simon, 1996], following the vision of design that cuts across many different professional domains [Winograd, 1996]. The specific professional design communities with which we have interacted and collaborated include architecture and urban planning [Arias et al., 2000], art and creative practices [Giaccardi, 2004], universal design in our work with people with disabilities [Carmien et al., 2005], end-user development communities [Fischer et al., 2004a], and open-source communities [Ye et al., 2004]. 4.3. Related Work The proposed research will draw inspiration and results from a number of related research efforts, including the following: ♣ Theoretical frameworks for a science of design: (a) the “sciences of the artificial” being fundamentally different from natural science [Simon, 1996]; (b) designers being reflective practitioners engaging in conversation with emerging design situations [Schön, 1983; Schön, 1987; Schön, 1992; Suchman, 1987]. This inspired our work on domain-oriented design environments and critiquing, and motivated us to educate new students to be reflective practitioners. Fischer et al D-5 Meta-Design D. Project Description ♣ ♣ ♣ ♣ ♣ Architecture and urban planning including (a) the concepts of patterns, pattern languages, and unselfconscious cultures of design [Alexander, 1964; Alexander et al., 1977; Alexander et al., 1975; Gamma et al., 1995], which inspired our seeding, evolutionary growth, reseeding model; (b) the identification and characterization of ill-defined problems [Rittel, 1984; Rittel & Webber, 1984], which created the need for the integration of problem framing and problem solving. End-user development: allowing many more people to express themselves and making domain professionals independent of “high-tech scribes” [Cypher, 1993; Eisenberg, 1997; Lieberman, 2001; Nardi, 1993], which is the prerequisite for putting owners of problems in charge and enabling evolutionary growth [Wright et al., 2002]. Open-Source Software (OSS): demonstrating that complex software systems can be successfully developed as decentralized artifacts [Raymond & Young, 2001; Resnick, 1994] inspired us to exploit the analysis of OSS as a success model [Scharff, 2002]. An essential difference between OSS and this research setting is that OSS developers already have the software knowledge and skill to address their own problems [Scacchi, 2002]. Human-computer interaction research focused on a design perspective: supporting domainorientation, distributed cognition, and making systems usable and useful [Norman, 1993; Norman & Draper, 1986], which inspired us to develop systems that provide users with new experiences and support human-computer interaction at a problem domain level. Software engineering research focused on a design perspective: including how to bring design to software [Winograd, 1995]; object-oriented design [Kay, 1984]; evolution [Dawkins, 1987]; domainoriented languages [Shaw, 1989]; and how to achieve conceptual integrity in team design [Brooks, 1979; Brooks, 1987]. These developments inspired meta-design as a framework to rethink software from a design perspective. 5. Research Objectives and Research Approach Meta-design is a broad framework related to numerous efforts to democratize design, innovation, and creativity [Hippel, 2005], including, among many others, the following developments: (1) Open-Source Software [Scharff, 2002; Ye et al., 2004], (2) Digital Libraries [Wright et al., 2002], (3) Wikipedia, and (4) mash-ups (see Section 5.3). This section will describe our research objectives and approach by using the Envisionment and Discovery Collaboratory. 5.1. The Envisionment and Discovery Collaboratory (EDC) The Envisionment and Discovery Collaboratory (EDC) [Arias et al., 2001] is an evolving meta-design framework for PSS. It integrates physical, computational, and social components in support of metadesign. An important initial design objective for the EDC was to create an end-user modifiable version of SimCity (http://simcity.ea.com/). This objective originated in our empirical observations that despite being highly successful as a game environment, SimCity is not used in real-life urban planning activities because it does not fit the complexities of real-world design problems and, as a closed system, it cannot be changed by the users to fit their needs. The existing initial prototype of the EDC supports “reflection-in-action” [Schön, 1983]. Design problems are discussed and explored by providing participants with a shared construction space in which they interact with computationally enhanced physical objects that are used to represent the situation currently being discussed (action spaces; see Figure 1). As participants manipulate physical objects, a corresponding computational representation is updated by using technologies that recognize the placement and manipulation of physical objects. Computer-generated information is projected onto the horizontal physical construction area, creating an augmented-reality environment. This physical construction is coupled with information displayed on vertical displays and relevant to the problem currently being discussed (reflection spaces). Fischer et al D-6 Meta-Design D. Project Description In the proposed research, we will (1) substantially evolve the EDC as a meta-design framework by creating new components, as described below; (2) create the seed for the project; (3) support the evolutionary growth of the project over the next three years; (4) observe the needs and opportunities for design activities by the stakeholders in the project, (5) engage in formative evaluation of the strengths and weaknesses of our approach throughout the process; (6) identify the specific contributions to a greatly extended and enriched framework for meta-design and describe their contributions to a science of design. 5.2. Specific System Developments This section illustrates specific system developments that we identified as key elements to the success of EDC as a PSS, and that are grounded in our initial theoretical framework of meta-design. Modular and Layered System Architecture. The EDC will provide context and support mechanisms for users to come up with their own solutions through design and collaboration. Specific development objectives are: (1) users should be able to modify and extend the seeds provided by the developers; and (2) the system needs to have a high degree of interoperability for the integrating of existing resources and computational systems. The current system comprises multiple interacting components (see Figure 1). Our envisioned and partially implemented architecture is highly modular and also has a high degree of interoperability. This has allowed and will continue to allow the creation of linkages to numerous existing, large-scale databases already developed as well as those being evolved by our collaboration partners. The software environment of the EDC [Eden, 2002] is constructed using Squeak (an open-source version of Smalltalk) that allows the rapid development of graphical interfaces, hardware drivers, network connections, and linkages to diverse information resources. It effectively supports the creation of simulations, and the display of dynamic media such as the result of Graphical Information Systems (GIS) analyses. Other components of the EDC utilize various languages (Java, C++, PHP, SQL) and standards-based interfaces (where they exist) to communicate with each other. To support the integration of personal and shared interaction spaces [Fischer et al., 2005], a PDA client will be created to disperse information to a larger group of participants. As envisioned, the PDA client would allow participants to interact with information on an individual basis as well as in the shared interaction space. Sketching Component. Our proposed research will demonstrate that sketching is an absolutely essential activity in the early stages of design [Gross & Do., 2000] and especially it will support collaborative sketching for empowering users to become designers based on the following two assumptions: (1) sketching makes it easier to engage users into design activities because it is intuitive and does not require formal training; and (2) sketching supports the emergence of new ideas when the user community collectively reflects upon one user’s design idea. The EDC supports sketching by using an eBeam electronic whiteboard (see Figure 1: The Architecture of the EDC Fischer et al D-7 Meta-Design D. Project Description Figure 2). This system tracks the movements of a special pen on the surface and sends the results to an attached computer. Currently, only a single pen is allowed, which results in only one person at a time making the changes. The proposed research will explore how the use of multiple pens can be supported. Figure 2: The EDC Board with Sketch Pen Figure 3: Google-Earth Client Integrating External Information into Reflection Spaces. To explore background information relevant to the problem to be solved, user-extensible reflection spaces will be created to provide pertinent information and will be presented in secondary displays. Information will be communicated to these displays via separate clients that connect to the simulation through network links. This information can be pre-stored by an expert in the field, fetched in real time from the web, or generated based on the state of the simulation. Augmenting Representational Talkback with 3D Visualization. Reflection is triggered by representational talkback of user actions. Helping users to interpret their design actions with immediate 3D visualization will stimulate discussion, reflection, and further design activities. We will develop 3D visualization components for the EDC through a local Google-Earth client, which is projected for all participants to observe and reflect. Control of the view will use two designated pieces in the context of the 2D view. The "camera" for the Google-Earth client will be centered on the same location as the 2D view, and will be positioned according to the location of the designated pieces. The view pieces differ only in view angle: one provides a "helicopter" view, and the other provides a ground-level view. The proposed research will extend our current initial demonstration of this feature: In Figure 2, the buildings have been sketched into the simulation by using the pen. When these are shown in a GoogleEarth 3D view (Figure 3), the height differences become evident, allowing participants to better visualize the impact of their design conjectures. EDC Project Builder. A meta-design perspective requires that the system be open to extension by the users of the system. To allow projects to be developed without requiring the project’s designer to program within the Squeak Smalltalk programming environment, we have created a web-based application that supports the specification of resources and interactions to be used in an EDC session, allowing the projects to be designed and tested in a distributed fashion. The initial version of the Project Builder, shown in Figure 4, has more of the nature of an administrative interface, allowing participants to define projects; upload or link to resources (e.g., maps, icons, WMS data); define action space interaction behavior; and specify the project phasing. Based on use tests with urban planning students, we will add an interface that is more oriented toward building a design scenario rather than simply specifying components. Fischer et al D-8 Meta-Design D. Project Description Figure 4: Initial Version of the EDC Project Builder To support the evolution of the EDC at the hands of the users, ways for designers to include relevant data sources has been found to be an important aspect. The Project Builder interface supports the inclusion of GIS and data resources, as well as the specification of the interaction behavior of the EDC within a given project. Application Contexts. The major application context pursued in the proposed research will be the multiyear design project to be undertaken by the City of Boulder, the University of Colorado, and the firm Architectural Manoeuvres (see letters from these stakeholders in Supplementary Section of this proposal). This collaborative project will provide a unique context which will allow us to extend the preliminary existing EDC into a framework for meta-design, develop the seed for a participative system, and observe the evolutionary growth of the system over time, as all participating stakeholders will be empowered to act as designers rather than being confined to user roles. Within the primary context, we will explore related contexts, such as human-centered transportation systems and emergency management systems for education and operation. 5.3. A Scenario from the Urban-Planning Domain A professional design community (including city planners, transportation planners, and representative real-estate developers) is involved in urban-planning effort surrounding a transit-oriented development (TOD) project. They understand that the impacts of the project on the community will be considerable and that the viability of the TOD will depend upon buy-in and acceptance by the community as well as insights from the community on the preferability of various options, an understanding of various perspectives on susceptibility to change, existing and anticipated transit use patterns, and input on the desired character of the community. Fischer et al D-9 Meta-Design D. Project Description Figure 5: Face-To-Face Collaboration around the EDC In a recent meeting with the Boulder City Council and the CU Board of Regents at the L3D laboratory, representatives are using the EDC to discuss perspectives and explore computational models related to a design problem of common interest and concern. The shared space creates a focal point for discussion, allowing participants to build shared understanding and common ground. In order to cultivate a reflective community around this project, the planners decide to utilize a multi-faceted approach that combines citywide and neighborhood meetings along with webbased access to information and discussion/feedback forums. A set of activities are planned for the community meetings designed to elicit input and insights from the various stakeholders. However, the usual practice of using printed maps and charts alone to present the rich information resources the planners have available is found to be too limiting to address the dynamic and varied issues that are likely to be raised by the citizen participants. The resources that are available are stored in a variety of forms (e.g., GIS, census data, survey results, demographic data) in a variety of applications used by planning professionals. The planners are well trained in the use of these applications and can compile and generate printed maps and charts with ease. However, the applications are not well suited to dynamic, interactive access to the material. The planners use capabilities provided by EDC developers to create a “mash-up” scenario that links together the various resources available to the planning professional. The resulting scenario allows participants at the neighborhood meeting to interact by taking advantage of the EDC’s capabilities (see Figure 5) with representations of the development plans. They can provide input into their preferences and perceptions of components of the design; obtain feedback on issues raised in interaction with the design through the reflection space; visualize aspects of the design in a projected 3D model; and react to, extend, or suggest alternatives to the designs provided by the professional team. Several issues arise that go beyond the scope of the data provided by the city’s planning professional. One citizen is aware of some Environmental Protection Agency data available on-line and uses the same technique used by the professional planners to include this data in the mash-up. Another points out that certain survey information from the neighborhood would be valuable to the discussion and volunteers to do the necessary work to gather that information. After consultation with the city’s demographics professional regarding appropriate survey approaches and techniques, he develops a survey, canvasses the neighborhood, stores the data into a community database, and links it into the evolving neighborhood design mash-up for use at the next meeting. Whereas the activities begin as more of a traditional expertdriven participatory process, the participative nature of the EDC allows all participants to become designers if they have the desire to do so. 5.4. A Process Model in Support of Meta-Design: Seeding, Evolutionary Growth, Reseeding The seeding, evolutionary growth, and reseeding (SER) model [Fischer et al., 2001] is an emerging descriptive and prescriptive model for creating software systems that best fit an emerging and evolving context. In the past, large and complex software systems were built as complete artifacts through the large efforts of a small number of people. Instead of attempting to build complete systems, the SER model advocates building “seeds” that can be evolved over time through the small contributions of a large Fischer et al D-10 Meta-Design D. Project Description number of people. It postulates that systems that evolve over a sustained time span must continually alternate between periods of planned activity and unplanned evolution, as well as periods of deliberate (re)structuring and enhancement. A seed is something that has potential to change and eventually grow (in the sense of becoming something else). However, the application of the notion of a seed to the computational artifact alone is not sufficient to create systems that effectively encourage users’ participation in the design process and adapt to emergent needs and opportunities as a result of sustained participation [Giaccardi & Fogli, 2005]. This proposal explores the notion of seed from a more complex perspective: as the method of creating both the technical and social conditions for users to engage as designers in participative software systems. The development of the EDC thus far has followed many aspects of the SER model, although in an ad hoc manner, involving domain experts and software developers in the creation of the seed, the creation of initial content and tools as a springboard for evolutionary development, the utilization of open protocols whenever possible, and the integration of existing information resources. However, the focus of this effort has been primarily on the domain expert and less on the design stakeholders as seeding partners. The following finding resulted from an evaluation of our earlier efforts [Giaccardi & Fogli, 2005]: “Retrospectively, we were able to conclude that the initial state of the EDC was not a seed because an important element of the participative system was missing—the participants!” Our past attempts to utilize role play [Hornecker et al., 2002] to gain insights regarding stakeholder behavior, although useful for understanding interaction issues, did not yield deep insights into the stakeholder-oriented aspects of the seed. The EDC development of the past “did not fully recognize the complexity of the socio-technical system in which the user communities were embedded” [Giaccardi & Fogli, 2005]. To address these shortcomings, we have been successful in sparking interest and creating collaboration that will allow us to embed our proposed research in an authentic complex design project. This design project will bring together several stakeholders (including the City of Boulder, the Regents of the University of Colorado, and a major urban planning company; see Figure 5 and letters in Supplementary Section). This collaboration represents a unique opportunity to advance our understanding, design and develop new tools, and explore the influence and the implications of the SER model by engaging stakeholders over extended periods of time in a participative system design based on the meta-design framework. 6. Assessment Our assessment methodology will include a variety of formative (guiding ongoing development) and summative (determining overall effectiveness) evaluations by combining both qualitative and quantitative methods [Nardi, 1997] collaboratively performed by the investigators and the project collaborators in real-world settings. We will address the limitation of evaluations that cease when the software is introduced into the real world by employing in use or in situ methods [Amaldi, 2005]. We will evaluate (1) how participative software systems actually function when used in the context of complex design activities, as explored by our EDC environment (see Section 5.1); and (2) whether meta-design criteria are successful in supporting the design-use-evaluation continuum underpinned by participative software systems. Evaluations will explore the following specific research questions related to the EDC: ♣ Does extensive support of modifiability, extensibility, and shareability promote the creation and distribution of design ideas and resources among and across different but interrelated design domains? Is it necessary? Is it sufficient? — This issue will be conceptualized by exploring its technical and social aspects. We will collect quantitative data on the volume of design ideas and resources created and exchanged and qualitative data via questionnaires and interviews. Fischer et al D-11 Meta-Design D. Project Description ♣ In the action space, are design intentions better communicated and emergent design opportunities better captured via the sketching component than via formal representations? — This question will be explored in a comparative study using a corpus of sketches and a corpus of printed maps and charts along with interviews about the intended and perceived meanings of each. We will support the comparative study with interaction data, ranging from data capture to video recordings, by extending the observations preliminarily conducted by Andrew Warr on the sketching component prototype [Warr, 2005]. ♣ In the reflection space, does the afforded “mash-up” among diverse information resources and formats provide a rich solution space that allows designers to cope with a larger set of design issues and concerns? — The hypothesis will be evaluated by collecting and comparing quantitative data on how many design issues are identified, documented, and addressed by stakeholders in a controlled situation. In one case, stakeholders will be asked to take advantage of the mash-up; in the other case, this feature will be disabled. Quantitative results will be commented via interviews. ♣ In a real-world setting, what are the strengths and weaknesses of applying meta-design criteria to the design of software supporting participation and intense collaboration about complex design activities? Is it cost-effective? Does it lead to more creative behavior? Is it generally applicable? — This question will be answered by the deployment and use of our tools in the context of the large development project described in section 5.1 and the letters by City of Boulder, CU Boulder, and Architectural Manoeuvres. In-use experience [Amaldi, 2005] with the design process and tools will provide insight into what will work and what will not work, including the identification of the underlying causes. By answering these specific questions we will gain a broader theoretical understanding about questions associated with the SER model, such as: ♣ What are the technical and cognitive aspects that characterize a good seed that is posed for evolution through the contributions of a large number of community members? — Our initial observations, assumptions, and conjectures are: (1) technically, the seed should have a well-designed modular structure that allows parallel development and evolution; (2) cognitively, the seed should address an interesting problem faced by a group of users; and (3) emotionally, the seed should stir excitement among users with intriguing ideas and challenging problems. ♣ What are the technical, cognitive, and social/emotional aspects that enable and attract users to actively participate in the evolutionary growth of the seed? — Our initial observations, assumptions, and conjectures are: (1) technically, a suite of communication and coordination mechanisms is a prerequisite; (2) cognitively, participation provides mutual learning opportunities among members, and a new division of labor allows each member to choose and focus on the problems that are personally mostly meaningful; (3) socially, explicit acknowledgment and recognition of contributions are necessary, and generalized mutual reciprocity creates shared value and gives members of a community a sense of belonging. ♣ What are the indicators or signs for the initiation of the reseeding process? Should reseeding be pursued as a community-wide negotiated process or be at the disposition of leaders? — We will: (1) develop a set of criteria that measure the entropy of the system and the community, which is caused inevitably by the multiple and wide-ranging sources of contributions and is detrimental to the further evolutionary growth of the system; and (2) identify the technical, cognitive, and social impacts of such reseeding processes (e.g., backward compatibility issues, relearning efforts, the potential disfranchisement of particular user groups whose needs are not well reflected in the reseeding process). Identification of Boundaries and Pitfalls Associated with a Meta-Design Framework. We are convinced that meta-design is not the appropriate framework for all problems. Although we believe that it Fischer et al D-12 Meta-Design D. Project Description will not only in a small number of niche areas but across a broad spectrum of applications, the framework is not appropriate, for example, for safety critical software systems that rely on extended expertise in technical areas of computer science. Associated with meta-design are challenging questions concerning quality control issues (such as those that recently surfaced as controversial issues surrounding Wikipedia [Terdiman, 2005]). Meta-design creates inherent tensions, for example, between standardization and improvisation. The SAP Info (July 2003, page 33) argues to reduce the number of customer modifications: “every customer modification implies costs because it has to be maintained by the customer. Each time a support package is imported there is a risk that the customer modification may have to be adjusted or re-implemented. To reduce the costs of such on-going maintenance of customer-specific changes, one of the key targets during an upgrade should be to return to the SAP standard wherever this is possible.” Finding the right balance between standardization (which can suppress innovation and creativity) and improvisation (which can lead to a Babel of different and incompatible versions) has been noted as a challenge in opensource environments, in which forking has often led developers in different directions. We will explore to which extent the reseeding phase of the SER model can address this problem. We will carefully analyze and incorporate the findings reported about activities related to meta-design and participative systems. For example: the Oregon Experiment [Alexander et al., 1975] (a housing experiment at the University of Oregon) serves as an interesting case study that showed that end userdriven evolution is no guarantee for success. The analysis of its unsustainability indicated the following major reasons: (1) there was a lack of continuity over time, and (2) professional developers and users did not collaborate, so that there was a lack of synergy. We will explore whether the EDC support mechanisms (e.g., the possibility to store design artifacts and their design rationale) will be able to address these pitfalls. 7. Research Plan 7.1. Timeline The proposed research will take place over three years. Year One: Formative Evaluations and Theoretical and Methodological Refinement ♣ evaluate the EDC design and development history (including original attempts to instantiate and support the SER model) from a meta-design perspective; ♣ develop criteria and guidelines about what constitutes a seed and create the support mechanism for evolutionary growth; ♣ continue initial system-building efforts for the EDC by developing new components and incorporating support for evolutionary growth. ♣ organize international symposium about “meta-design” with representatives interested in this approach; Year Two: Initial Deployment of Prototype and Iterative Implementation ♣ deploy new EDC components for use and participation in the context of the major urban planning project; ♣ integrate and unify different design frameworks into a coherent approach; ♣ extend formative assessment of the SER model and explore timing, criteria, and strategies for reseeding; ♣ Iteratively improve EDC system based on use and assessment. Year Three: Further Development, Summative Evaluations, and Broad Dissemination ♣ assess the successes and failures of our major urban planning project and identify the underlying causes; Fischer et al D-13 Meta-Design D. Project Description ♣ package the new EDC components for distribution to different design communities; ♣ conduct a summative evaluation of the design tools, the design artifacts constructed, and the metadesign framework and their contribution and their impact for a science of design; ♣ disseminate the results broadly (e.g., journal and conference articles, summer schools, major international symposia). 7.2. Research Team The research team behind the proposal (including their prime responsibilities) will consist of: Core Research Team (for details, see Biographical Sketches in Section F) − Gerhard Fischer (PI): overall scientific direction for the project; design theories − Hal Eden (Co-PI): Envisionment and Discovery Collaboratory − Elisa Giaccardi (Co-PI): meta-design, creativity − Yunwen Ye (Co-PI): Seeding, Evolutionary Growth, Reseeding Model, open source Local Collaborators − Prof. Ernesto Arias, College of Architecture and Planning, CU Boulder: domain expertise for environmental decision making, natural hazards mitigation, emergency response planning, and regional/local transportation planning − Prof. Tamara Sumner, Department of Computer Science and Institute of Cognitive Science, CU Boulder: meta-design of a community digital library by having potential users define and guide the development of the library − Matt McMullen, President, Architectural Manoeuvers (letter in Supplementary Section) − Frank Bruno, City Manager, City of Boulder (letter in Supplementary Section) − Paul Talbolt, Vice Chancellor, CU Boulder (letter in Supplementary Section) Advisory Board (letters in Supplementary Section) − Prof. Mitchel Resnick, Professor, MIT Media Lab, Cambridge, MA: end-user programming environments, decentralized computational environments, computer clubhouses − Prof. Ben Shneiderman, University of Maryland: creativity, visualization, direct manipulation International Collaborators Our research team has interacted with all of these researchers and the centers that they direct for several years in an effort to gain a deeper understanding of design and design support environments. All of these researchers have indicated a strong interest to collaborate with us in our proposed research project. − Prof. Pelle Ehn, University of Malmö, Sweden: Digital Bauhaus − Prof. Michael Herzceg, University of Lübeck, Germany: international school of media design − Prof. Anders Morch, University of Oslo, Norway: end-user development, software reuse − Prof. Alistair Sutcliffe, University of Manchester, UK; end-user development, domain theories, software engineering − Prof. Katsuro Inoue, Osaka University, Japan: software evolution, reuse, software engineering 8. Intellectual Merit By creating a meta-design framework, this project will instantiate a unique approach toward a science of design. It will create a scientific and intellectual foundation for the design of participative software systems. This framework will be a significant improvement over existing software development methodologies and frameworks that are predicated on the assumption that user requirements can be Fischer et al D-14 Meta-Design D. Project Description understood at design time are inadequate for systems that fit real needs that are changing and evolving over time. The unprecedented malleability of software systems, coupled with the unparalleled wide reach of software systems into every aspect of society, has made it clear that no silver bullet exists and that no single methodology will be suitable. The historical trajectory of the design paradigms from waterfall models to agile methods reflects the recognition of the unique challenges presented by evolving and fluctuating user requirements. The meta-design framework provides a systematic approach to the creation of PSS that put tools in the hands of problem owners to act as designers to evolve the systems for a better fit with their problems. Recent developments (e.g., Web 2.0, open-source software, digital library projects such as DLESE, and content management systems such as Wikipedia) thrive not just on their technical malleability but to a greater extent on a viable social platform for continuous user participation and contribution. The meta-design framework created by this research will delineate the design space, define the design process, and identify a set of evaluation criteria that can guide design communities to develop PSS in which user participations and contributions are the fundamental part of the system, and in which technical design has to go together with social design. The proposed research will contribute to a better understanding of the complicated interactions of technical, social, organizational, and cultural aspects that are equally essential to the success of PSS. The meta-design framework will provide tested and evaluated design principles for all stakeholders to reason about their design decisions and compare design alternatives, as well as processes and methods to guide and organize design activities systematically. 9. Broader Impact This research challenges the foundation of many current design methodologies that clearly differentiates producers and customers, design and use by blending across the clear boundaries. The results from this research will lead to the better design of computational systems that are aimed at unleashing the creativity of millions of computer users as they are enabled to actively participate in the shaping and reshaping of computational systems. The research will seek to define a systematic approach for putting the power of computers directly into the hands of users, improving their use as sources for technological innovations. The project will bring together researchers from design theory, software engineering, human-computer interaction, interaction design, cognitive science, and education, as well as representatives from different application domains (e.g., urban planning, emergency management, and community development) for the purpose of gaining insights into designing software-intensive systems from richer and fundamentally different perspectives. The proposed research will produce both theoretical and practical outcomes. On the theoretical side, the project will provide a conceptual framework and a set of guidelines and models for meta-design as an essential contribution to a science of design. On the practical side, the research will produce and assess the EDC as a specific instantiation of meta-design and, by using the EDC, will explore the SER model to create a specific participative system. The results and findings (in the forms of architectures, artifacts, methodologies, models, guidelines, and software components) will be broadly disseminated in yearly symposia, journals, conferences, and web portals. Our research will be applied to educate “the minds of the future” by having students directly involved in the research activities, exposing them to new approaches of a science of design. The conceptual frameworks developed will guide the design of curricula for educating new design professionals about the meta-design framework. We will organize workshops and summer schools for students as opportunities to educate and pilot-test some of our research results. We will continue our long tradition of involving undergraduates in this research project, and we will incorporate the meta-design framework in our educational mission, pursuing crossdisciplinary and mutual learning in the setting of university courses. An advisory board and international collaborators will assist the core project team in assessing results and findings, creating awareness and possibilities for further collaborations, achieving a large impact, and supporting broad dissemination. Fischer et al D-15 Meta-Design E. References E. References Alexander, C. (1964) The Synthesis of Form, Harvard University Press, Cambridge, MA. Alexander, C., Ishikawa, S., Silverstein, M., Jacobson, M., Fiksdahl-King, I., & Angel, S. (1977) A Pattern Language: Towns, Buildings, Construction, Oxford University Press, New York. Alexander, C., Silverstein, M., Angel, S., Ishikawa, S., & Abrams, D. (1975) The Oregon Experiment, Oxford University Press, New York. Amaldi, P. (2005) In-Use, In-Situ: Extending Field Research Methods. Available at http://www.cs.mdx.ac.uk/research/idc/in_use.html. Arias, E. G., Eden, H., Fischer, G., Gorman, A., & Scharff, E. (2000) "Transcending the Individual Human Mind—Creating Shared Understanding through Collaborative Design," ACM Transactions on Computer HumanInteraction, 7(1), pp. 84-113. Arias, E. G., Eden, H., Fischer, G., Gorman, A., & Scharff, E. (2001) "Transcending the Individual Human Mind—Creating Shared Understanding through Collaborative Design." In J. M. Carroll (Ed.), Human-Computer Interaction in the New Millennium, ACM Press, New York, pp. 347-372. Balestri, D. P., Ehrman, S. C., & Ferguson, D. L. (1992) "Learning to Design and Designing to Learn," Taylor & Francis, Washington, DC. Bennis, W., & Biederman, P. W. (1997) Organizing Genius: The Secrets of Creative Collaboration, Perseus Books, Cambridge, MA. Boehm, B., & Turner, R. (2004) Balancing Agility and Discipline, Addison Wesley, Boston. Brooks, F. P., Jr. (1979) The Mythical Man-Month, Essays on Software Engineering, Addison-Wesley Publishing Company, Reading, MA. Brooks, F. P., Jr. (1987) "No Silver Bullet: Essence and Accidents of Software Engineering," IEEE Computer, 20(4), pp. 10-19. Carmien, S., Dawe, M., Fischer, G., Gorman, A., Kintsch, A., & Sullivan, J. F. (2005) "Socio-Technical Environments Supporting People with Cognitive Disabilities Using Public Transportation," Transactions on HumanComputer Interaction (ToCHI), 12(2), pp. 233-262. Curtis, B., Krasner, H., & Iscoe, N. (1988) "A Field Study of the Software Design Process for Large Systems," Communications of the ACM, 31(11), pp. 1268-1287. Cypher, A. (Ed.) (1993) Watch What I Do: Programming by Demonstration, The MIT Press, Cambridge, MA. Dawkins, R. (1987) The Blind Watchmaker, W.W. Norton and Company, New York - London. Eden, H. (2002) "Getting in on the (Inter)Action: Exploring Affordances for Collaborative Learning in a Context of Informed Participation." In G. Stahl (Ed.), Proceedings of the Computer Supported Collaborative Learning (CSCL '2002) Conference, Boulder, CO, pp. 399-407. Eisenberg, M. (1997) "End-User Programming." In M. G. Helander, T. K. Landauer, & P. V. Prabhu (Eds.), Handbook of Human-Computer Interaction, Volume 1, Elsevier Science B.V., Amsterdam, pp. 1127-1146. Fischer, G. (1994) "Putting the Owners of Problems in Charge with Domain-Oriented Design Environments." In D. Gilmore, R. Winder, & F. Detienne (Eds.), User-Centered Requirements for Software Engineering Environments, Springer Verlag, Heidelberg, pp. 297-306. Fischer, G. (2000) "Social Creativity, Symmetry of Ignorance and Meta-Design," Knowledge-Based Systems Journal (Special Issue on Creativity & Cognition), Elsevier Science B.V., Oxford, UK, 13(7-8), pp. 527-537. Fischer, G. (2002) "Beyond 'Couch Potatoes': From Consumers to Designers and Active Contributors." In FirstMonday (Peer-Reviewed Journal on the Internet). Available at http://firstmonday.org/issues/issue7_12/fischer/. Fischer et al E-1 Meta-Design E. References Fischer, G. (2005a) "Beyond Binary Choices: Understanding and Exploiting Trade-Offs to Enhance Creativity." In J. S. Gero, & M. L. Maher (Eds.), Computational and Cognitive Models of Creative Design, Key Centre of Design Computing and Cognition, University of Sydney, Australia, pp. 71-92. Fischer, G. (2005b) "From Reflective Practitioners to Reflective Communities." In Proceedings of the HCI International Conference (HCII), Las Vegas, July 2005, (published on CD). Fischer, G., Giaccardi, E., Eden, H., Sugimoto, M., & Ye, Y. (2005) "Beyond Binary Choices: Integrating Individual and Social Creativity," International Journal of Human-Computer Studies (IJHCS) Special Issue on Computer Support for Creativity (E.A. Edmonds & L. Candy, Eds.), 63(4-5), pp. 482-512. Fischer, G., Giaccardi, E., Ye, Y., Sutcliffe, A. G., & Mehandjiev, N. (2004a) "Meta-Design: A Manifesto for EndUser Development," Communications of the ACM, 47(9), pp. 33-37. Fischer, G., Grudin, J., McCall, R., Ostwald, J., Redmiles, D., Reeves, B., & Shipman, F. (2001) "Seeding, Evolutionary Growth and Reseeding: The Incremental Development of Collaborative Design Environments." In G. M. Olson, T. W. Malone, & J. B. Smith (Eds.), Coordination Theory and Collaboration Technology, Lawrence Erlbaum Associates, Mahwah, NJ, pp. 447-472. Fischer, G., & Ostwald, J. (2002) "Seeding, Evolutionary Growth, and Reseeding: Enriching Participatory Design with Informed Participation," Proceedings of the Participatory Design Conference (PDC’02), Malmö University, Sweden, pp. 135-143. Fischer, G., Scharff, E., & Ye, Y. (2004b) "Fostering Social Creativity by Increasing Social Capital." In M. Huysman, & V. Wulf (Eds.), Social Capital and Information Technology, MIT Press, Cambridge, MA, pp. 355-399. Fuller, M. (2003) Grid Unlocked, Available at http://9.waag.org/Info/grid_en.html. Gamma, E., Helm, R., Johnson, R., & Vlissides, J. (1995) Design Patterns - Elements of Reusable Object-Oriented Systems, Addison-Wesley Publishing Company, Inc., Reading, MA. Giaccardi, E. (2004) Principles of Metadesign: Processes and Levels of Co-Creation in the New Design Space, Ph.D. Dissertation, CAiiA-STAR, School of Computing, Plymouth, UK. Giaccardi, E., & Fogli, D. (2005) The Concept of Seed in Meta-Design: Nature, Processes, and Evolution, Available at http://x.i-dat.org/~eg/research/publications.htm. Gross, M. D., & Do., E. (2000) "Drawing on the Back of an Envelope: A Framework for Interacting with Application Programs by Freehand Drawing," Computers and Graphics Journal, 24, pp. 835-849. Henderson, A., & Kyng, M. (1991) "There's No Place Like Home: Continuing Design in Use." In J. Greenbaum, & M. Kyng (Eds.), Design at Work: Cooperative Design of Computer Systems, Lawrence Erlbaum Associates, Inc., Hillsdale, NJ, pp. 219-240. Hippel, E. v. (2005) Democratizing Innovation, MIT Press, Cambridge, MA. Hornecker, E., Eden, H., & Scharff, E. (2002) "'In MY situation I would dislike THAAAT!'—Role Play as Assessment Method for Tools Supporting Participatory Planning." In Proceedings of PDC 2002, CPSR, Malmö, Sweden, pp. 243-247. Illich, I. (1973) Tools for Conviviality, Harper and Row, New York. Ingalls, D., Kaehler, T., Maloney, J., Wallace, S., & Kay, A. (1997) "Back to the Future: The Story of Squeak, a Practical Smalltalk Written in Itself," Conference on Object Oriented Programming Systems, Languages, and Applications (OOPSLA), Atlanta, GA, pp. 318-326. Kapor, M. (1996) "A Software Design Manifesto." In T. Winograd (Ed.), Bringing Design to Software, ACM Press and Addison-Wesley, New York, pp. 1-9. Kay, A. C. (1984) "Computer Software," Scientific American, 251(3), pp. 52-59. Leonard, D., & Swap, W. (1999) When Sparks Fly — Harnessing the Power of Group Creativity, Harvard Business School Press, Cambridge, MA. Lieberman, H. (2001) Your Wish Is My Command: Programming by Example, Morgan Kaufmann, San Francisco. Fischer et al E-2 Meta-Design E. References Mumford, E. (1987) "Sociotechnical Systems Design: Evolving Theory and Practice." In G. Bjerknes, P. Ehn, & M. Kyng (Eds.), Computers and Democracy, Avebury, Aldershot, UK, pp. 59-76. Nardi, B. A. (1993) A Small Matter of Programming, The MIT Press, Cambridge, MA. Nardi, B. A. (1997) "The Use of Ethnographic Methods in Design and Evaluation." In M. G. Helander, T. K. Landauer, & P. V. Prabhu (Eds.), Handbook of Human-Computer Interaction, Volume 1, Elsevier Science B.V., Amsterdam, pp. 361-366. National-Research-Council (2003) "Beyond Productivity: Information Technology, Innovation, and Creativity," National Academy Press, Washington, DC. Norman, D. A. (1993) Things That Make Us Smart, Addison-Wesley Publishing Company, Reading, MA. Norman, D. A., & Draper, S. W. (Eds.) (1986) User-Centered System Design, New Perspectives on HumanComputer Interaction, Lawrence Erlbaum Associates, Inc., Hillsdale, NJ. Pangaro, P. (2000) Participative Systems: An Immodest Proposal to Measure the Relative Values of Software Demos. Available at http://www.pangaro.com/. Raymond, E. S., & Young, B. (2001) The Cathedral and the Bazaar: Musings on Linux and Open Source by an Accidental Revolutionary, O'Reilly & Associates, Sebastopol, CA. Resnick, M. (1994) Turtles, Termites, and Traffic Jams, The MIT Press, Cambridge, MA. Rittel, H. (1984) "Second-Generation Design Methods." In N. Cross (Ed.), Developments in Design Methodology, John Wiley & Sons, New York, pp. 317-327. Rittel, H., & Webber, M. M. (1984) "Planning Problems Are Wicked Problems." In N. Cross (Ed.), Developments in Design Methodology, John Wiley & Sons, New York, pp. 135-144. Scacchi, W. (2002) "Understanding the Requirements for Developing Open Source Software Systems," IEEE Proceedings — Software, 149(1), pp. 24-39. Scaffidi, C., Shaw, M., & Myers, B. (2005) "Estimating the Numbers of End Users and End User Programmers." In Proceedings of 2005 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC'05), Dallas,Texas, September. Scharff, E. (2002) Open Source Software, a Conceptual Framework for Collaborative Artifact and Knowledge Construction, Ph.D. Dissertation, University of Colorado at Boulder. Schön, D. A. (1983) The Reflective Practitioner: How Professionals Think in Action, Basic Books, New York. Schön, D. A. (1987) Educating the Reflective Practitioner, Jossey-Bass, San Francisco, CA. Schön, D. A. (1992) "Designing as Reflective Conversation with the Materials of a Design Situation," KnowledgeBased Systems Journal, Special Issue on AI in Design, 5(1), pp. 3-14. Schuler, D., & Namioka, A. (Eds.) (1993) Participatory Design: Principles and Practices, Lawrence Erlbaum Associates, Hillsdale, NJ. Shaw, M. (1989) "Maybe Your Next Programming Language Shouldn't Be a Programming Language." In C. Science, & T. Board (Eds.), Scaling Up: A Research Agenda for Software Engineering, National Academy Press, Washington, DC, pp. 75-82. Simon, H. A. (1996) The Sciences of the Artificial, third ed., The MIT Press, Cambridge, MA. Soloway, E., Guzdial, M., & Hay, K. (1994) "Learner-Centered Design: The Next Challenge for HCI," Interactions, 1(2), pp. 36-48. Suchman, L. A. (1987) Plans and Situated Actions, Cambridge University Press, Cambridge, UK. Terdiman, D. (2005) Growing Pains for Wikipedia, December 5. Available at www.nytimes.com. URA (2005) Undergraduate Research Apprenticeship Program. Available at http://l3d.cs.colorado.edu/urap. Fischer et al E-3 Meta-Design E. References Warr, A. (2005) "Assessing Support for Creativity: a User Evaluation of the Envisionment and Discovery Collaboratory (EDC)," (to be published). Winograd, T. (1995) "From Programming Environments to Environments for Designing," Communications of the ACM, 38(6), pp. 65-74. Winograd, T. (Ed.) (1996) Bringing Design to Software, ACM Press and Addison-Wesley, New York. Winograd, T., & Flores, F. (1986) Understanding Computers and Cognition: A New Foundation for Design, Ablex Publishing Corporation, Norwood, NJ. Wright, M., Marlino, M., & Sumner, T. (2002) Meta-Design of a Community Digital Library, D-Lib Magazine, Volume 8, Number 5. Available at http://www.dlib.org/dlib/may02/wright/05wright.html. Ye, Y., & Fischer, G. (2005) "Reuse-Conducive Development Environments," International Journal Automated Software Engineering, Kluwer Academic Publishers, Dordrecht, Netherlands, 12(2), pp. 199-235. Ye, Y., Nakakoji, K., Yamamoto, Y., & Kishida, K. (2004) "The Co-Evolution of System and Community in Open Source Software Development." In S. Koch (Ed.), Free/Open Source Software Development, Idea Group Publishing, Hershey, PA, pp. 59-82. Fischer et al E-4 Meta-Design