Program Comprehension


Book Description

Based on the 9th IEEE International Workshop on Program Comprehension (IWPC 2001), this volume covers such topics as: software quality analysis; architecture recovery; reverse engineering; tools and environments; program comprehension studies; metrics and slicing; and clustering techniques.




Software Visualization


Book Description

This book presents the state of the art in software visualization and thus attempts to establish it as a field on its own. Based on a seminar held at Dagstuhl Castle in May 2001, the book offers topical sections on: - algorithm animation - software visualization and software engineering - software visualization and education - graphs in software visualization - and perspectives of software visualization. Each section starts with an introduction surveying previous and current work and providing extensive bibliographies.




Open Source Systems: Grounding Research


Book Description

This book constitutes the refereed proceedings of the 7th International IFIP WG 2.13 Conference on Open Source Systems, OSS 2010, held in Salvador, Brazil, in October 2011. The 20 revised full papers presented together with 4 industrial full papers, 8 lightning talks and 2 workshop papers were carefully reviewed and selected from 56 submissions. The papers are organized in the following topical sections: OSS quality and reliability, OSS products, review of technologies of and for OSS, knowledge and research building in OSS, OSS reuse, integration, and compliance, OSS value and economics, OSS adoption in industry, and mining OSS repositories.




Software Language Engineering


Book Description

This book constitutes the thoroughly refereed post-conference proceedings of the Second International Conference on Software Language Engineering, SLE 2009, held in Denver, CO, USA, in October 2009. The 15 revised full papers and 6 revised short paper presented together with 2 tool demonstration papers were carefully reviewed and selected from 75 initial submissions. The papers are organized in topical sections on language and model evolution, variability and product lines, parsing, compilation, and demo, modularity in languages, and metamodeling and demo.




Trustworthy Software Development Processes


Book Description

This volume contains papers presented at the International Conference on Software Process (ICSP 2009) held in Vancouver, Canada, during May 16-17, 2009. ICSP 2009 was the third conference of the ICSP series, continuing the software process workshops from 25 years ago. The theme of ICSP 2009 was “Processes to Develop Trustworthy Software.” Software development takes place in a dynamic context of frequently changing technologies and limited resources. Teams worldwide are under increasing pressure to deliver trustworthy software products more quickly and with higher levels of quality. At the same time, global competition is forcing software development organizations to cut costs by rationalizing processes, outsourcing part or all of their activities, re- ing existing software in new or modified applications and evolving existing systems to meet new needs, while still minimizing the risk of projects failing to deliver. To address these difficulties, new or modified processes are emerging including lean and agile methods, plan-based product line development, and increased integration with systems engineering processes. Papers present research and real-world experience in many areas of software and systems processes impacting trustworthy software including: new software devel- ment approaches; software quality; integrating software and business processes; CMMI and other process improvement initiatives; simulation and modeling of so- ware processes; techniques for software process representation and analysis; and process tools and metrics.




Universal Traceability. A Comprehensive, Generic, Technology-Independent, and Semantically Rich Approach


Book Description

Traceability describes the ability of stakeholders to understand and follow relationships between artifacts that play some role in software development. It is essential for many development tasks, e.g., quality assurance, requirements management, or software maintenance. Aiming to overcome various deficiencies of existing traceability concepts, this book presents a universal approach describing required features of traceability solutions. This includes a technology-independent, generic template for the definition of semantically rich traceability relationship types and technology-independent patterns for the retrieval of traceability information, reflecting generic problems common to traceability applications. The universal approach is implemented on the basis of two concrete technologies which facilitate comprehensive traceability: the TGraph approach and OWL ontologies. The applicability of the approach is shown by three case studies dealing with the reuse of software artifacts, process model refinement, and requirements management, respectively.




Software Evolution and Maintenance


Book Description

Provides students and engineers with the fundamental developments and common practices of software evolution and maintenance Software Evolution and Maintenance: A Practitioner’s Approach introduces readers to a set of well-rounded educational materials, covering the fundamental developments in software evolution and common maintenance practices in the industry. Each chapter gives a clear understanding of a particular topic in software evolution, and discusses the main ideas with detailed examples. The authors first explain the basic concepts and then drill deeper into the important aspects of software evolution. While designed as a text in an undergraduate course in software evolution and maintenance, the book is also a great resource forsoftware engineers, information technology professionals, and graduate students in software engineering. Based on the IEEE SWEBOK (Software Engineering Body of Knowledge) Explains two maintenance standards: IEEE/EIA 1219 and ISO/IEC14764 Discusses several commercial reverse and domain engineering toolkits Slides for instructors are available online Software Evolution and Maintenance: A Practitioner’s Approach equips readers with a solid understanding of the laws of software engineering, evolution and maintenance models, reengineering techniques, legacy information systems, impact analysis, refactoring, program comprehension, and reuse.




Software and Systems Traceability


Book Description

Software and Systems Traceability provides a comprehensive description of the practices and theories of software traceability across all phases of the software development lifecycle. The term software traceability is derived from the concept of requirements traceability. Requirements traceability is the ability to track a requirement all the way from its origins to the downstream work products that implement that requirement in a software system. Software traceability is defined as the ability to relate the various types of software artefacts created during the development of software systems. Traceability relations can improve the quality of a product being developed, and reduce the time and cost of development. More specifically, traceability relations can support evolution of software systems, reuse of parts of a system by comparing components of new and existing systems, validation that a system meets its requirements, understanding of the rationale for certain design and implementation decisions, and analysis of the implications of changes in the system.




Advances in Computers


Book Description

Advances in Computers remains at the forefront in presenting the new developments in the ever-changing field of information technology. Since 1960, Advances in Computers has chronicled the constantly shifting theories and methods of this technology that greatly shape our lives today. Volume 56 presents eight chapters that describe how the software, hardware and applications of computers are changing the use of computers during the early part of the 21st century: Software Evolution and the Staged Model of the Software Lifecycle; Embedded Software; Empirical Studies of Quality Models in Object-Oriented Systems; Software Fault Prevention by Language Choice; Quantum computing and communication; Exception Handling; Breaking the Robustness Barrier: Recent Progress on the Design of Robust Multimodal Systems; Using Data Mining to Discover the Preferences of Computer Criminals. As the longest-running continuous serial on computers, Advances in Computers presents technologies that will affect the industry in the years to come, covering hot topics from fundamentals to applications. Additionally, readers benefit from contributions of both academic and industry professionals of the highest caliber. - Software Evolution and the Staged Model of the Software Lifecycle - Embedded Software - Empirical Studies of Quality Models in Object-Oriented Systems - Software Fault Prevention by Language Choice - Quantum computing and communication - Exception Handling - Breaking the Robustness Barrier: Recent Progress on the Design of Robust Multimodal Systems - Using Data Mining to Discover the Preferences of Computer Criminals