
Department of Computer Science University College London University of London Software Agent Architecture for Consistency Checking of Distributed Documents Danila Stanislavovich Smolko Submitted in partial fulfilment of the requirements for the degree of Doctor of Philosophy at the University of London November 2001 ProQuest Number: U642671 All rights reserved INFORMATION TO ALL USERS The quality of this reproduction is dependent upon the quality of the copy submitted. In the unlikely event that the author did not send a complete manuscript and there are missing pages, these will be noted. Also, if material had to be removed, a note will indicate the deletion. uest. ProQuest U642671 Published by ProQuest LLC(2015). Copyright of the Dissertation is held by the Author. All rights reserved. This work is protected against unauthorized copying under Title 17, United States Code. Microform Edition © ProQuest LLC. ProQuest LLC 789 East Eisenhower Parkway P.O. Box 1346 Ann Arbor, Ml 48106-1346 To Lucie Abstract__________________________________ The size and complexity of current software systems often necessitates distributed and cooperative development by numerous participants. This thesis investigates the problem of management of consistency relations between documents in the software engineering domain, which are cooperatively developed in such distributed setting. The thesis builds on related work in expression of consistency relations by means of consistency rules, and expands on the framework for centralised consistency link generation to transparently provide the developers with inconsistency identification services at distributed locations. This thesis elaborates a consistency framework, which enables consistency checks to be carried out at locations of the documents, rather than at a centralised server or repository. We focus on advantages that use of software agency brings to implementation of this framework. These advantages are realised in the developed software agent architecture, which capitalises on agent mobility for carrying out checks in the distributed environment. The thesis describes a method for carrying out consistency checks incrementally for the underlying consistency link generation framework. Incremental checks relate individual document updates to the current state of the checked document set. Incremental checking facilitates event-orientation of the framework for distributed consistency checks, where individual update events trigger consistency checks of related consistency rules, resulting in generation of consistency links, relevant to the original changes. Inconsistent links indicate problem areas to the developers, where further work may be needed in correction of remaining inconsistencies. This thesis makes a novel contribution to consistency checking in the software engineering domain by providing the software agent architecture, which enables distributed collaborative development. Initial evaluation of the software agent architecture for distributed consistency checking is carried out on a simulation model. The software agent architecture is implemented in a prototype, developed to demonstrate and evaluate the architecture. A case study is used throughout the thesis, which illustrates feasibility and applicability of the proposed approach. The case study involves checking consistency between UML diagrams of a scheduling application throughout concurrent distributed development of this application by a team of software engineers. Acknowledgements I would like to acknowledge with sincere appreciation a number of people, whom I owe for helping shape this thesis. I would like to express my deep gratitude to Professor Anthony Finkelstein, my supervisor, for reassuring my confidence in achieving of the academic objectives and providing independence in research. This thesis would not have been possible without his attention and unfailing support. I am also grateful to my secondary supervisor. Dr. Wolfgang Emmerich, who has provided constructive feedback for three years of my studies and has given a detailed review to numerous reports and the thesis draft. I would also like to thank all members of the Software Engineering group and my fellow students, who have provided me with a very supportive environment throughout my stay at UCL. I appreciate the warm welcome into the group from Dr. Andrea Zisman and Dr. Ernst Ellmer. I am particularly grateful to Dr. Cecilia Mascolo for generous encouragement and support through the ups and downs of the PhD, and to Nima Kaveh - for his humour, comradeship and unconditional optimism. Credits are due to Carina Alves, Christian Nentwich, Daniel Dui, Joe Lewis-Bowen, Licia Capra, Luca Zanolin, Rami Bahsoon, Stefanos Zachariadis, my office colleagues, for creation of a friendly and productive atmosphere. Thanks, Christian, for a timely release of the TreeDiff tool as an open source software, and for numerous discussions of the XLinkit framework. Joe deserves special thanks for meticulously reviewing the draft of this thesis at a very short notice. I would also like to thank my friend Joao Oliveira for his considerate regard and kind attention in the times of pressure. I owe a special gratitude to my loving partner Lucie, who believes in my abilities and has encouraged me on the way of their realisation. And, last and not least, sincere thanks go out to my parents Liliya and Stanislav for the wisdom of their advice and for the warmth of their hearts. Thank you so much. Mum and Dad! This work would not have been possible without the financial support of Unipower Ltd. throughout the duration of my Ph.D. studies. I am also thankful to the University College London for awarding me the Graduate Research Scholarship and the International Open' Scholarship, which have contributed towards the tuition fees. Table of Contents LIST OF FIGURES AND TABLES ........................................................................................................................10 CHAPTER 1 INTRODUCTION ..................................................................................................................... 14 1.1 M otivating S c e n a r io ..............................................................................................................................15 1.2 Contribution ...............................................................................................................................................15 1.3 Thesis st r u c t u r e ....................................................................................................................................... 16 CHAPTER 2 RELATED WORK IN CONSISTENCY CHECKING ............................................18 2.1 The V iew po ints B a c k g r o u n d .............................................................................................................18 2.2 V iew point -Oriented S oftw are En g in e e r in g .............................................................................18 2.2.1 Viewpoints ..........................................................................................................................................19 2.2.2 Consistency of ViewPoints ........................................................................................................... 19 2.2.3 Consistency Management Activities ..........................................................................................21 2.2.4 Policies .................................................................................................................................................22 2.3 So ftw are Dev elo pm ent Environments ........................................................................................23 2.4 M eta -CASE T o o l s ..................................................................................................................................... 24 2.5 A ttribute Gr a m m a r s ..............................................................................................................................25 2.6 S pecification La n g u a g e s .......................................................................................................................26 2.6.1 CENTAUR ..........................................................................................................................................26 2.6.2 PROGRESS ....................................................................................................................................... 26 2.6.3 GOODSTEP........................................................................................................................................26 2.7 XL in k it ............................................................................................................................................................ 26 2.7.1 Link Generation ................................................................................................................................ 28 2.7.2 XLinkit and Distribution Support ............................................................................................... 28 2.7.3 Exhaustive Consistency Checking .............................................................................................. 28 2.8 Su m m a r y .........................................................................................................................................................29 CHAPTER 3 REQUIREMENTS FOR DISTRIBUTED CONSISTENCY CHECKING.. 31 3.1 Stakeholders .............................................................................................................................................
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages266 Page
-
File Size-