{"title":"Bootstrap: Four Years of Assessment Experience","authors":"Franz Engelmann, Hans Stienen, Ernst Lebsanft","doi":"10.1145/253228.253457","DOIUrl":"https://doi.org/10.1145/253228.253457","url":null,"abstract":"The main characteristics of the Bootstrap method are described, i.e. the reference framework, the assessment procedure, the structure of the questionnaires and the rating and scoring mechanisms used. Experiences from over 40 sites and 180 projects are reported. Bootstrap proved to be a very efficient and effective means not only to assess the current status of software process quality but also to initiate appropriate improvement actions. The last part deals with future trends, i.e. the development of a common framework to perform software process assessments.","PeriodicalId":127923,"journal":{"name":"Proceedings of the (19th) International Conference on Software Engineering","volume":"15 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131409384","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Rigi: A Visualization Environment for Reverse Engineering","authors":"M. Storey, Kenny Wong, H. Müller","doi":"10.1145/253228.253496","DOIUrl":"https://doi.org/10.1145/253228.253496","url":null,"abstract":"The Rigi reverse engineering system provides tNo contrasting approaches for presenting software structures in its graph editor. The first displays the structures through multiple, individual NindoNs. The second (neNer) approach, Simple Hierarchical MultiPerspective (SHriMP) views, employs fisheye views of nested graphs. We compare and contrast these tNo interfaces for visualizing software graphs, and provide results from user experiments.","PeriodicalId":127923,"journal":{"name":"Proceedings of the (19th) International Conference on Software Engineering","volume":"31 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114619445","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Lessons Learned with the Systems Security Engineering Capability Maturity Model","authors":"R. Hefner","doi":"10.1145/253228.253454","DOIUrl":"https://doi.org/10.1145/253228.253454","url":null,"abstract":"This paper describes the principles upon which the SSECMM is based, the structure of the model, and its use in appraisals. The paper discusses ex-periences in developing and piloting the model and method, and comments on the potential for using the model in process-based assurance.","PeriodicalId":127923,"journal":{"name":"Proceedings of the (19th) International Conference on Software Engineering","volume":"19 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128308352","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Configuring Designs for Reuse","authors":"Anssi Karhinen, A. Ran, Tapio Tallgren","doi":"10.1145/253228.253839","DOIUrl":"https://doi.org/10.1145/253228.253839","url":null,"abstract":"The main problem in developing software product families is how to share effort and reuse parts of design and implementation while providing variation of features and capabilities in the products. We discuss the mechanisms that are commonly used to achieve reuse and sharing in product families, and the kind of variance each is best suited for. Our analysis motivates a need for a new mechanism to deal with ad hoc variation of features found in different members of a family. We argue that higher level abstraction and parametrization techniques are not well suited for this task. We propose an alternative approach that enables sufficiently detailed designs for every variant and at the same time achieves a level of design reuse without making designs unnecessarily complex or implementations inefficient.","PeriodicalId":127923,"journal":{"name":"Proceedings of the (19th) International Conference on Software Engineering","volume":"23 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128424540","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Defining Families: The Commonality Analysis","authors":"M. Ardis, David M. Weiss","doi":"10.1145/253228.253772","DOIUrl":"https://doi.org/10.1145/253228.253772","url":null,"abstract":"A recent trend in both the software engineering research and industrial communities has been to seek ways systematically to engineer software domains. One approach is to develop families of software and to invest in facilities for rapidly producing family members. Success in such an endeavor requires that the software engineers be able to identify the desired family members. This tutorial describes the commonality analysis process, a systematic approach to analyzing families. Commonality analysis was developed at Bell Labs and is being tried in Lucent Technologies as part of a process for engineering domains that is known as family-oriented abstraction, specification, and translation (FAST). The result of the analysis forms the basis for designing reusable assets that can be used to produce rapidly family members. The tutorial teaches the participants the principles underlying the approach and gives them a chance to perform a practice commonality analysis guided by experienced users of the process.","PeriodicalId":127923,"journal":{"name":"Proceedings of the (19th) International Conference on Software Engineering","volume":"33 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127290606","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Designing Distributed Applications with Mobile Code Paradigms","authors":"Antonio Carzaniga, G. Picco, G. Vigna","doi":"10.1145/253228.253236","DOIUrl":"https://doi.org/10.1145/253228.253236","url":null,"abstract":"Large scale distributed systems are becoming of paramount importance, due to the evolution of technology and to the interest of market. Their development, however, is not yet supported by a sound teclmological and methodological background, as the results developed for small size distributed systems often do not scale up. Recently, mobile code languages (MCLs) have been proposed as a technological answer to the problem. In this work, -we abstract away from the details of these languages by deriving design paradigms exploiting code mobility that are independent of any particular technology. We present such design paradigms, together with a discussion of their features, their application domain, and some hints about the selection of the correct paradigm for a given distributed application.","PeriodicalId":127923,"journal":{"name":"Proceedings of the (19th) International Conference on Software Engineering","volume":"68 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126336199","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Reuse Library Interoperability and The World Wide Web","authors":"S. Browne, J. Moore","doi":"10.1145/253228.253836","DOIUrl":"https://doi.org/10.1145/253228.253836","url":null,"abstract":"The Reuse Library Interoperability Group (RIG) was formed in 1991 for the purpose of drafting standards enabling the interoperation of software reuse libraries. At that time, prevailing wisdom among many reuse library operators was that each should be a stand-alone operation. Many operators saw a need for only a single library, their own, and most strived to provide the most general possible services to appeal to a broad community of users. The ASSET program, initiated by the Advanced Research Project Agency STARS program, was the first to make the claim that it should properly be one part of a network of interoperating libraries. Shortly thereafter, the RIG was formed, initially as a collaboration between the STARS program and the Air Force RAASP program, but growing within six months to a self-sustaining cooperation among twelve chartering organizations. The RIG has grown to include over twenty members from government, industry, and academic reuse libraries. It has produced a number of technical reports and proposed interoperability standards, some of which are described in this report.","PeriodicalId":127923,"journal":{"name":"Proceedings of the (19th) International Conference on Software Engineering","volume":"46 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121407070","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"An Investigation into Coupling Measures for C++","authors":"L. Briand, Premkumar T. Devanbu, W. Melo","doi":"10.1145/253228.253367","DOIUrl":"https://doi.org/10.1145/253228.253367","url":null,"abstract":"This paper proposes a comprehensive suite of measures to quantify the level of class coupling during the design of object-oriented systems. This suite takes into account the different 00 design mechanisms provided by the C++ language (e.g., friendship between classes, specialization, and aggregation) but it can be tailored to other 00 languages. The different measures in our suite thus reflect different hypotheses about the different mechanisms of coupling in 00 systems. Based on actual project defect data, the hypotheses underlying our coupling measures are empirically validated by analyzing their relationship with the probability of fault detection across classes. The results demonstrate that some of these coupling measures may be useful early quality indicators of the design 'of 00 systems. These measures are conceptually different from the 00 design measures defined by Chidamber and Kemerer; in addition, our data suggests that they are complementary quality indicators .","PeriodicalId":127923,"journal":{"name":"Proceedings of the (19th) International Conference on Software Engineering","volume":"80 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126259366","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Formalizing and Integrating the Dynamic Model within OMT","authors":"E. Y. Wang, H. Lipford, B. Cheng","doi":"10.1145/253228.253239","DOIUrl":"https://doi.org/10.1145/253228.253239","url":null,"abstract":"The Object Modeling Technique (OMT), a commonly used object-oriented development technique, comprises the object, dynamic, and functional models to provide three complementary views that graphically describe different aspects of systems. The lack of a well-defined semantics for the integration of the three models hinders the overall development process, particularly during the design phase. Previously, we formalized the object model in terms of algebraic specifications. However, the algebraic specifications only capture the static, structural aspects of a system. They do not explicitly describe the behavior, which is critical for system development, especially for the design phase. It is necessary to formalize the dynamic model in terms of the structural descriptions in order to specify and verify the system behavior using rigorous techniques. This paper presents a well-defined formal model for both the object and dynamic models and their integration. The formal model is described in terms of a well-known specification language, LOTOS. Formalization of the graphical notation enables numerous automated processing and analysis tasks, such as behavior simulation and consistency checks between levels of specifications.","PeriodicalId":127923,"journal":{"name":"Proceedings of the (19th) International Conference on Software Engineering","volume":"67 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126290577","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Communication Metrics for Software Development","authors":"A.H. Dutoit, B. Brügge","doi":"10.1145/253228.253286","DOIUrl":"https://doi.org/10.1145/253228.253286","url":null,"abstract":"We present empirical evidence that metrics on communication artifacts generated by groupware tools can be used to gain significant insight into the development process that produced them. We describe a test-bed for developing and testing communication metrics, a senior level software engineering project course at Carnegie Mellon University, in which we conducted several studies and experiments from 1991-1996 with more than 400 participants. Such a test-bed is an ideal environment for empirical software engineering, providing sufficient realism while allowing for controlled observation of important project parameters. We describe three proof-of-concept experiments to illustrate the value of communication metrics in software development projects. Finally, we propose a statistical framework based on structural equations for validating these communication metrics. Index Terms—Empirical software engineering, communication, statistics, structural equations. ——————————F—————————— 1I NTRODUCTION ETRICS applied to software artifacts have proven to be useful in measuring the impact of a tool or method in the context of a software project. In some cases, they enabled specific problems in the engineering processes to be identi- fied, thus demonstrating the value of metrics and other in- strumentation for process improvement. However, software code is only one of the many artifacts produced during soft- ware development. Moreover, it is often available only late in the process. The infrastructure and the resources needed to collect metrics on code are also non-negligible, and often prevents their use for identifying problems as they occur. Communication artifacts, such as electronic mail, memo- randa, or records generated by groupware tools, represent a different perspective on the development process. They are available throughout the project, they capture information about a more comprehensive set of artifacts (e.g., code, pro- cess, organization, politics, morale), and their form is inde- pendent of implementation technology, development infra- structure, or even the existence of a product. Metrics ap- plied to such communication artifacts can, therefore, pro- vide significant insight into the development process that produced them. In this paper, we discuss the design and evaluation of a set of communication metrics for software development. Our goal is to develop metrics that enable the assessment of a tool or a method in the context of a project. Our long-term goal is to provide metrics that help identifying problems as they occur. In Section 2, we illustrate possible uses of these metrics with an example.","PeriodicalId":127923,"journal":{"name":"Proceedings of the (19th) International Conference on Software Engineering","volume":"46 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116581099","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}