Software Processes and Life Cycle Models


Book Description

This book provides a comprehensive overview of the field of software processes, covering in particular the following essential topics: software process modelling, software process and lifecycle models, software process management, deployment and governance, and software process improvement (including assessment and measurement). It does not propose any new processes or methods; rather, it introduces students and software engineers to software processes and life cycle models, covering the different types ranging from “classical”, plan-driven via hybrid to agile approaches. The book is structured as follows: In chapter 1, the fundamentals of the topic are introduced: the basic concepts, a historical overview, and the terminology used. Next, chapter 2 covers the various approaches to modelling software processes and lifecycle models, before chapter 3 discusses the contents of these models, addressing plan-driven, agile and hybrid approaches. The following three chapters address various aspects of using software processes and lifecycle models within organisations, and consider the management of these processes, their assessment and improvement, and the measurement of both software and software processes. Working with software processes normally involves various tools, which are the focus of chapter 7, before a look at current trends in software processes in chapter 8 rounds out the book. This book is mainly intended for graduate students and practicing professionals. It can be used as a textbook for courses and lectures, for self-study, and as a reference guide. When used as a textbook, it may support courses and lectures on software processes, or be used as complementary literature for more basic courses, such as introductory courses on software engineering or project management. To this end, it includes a wealth of examples and case studies, and each chapter is complemented by exercises that help readers gain a better command of the concepts discussed.




Software Process Modeling


Book Description

This book brings together experts to discuss relevant results in software process modeling, and expresses their personal view of this field. It is designed for a professional audience of researchers and practitioners in industry, and graduate-level students.




Software Process Definition and Management


Book Description

The concept of processes is at the heart of software and systems engineering. Software process models integrate software engineering methods and techniques and are the basis for managing large-scale software and IT projects. High product quality routinely results from high process quality. Software process management deals with getting and maintaining control over processes and their evolution. Becoming acquainted with existing software process models is not enough, though. It is important to understand how to select, define, manage, deploy, evaluate, and systematically evolve software process models so that they suitably address the problems, applications, and environments to which they are applied. Providing basic knowledge for these important tasks is the main goal of this textbook. Münch and his co-authors aim at providing knowledge that enables readers to develop useful process models that are suitable for their own purposes. They start with the basic concepts. Subsequently, existing representative process models are introduced, followed by a description of how to create individual models and the necessary means for doing so (i.e., notations and tools). Lastly, different possible usage scenarios for process management are highlighted (e.g. process improvement and software process simulation). Their book is aimed at students and researchers working on software project management, software quality assurance, and software measurement; and at practitioners who are interested in process definition and management for developing, maintaining, and operating software-intensive systems and services.




Software Engineering Processes


Book Description

Software engineering is playing an increasingly significant role in computing and informatics, necessitated by the complexities inherent in large-scale software development. To deal with these difficulties, the conventional life-cycle approaches to software engineering are now giving way to the "process system" approach, encompassing development methods, infrastructure, organization, and management. Until now, however, no book fully addressed process-based software engineering or set forth a fundamental theory and framework of software engineering processes. Software Engineering Processes: Principles and Applications does just that. Within a unified framework, this book presents a comparative analysis of current process models and formally describes their algorithms. It systematically enables comparison between current models, avoidance of ambiguity in application, and simplification of manipulation for practitioners. The authors address a broad range of topics within process-based software engineering and the fundamental theories and philosophies behind them. They develop a software engineering process reference model (SEPRM) to show how to solve the problems of different process domains, orientations, structures, taxonomies, and methods. They derive a set of process benchmarks-based on a series of international surveys-that support validation of the SEPRM model. Based on their SEPRM model and the unified process theory, they demonstrate that current process models can be integrated and their assessment results can be transformed between each other. Software development is no longer just a black art or laboratory activity. It is an industrialized process that requires the skills not just of programmers, but of organization and project managers and quality assurance specialists. Software Engineering Processes: Principles and Applications is the key to understanding, using, and improving upon effective engineering procedures for software development.




Software Process Dynamics


Book Description

This book is designed for professionals and students in software engineering or information technology who are interested in understanding the dynamics of software development in order to assess and optimize their own process strategies. It explains how simulation of interrelated technical and social factors can provide a means for organizations to vastly improve their processes. It is structured for readers to approach the subject from different perspectives, and includes descriptive summaries of the best research and applications.




