Page 112 -
P. 112

ChaptEr 7




                       AGENT-ORIENTED INFORMATION SYSTEMS
                                        ANALYSIS AND DESIGN




                                                  Why and How



                         paolo giorgini, manuEl kolp, and John mylopoulos





                    Abstract: We argue that emerging application areas such as e-business, peer-to-peer and ubiqui-
                    tous computing require new software development paradigms that support open, distributed, and
                    evolving architectures, such as agent-oriented software. We then sketch the Tropos methodology
                    for agent-oriented software development and compare it with other proposals.

                    Keywords: Agent-Oriented Software Engineering, Agents and Multi-Agent Systems

                    INTRODUCTION

                    Information systems (hereafter IS) analysis and design techniques have been taught and practiced
                    since the 1970s to support the development of IS around the globe. These techniques were founded
                    on seminal proposals for expressive languages that model the content of databases and the require-
                    ments for software systems. For databases, Peter Chen’s entity-relationship model (Chen, 1976)
                    stood out among many proposals for semantic data models, and became a de facto standard for
                    designing databases in research and practice. For software, Douglas Ross’s structured analysis
                    and design technique (SADT) (Ross, 1977) founded the research area known as requirements en-
                    gineering and influenced software development practice through a number of follow-up proposals
                    for modeling languages, including data flow diagrams (DFDs). The growing influence of object-
                    oriented software development techniques in the 1980s led to a wide range of new proposals for
                    modeling languages founded on the primitive notions of object, class, inheritance, and method
                    (e.g., Rumbaugh et al. 1991). These techniques were consolidated by Rational Inc. and the Three
                    Amigos (Booch, Rumbaugh, and Jacobson, 1999) in the mid-1990s into the Unified Modeling
                    Language (UML). UML is the first-ever modeling language standard for software development.
                    Its arrival has meant ever-wider recognition and use for analysis and design techniques in both
                    academia and industry.
                      But not only IS analysis and design techniques have evolved over the past thirty years. The
                    nature of the information systems we build has changed profoundly as well. Information sys-
                    tems in the 1970s were monolithic software towers (running on monolithic hardware towers)
                    operating in isolation to serve a whole organization. For the past fifteen years, IS have become
                    distributed, based on client-server and web-driven architectures. Moreover, these architectures

                                                         97
   107   108   109   110   111   112   113   114   115   116   117