1 Department of Management Engineering, Technical University of Denmark
This dissertation presents the results of a three-year long case study of an information systems development project where a scheduling and control system was developed for a manufacturing company. The project goal was to test the feasibility of a new technology called advanced mathematical modeling (AMM) in scheduling and control systems. Advanced mathematical techniques are relatively new in scheduling and control systems, at least in real production situations, and therefore the project included the research of methods and tools for the development of these systems. Because of the novelty of the technology, the development team was formed by individuals from both universities and the private sector. The organization of the development team was geographically distributed and loosely coupled. The development of information systems has always been a difficult activity and the records show a remarkable low percentage of successes. The review of the literature on information systems development (ISD) methodologies shows that most methodologies are proposed for general validity and the boundary conditions of their use are either not clear or not specified. In this dissertation I have investigated the boundary conditions of the most commonly used methodologies to understand whether they could be used for the development of systems based on (1) AMM and where the development organization is both (2) loosely coupled and (3) distributed. The boundary conditions identified for existing methodologies show that none of them is apt to deal with these three issues concurrently. The main goal, and hence the result, of this dissertation has therefore become the design of an information systems development methodology that concurrently addresses the issues of developing systems based on AMM and development organizations that are both distributed and loosely coupled. Given the current trends towards telecommuting and international mergers, the development project presented a setting for research that was addressing both a theoretical hole and also pressing practical needs. In order to achieve this goal I had to observe and analyze the workings of a development project. I have been working as part of the team assembled for the development of the information system based on AMM for a period of three years. My active participation in the development project granted me access to all the actors involved. In my role I could witness the problems among the different parties and their evolution and resolution over time. During the three years I gathered empirical material in form of observation, interviews, archival data, and emails. The empirical material collected was analyzed with qualitative techniques. The results are grounded in an understanding of reality as a socially constructed phenomenon where the multiple perspectives of the actors involved (weltanschauung in the dissertation) are used as filters to understand the process of creation of the information system. Soft systems theory was used as the theoretical lens to structure the empirical observations. Soft systems theory provides a structure to see the world in terms of interconnected subsystems that contain and are contained by other systems without recurring to reductionism and determinism. It forces to look at the entire system without neglecting the parts with a relativist approach. Arriving at the design of an ISD methodology required the combination of previous theoretical results with the observations from the case study. The case study showed some of the key elements to be integrated in the methodology. Firstly, plans and models are subject of a high degree of interpretive activity but remain fundamental tools in ISD projects. Their use is institutionalized and therefore they cannot be neglected. Secondly, because of the geographical distribution these interpretive activities are concealed among team members. This means that at any given moment any team member, first and foremost the project manager, cannot be aware of the current interpretations of others. Even if there is agreement on what to do and how to do it this might be only temporary or illusory. Consequently, the use of planned approaches and authoritarian management practices should be avoided. Only through negotiation and democratic decision making will it be possible for the team members to have their current weltanschauung represented in decision making. Thirdly, geographical distribution and loose coupling foster individualist rather than group behavior. The more the social tissue is disconnected the less there will be the feeling of pursuing a common goal and the more the team members will be interested in pursuing personal goals. This observation pointed out that developers too have to be considered as served parties in ISD projects with the same prerogatives traditionally attributed to the customers of the system. The use of democratic decision making that brings together the team members on regular basis contributes to both the reconstruction of the social tissue and to the satisfaction of the development team as customer of the project. Fourth, the novelty of the technology created problems for the users to understand what the system could do for them and this reflected on the developers having to guess the requirements. In a nutshell this problem was reflected in the difficulty in exchanging knowledge between users and developers. This problem was reinforced by the physical distance of the different actors. To address this last point it appeared appropriate to see the ISD process as a process of knowledge exchange. Theoretical results in the area of inquiring systems, with particular focus on the recent discussion on boundary objects, have been used to complement the results of the case study. The resulting methodology builds on these four results. The methodology is based on an emergent and iterative process focused on the discussion of software prototypes built as boundary objects: visual, usable, bi-directional, and up-to-date. Iterations are kept short so that the prototypes remain simple enough to allow knowledge exchange emerging from competent and open discussion among developers and users. Meetings represent both the conclusion and the beginning of each iteration. These meetings become the occasion for physically bringing together the development group hence increasing the visibility of interpretations. Finally the goal for each iteration is decided through a process of negotiation between developers and users that is shaped by the evolving social interaction of all the parties and it is neither unilateral nor imposed top-down. This practice addresses the issue of developers as served system since developers participate in the decision process, rather than having to execute it. The project managers on both sides are required to guide the discussion, rather than to manage it. An iteration involves six stages with continuously evolving content: 1) Business Problem Definition 2) Creation of Conceptual Object Model and Usage Model 3) Planning of the Iteration Content 4) Design and Implementation 5) Evaluation 6) Integration The process involves cycling through these phases many times in order for the knowledge exchange to take place, for the multiple and changing meanings to become visible, and to serve multiple interests. Planning and modeling are included to conform to institutional practices. Plans emerge from a negotiation process and account for personal and organizational needs and therefore provide a bridge between the needs of the loosely coupled team and the local reality of each team member. The process proposed in the methodology presents different reinforcing features that contribute to improve the initial project goals. The more the users try the prototypes and the more they learn about the technology, the more they can imagine new ways to use the system and the more they will be interested in the project. The more the developers talk with the users, the more they learn about the organizational peculiarities, the more they can create a system that suits the users’ needs. Furthermore, the more the developers know about standard operating procedure of the users’ company the more likely it is that they can propose to the users new ways of doing their work with the help of the technology. The focused discussion provides the basis for the reexamination of working assumptions and therefore it continuously affects the scope of the project bringing it closer to the interests of both users and developers. Keywords: Information systems development, information systems development methodology, advanced mathematical models, loosely coupled systems, distributed systems, knowledge exchange, boundary objects, systems theory, multiple perspectives, weltanschauung.