BUILDING APPLICATION FRAMEWORKS: OBJECT-ORIENTED FOUNDATIONS OF FRAMEWORK DESIGN


Aksit, Mehmet, Ph.D. Department of Computer Science, University of Twente, the Netherlands, e-mail: aksit@cs.utwente.nl, URL: http://www.cs.utwente.nl/~aksit, Chapter 7.

Mehmet Aksit is an associate professor at the University of Twente. He is the leader of the Twente Research and Education on Software Engineering (TRESE) project. He was the program cochair of the 1997 European Conference on object-Oriented Programming (ECOOP '97). He has served as a program committee member for various international conferences, and he was the tutorial chair of the ECOOP '92 conference. He has been a user and developer of object-oriented systems since 1983. Together with the members of the TRESE project, he has introduced an aspect-oriented programming technique based on composition filters, atomic delegations, associative inheritance and delegation mechanisms, abstract communication types, fuzzy-logic-based object-oriented methods and design algebra. He has identified and defined a set of new problems related to object-oriented analysis and design.

Alencar, Paulo S.C., Ph.D. Department of Computer Science, University of Waterloo, Ontario, Canada, e-mail: alencar@csg.uwaterlo.ca , Sidebar 2.

Paulo S.C. Alencar is a research associate professor of computer science at the University of Waterloo (Canada). His current research, teaching, and consulting interests include software engineering and formal methods in software engineering. He is a member of the Institute of Electrical and Electronics Engineers (IEEE), the IEEE Computer Society, the Association for Computing (ACM), Canadian Information Processing Society (CIPS), and American Association for Artificial Intelligence (AAAI).

Bansiya, Jagdish, Ph.D. Computer Science Department, Southern Polytechnic State University, Marietta, Georgia, USA, e-mail: jbansiya@cs.uah.edu, URL: http://indus.cs.uah.edu, Chapter 25.

Jagdish Bansiya is an assistant professor in the Computer Science Department at the Southern Polytechnic State University in Marietta, Georgia. He received a B.S. in computer science and engineering from the University of Roorkee (India) in 1990 and an M.S. and a Ph.D. in computer science from the University of Alabama in Huntsville in 1992 and 1998, respectively. His research interests are in all aspects of object-oriented development and software engineering, particularly object-oriented frameworks, design metrics, design patterns, and distributed object computing. He is a member of the Institute of Electrical and Electronics Engineers (IEEE) and the Association for Computing (ACM).

Bäumer, Dirk. OTI Software Technology Center, Zurich, Switzerland, e-mail: dirk_baeumer@oti.com, URL: http://www.oti.com, Chapter 17.

Dirk Bäumer was the chief architect of the GEBOS system at RWG Stuttgart from 1991 to 1997. Then he was a research scientist at TakeFive Software AG in Zurich (Switzerland), the company that developed the SNiFF+ software development environment. He is currently working for OTI in Zurich. He received a master's degree in computer science from the University of Stuttgart (Germany) and a doctoral degree in computer science from the University of Hamburg (Germany).

Bengtsson, PerOlof. Department of Computer Science and Business Administration, University of Karlskrona/Ronneby, Sweden, e-mail: PerOlof.Bengtsson@ipd.hk-r.se, URL: http://www.ide.hk-r.se/~ARCS, Chapter 3.

PerOlof Bengtsson received his M.Sc degree in software engineering from the University of Karlskrona/Ronneby, Sweden, in1997. From 1995 to 1997 he worked as a quality assurance and reuse consultant at the Ericsson subsidiary, Ericsson Software Technology AB, Sweden. He is currently a Ph.D. candidate at the University of Karlskrona/Ronneby. His research interests include software architecture design and evaluation, especially methods for predicting software qualities from software architecture.

Bergmans, Lodewijk, Ph.D. Ericsson Mobile Communications, Lund, Sweden, e-mail: lbergmans@acm.org, URL: http://www.cs.utwente.nl/~bergmans, Chapter 7.

Lodewijk Bergmans studied computer science at the Faculty of Computer Science, University of Twente,. the Netherlands. He received a Ph.D. from the University of Twente. His dissertation, entitled "Composing Concurrent Objects," dealt with object-oriented concurrent systems, addressing the issues of reusable concurrency and synchronization in object-oriented programming languages and analysis and design methods, including graphical notations and implementation aspects. Currently he is working as a software architect for GSM phones with Ericsson Mobile Communications in Lund, Sweden.

Boone, Jean. IBM Corporation, Research Triangle Park, North Carolina, USA, e-mail: jpboone@us.ibm.com, Chapter 8.

Joan Boone is a software engineer in IBM's Software Solutions Division at Research Triangle Park, North Carolina, where she develops products and participates in customer engagements that use object technology. Her recent activities focus on the development of components that integrate products with IBM's application development tools. These include components that facilitate development of distributed applications with IBM's San Francisco business frameworks and components that enable applications for systems management. Prior to joining IBM, she worked on several large software development projects for NASA's space shuttle program and the Federal Aviation Administration's air traffic control system. She received an M.S. in computer science from the University of North Carolina at Chapel Hill and an M.S. in applied science from the College of William and Mary in Williamsburg, Virginia.

Bosch, Jan, Ph.D. Department of Computer Science and Business Administration, University of Karlskrona/Ronneby, Sweden, e-mail: Jan.Bosch@ide.hk-r.se, URL: http://www.ide.hk-r.se/~bosch, Chapter 3, and Chapter 20.

Jan Bosch received an M.Sc degree from the University of Twente, the Netherlands, in 1991 and a Ph.D. from Lund University, Sweden, in 1995. He currently acts as a professor of software engineering at the University of Karlskrona/Ronneby, where he heads the Architecture and Composition of Software (ARCS) research group. Research activities within ARCS include software architecture design methods, techniques for assessing quality requirements such as maintainability at the architectural level, product-line architectures, object-oriented frameworks, in particular framework design and composition and design patterns. He is the coeditor of the ECOOP '97 workshop reader published by Springer-Verlag in the Lecture Notes in Computer Science - LNCS series and the initiator and coordinator of SARIS, a Swedish network on software architecture involving both academia and industry.

Buhr, Ray J.A., Ph.D. Department of Systems and Computer Engineering, Carleton University, Ottawa, Canada, e-mail: buhr@sce.carleton.ca, Chapter 18.

Ray Buhr is a professor in the Department of Systems and Computer Engineering, Carleton University, Ottawa, Canada. He was educated at Queen's University, Kingston, Canada (B.Sc., engineering physics, Gold Medallist, 1959), University of Saskatchewan (M.Eng., electrical engineering, 1960), and Cambridge University, England (Ph.D., control engineering, 1966). He entered the software field through computer control and became fascinated by the contrast between the strength of techniques for representing control systems diagrammatically and the weakness of techniques for representing software systems diagrammatically. He has authored five books and many technical papers in his specialty, and has acted as a consultant and research collaborator to a wide variety of industries internationally.

Butler, Gregory, Ph.D. Department of Computer Science, Concordia University, Montreal, Canada, e-mail: gregb@cs.concordia.ca, URL: http://www.cs.concordia.ca/~faculty/gregb, Chapter 21.

Gregory Butler is an associate professor in computer science at Concordia University, Montreal, Canada. He obtained his Ph.D. from the University of Sydney in 1980 for work on computational group theory. He was on the faculty of the Department of Computer Science at the University of Sydney from 1981 to 1990. He has held visiting positions at the University of Delaware and Universitaet Bayreuth. He is a major contributor to the Cayley system for computational group theory, modern algebra, and discrete mathematics.

Carpenter, Susan G. IBM, Research Triangle Park, North Carolina, USA, e-mail: carpnter@us.ibm.com, Chapter 5.

Susan Carpenter is an information development team leader at IBM's Software Solutions Laboratory in Research Triangle Park, North Carolina. She has written on C++, Java, and Smalltalk topics for almost five years.

Cline, Marshall, Ph.D. MT Systems Company, Dallas, Texas, USA, e-mail: cline@parashift.com, Sidebar 6.

Marshall Cline is president of MT Systems Company, which develops object-oriented systems for large corporations. He received his Ph.D. in electrical and computer engineering from Clarkson University.

Cowan, Donald D., Ph.D. Department of Computer Science, University of Waterloo, Ontario, Canada, e-mail: dcowan@csg.uwaterlo.ca, Sidebar 2.

Donald D. Cowan is professor emeritus of computer science at the University of Waterloo (Canada) and director of the Computer Systems Group. His research interests include software engineering with particular emphasis on component-based approaches. Professor Cowan is the founding chairman of the Computer Science Department at Waterloo. He currently directs the Education Program for Software Professionals, a professional upgrading program for software specialists.

Denomméé, Pierre. Department of Computer Science, Concordia University, Montreal,Canada, e-mail: denomme@cs.concordia.ca, URL: http://www.cs.concordia.ca/~grad/denomme, Chapter 21.

Pierre Denomméé is a Ph.D. student in computer science at Concordia University in Montreal. He holds a master's degree in computer science from Concordia University, completed under the supervision of Gregory Butler; a bachelor of applied science degree in computer science, software development option, from the Université du Québec à Montréal. He also has a B.Sc. in physics from the Universite de Montreal.

D'Souza, Desmond F. ICON Computing Lab, Austin, Taxes, USA, e-mail: dsouza@iconcomp.com, URL: http://www.catalysis.org, http://www.catalysis-europe.org, Chapter 19. Desmond F. D'Souza is senior vice president of component-based development at Platinum Technology's ICON Computing Lab, working on tools and methods for effective software engineering. Since 1985 he has helped model and build systems in finance, systems management, computer-aided design (CAD), and telecommunications, and is a frequent speaker at conferences and companies worldwide.

Eckstein, Jutta. Consultant, Munich, Germany, e-mail: jeckstein@acm.org, URL: http://ourworld.compuserve.com/homepages/jutta_eckstein, Chapter 22.

Jutta Eckstein has been engaged in training and consulting in object technology and software system design since 1990. She is an independent trainer and consultant in the area of object-oriented application development. Before being self-employed, she worked for Integral Development and ParcPlace Systems (today ObjectShare) for many years as a trainer and consultant. Jutta is a member of the Association for Computing (ACM).

Favaro, John M. Intecs Sistemi S.p.A, Pisa, Italy, e-mail: favaro@pisa.intecs.it, Chapter 24.

John M. Favaro was born in Vallejo, California. He is currently a senior consultant at Intecs Sistemi in Pisa, Italy, where he heads the advanced software methodologies group. He is technical lead in an initiative with the Italian telecommunications authority for the development of techniques for domain analysis at the operational and business process levels. He is European cochair of the IEEE Subcommittee on Software Reuse. He received an M.S. in electrical engineering and computer science from the University of California at Berkeley, and a B.S. in computer science and mathematics from Yale University.

Favaro, Kenneth R Marakon Associates, London, United Kingdom, Chapter 24.

Kenneth R.. Favaro was born in Vallejo, California. He is a partner and head of European operations for Marakon Associates, a management consulting firm specializing in value-based management. He received an M.B.A. from the Stanford University Graduate School of Business, where he was an Arjay Miller scholar, and a B.S. in civil engineering from Stanford University, where he was Phi Beta Kappa.

Fayad, Mohamed E., Ph.D. Department of Computer Science andEngineering, University of Nebraska, Lincoln, Nebraska., USA, e-mail: fayadm@acm.org, URL: http://www.cse.unl.edu/~fayad, lead editor of this book, front matter and back matter, book parts, Chapter 1, Chapter 3, Chapter 26, Sidebar 7, and the book Web site materials (Frameworks Web home).

Mohamed Fayad is an associate professor of computer science and Engineering at the University of Nebraska, Lincoln. He has more than 15 years of industrial experience. He has been actively involved in more than 60 object-oriented projects for several companies He has been the guest editor of five theme issues: CACM's OO Experiences (October 1995), IEEE Computer'' Managing OO Software Development Projects (September 1996), CACM's Software Patterns (October 1996), CACM's OO Application Frameworks (October 1997), and ACM Computing Surveys—Application Frameworks (June 1999). He has published articles in IEEE Software, IEEE Computer, Journal of Object-Oriented Programming (JOOP), ACM Computing Surveys, and CACM. He is a distinguished speaker and has given lectures, tutorials, and seminars at national and international conferences, universities, and companies. He is a senior member of the Institute of Electrical and Electronics Engineers (IEEE), a senior member of the IEEE Computer Society, and a member of the Association for Computing (ACM), and he serves on several conference program committees, such as TOOLS USA '96 and Hong Kong QSD '96. In addition, he is an IEEE Distinguished Speaker; an associate editor, an editorial advisor, and a columnist for Communications of the ACM; editor-in-chief of IEEE Computer Society Press—Computer Science and Engineering Practice Press (1995–1997); and an international advisor for several universities. He received an M.S. and a Ph.D. in computer science from the University of Minnesota at Minneapolis. His research topic was entitled, "Object-Oriented Software Engineering: Problems and Perspectives." He is the lead author of Transition to OO Software Development (John Wiley & Sons, 1998) and lead editor of this three-volume work on object-oriented application frameworks (John Wiley & Sons, 1999).

Fontoura, Marcus F. Departamento de Informatica, PUC-Rio, Brazil, Sidebar 2.

Marcus F. Fontoura is a Ph.D. candidate in the Departamento de Informatica at PUC-Rio (Brazil). His current research interests include software engineering in general and, in particular, Web-based education systems and object-oriented analysis and design.

Froehlich, Garry. Department of Computing Science, University of Alberta, Canada, e-mail: garry@cs.ualberta.ca, Chapter 9.

Garry Froehlich is a Ph.D. candidate at the Department of Computing Science at the University of Alberta, where his research interests involve the study and use of object-oriented frameworks. Other research interests include distributed systems and electronic commerce. He received an M.Sc. at the University of Saskatchewan where he worked on automated support for process modeling and enactment.

Garrido, Alejandra. Department of Computer Science, University of Illinois at Urbana-Champaign, USA, e-mail: garrido@students.uiuc.edu, Chapter 11.

Alejandra Garrido is a licentiate in computer science from the Universidad Nacional de La Plata (University of La Plata), Argentina. She is at present a graduate student at the University of Illinois at Urbana-Champaign. Alejandra Garrido has been a member of the Laboratorio de Investigacion y Formacion en Infomatica Avanzada (Laboratory for Research and Training in Advanced Computer Science, or LIFIA ), a research group at the Department of Computer Science at University of La Plata, Argentina, since 1993.

Girou, Mike, Ph.D. MT Systems Company, Dallas, Texas, USA, e-mail: girou@parashift.com, Sidebar 6.

Mike Girou is chairman of MT Systems Company. He received a Ph.D. in mathematics from the University of Missouri at Columbia.

Goedicke, Michael, Ph.D. Department of Mathematics and Computer Science, University of Essen, Germany, e-mail: goedicke@informatik.uni-essen.de, Sidebar 4.

Michael Goedicke is professor of computer science in the Department of Mathematics and Computer Science at the University of Essen, Germany. He studied computer science at the University of Dortmund and received his diploma degree (master's degree) in computer science there in 1980. He received his Ph.D. in 1985 and his habilitation in 1993 from the Department of Computer Science of the University of Dortmund as well. His special field of interest is specification of software systems and software engineering. He is principal investigator in various national and international research projects and is currently conducting research in formal methods and languages for designing parallel and distributed software systems based on the idea of software components and frameworks.

Gryczan, Guido. University of Hamburg, Germany, e-mail: gryczan@informatik.uni-hamburg.de, URL: http://swt-www.informatik.uni-hamburg.de, Chapter 17.

Guido Gryczan has been a senior researcher in the Software Engineering Group of the Informatics Department of Hamburg University since 1991. He received a master's degree in informatics from the Technical University of Berlin and a doctoral degree from the University of Hamburg.

Hamu, David S. TRW, Inc., Phoenix, AZ, USA, e-mail: dhamu@acm.org, Sidebar 1.

David Hamu is a manager of systems integration at TRW Integrated Supply Chain Solutions. He is currently working with clients who are implementing enterprise frameworks in high-technology manufacturing applications. He is a graduate of Arizona State University's College of Business with a master of science degree in information systems.

Hoover, H. James, Ph.D. Department of Computing Science, University of Alberta, Canada, e-mail: hoover@cs.ualberta.ca, Chapter 9.

Jim Hoover is an associate professor of computing science at the University of Alberta. He has an M.Sc.from the University of Toronto, worked for Bell-Northern Research, ran a consulting company, and obtained his Ph.D. in complexity theory from the University of Toronto in 1987. His current research has a software engineering focus. At the formal level, it involves the application of proof-theoretic techniques to the specification and construction of correct programs. At the engineering level, he is also interested in building application frameworks for constructing high-quality engineering tools.

Jacobsen, Eyðun Eli. The Maersk Mc-Kinney Moller Institute for Production Technology, University of Southern Denmark , Denmark, e-mail: http://www.mip.ou.dk/~jacobsen, Chapter 2.

Eyðun Eli Jacobsen is working toward a Ph.D. at the Maersk Mc-Kinney Moller Institute for Production Technology at the University of Southern Denmark, Denmark. His interests include software design, object-oriented programming, frameworks, and design patterns. He received his master's degree from the Department of Computer Science at Aalborg University, Denmark, in 1996.

Johnson, Ralph E., Ph.D. Department of Computer Science, University of Illinois at Urbana-Champaign, USA, e-mail: johnson@cs.uiuc.edu, URL: http://www.cs.uiuc.edu/contacts/faculty/johnson.html , coeditor of this book, Chapter 1.

Ralph E. Johnson is on the faculty of the Department of Computer Science at the University of Illinois. He is the leader of the UIUC patterns/Smalltalk group and the coordinator of the senior projects program for the department. His professional interests cover nearly all things object-oriented, especially frameworks, patterns, business objects, Smalltalk, the Common Object Model (COM), and refactoring. He has been to every Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA). He received his Ph.D. and M.S. degrees from Cornell and his B.A. from Knox College. He is a member of the Association for Computing (ACM) and the IEEE Computer Society. He is a coauthor of Design Patterns: Elements of Object-Oriented Software (Addison-Wesley, 1996). He is also coeditor of this three volume work on object-oriented application frameworks (John Wiley & Sons, 1999).

Jolin, Art. TecTeam Consulting Group (Java and C++), IBM Corporation, Research Triangle Park, NC, USA, e-mail: jolin@raleigh.ibm.com, Chapter 5, and Chapter 6.

Art Jolin designs and writes frameworks and class libraries for IBM Corporation. He has been in software development for 21 years and in object-oriented architecture and framework development since 1990. He has previously worked in the areas of distributed computing, file systems, user interface design, and development tools. He is currently a consultant-for-hire through IBM's TecTeam for VisualAge Java and C++.

Jones, Steven R. ISA Services, Inc., Chicago, IL,USA, e-mail: srjones@isaservices.com, URL: http://www.isaservices.com, Chapter 10.

Steven Jones is a software architect with ISA Services, Inc., a Chicago-based systems integrator specializing in Java and Common Object Request Broker Architecture (CORBA) enterprise solutions. He has been working exclusively with distributed object technologies and has built robust application frameworks to support distributed object systems for a number of Fortune 500 companies. He is a vocal proponent of crafting large-scale, reusable software by applying patterns and frameworks in a disciplined design approach. He speaks on these topics regularly at various conferences, seminars, and user groups around the country.

King, Graham, Ph.D. Research Centre for Systems Engineering, Southampton Institute, Southampton, United Kingdom, e-mail: graham.king@solent.ac.uk, Sidebar 7.

Graham King's first degree profile is computing and electronics and in his early career he carried out research into aspects of data compression and pattern recognition. This work culminated in a master of philosophy award and he subsequently went on to be awarded a Ph.D. in advanced architectures for signal processing by Nottingham-Trent University, United Kingdom. He was appointed head of the Informatics Research Centre at Southampton Institute in 1993, and after acting as dean of the systems engineering faculty, he was appointed head of research and postgraduate study. In this role, he is responsible for a major research center that specializes in all aspects of software quality. He has been principal investigator for a number of Engineering and Physical Sciences Research Council projects as well as many industry-funded programs. He was reader in computer systems engineering from 1992 to 1994 before achieving full professorial title in 1995.

Knoll, Rolf. RWG GmbH, Stuttgart, Germany, e-mail: rolf_knoll@rwg.email.com, URL: http://www.rwg.de, Chapter 17.

Rolf Knoll is the team leader for technical architecture of client-server software at the RWG GmbH in Stuttgart, Germany. The RWG is responsible for developing and maintaining integrated software systems for banks (Volks und Raiffeisenbanken), as well as other enterprises, in southwestern Germany. He joined the RWG in 1993 as a software engineer. Before studying informatics in Stuttgart and Uppsala, Sweden, Rolf studied architecture.

Koskimies, Kai, Ph.D. Tampere University of Technology, Helesinki, Finland, e-mail: kk@cs.tut.fi, Sidebar 5.

Kai Koskimies is a professor at Software Systems Laboratory, Tampere University of Technology. He has led several research projects concerning language implementation tools, tools for dynamic modeling and visualization of object-oriented systems, tools for object-oriented framework development and specialization, and the telecom software design environment.

Laitinen, Mauri. Laitinen Consulting, Tahoe City, CA, USA, e-mail: laitinen@acm.org, Sidebar 9.

Mauri Laitinen, principal in Laitinen Consulting, has more than 25 years of experience in software development and software management. He was one of the founders of Autodesk, Inc., a world leader in the development of computer-aided design and modeling software. At Autodesk, he created and directed the Quality Assurance Department, which had responsibility for ensuring high standards for the development, production, and maintenance of software and documentation. As Director of Software Development at Autodesk, he managed the development of the AutoCAD and AutoSketch group of products. Previously, he held management positions at Control Data Corp. and Information Systems Design, Inc., and developed software for Bechtel, Computer Sciences Corporation, and Jet Propulsion Labs. He is a co-author with Mohamed E. Fayad of Transition to Object-Oriented Software Development (John Wiley & Sons, 1998). He is a member of the Institute of Electrical and Electronics Engineers (IEEE) and the Association for Computing (ACM).

Lavin, Dave. OTI, Raleigh, NC, USA, e-mail: Dave_Lavin@oti.com, Chapter 5.

Dave Lavin has developed software in C, Smalltalk, and C++ for over 15 years. He has worked for IBM Cape Kennedy, Florida, as well as RTP, North Carolina. He was part of the visual builder team for the IBM VisualAge C++ project, versions 1 through 3.5. He is currently working for the OTI (Object Technology International) subsidiary of IBM.

Lilienthal, Carola. University of Hamburg, Germany, e-mail: Carola.Lilienthal@informatik.uni-hamburg.de, URL: http://swt-www.informatik.uni-hamburg.de, Chapter 17.

Carola Lilienthal has been a research assistant in the Software Engineering Group of the Informatics Department of Hamburg University since August 1995. Before studying computer science, Carola worked for two years at a German private bank.

Liu, Ling, Ph.D. Department of Computing Science, University of Alberta, Canada, e-mail: lingliu@cs.ualberta.ca, Chapter 9.

Ling Liu is an assistant professor in the Department of Computer Science and Engineering at Oregon Graduate Institute. She has been doing research on extending object technology for more than 10 years and has published more than 40 articles in international journals and conferences. Her research interests include object-oriented design, languages, and systems; distributed object management; object technology to various data-intensive applications and Web applications; and design and development of adaptive software systems.

Lucena, Carlos J.P., Ph.D. Departamento de Informatica, PUC-Rio, Brazil, Sidebar 2.

Carlos J.P. Lucena is a full -professor in the Departamento de Informatica at PUC-Rio (Brazil) since 1982. His current research interests include software design and formal methods in software engineering. He is a member of the IEEE Computer Society and various other scientific organizations. He is also a member of the Editorial Board of the International Journal on Formal Aspects of Computing (Springer-Verlag).

Magnusson, Boris, Ph.D. Department of Computer Science, Lund Institute of Technology, Sweden, e-mail: Boris@CS.LTH.se, URL: http://www.cs.lth.se/home/Boris_Magnusson, Chapter 4.

Boris Magnusson is a professor in the Department of Computer Science at the Institute of Technology, Lund University. He has an M.Sc. in engineering physics (1976) and a Ph.D. in computer science (1984), both from Lund. He has been at the department since 1976 and was chairman from 1986 to 1993. He was one of the designers and implementers of the Simula system developed at Lund. He has been active in the object-oriented community since the beginning and has taken part in program committees and in organizing several conferences such as European Conference on Object-Oriented Programming (ECOOP), Technology of Object-Oriented Languages and Systems (TOOLS), and Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA) in this field, as well as (ICSE) International Conference on Software Engineering, ESEC, and SCM in the field of software engineering. His current research interests include programming languages (concurrent and real-time programming), environments (compilers, garbage collection, embedded systems), and configuration management. .

