Software Evolution and Feedback


Book Description

Evolution of software has long been recognized as one of the most problematic and challenging areas in the field of software engineering, as evidenced by the high, often up to 60-80%, life-cycle costs attributed to this activity over the life of a software system. Studies of software evolution are central to the understanding and practice of software development. Yet it has received relatively little attention in the field of software engineering. This book focuses on topics aimed at giving a scientific insight into the aspect of software evolution and feedback. In summary, the book covers conceptual, phenomenological, empirical, technological and theoretical aspects of the field of software evolution - with contributions from the leading experts. This book delivers an up-to-date scientific understanding of what software evolution is, to show why it is inevitable for real world applications, and it demonstrates the role of feedback in software development and maintenance. The book also addresses some of the phenomenological and technological underpinnings and includes rules and guidelines for increased software evolvability and, in general, sustainability of the evolution process. Software Evolution and Feedback provides a long overdue, scientific focus on software evolution and the role of feedback in the software process, making this the indispensable guide for all software practitioners, researchers and managers in the software industry.




Software State-of-the-art


Book Description

The papers were selected from more than a dozen sources, including IEEE Computer, Software -- Practice & Experience, IEEE Transactions on Software Engineering, and Communications of the ACM.







ACM Transactions on Computer Systems


Book Description

Presents research and development results on the design, specification, realization, behavior, and use of computer systems, systems architectures, operating systems, distributed systems, and computer networks.




Generative and Component-Based Software Engineering


Book Description

In the past two years, the Smalltalk and Java in Industry and Education C- ference (STJA) featured a special track on generative programming, which was organized by the working group \Generative and Component-Based Software Engineering" of the \Gesellschaft fur ̈ Informatik" FG 2.1.9 \Object-Oriented Software Engineering." This track covered a wide range of related topics from domain analysis, software system family engineering, and software product - nes, to extendible compilers and active libraries. The talks and keynotes directed towards this new software engineering paradigm received much attention and - terest from the STJA audience. Hence the STJA organizers suggested enlarging this track, making it more visible and open to wider, international participation. This is how the GCSE symposium was born. The rst GCSE symposium attracted 39 submissions from all over the world. This impressive number demonstrates the international interest in generative programming and related elds. After a careful review by the program comm- tee, fteen papers were selected for presentation. We are very grateful to the members of the program committee, all of them renowned experts, for their dedication in preparing thorough reviews of the submissions. Special thanks go to Elke Pulvermuller ̈ and Andreas Speck, who proposed and organized a special conference event, the Young Researches Workshop (YRW). This workshop provided a unique opportunity for young scientists and Ph.D.




Formal Methods and Testing


Book Description

This book constitutes the thoroughly refereed and peer-reviewed outcome of the Formal Methods and Testing (FORTEST) network - formed as a network established under UK EPSRC funding that investigated the relationships between formal (and semi-formal) methods and software testing - now being a subject group of two BCS Special Interest Groups: Formal Aspects of Computing Science (BCS FACS) and Special Interest Group in Software Testing (BCS SIGIST). Each of the 12 chapters in this book describes a way in which the study of formal methods and software testing can be combined in a manner that brings the benefits of formal methods (e.g., precision, clarity, provability) with the advantages of testing (e.g., scalability, generality, applicability).







Non-Functional Requirements in Software Engineering


Book Description

Non-Functional Requirements in Software Engineering presents a systematic and pragmatic approach to `building quality into' software systems. Systems must exhibit software quality attributes, such as accuracy, performance, security and modifiability. However, such non-functional requirements (NFRs) are difficult to address in many projects, even though there are many techniques to meet functional requirements in order to provide desired functionality. This is particularly true since the NFRs for each system typically interact with each other, have a broad impact on the system and may be subjective. To enable developers to systematically deal with a system's diverse NFRs, this book presents the NFR Framework. Structured graphical facilities are offered for stating NFRs and managing them by refining and inter-relating NFRs, justifying decisions, and determining their impact. Since NFRs might not be absolutely achieved, they may simply be satisfied sufficiently (`satisficed'). To reflect this, NFRs are represented as `softgoals', whose interdependencies, such as tradeoffs and synergy, are captured in graphs. The impact of decisions is qualitatively propagated through the graph to determine how well a chosen target system satisfices its NFRs. Throughout development, developers direct the process, using their expertise while being aided by catalogues of knowledge about NFRs, development techniques and tradeoffs, which can all be explored, reused and customized. Non-Functional Requirements in Software Engineering demonstrates the applicability of the NFR Framework to a variety of NFRs, domains, system characteristics and application areas. This will help readers apply the Framework to NFRs and domains of particular interest to them. Detailed treatments of particular NFRs - accuracy, security and performance requirements - along with treatments of NFRs for information systems are presented as specializations of the NFR Framework. Case studies of NFRs for a variety of information systems include credit card and administrative systems. The use of the Framework for particular application areas is illustrated for software architecture as well as enterprise modelling. Feedback from domain experts in industry and government provides an initial evaluation of the Framework and some case studies. Drawing on research results from several theses and refereed papers, this book's presentation, terminology and graphical notation have been integrated and illustrated with many figures. Non-Functional Requirements in Software Engineering is an excellent resource for software engineering practitioners, researchers and students.




INFOR.


Book Description