This is an introduction to experimentation and experimental evaluation with a focus on software engineering. It aims to provide guidelines for experiments evaluating methods, techniques and tools in software engineering. Using a process perspective, the focus is on the steps gone through to perform experiments, quasi-experiments and other empirical studies.
This is an introduction to experimentation and experimental evaluation with a focus on software engineering. It aims to provide guidelines for experim...
Requirements engineering is the process by which the requirements for software systems are gathered, analyzed, documented, and managed throughout their complete lifecycle. Traditionally it has been concerned with technical goals for, functions of, and constraints on software systems. Aurum and Wohlin, however, argue that it is no longer appropriate for software systems professionals to focus only on functional and non-functional aspects of the intended system and to somehow assume that organizational context and needs are outside their remit. Instead, they call for a broader perspective in...
Requirements engineering is the process by which the requirements for software systems are gathered, analyzed, documented, and managed throughout t...
Software development is a complex problem-solving activity with a high level of uncertainty. There are many technical challenges concerning scheduling, cost estimation, reliability, performance, etc, which are further aggravated by weaknesses such as changing requirements, team dynamics, and high staff turnover. Thus the management of knowledge and experience is a key means of systematic software development and process improvement. "Managing Software Engineering Knowledge" illustrates several theoretical examples of this vision and solutions applied to industrial practice. It is...
Software development is a complex problem-solving activity with a high level of uncertainty. There are many technical challenges concerning schedul...
Requirements engineering is the process by which the requirements for software systems are gathered, analyzed, documented, and managed throughout their complete lifecycle. Traditionally it has been concerned with technical goals for, functions of, and constraints on software systems. Aurum and Wohlin, however, argue that it is no longer appropriate for software systems professionals to focus only on functional and non-functional aspects of the intended system and to somehow assume that organizational context and needs are outside their remit. Instead, they call for a broader perspective in...
Requirements engineering is the process by which the requirements for software systems are gathered, analyzed, documented, and managed throughout t...
It is my belief that software engineers not only need to know software engineering methods and processes, but that they also should know how to assess them. Conse quently, I have taught principles of experimentation and empirical studies as part of the software engineering curriculum. Until now, this meant selecting a text from another discipline, usually psychology, and augmenting it with journal or confer ence papers that provide students with software engineering examples of experi ments and empirical studies. This book fills an important gap in the software engineering literature: it pro...
It is my belief that software engineers not only need to know software engineering methods and processes, but that they also should know how to assess...
By bringing together various current directions, Software Project Management in a Changing World focuses on how people and organizations can make their processes more change-adaptive. The selected chapters closely correspond to the project management knowledge areas introduced by the Project Management Body of Knowledge, including its extension for managing software projects.
The contributions are grouped into four parts, preceded by a general introduction. Part I "Fundamentals" provides in-depth insights into fundamental topics including resource allocation, cost estimation...
By bringing together various current directions, Software Project Management in a Changing World focuses on how people and organizations ca...
Like other sciences and engineering disciplines, software engineering requires a cycle of model building, experimentation, and learning. Experiments are valuable tools for all software engineers who are involved in evaluating and choosing between different methods, techniques, languages and tools.
The purpose of Experimentation in Software Engineering is to introduce students, teachers, researchers, and practitioners to empirical studies in software engineering, using controlled experiments. The introduction to experimentation is provided through a process perspective, and the focus is...
Like other sciences and engineering disciplines, software engineering requires a cycle of model building, experimentation, and learning. Experiment...
By bringing together various current directions, Software Project Management in a Changing World focuses on how people and organizations can make their processes more change-adaptive. The selected chapters closely correspond to the project management knowledge areas introduced by the Project Management Body of Knowledge, including its extension for managing software projects.
The contributions are grouped into four parts, preceded by a general introduction. Part I Fundamentals provides in-depth insights into fundamental topics including resource allocation, cost estimation...
By bringing together various current directions, Software Project Management in a Changing World focuses on how people and organizations ca...