Major, Melissa L. Software Architects, USA, e-mail: major@software-architects.com, Chapter 13.

Melissa L. Major is a consultant and site manager for Software Architects. She has worked for Computer Aid, Broadway & Seymour, BNR/NORTEL, and as a contractor with Microsoft. She has a master's degree in computer science and has been a Ph.D. student at Clemson University. She has taught computer science courses for Clemson University and Limestone College. She has managed testing efforts and constructed software development processes including testing processes for companies such as Lucent Technologies.

Marcelloni, Francesco, Ph.D. Dipartimento di Ingegneria della Informazione, Elettronica, Informatica, Telecomunicazioni, Università degli Studi di Pisa, Italy, e-mail: france@iet.unipi.it, URL: http://www.iet.unipi.it/~france/~france.html, Chapter 7.

Francesco Marcelloni received his M.Sc. degree in electronic engineering and his Ph.D. degree in computer engineering from the University of Pisa in 1991 and 1996, respectively. His Ph.D. dissertation dealt with object-oriented models and fuzzy-logic-based methods in software development. From 1994 to 1995 and from June to December 1997 he was a visiting researcher at the University of Twente, where he joined the TRESE project. Currently he is an assistant professor at the Dipartimento di Ingegneria dell'Informazione of the University of Pisa.

