Results 1 - 10
of
204
Building Knowledge through Families of Experiments
- IEEE TRANSACTIONS ON SOFTWARE ENGINEERING
, 1999
"... ... This paper discusses the experience of the authors, based upon a collection of experiments, in terms of a framework for organizing sets of related studies. With such a framework, experiments can be viewed as part of common families of studies, rather than being isolated events. Common families ..."
Abstract
-
Cited by 148 (15 self)
- Add to MetaCart
... This paper discusses the experience of the authors, based upon a collection of experiments, in terms of a framework for organizing sets of related studies. With such a framework, experiments can be viewed as part of common families of studies, rather than being isolated events. Common families of studies can contribute to important and relevant hypotheses that may not be suggested by individual experiments. A framework also facilitates building knowledge in an incremental manner through the replication of experiments within families of studies. To support the framework, this paper discusses the experiences of the authors in carrying out empirical studies, with specific emphasis on persistent problems encountered in experimental design, threats to validity, criteria for evaluation, and execution of experiments in the domain of software engineering.
Measuring Functional Cohesion
- IEEE Transactions on Software Engineering
, 1994
"... We examine the functional cohesion of procedures using a data slice abstraction. Our analysis identifies the data tokens that lie on more than one slice as the "glue" that binds separate components together. Cohesion is measured in terms of the relative number of glue tokens, tokens that lie on more ..."
Abstract
-
Cited by 115 (9 self)
- Add to MetaCart
We examine the functional cohesion of procedures using a data slice abstraction. Our analysis identifies the data tokens that lie on more than one slice as the "glue" that binds separate components together. Cohesion is measured in terms of the relative number of glue tokens, tokens that lie on more than one data slice, and super-glue tokens, tokens that lie on all data slices in a procedure, and the adhe- siveness of the tokens. The intuition and measurement scale factors are demonstrated through a set of abstract transfor- mations.
How Reuse Influences Productivity in Object-Oriented Systems
- COMMUNICATIONS OF THE ACM
, 1996
"... ..."
Scenario-Based Requirements Analysis
- REQUIREMENTS ENG (1998)3:48-65 9 1998
, 1998
"... A method for scenario-based requirements engineering is described. The method uses two types of scenario: structure models of " the system context and scripts of system usage. A modelling language is reported for describing scenarios, and heuristics are given to crosscheck dependencies between scena ..."
Abstract
-
Cited by 42 (3 self)
- Add to MetaCart
A method for scenario-based requirements engineering is described. The method uses two types of scenario: structure models of " the system context and scripts of system usage. A modelling language is reported for describing scenarios, and heuristics are given to crosscheck dependencies between scenario models and the requirements specification. Heuristics are grouped into several anah,tic treatments that investigate correspondences between users' goals and system fimctions; input events and system processes to deal with them: system output and its destination in the scenario model, and acceptability anah,sis of system output for different stakehoMetw. The method is i/htstrated with a case study taken from the London Ambulance Service report. The prospects for scenario-based requirements engineering and related work are discussed.
Managing Software Engineering Experience for Comprehensive Reuse
, 1999
"... Today’s software developments are faced with steadily increasing expectations: software has to be developed faster, better, and cheaper. At the same time, application complexity increases. Meeting these demands requires fast, continuous learning and the reuse of past experience on the part of the pr ..."
Abstract
-
Cited by 39 (13 self)
- Add to MetaCart
Today’s software developments are faced with steadily increasing expectations: software has to be developed faster, better, and cheaper. At the same time, application complexity increases. Meeting these demands requires fast, continuous learning and the reuse of past experience on the part of the project teams. Thus, learning and reuse should be supported by well-defined processes applicable to all kinds of experience which are stored in an organizational memory. In this paper, we introduce a tool architecture supporting continuous learning and reuse of all kinds of experience from the software engineering domain and present the underlying methodology. 1.
An Operational Process for Goal-Driven Definition of Measures
, 2002
"... We propose an approach (GQM/MEDEA) for defining measures of product attributes in software engineering. The approach is driven by the experimental goals of measurement, expressed via the GQM paradigm, and a set of empirical hypotheses. To make ..."
Abstract
-
Cited by 36 (0 self)
- Add to MetaCart
We propose an approach (GQM/MEDEA) for defining measures of product attributes in software engineering. The approach is driven by the experimental goals of measurement, expressed via the GQM paradigm, and a set of empirical hypotheses. To make
Defining and Validating Measures for Object-Based High-Level Design
, 1999
"... The availability of significant measures in the early phases of the software development life-cycle allows for better management of the later phases, and more effective quality assessment when quality can be more easily affected by preventive or corrective actions. In this paper, we introduce and ..."
Abstract
-
Cited by 35 (2 self)
- Add to MetaCart
The availability of significant measures in the early phases of the software development life-cycle allows for better management of the later phases, and more effective quality assessment when quality can be more easily affected by preventive or corrective actions. In this paper, we introduce and compare various high-level design measures for object-based software systems. The measures
Quantifying the Closeness between Program Components and Features
- Journal of Systems and Software
, 2000
"... One of the most important steps towards e€ective software maintenance of a large complicated system is to understand how program features are spread over the entire system and their interactions with the program components. However, we must ®rst be able to represent an abstract feature in terms of s ..."
Abstract
-
Cited by 34 (0 self)
- Add to MetaCart
One of the most important steps towards e€ective software maintenance of a large complicated system is to understand how program features are spread over the entire system and their interactions with the program components. However, we must ®rst be able to represent an abstract feature in terms of some concrete program components. In this paper, we use an execution slice-based technique to identify the basic blocks which are used to implement a program feature. Three metrics are then de®ned, based on this identi®cation, to determine quantitatively, the disparity between a program component and a feature, the concentration of a feature in a program component, and the dedication of a program component to a feature. The computations of these metrics are automated by incorporating them in a tool (vSuds), which makes the use of our metrics immediately applicable in real-life contexts. We demonstrate the e€ectiveness of our technique by experimenting with a reliability and performance evaluator. Results of our study suggest that these metrics can provide an indication of the closeness between a feature and a program component which is very
The Experimental Paradigm in Software Engineering
- In Experimental Software Engineering Issues: Critical Assessment and Future Directions, International Workshop, Germany, H D Rombach and V R Basili and R W Selby (Eds.), LNCS 706
, 1992
"... This paper appears in Experimental Software Engineering Issues: Critical Assessment and Future Directives, Proceedings of Dagstuhl-Workshop, edited by H. Dieter Rombach, Victor R. Basili , and Richard Selby,, September 1992, published by Springer-Verlag, #706, Lecture Notes in Computer Software, Aug ..."
Abstract
-
Cited by 33 (2 self)
- Add to MetaCart
This paper appears in Experimental Software Engineering Issues: Critical Assessment and Future Directives, Proceedings of Dagstuhl-Workshop, edited by H. Dieter Rombach, Victor R. Basili , and Richard Selby,, September 1992, published by Springer-Verlag, #706, Lecture Notes in Computer Software, August 1993. modeling research that does exist has centered on the software product, specifically mathematical models of the program function. We have not sufficiently emphasized models for other components, e.g., processes, resources, defects, etc., the logical and physical integration of these models, the evaluation and analysis of the models via experimentation, the refinement and tailoring of the models to an application environment, and the access and use of these models in an appropriate fashion, on various types of software projects from an engineering point of view. The research is mostly bottom-up, done in isolation. It is the packaging of a technology rather than the solving of a problem or the understanding of a primitive of the discipline. We need research that helps establish a scientific and engineering basis for software engineering. To this end, the research methodologies required involve the need to build, analyze and evaluate models of the software processes and products as well as various aspects of the environment in which the software is being built, e.g the people, the organization, etc. It is especially important to study the interactions of these models. The goal is to develop the conceptual scientific foundations of software engineering upon which future researchers can build. This is often a process of discovering and validating small but important concepts that can be applied in many different ways and that can be used to build more complex and advan...
An Organizational Learning Approach to Domain Analysis
- Seventeenth International Conference on Software Engineering
, 1995
"... As the application of computer technology continues to proliferate and diversify, the identification and understanding of application domains is becoming increasingly important to software development methodologies. Domain analysis techniques have been developed to accumulate and formalize the knowl ..."
Abstract
-
Cited by 29 (21 self)
- Add to MetaCart
As the application of computer technology continues to proliferate and diversify, the identification and understanding of application domains is becoming increasingly important to software development methodologies. Domain analysis techniques have been developed to accumulate and formalize the knowledge necessary for successful software reuse. These techniques have been shown to be useful, but suffer from defining the domain too restrictively, burying important relationships deep in domain taxonomies, and prohibiting flexible identification of domains with common issues. Techniques are needed that dynamically detect recurring patterns of activities in development projects. This paper presents a method for developing and refining the knowledge and experience accumulated by a development organization so it can learn from previous efforts. A case-based repository of project experiences supports the re-use and refinement of domain knowledge to reduce duplicate effort, build on successful e...