Model-Driven Software Development


Book Description

Abstraction is the most basic principle of software engineering. Abstractions are provided by models. Modeling and model transformation constitute the core of model-driven development. Models can be refined and finally be transformed into a technical implementation, i.e., a software system. The aim of this book is to give an overview of the state of the art in model-driven software development. Achievements are considered from a conceptual point of view in the first part, while the second part describes technical advances and infrastructures. Finally, the third part summarizes experiences gained in actual projects employing model-driven development. Beydeda, Book and Gruhn put together the results from leading researchers in this area, both from industry and academia. The result is a collection of papers which gives both researchers and graduate students a comprehensive overview of current research issues and industrial forefront practice, as promoted by OMG’s MDA initiative.




Handbook of Software Engineering & Knowledge Engineering


Book Description

This is the first handbook to cover comprehensively both software engineering and knowledge engineering -- two important fields that have become interwoven in recent years. Over 60 international experts have contributed to the book. Each chapter has been written in such a way that a practitioner of software engineering and knowledge engineering can easily understand and obtain useful information. Each chapter covers one topic and can be read independently of other chapters, providing both a general survey of the topic and an in-depth exposition of the state of the art. Practitioners will find this handbook useful when looking for solutions to practical problems. Researchers can use it for quick access to the background, current trends and most important references regarding a certain topic.The handbook consists of two volumes. Volume One covers the basic principles and applications of software engineering and knowledge engineering.Volume Two will cover the basic principles and applications of visual and multimedia software engineering, knowledge engineering, data mining for software knowledge, and emerging topics in software engineering and knowledge engineering.




Software Process Improvement and Management: Approaches and Tools for Practical Development


Book Description

Over the past decade, there has been an increase in attention and focus on the discipline of software engineering. Software engineering tools and techniques have been developed to gain more predictable quality improvement results. Process standards such as Capability Maturity Model Integration (CMMI), ISO 9000, Software Process Improvement and Capability dEtermination (SPICE), Agile Methodologies, and others have been proposed to assist organizations to achieve more predictable results by incorporating these proven standards and procedures into their software process. Software Process Improvement and Management: Approaches and Tools for Practical Development offers the latest research and case studies on software engineering and development. The production of new process standards assist organizations and software engineers in adding a measure of predictability to the software process. Companies can gain a decisive competitive advantage by applying these new and theoretical methodologies in real-world scenarios. Researchers, scholars, practitioners, students, and anyone interested in the field of software development and design should access this book as a major compendium of the latest research in the field.




Software Process Improvement for Small and Medium Enterprises: Techniques and Case Studies


Book Description

Software engineering is of major importance to all enterprises; however, the key areas of software quality and software process improvement standards and models are currently geared toward large organizations, where most software organizations are small and medium enterprises. Software Process Improvement for Small and Medium Enterprises: Techniques and Case Studies offers practical and useful guidelines, models, and techniques for improving software processes and products for small and medium enterprises, utilizing the authoritative, demonstrative tools of case studies and lessons learned to provide academics, scholars, and practitioners with an invaluable research source.




Software Process: Principles, Methodology, and Technology


Book Description

1 Jean Claude Derniame Software process technology is an emerging and strategic area that has already reached a reasonable degree of maturity, delivering products and significant industrial expe riences. This technology aims at supporting the software production process by pro viding the means to model, analyse, improve, measure, and whenever it is reasonable and convenient, to automate software production activities. In recent years, this tech nology has proved to be effective in the support of many business activities not directly related to software production, but relying heavily on the concept of process (i. e. all the applications traditionally associated with workflow management). This book concentrates on the core technology of software processes, its principles and concepts as well as the technical aspect of software process support. The contributions to this book are the collective work of the Promoter 2 European Working Group. This grouping of 13 academic and 3 industrial partners is the suc cessor of Promoter, a working group responsible for creating a European software process community. Promoter 2 aims at exploiting this emerging community to collec tively develop remaining open issues, to coordinate activities and to assist in the dis semination of results. The title “Software Process Modelling and Technology” [Fink94] was produced during Promoter 1. Being “project based”, it presented the main findings and proposals of the different projects then being undertaken by the partners.