Mattsson, Michael. Department of Computer Science and Business Administration, University of Karlskrona/Ronneby, Sweden, e-mail: Michael.Mattsson@ide.hk-r.se, URL: http://www.ide.hk-r.se/~michaelm, Chapter 3, and Chapter 20.

Michael Mattsson received his M.Sc. degree in mathematics from the University of Växjö, Sweden (1988) and the licentiate of engineering degree in computer science from Lund University, Sweden (1996). He is currently at the University of Karlskrona/Ronneby, where he lectures in the Master of Software Engineering program. He is a member of the Architecture and Composition of Software (ARCS) research group.

McGregor, John D., Ph.D. Department of Computer Science, Clemson University, Clemson, South Carolina, USA, e-mail: johnmc@cs.clemson.edu, Chapter 13.

John D. McGregor is an associate professor of computer science at Clemson University and a senior partner in Software Architects, a software design consulting firm specializing in object-oriented design techniques. He has conducted funded research for organizations such as the National Science Foundation, DARPA, IBM, and AT&T. He has developed testing techniques for object-oriented software and developed custom testing processes for a variety of companies. He is coauthor of Object-Oriented Software Development: Engineering Software for Reuse (Van Nostrand Reinhold)and also of A Practical Guide to Testing Object-Oriented Software (to be published by Addison-Wesley).

