Software Architecture Decision-Making in Organizational Settings
Total Page:16
File Type:pdf, Size:1020Kb
Software architecture decision-making in organizational settings by Daniel Gross A thesis submitted in conformity with the requirements for the degree of Doctor of Philosophy Faculty of Information University of Toronto © Copyright by Daniel Gross, 2011 Software architecture decision-making in organizational settings Daniel Gross Doctor of Philosophy Faculty of Information University of Toronto 2011 Abstract The purpose of the architecture of software systems in business organizations is to support those organizations in achieving business goals. In software development organizations the design of an architecture is a collective effort that involves various organizational stakeholders and designers, who identify, interpret, and reason about intents, and communicate, delegate, commit to, and implement intents and decisions. Current architectural design descriptions are by-and-large based on block-and- arrow notations representing "coarse-grained" solution elements of the system. They lack explicit representation for modeling and analyzing the decision-making of stakeholders and architectural designers who hold different organizational responsibilities, and pursue conflicting and/or synergistic business or system goals, while collectively pursuing organizational objectives. This thesis considers the proposition that a distributed intentionality perspective is applicable in the design of software system architectures. During architectural design, relationships between intentional actors define the context in which intentional actors pursue business and system goals and in which they negotiate architectural decision-making. The objective of this research is to investigate what an Intentional Architecture Language (IAL) could be like that utilizes intentional and organizational modeling and analysis concepts to support architectural decision-making efforts in organizational settings. Drawing from prior work on organizational modeling and analysis, this thesis first defines a core IAL, and then explores its use to ii model and analyze architectural decision-making both reported in the literature and empirically observed at a number of commercial projects in industry. Drawing from these explorations, this thesis proposes a number of extensions to the core IAL, discusses lessons learned, and points to the advantages and limitations in using an IAL to model and analyze architectural decision-making in an organizational setting. iii Acknowledgments On a bright morning about a decade ago during a spontaneous visit to Toronto, I called on a whim the computer science department at the University of Toronto, to ask about the courses given at graduate level. I had already taken some half a dozen months off from working, while traveling for the first time in my life in North America. During random visits to different cities, wherever I found accommodation amongst friends or friends of friends, etc., I made it a habit to look up interesting researchers at local universities to learn about their work and enjoy an intellectual enriching discussion – adding “academic tourism” to cultural tourism. I had not heard of the University of Toronto before, and, in fact, I had until my visit not known much about Toronto or Canada. However, here I was in Toronto, and there was a university in town, and I had nothing planned for the day. The graduate department secretary read to me over the phone the syllabus, eventually mentioning a Requirements Engineering course. Hearing about an RE course immediately arouse my interest. Just a few months before while visiting San Francisco I had first learned of this emerging discipline. I happened to get an invitation to participate in the Viewpoint ’96 conference workshop held in SF, which was attended by, among others, Anthony Finkelstein (the organizer), Axel van Lamsweerde, Naftali Minsky, Jeff Kramer, and Sol Greenspan, who, unbeknown to me, were all distinguished researchers in the emerging RE field. I had left San Francisco with much interest in this subject, and with an invitation in hand to apply to the doctoral program in RE at the City University in London, UK. Therefore, hearing about an RE course, a course quite uncommon in those early days of RE, held the promise of a highly interesting discussion, and I asked to put my call through to the professor who offered the course. Professor Mylopoulos immediately took the call and without ado agreed to meet me for an informal chat at his office. I had not heard of Prof. Mylopoulos before and was not aware of his eminent stature in the RE research community. We met and I had a fascinating discussion during which Prof. Mylopoulos also warmly recommended the RE program at City University. At the end of our meeting, Prof. Mylopoulos suggested talking to a former student of his, Eric Yu, who was now Professor at the Faculty of Information Studies. Following the suggestion, I met with Prof. Yu the next day. We had in intriguing discussion of overlapping areas of interest as well as of Prof. Yu’s work on intentional agents. A day or two later I left for London to apply to the doctoral program at the City University. However, my discussions with Prof. Mylopoulos and Prof. Yu had left a very strong impression on me, and about a iv week later, I emailed Prof. Yu asking how he felt if I would apply to the doctoral program at University of Toronto, with him as my thesis advisor. Prof. Yu agreed, and with the application deadline a week later, I swiftly couriered my application package to Toronto. Several months later, I was admitted to the doctoral program at the faculty of information studies. I would thus first like to thank Prof. Mylopoulos for taking that telephone call on that bright sunny morning, and despite his busy schedule, for meeting with an anonymous visitor to the city, who happened to have an emerging interest in RE. I also want to thank Prof. Mylopoulos for his ongoing interest and support of this work and for serving on my final doctoral examination committee. I would like to thank Prof. Anthony Finkelstein, who, together with the other excellent presenters at Viewpoints ‘96, opened to me new viewpoints and perspectives (no pun intended) on requirements modeling and analysis, which set me on the path towards earning a doctorate in this exciting field. I am much indebted to the academic and technical staff at the Faculty of Information (formerly the Faculty of Information Studies) for their ongoing support, in particular, to the late Prof. Ethel Auster, former chair of doctoral studies committee and to the recently retired Assistant Dean, Judy Dunn. Their doors were always open to me to discuss professional and personal problems that naturally emerge during such a complex and long termed endeavor; their attitude was always that obstacles are there to be overcome, and problems to be solved. I want to thank Prof. Chun Wei Choo, who served on my doctoral and doctoral examination committee. His suggestions and support, in particular during the early stages of my research, were invaluable. I also want to thank Prof. Steve Easterbrook and Prof. Kelly Lyons for serving on my doctoral examination committee. I would like to thank the many colleagues, with whom I had the pleasure to interact with during this journey. To name just a few: Niloo Hodjati, Lin Liu, Luiz Marcio Cysneiro, Markus Strohmaier, Jennifer Horkoff, Daniel Amyot, Gunter Mussbacher, Tom Gray, Serge Mankovskii, Xiping Song, Sharon Volk and Sharon Al-Al. There are no words to express my respect and gratitude to Prof. Eric Yu, who during all these years actively and unwaveringly supported my doctoral research work, both from a professional and personal point of view. Without his immense patience and commitment, and his continuous support and guidance, this work would never have come to fruition. I would also like to thank my parents Shoshana and Shimon Gross who after surviving the war in Europe, started from scratch, raised five children in the most difficult personal and financial circumstances. With their immense hard work, they enthusiastically supported each of their five v children in pursuing their individual aspirations, in law, in teaching, in systemic family therapy, in business, and in software engineering. Finally, to my wife Meira Josephy; without her support, in the good and the difficult times, in particular when life threw us those challenging curve balls, this thesis research would have been abandoned a long time ago. To cite the words of the Talmudic sage Rabbi Akiva, who, because of his wife’s magnanimous support and sacrifices, was able to spend a significant amount of time to become a scholar and teacher (Babylonian Talmud, 62B): “all that is mine and yours [his students], is hers”. vi Table of Contents ABSTRACT ....................................................................................................................................................... II ACKNOWLEDGMENTS .................................................................................................................................... IV TABLE OF CONTENTS ..................................................................................................................................... VII LIST OF TABLES ............................................................................................................................................... XI LIST OF FIGURES ...........................................................................................................................................