Abstract: The importance and complexity of software systems require software engineers who possess the appropriate skills, knowledge and experience to develop, maintain and acquire such systems. Graduate education is a key ingredient in advancing the state of professional software engineering practice. This paper describes the principal features of a new reference curriculum for master’s programs: Graduate Software Engineering 2009 (GSwE2009): Curriculum Guidelines for Graduate Degree Programs in Software Engineering. These features include the GSwE2009 guiding principles, preparatory knowledge, student outcomes, curriculum architecture, and a core body of knowledge. In addition, the paper includes discussion of the GSwE2009 project organization, process, and activities.
Abstract: Agile estimation approaches usually start by sizing the user stories to be developed by comparing them to one another. Various techniques, with varying degrees of formality, are used to perform the comparisons ? plain contrasts, triangulation, planning poker, and voting. This article proposes the use of a modified paired comparison method in which a reduced number of comparisons is selected according to an incomplete cyclic design. Using two sets of data, the authors show that the proposed method produces good estimates, even when the number of comparisons is reduced by half those required by the original formulation of the method.
Abstract: A set of fundamental principles can act as an enabler in the establishment of a discipline; however, software engineering still lacks a set of universally recognized fundamental principles. This article presents a progress report on an attempt to identify and develop a consensus on a set of candidate fundamental principles. A fundamental principle is less specific and more enduring than methodologies and techniques. It should be phrased to withstand the test of time. It should not contradict a more general engineering principle and should have some correspondence with ??best practiceÂ’Â’. It should be precise enough to be capable of support and contradiction and should not conceal a tradeoff. It should also relate to one or more computer science or engineering concepts. The proposed candidate set consists of fundamental principles which were identified through two workshops, two Delphi studies and a web-based survey.
Abstract: The IEEE Computer Society and the Association for Computing Machinery are working on a joint project to develop a guide to the Software Engineering Body of Knowledge (SWEBOK). Articulating a body of knowledge is an essential step toward developing a profession because it represents a broad concensus regarding the contents of the discipline. Without such a consensus, there is no way to validate a licensing examination, set a curriculum to prepare individuals for the examination, or formulate criteria for accrediting the curriculum.The SWEBOK project (http://www.swebok.org) is now nearing the end of the second of its three phases. Here we summarize the results to date and provide an overview of the project and its status.
Notes: Traduit et reproduit de P Bourque, R Dupuis, A Abran, J W Moore, L L Tripp (1999) The Guide to the Software Engineering Body of Knowledge IEEE Software 16: 6. 35-44 November/December.
Abstract: Presents an experiment that was carried out to develop and statistically validate a model that estimates the number of lines of code in a system. A linear model is developed for each of the two samples studied. These models are based on measurements taken on data flow diagrams. Statistically analysis reveals that the models produce sound estimates of the actual data (R/sup 2/=0.724 and R/sup 2/=0.563). Four evaluation criteria show that these models compare favourably to the other software-sizing models found in the literature. (33 Refs.)
Abstract: Software engineering; software metrics; classic metrics; code metrics; programming languages; estimation models, The groundwork for software metrics was established in the seventies, and from these earlier works, interesting results have emerged in the eighties. Over 120 of the many publications on software metrics that have appeared since 1980 are classified and presented in five tables that comprise the use of classic metrics, a description of new metrics, software metrics through the life cycle, code metrics and popular programming languages, and various metric-based estimation models.
Notes: Reproduced in De Grace, P., Hulet Stahl, L., The Olduvai Imperative-CASE and the State of Software Engineering Practice, Yourdon, 1993.
Abstract: A major difficulty with current organizational performance models in software engineering management is to represent many possible viewpoints quantitatively and in a consolidated manner, while at the same time keeping track of the values of the individual dimensions of performance. The models currently proposed do not meet the analytical requirements ofsoftware engineering management when various viewpoints must be taken into account concurrently.This paper presents a selection of multidimensional models of performance in software engineering and in management. It then describes the proposed concepts for a tool for multidimensional performance modeling in software engineering management. The tool would adopt an organizational framework of performance and build upon an open, generic and geometrical approach to performance modeling called QEST. It would also enable the user to select different visualization techniques to analyze data. In addition, the proposed tool would allow the user to iteratively define, collect and analyze multidimensional measures at each life cycle phase, and even enter potential results for subsequent phases. The initial test bed of the proposed tool would be the repository of project data of the International Software Benchmarking Standards Group (ISBSG).
Abstract: Traceability analysis is a technique that enables the verification of software requirements within the software life cycle. Within a context where there is a lack of common understanding of what must be traced, a number of methods have been proposed to implement software requirements traceability analysis, many of these methods dealing with software requirements expressed in natural language. This paper provides a graphical model to visualize software functional requirements that facilitates identifying functional traceability links. An application of the proposed model is illustrated through a case study taken from a process control system.
Abstract: A major difficulty with current organizational performance models in software engineering management is to represent many possible viewpoints quantitatively and in a consolidated manner, while at the same time keeping track of the values of the individual dimensions of performance. The models currently proposed do not meet the analytical requirements of software engineering management when various viewpoints must be taken into account concurrently. This difficulty is compounded by the fact that the underlying quantitative data is of high dimensionality and therefore the usual two and three dimensional approaches to visualization are generally not sufficient forrepresenting such models.This paper describes the proposed concepts for a tool for multidimensional performance modeling in software engineering management. Due to the continuously increasing amount and the high dimensionality of the data underlying these models, a particular focus is given in this paper on potential visualization concepts and techniques that could be incorporated into the proposed tool.
Abstract: In this paper, we present the results of a project conducted to analyze the coverage of the roles within the Bombardier Engineering System (BES) Software Engineering (SWE) process definition and subsequently improve the role definitions. This is the common software engineering process definition of BombardierÂ’s Transportation division. Role definitions were analyzed using three internationally recognized software engineering reference documents: the Rational Unified Process (RUP) ,IEEE/EIA Standard 12207.0-1996, and the Guide to the Software Engineering Body of Knowledge (SWEBOK Guide).
Abstract: Even though measurement is considered an essential concept in recognized engineering disciplines, measures in software engineering are still far from being widely used. To figure out why software measurement has not yet gained enough peer recognition, this paper presents a set of issues that still have to be addressed adequately by the software measurement community. These issues were derived from the analysis of comments obtained during two Delphi studies and a Web-based survey conducted to identify and reach a consensus on the fundamental principles of the discipline within the international software engineering community. The paper also discusses the application of metrology concepts as a research direction to address some of the measurement issues identified.
Abstract: A list of fundamental principles of software engineering is viewed as needed to solidifythe foundations of the field, thereby enabling and hastening the maturation of the discipline. Mostof the authors who have investigated software engineering principles note that the discipline has afoundation. Some talk about principles, others about concepts, laws or notions, while they all agreewith the view that a stable basis for the discipline is formed by their own individual set of these.However, this paper illustrates that there is a clear lack of consensus about which of the proposedprinciples are indeed fundamental. Furthermore, authors do not share the same definition ofsoftware engineering, nor do they share the same definition of the term ?principleÂ’. In summary,over 250 statements on what is meant by a principle are inventoried, and most are based only onthe authorÂ’s opinion or point of view. Therefore, significant effort is still required to pursue thisresearch topic relating to the foundation of software engineering. In particular, more work isrequired to design an appropriate research methodology, including precise definitions of the termsbeing used..
Abstract: Currently, components technology represents a major step in the evolution of software technology as a whole. Although it has been undergoing continuous enhancement, this technology suffers from a number of limitations: in particular, components' unused functionalities. For instance, a software component incorporates a set of functions of which a size-varying subset is actually used to satisfy the functional requirements of a particular software application. Consequently, a subset of unused functionalities will persist in the deployed application. This subset of unused functionalities provides no functional value to the hosting application. Furthermore, these unused functionalities consume memory and network resources and might compromise application security if they are exploited inappropriately. In this paper, we propose CUMM (Components' Unused Member Measurement), a method to measure components' unused members (attributes and functionalities), and their memory consumption inside a software application. Furthermore, we present a set of analysis models which use the results of the CUMM to determine percentages of unused members as well as the degree of generality of a component's members.
Abstract: The SWEBOK Guide is a project of the IEEE Computer Society and is designed to characterize the discipline of software e ngineering and IO provide a topical guide to the literature describing the generally accepted knowledge within the discipline. The Triol version of the SWEBOK Guide has been published in December 2001. The paper reviews a selecfion of the triol usages of the SWEBOK Guide in thejeld of software engineering education. It also describes the links between the SWEBOK Guide project and other initiatives in thefield, notable thecomputing Curricula - Software Engineering.
Abstract: This paper presents an experience report on an open and independent assessment of a pilot e-learning course on Microsoft FrontPage. The e-learners in the pilot course were Canadian knowledge workers from various industry sectors. The specifically adapted to e-learning, course evaluation criteria and the fully transparent independent assessment process are the main interest and focus of this paper. The experience report shows that the selected criteria combined with the assessment process provided an objective and comprehensive framework to enable the independent course assessor to complete his mandate and, more importantly, to provide constructive and detailed recommendations to the course developers.
Abstract: This paper is the result of a workshop held in Montreal in Octobe 2002 during the Software Technology and Practice Conference (STEP-2002). The purpose of the paper is to present a preliminary mapping of the two related but distinct software enginering body of knowledge initiativs, and also a list of proposals to improve them: the Guide to the Software Body of Knowledge (SWEBOK) and the Software Education [body of] knowledge (SWWK). The SWEBOK Guide is aimed at identifying and describing the body of experience. The intended audiences of the SWEBOK Guide include industry, academia and policy-making organizations. The SEEK is aimed at delimiting the knowledge that professionals teaching software engineering agree is necessary for anyone to obtain an undergraduate degree in this field. The mapping shows that, though there are are no major school of though" divergences between the two bodies of knowledge, there are a number of differences in the details of each breakdown in terms of vocabulary, level of detail, decomposition approach and topics encompassed."
Abstract: The editorial team of the SWEBOK Guide received feedback about its use at the National Technological University (NTU), confirming the usefulness of the Guide with the exception of chapter four, Software Construction, which did not map easily either to industry practices or to current academic curricula.An initial analysis of this specific SWEBOK chapter enabled us to propose an initial revision of the structure of topics in this knowledge area. In addition, we conducted a review, presented here, of the chapter to identify the level of experimental support for each topic mentioned in this chapter. In order to classify the level of support, the classification in twelve experimental methods for validating technology by Zelkowitz and Wallace is used. It permits the identification of some of its weaknesses and provides further guidance on content improvements of the chapter.
Abstract: Articulating a body of knowledge is an essential step toward developing a profession because it represents a broad consensus regarding the contents of the discipline. The IEEE Computer Society, with the support of a consortium of industrial sponsors, has recently published the Guide to the Software Engineering Body of Knowledge (SWEBOK). Throughout this Guide, measurement is pervasive as a fundamental engineering tool. In addition, ISO is at present in the process of adopting this Guide as an ISO Technical Report. This presentation will provide overviews of the development process that was followed and of the current version of this Guide. In addition, the topic of measurement will be highlighted, both in terms of its presence throughout the ten SWEBOK knowledge areas and of its depth of treatment.
Abstract: The goal of this paper is to highlight differences identified between three Knowledge Areas or chapters of the Guide to the Software Engineering Body of Knowledge and the Rational Unified Process. The differences identified are of two types: terminology differences and topics that can only be found in one or other of the compared documents. The paper shows that the two documents are quite consistent with regard to these types of differences for the Knowledge Areas considered.
Abstract: The editorial team of the SWEBOK guide received feedback about its use at the National Technical University (NTU) confirming usefulness of the guide with the exception of chapter four, Software Construction, that did not map easily to industry practices nor to actual academic curriculum. After analysis of this specific SWEBOK chapter, some issues were identified, such as inconstancies between the textual descriptions and the visual representation. Furthermore, the analysis of this chapter using the Vincenti classification of engineering knowledge types allowed to identify some further weaknesses and provided some guidance on how the structure of this chapter could be improved. This paper proposes a revised breakdown of topics that is more aligned with an engineering perspective.
Abstract: Both ISO and industry led forums, such as QuEST, have tackled the measurement of software product quality and proposed corresponding quality views. This paper presents how both quality views bring distinct contribution to software product quality and how they can be implemented jointly to verify that the quality requirements have indeed been built in and quality target achieved in the product use. More specifically it presents how the QuEST TL9000 Handbook and ISO/IEC 9126 can be jointly used for defining, measuring, evaluating and finally achieving appropriate quality of user-centered software product.
Abstract: The IEEE Computer Society and the Association for Computing Machinery are working on a joint project to develop a guide to the Software Engineering Body of Knowledge (SWEBOK). Articulating a body of knowledge is an essential step toward developing a profession because it represents a broad consensus regarding the contents of the discipline. Without such a consensus, there is no way to validate a licensing examination, set a curriculum to prepare individuals for the examination, or formulate criteria for accrediting the curriculum.At the time of writing this paper in September 2000, the SWEBOK project (http://www.swebok.org) is nearing the end of the second of its three phases. Here we summarize the results to date and provide an overview of the project.
Abstract: This paper presents a confirmatory analysis of empirical models that predict software engineering project duration from project effort. The results are based on a more recent and much larger sample than those of previous studies. The models are based on the analysis of project data provided by release 4 of the International Software Benchmarking Standards Group (ISBSG) repository. Duration models are built for subsets of projects using personal computer, mid-range and mainframe development platforms.
Abstract: The IEEE Computer Society and the Association for Computing Machinery are working on a joint project to develop a guide to the Software Engineering Body of Knowledge (SWEBOK). Articulating a body of knowledge is an essential step toward developing a profession because it represents a broad consensus regarding the contents of the discipline. Without such a consensus, there is no way to validate a licensing examination, set a curriculum to prepare individuals for the examination, or formulate criteria for accrediting the curriculum.At the time of writing this paper in February 2000, the SWEBOK project (http://www.swebok.org) is nearing the end of the second of its three phases. Here we summarize the results to date and provide an overview of the project.
Abstract: The IEEE Computer Society and the Association for Computing Machinery are working on a joint project to develop a guide to the Software Engineering Body of Knowledge (SWEBOK). Articulating a body of knowledge is an essential step toward developing a profession because it represents a broad consensus regarding the contents of the discipline. Without such a consensus, there is no way to validate a licensing examination, set a curriculum to prepare individuals for the examination, or formulate criteria for accrediting the curriculum.At the time of writing this paper in September 2000, the SWEBOK project (http://www.swebok.org) is nearing the end of the second of its three phases. Here we summarize the results to date and provide an overview of the project.
Abstract: IT projects continue to be canceled, delivered late and over budget, fail to deliver what was expected or deliver error-prone results. This state of affairs prevails today despite more than 30 years of evolution in the methods,techniques and tools of information technology, softwareengineering and project management. It is clear that software professionals and organizations have not adequately harnessed the bodies of knowledge required to avoid these project delivery pitfalls.This talk presents a recently begun Canadian Government initiative to develop a non-proprietary and open data collection framework for information technology governance. The following topics are discussed:the underlying business model and the major guidelines for putting in place the infrastructure to implement this data collection framework.
Notes: 19980403, Notes: Incomplete, Research Notes: 129
Abstract: Many parametric models based on estimates of project effort have been proposed in the literature to predict the duration of software development projects. Among these, COCOMO has received wide attention. A comparison of the duration estimates obtained from this model with those from an empirical model derived from a set of historical data maintained by the International Software Benchmarking Standards Group (ISBSG) is presented in this paper. It is shown that the COCOMO duration estimates are optimistic" when compared to the empirical model estimates. Using quantitative evaluation criteria this paper also shows that the goodness of the COCOMO duration models is very close to the goodness of the empirical model in spite of fact that the data used to derive the COCOMO duration models are roughly 20 years old."
Notes: http://saturne.info.uqam.ca/Labo_Recherche/Lrgl/publi/otherpub/LRGL-1997-010A.pdfhttp://saturne.info.uqam.ca/Labo_Recherche/Lrgl/publi/otherpub/LRGL-1997-010B.pdfm:\mig-lrgl\livrables\LRGL-1997-010A.pdfm:\mig-lrgl\livrables\LRGL-1997-010B.pdf, 19970903, Research Notes: 122
Abstract: A requirement for productivity models and productivity analysis is to know the size of the product, or the output, of a work process. In software engineering, the product is the software itself. Function Points Analysis (FPA) has been designed to measure the functional size of software applications from a userÂ’s perspective. While it is being used extensively to measure either medium or large software development or enhancement projects, it has not been used to measure very small functional enhancements: its current measurement structure does not allow it to discriminate small size increments. This paper describes an extended version of FPA which is proposed to address this measurement issue of lack of sensitivity to small size changes. It also presents the design and the results of an empirical study carried out using this extended version.
Notes: http://saturne.info.uqam.ca/Labo_Recherche/Lrgl/publi/otherpub/mm199601.zip, 19970521, Research Notes: 389
Notes: The IEEE Computer Society and the Association for Computing Machinery (ACM) have voted to sponsor GSwE2009. GSwE2009 has also been endorsed by the International Council on Systems Engineering (INCOSE) and the National Defense Industrial Association (NDIA) Systems Engineering Division.
Abstract: Software measurement programs are now widely recommended in software engineering, more specifically in support of larger continuous process improvement programs. However, software measurement programs exhibit some of the undesirable characteristics of software development projects in the sense that they are very risky undertakings in themselves. Measurement programs need to be brought under control, and methods are needed, and must be designed, for the identification and the management of their own risks in order to increase their implementation success rate.This paper presents the development of a risk assessment grid or questionnaire for software measurement programs and a risk assessment method enabling the actual usage of this grid in an organization. Four major risk areas are covered by the grid. They are: 1) the context surrounding the software measurement program; 2) the program organizational structure; 3) the program components; and 4) the program results. Results of field-testing are also discussed. This risk assessment method and grid can be used early in the design phase of a software measurement program as well as throughout its implementation. The research work for this project was conducted using BasiliÂ’s framework for empirical research in software engineering and it is described accordingly.
Notes: Type of Work: Technical Report, 19970904, Notes: Écrit en 1997, Research Notes: 702
Abstract: This document presents an analysis and proposed amendments to the Trial version of the SWEBOK Guide describing the software maintenance Knowledge Area. The scope of the proposed amendments is first to broaden the set of maintenance topics identified to improve coverage of the body of knowledge on software maintenance, as well as to recommend additional references and, secondly, to propose for each topic within the Software Maintenance Knowledge Area (KA), the expected level of knowledge for a graduate plus four years of experience"."
Abstract: This paper presents a white-box approach for developing models that predict software engineering project duration based on project effort. These models are based on the analysis of empirical data contained in the 1997 release of the International Software Benchmarking Standards Group (ISBSG) repository. Duration models are built for the entire data set and for subsets of projects developed for personal computer, mid-range and mainframe platforms. Duration models are also constructed for projects requiring fewer than 400 person-hours of effort and for projects requiring more than 400 person-hours of effort. The usefulness of adding the maximum number of assigned resources as a second independent variable to explain duration is also analyzed. The opportunity of building duration models directly from project functional size in function points is investigated as well.
Notes: Type of Work: Technical Report, 19970904, 19990305, Research Notes: 123
Abstract: A requirement for software productivity analysis and estimation is the ability to measure the size of a software product from the user's viewpoint, that is, from a functional perspective rather than from a technical perspective. One example of such a measurement method is Function Point Analysis (FPA). FPA is now widely used in the Management Information Systems (MIS) domain, where it has become a de facto" standard. However, FPA has not achieved the same degree of acceptance in other domains of software engineering, such as real-time software. The general opinion is that when FPA is applied to such software the results do not constitute an adequate size measurement of this type of software. This paper reports on a research project carried out to adapt FPA to the specific functional characteristics of real-time software. The proposed extension, called Full Function Points (FFP), is described and the results of field-testing are discussed. This research was conducted using an adaptation of Basili's framework for empirical research in software engineering and it is described accordingly."
Notes: Type of Work: Technical Report, 19990316, Research Notes: 615
Abstract: This document presents the Full Function Points (FFP) counting for a rice cooker example. First, the user requirement specifications are presented. Next, the boundary for the count is defined. Then, the control data function types are identified followed by the control transactional function types. For each function type identified, we explain the interpretation of the requirement specifications as well as the assumptions made. Finally, a figure and a table showing the summary of the count and the calculation of the final count are presented.
Notes: Type of Work: Technical Report, 19970904, Research Notes: 391
Abstract: Evolving, highly technical disciplines operating at or near the state of the art, such as those that underpin and enable the information technology (computer) industry have a need to define the sources of technical knowledge and levels of performance that should support accepted practice. The IEEE-CS Technical Activities Board is the world's largest single society technicalgrouping, and hosts an extraordinarily wide range of technologies required for the information industries and the scientists/engineers/ managers/ educators that make it up. Each of these areas or sub-disciplines has a Body of Knowledge"(BOK), that is, the collection of techniques, written descriptions, design and manufacturingpractices, engineering codes, educational syllabi, text books, web documents, standards, laws and regulations, research results, handbooks and etc. that are used by the engineering and technical community concerned. These Bodies of Knowledge need to be recorded and defined, so that the fields as a whole maymore easily codify the knowledge upon which they are based. Hence the opportunity and need for BOK projects."