McKim, James C., Ph.D. Department of Computer Science, Rensselaer Polytechnic Institute, CT, USA, e-mail: mckim@rpi.edu, Sidebar 8.

James C. McKim, Jr., holds a Ph.D. in mathematics from the University of Iowa. He has taught mathematics and computer science for more than 25 years, the last 10 mainly to working professionals. He is the coauthor of two mathematics textbooks and the author of several articles in both computer science and mathematics.

Meyer, Torsten. Department of Mathematics and Computer Science, University of Essen, Germany, e-mail: tmeyer@informatik.uni-essen.de, Sidebar 4.

Torsten Meyer studied business computing at the University of Essen and received his diploma degree (master's degree) there. Since 1996 he has been research assistant in Michael Goedicke's group, Specification of Software Systems, within the Department of Mathematics and Computer Science at the University of Essen. His special fields of interest with respect to his Ph.D. work are software architecture, configurable distributed systems, Common Object Request Broker Architecture (CORBA), and graph transformation.

Mili, Hafedh, Ph.D. Département d'informatique, Université du Québec à Montréal, Canada, e-mail: mailto: mili@larc.info.uqam.ca, Chapter 23.

Hafedh Mili is an associate professor of computer science at the University of Quebec in Montreal. He holds an Engineering Diploma from the Ecole Centrale de Paris (1984), Paris, France, and a Ph.D. in computer science from George Washington University (1988), Washington, D.C. He has published close to 40 referenced conference (such as OOPSLA - Object-Oriented Programming, Systems, Languages, and Applications, TOOLS - Technology of Object-Oriented Languages and Systems) and journal papers (such as IEEE Transactions on PAMI, SMC, SE) in these areas. He recently founded INFORMILI Inc., a computer services company that specializes in training and consulting in object orientation and software reuse. Its first client is the Canadian Federal Government.

Miller, Granville G. Make Systems, Cary, NC, USA, e-mail: gmiller@makesys.com, Chapter 13.

Granville Miller has spent 13 years in the software industry working on object-oriented systems. He is a pioneer in the application of use cases in the development of advanced frameworks for software systems. At Make Systems, he is the manager of the frameworks and network visualization group, responsible for developing reusable components for network resource planning tools. At IBM, he was one of the original developers responsible for IBM's VisualAge product. Following that, he orchestrated a link between the business engineering group and an object center with a single use-case-driven software development process. For more than a decade, he has been driven to advance OO technology in the computer industry, including IBM, Nortel, BroadBand Technologies, and Make Systems.

Molin, Peter, Ph.D. Department of Computer Science and Business Administration, University of Karlskrona/Ronneby, Sweden, e-mail: Peter.Molin@ide.hk-r.se, URL: http://www.ide.hk-r.se/~ARCS, Chapter 3.

Peter Molin received a licentiate of technology in software engineering in 1997. Prior to that his experience was in Ada compiler development and the development of fire alarm systems. After a period working as an assistant professor at the University of Karlskrona/Ronneby, Sweden, his current position is manager of Mobile Applications Lab, a part of the Ericsson group.

Nelson, Torsten. Department of Computer Science, University of Waterloo, Ontario, Canada, e-mail: torsten@csg.uwaterlo.ca, Sidebar 2.

Torsten Nelson is a Ph.D. candidate in the Department of Computer Science at the University of Waterloo (Canada). His current research interests include software engineering, software analysis and design, and object-oriented software systems.

Nowack, Palle. The Maersk Mc-Kinney Moller Institute for Production Technology, University of Southern Denmark , Denmark, e-mail: nowack@mip.ou.dk, URL: http://www.mip.ou.dk/~nowack, Chapter 2.

Palle Nowack is currently a Ph.D. student at the Maersk Mc-Kinney Moller Institute for Production Technology at the University of Southern Denmark, Denmark. His professional interests include systems design, conceptual modeling, software architecture, and object-oriented software development. He received his master's degree from Aalborg University in 1996.

Predonzani, Paolo. DIST—Universitàdi Genova, Italy, e-mail: predo@dist.unige.it, URL: sayuri.dist.unige.it, Sidebar 3.

Paolo Predonzani is currently a research associate at the Department of Electrical and Computer Engineering of the University of Calgary. He received the laurea degree in computer engineering in 1997 from University of Genova, Italy. His main interests are domain analysis and engineering, business process modeling and reengineering, activity-based costing, and management.

Pree, Wolfgang, Ph.D. Department of Computer Science, University of Constance, Germany, e-mail: pree@acm.org, URL: http://www.altissimo.com, Chapter 16, and Sidebar 5.

Wolfgang Pree is a professor of computer science at the University of Constance and head of the Software and Web Engineering Group. His research covers various areas of software engineering, in particular, object and component technology, software architectures, and human-computer interaction. He is the author of Design Patterns for Object-Oriented Software Development (Addison-Wesley, 1995). He presented numerous tutorials on that topic at conferences such as OOPSLA, TOOLS, and ECOOP. He was a visiting assistant professor at Washington University in St. Louis (1992–1993), and a guest scientist at Siemens AG Munich (1994–1996).

Raines, David C. Department of Computer Science, Rensselaer Polytechnic Institute, Willington, CT,USA, e-mail: dave@rh.edu, Sidebar 8.

David Raines recently completed his master's degree in computer science from Rensselaer Polytechnic Institute. He has been a software engineer and Unix system administrator for 14 years.

Riehle, Dirk. Ubilab UBS, Zürich, Switzerland, e-mail: Dirk.Riehle@ubs.com or riehle@acm.org, URL: http://www.ubs.com/ubilab or http://www.riehle.org, Chapter 17.

Dirk Riehle is a researcher at Ubilab, the IT innovation laboratory of UBS. He is interested in the software architecture of object and component systems and their use in the banking domain. His most recent work includes a metalevel architecture for distributed object systems and a design and integration methodology for object-oriented frameworks.

Rossi, Gustavo, Ph.D. LIFIA, Universidad Nacional de La Plata, Argentina, e-mail: rossi@sol.info.unlp.edu.ar, URL: http://www-lifia.info.unlp.edu.ar/~rossi, Chapter 11.

Gustavo Rossi has been a full professor at the University of La Plata, Argentina, since 1982. He is also head of Laboratorio de Investigacion y Formacion en Infomatica Avanzada (Laboratory for Research and Training in Advanced Computer Science, or LIFIA ), a research group at the Department of Computer Science at the Universidad Nacional de La Plata (University of La Plata), Argentina. He completed his Ph.D. at Pontificia Universidade of Rio de Janeiro, Brazil. Gustavo has been teaching courses such as Programming Methodologies, Object-Oriented Programming, and Seminar of Hypertext and Hypermedia at the University of La Plata. He was also a speaker at several seminars on object-oriented software engineering, object-oriented programming, and hypermedia design.

Rüping, Andreas, Ph.D. sd&m software design & management GmbH & Co.KG, München, Germany, e-mail: rueping@acm.org, Chapter 14.

Andreas Rüping received a diploma (master of science) from the Faculty of Computer Science at the University of Dortmund and a Ph.D. from the Faculty of Computer Science at the University of Karlsruhe, Germany. From 1991 to 1996, he was a member of the research staff at Forschungszentrum Informatik (Research Center for Computer Science), Karlsruhe. Since 1997, he has been a senior software engineer at sd&m software design & management, Munich. Andreas Rüping has managed several projects in the areas of object technology, reengineering, Internet technology, and quality management.

Sahraoui, Houari, Ph.D. Centre de Recherche Informatique de Montréal, Canada, e-mail: houari.sahraoui@crim.ca, Chapter 23.

Houari A. Sahraoui is a senior researcher at the Research on Computer Science Center of Montreal (CRIM), adjunct professor at the University of Quebec in Montreal, and associate member of LIP6 (Computer Science Laboratory of Paris 6). He holds an engineering diploma from the National Institute of Computer Science (1990), Algiers, Algeria, and a Ph.D. in computer science from the Universite Pierre & Marie Curie, Paris, France (1995).

Schmid, Hans Albrecht, Ph.D. Fachbereich Informatik, Fachhochschule Konstanz, Germany, e-mail: schmidha@fh-konstanz.de, Chapter 15.

Hans Albrecht Schmid has a diploma (M.Sc.)in electrical engineering from the University of Stuttgart, a diploma (M.Sc.) in computer science from the Institut Nationale Polytechnique de Grenoble, and a Ph.D. in computer science from the University of Karlsruhe (1973). He was visiting assistant professor in the Department of Computer Science at the University of Toronto. He was head of the research group on database management systems in the Department of Computer Science at the University of Stuttgart. From 1977 to 1987, he held different technical lead and management positions with the IBM development laboratory in Boeblingen. Since 1987, he has been professor of computer science at the University for Applied Research, Konstanz, Germany.

Schmidt, Douglas C., Ph.D. Department of Computer Science, Washington University, St. Louis, Missouri, USA, e-mail: schmidt@cs.wustl.edu, URL: http://www.cs.wustl.edu/~schmidt, coeditor of this book, Chapter 1.

Douglas Schmidt is an associate professor in the Department of Computer Science and in the Department of Radiology at Washington University in St. Louis, Missouri. His research focuses on design patterns, implementation, and experimental analysis of object-oriented techniques that facilitate the development of high-performance, real-time distributed object computing systems on parallel processing platforms running over high-speed ATM networks. He received B.S. and M.A. degrees in sociology from the College of William and Mary in Williamsburg, Virginia, and an M.S. and a Ph.D. in computer science from the University of California, Irvine (UCI), in 1984, 1986, 1990, and 1994, respectively. He is a member of the USENIX The Advanced Computing Systems and Association, Institute of Electrical and Electronics Engineers (IEEE), and the Association of Computing (ACM). He is also coeditor of this three-volume work on object-oriented application frameworks (John Wiley & Sons, 1999).

Sorenson, Paul G., Ph.D. Department of Computing Science, University of Alberta, Canada, e-mail: sorenson@cs.ualberta.ca, Chapter 9.

Paul Sorenson is professor and chair of the Department of Computing Science at the University of Alberta. He was formerly head of Computational Science at the University of Saskatchewan. His current research interests are in object-oriented frameworks, software engineering environments, and software process and quality. He has coauthored texts in data structures and compiler construction that appear in the McGraw-Hill Computer Science Series. He was recently a member of the Canadian Natural Sciences and Engineering Research Council's Committee on Research Grants and Group Chair for Computing and Information Science and Electrical Engineering. He is currently board chairman of the newly formed WestMOST Consortium, a consortium of nine western Canadian universities, two software technology centers, and several industrial partners, which is developing an industry-oriented master's of software technology program.

Soundarajan, Neelam, Ph.D. Department of Computer and Information Science, Ohio State University, Columbus, Ohio, USA, e-mail: neelam@cis.ohio-state.edu, URL: http://www.cis.ohio-state.edu, Chapter 12.

Neelam Soundarajan is an associate professor in the Computer and Information Science Department at Ohio State University. His primary research interests are in object-oriented and distributed systems, in particular, in the specification and verification issues involved in dealing with these systems.

Succi, Giancarlo, Ph.D. Department of Electrical and Computer Engineering, University of Calgary, Canada, e-mail: Giancarlo.Succi@enel.ucalgary.ca, URL: http://www.enel.ucalgary.ca/People/Succi, Sidebar 3.

Giancarlo Succi is associate professor at the Department of Electrical and Computer Engineering of the University of Calgary. He received the laurea degree in electrical engineering in 1988 from the University of Genova, Italy. His main interests focus on software engineering and reuse, the software development process, accounting techniques, and legal issues. In addition, he is interested in the implementation of declarative languages on massively parallel architectures and distributed systems.

Tekinerdogan, Bedir. Department of Computer Science, University of Twente, the Netherlands, e-mail: bedir@cs.utwente.nl, URL: http://www.cs.utwente.nl/~bedir/, Chapter 7.

Bedir Tekinerdogan holds an M.Sc. in computer science from the University of Twente, the Netherlands. Currently, he is a Ph.D. candidate at the University of Twente. He has done work on atomic transactions and object-oriented analysis, design, and programming. He was coorganizer of several workshops including the ECOOP '96 workshop on adaptability in object-oriented software development, the ECOOP '97 and ECOOP '98 workshops on aspect-oriented programming, and the ECOOP '98 workshop on automating the object-oriented software development.

Valerio, Andrea. DIST—Università di Genova, Italy, e-mail: Andrea.Valerio@dist.unige.it, URL: http://sayuri.dist.unige.it, Sidebar 3.

Andrea Valerio is currently a Ph.D. student at the University of Genova, Italy. He received the laurea degree in electronic engineering in 1995 from the University of Padova, Italy. His main interests are software reuse, domain analysis and engineering, software process description, and software quality.

Vaucher, Jean, Ph.D. Université de Montréal, Département d'Informatique et RO, Canada, e-mail: vaucher@IRO.UMontreal.Canada, URL: http://www.iro.umontreal.ca/~vaucher, Chapter 4.

Jean Vaucher is full professor in the Department of Computer Science. He has been at the University of Montreal since 1970 and chaired the department from 1980 to 1983. He studied electrical engineering at the University of Ottawa, graduating in 1962. He obtained his Ph.D. in 1968 from the University of Manchester (United Kingdom). He has been active in many top-level committees including Natural Sciences and Engineering Research Council of Canada's (NSERC) Grants Selection Committee for Computing and Information Sciences. His main interests are software engineering, object-oriented programming, and operating systems.

Vernazza, Tullio, Ph.D. DIST—Università di Genova, Italy, e-mail: tullio@dist.unige.it, URL: http://sayuri.dist.unige.it, Sidebar 3.

Tullio Vernazza is associateprofessor at the Department of Communication, Computer, and System Sciences of the University of Genova. He is also the head of the Software Production Engineering Lab at the University of Genova. His main interests range from software engineering to electronics and computer architectures.

Wang, Yingxu, Ph.D. IVF Centre for Software Engineering, Gothenburg, Sweden, e-mail: yingxu.wang@acm.org, Sidebar 7.

Yingxu Wang received a Ph.D. in the United Kingdom and a B.Sc. in Shanghai. He is a senior research fellow with the IVF Centre for Software Engineering, Sweden, and a Ph.D. supervisor in the School of Computing, Information Systems, and Mathematics at South Bank University, London. He has been a professor of computer science at Lanzhou Tiedao University, China, since 1994, and was a visiting professor at Oxford University in 1995. He is a member of the Institute of Electrical and Electronics Engineers (IEEE), Technical Committee on Software Engineering/ Software Engineering Standards Committee (TCSE/SESC), the Association for Computing (ACM), Boston Computing Society (BCS), and ISO/ICE JTC1/SC7. He is a principal investigator of EC SPRITE S2 projects PROBE, IPSSI, PULSE, ASSIT, ISO 15504 Part 5, as well as Swedish projects National Benchmark, Y2K, and PILOT. He has published 86 papers in software engineering research. He is a guest editor of the Annals of Software Engineering and a senior reviewer of IEEE Computer.

Wills, Alan Cameron, Ph.D. TriReme International Ltd., United Kingdom, e-mail: alan@trireme.com, URL: http://www.trireme.com, Chapter 19.

Alan Cameron Wills is technical director of TriReme International Ltd., consulting and training clients in many fields, including banking, telecommunications, and manufacturing. He has worked on methods and tools since 1982 and specializes in making frontline research practical and available for mainstream software engineering.

Young, Howard. IBM, USA, Sidebar 6.

Howard Young is an executive consultant for IBM, where he applies advanced technology to complex business problems. His technical interests include object-oriented and Web-based applications.

Züllighoven, Heinz. University of Hamburg, Germany, e-mail: Heinz.Zuellighoven@informatik.uni-hamburg.de, URL: http://swt-www.informatik.uni-hamburg.de, Chapter 17.

Heinz Züllighoven has been a professor in the Software Engineering Group of the Informatics Department of Hamburg University since October 1991. He graduated in mathematics and German language and literature, and he holds a doctoral degree in computer science. He has been working for years as a computer scientist at GMD.


Cover
ISBN 0-471-24875-4
688 pages
September, 1999

WCP Home Page


WCP Home Page

[ Framework Foundations ] [ Implementing Frameworks ] [ Domain-Specific Frameworks ]

Copyright © 1999 John Wiley & Sons, Inc. Wiley Computer Publishing