Page 115 -
P. 115

100     GIORGINI,  KOLP,  AND  MYLOPOULOS
                    and Bhate, 1999) model the strategic collaborations of independent organizational stakeholders
                    who have agreed to pursue a set of business goals.
                      We define an organizational style as a metaclass of organizational structures offering a set of
                    design parameters to coordinate the assignment of organizational objectives and processes, thereby
                    affecting how the organization itself functions (Kolp, Giorgini, and Mylopoulos, 2003). Design
                    parameters include, among others, goal and task assignments, standardization, supervision and
                    control dependencies, and strategy definitions.
                      For instance, structure-in-5 (Mintzberg, 1992) specifies that an organization is an aggregate
                    of five substructures. At the base level sits the operational core, which carries out the basic tasks
                    and procedures directly linked to the production of products and services (acquisition of inputs,
                    transformation of inputs into outputs, distribution of outputs). At the top lies the strategic apex,
                    which makes executive decisions ensuring that the organization fulfills its mission in an effec-
                    tive way and defines the overall strategy of the organization in its environment. The middle line
                    establishes a hierarchy of authority between the strategic apex and the operational core. It consists
                    of managers responsible for supervising and coordinating the activities of the operational core.
                    The technostructure and the support are separated from the main line of authority and influence
                    the operating core only indirectly. The technostructure serves the organization by making the
                    work of others more effective, typically by standardizing work processes, outputs, and skills.
                    It is also in charge of applying analytical procedures to adapt the organization to its operational
                    environment. The support provides specialized services, at various levels of the hierarchy, outside
                    the basic operating workflow (e.g., legal counsel, research and development, payroll, cafeteria).
                    (For further details about architectural styles in Tropos, see Do, Faulkner, and Kolp, 2003; Kolp,
                    Giorgini, and Mylopoulos, 2003.)
                      Styles can be compared and evaluated with quality attributes (Shaw and Garlan, 1996), also
                    called nonfunctional requirements (Chung et al., 2000) such as predictability, security, adaptability,
                    coordinability, availability, fallibility tolerance, or modularity.
                      To cope with nonfunctional requirements and select the style for the organizational setting, we
                    go through a means–ends analysis using the nonfunctional requirement (NFR) framework (Chung
                    et al., 2000). We refine the identified requirements to subrequirements that are more precise and
                    evaluate alternative organizational styles against them.
                      The analysis for selecting an organizational setting that meets the requirements of the system
                    to be built is based on propagation algorithms. Basically, the idea is to assign a set of initial labels
                    for some requirements of the graph, about their satisfiability and deniability, and to see how this
                    assignment leads to the labels propagation for other requirements. In particular, we adopt both a
                    qualitative and a numerical axiomatization (Giorgini et al., 2003) for goal (requirements) model-
                    ing primitives and label propagation algorithms that are shown to be sound and complete with
                    respect to their respective axiomatization.

                    Detailed Design

                    The detailed design phase is intended to introduce additional detail for each architectural com-
                    ponent of a system. It consists of defining how the goals assigned to each actor are fulfilled by
                    agents with respect to social patterns.
                      For this step, designers can be guided by a catalogue of multi-agent patterns that offer a set of
                    standard solutions. Considerable work has been done in software engineering for defining software
                    patterns (see, e.g., Gamma et al., 1995). Unfortunately, little emphasis has been placed on social
                    and intentional aspects. Moreover, proposals for agent patterns that do address these aspects (see,
   110   111   112   113   114   115   116   117   118   119   120