Model-Based Software Performance Analysis


Book Description

Poor performance is one of the main quality-related shortcomings that cause software projects to fail. Thus, the need to address performance concerns early during the software development process is fully acknowledged, and there is a growing interest in the research and software industry communities towards techniques, methods and tools that permit to manage system performance concerns as an integral part of software engineering. Model-based software performance analysis introduces performance concerns in the scope of software modeling, thus allowing the developer to carry on performance analysis throughout the software lifecycle. With this book, Cortellessa, Di Marco and Inverardi provide the cross-knowledge that allows developers to tackle software performance issues from the very early phases of software development. They explain the basic concepts of performance analysis and describe the most representative methodologies used to annotate and transform software models into performance models. To this end, they go all the way from performance primers through software and performance modeling notations to the latest transformation-based methodologies. As a result, their book is a self-contained reference text on software performance engineering, from which different target groups will benefit: professional software engineers and graduate students in software engineering will learn both basic concepts of performance modeling and new methodologies; while performance specialists will find out how to investigate software performance model building.







Performance Analysis of Real-Time Embedded Software


Book Description

Embedded systems are characterized by the presence of processors running application-specific software. Recent years have seen a large growth of such systems, and this trend is projected to continue with the growth of systems on a chip. Many of these systems have strict performance and cost requirements. To design these systems, sophisticated timing analysis tools are needed to accurately determine the extreme case (best case and worst case) performance of the software components. Existing techniques for this analysis have one or more of the following limitations: they cannot model complicated programs they cannot model advanced micro-architectural features of the processor, such as cache memories and pipelines they cannot be easily retargeted for new hardware platforms. In Performance Analysis of Real-Time Embedded Software, a new timing analysis technique is presented to overcome the above limitations. The technique determines the bounds on the extreme case (best case and worst case) execution time of a program when running on a given hardware system. It partitions the problem into two sub-problems: program path analysis and microarchitecture modeling. Performance Analysis of Real-Time Embedded Software will be of interest to Design Automation professionals as well as designers of circuits and systems.







Model-Based Engineering with AADL


Book Description

Conventional build-then-test practices are making today’s embedded, software-reliant systems unaffordable to build. In response, more than thirty leading industrial organizations have joined SAE (formerly, the Society of Automotive Engineers) to define the SAE Architecture Analysis & Design Language (AADL) AS-5506 Standard, a rigorous and extensible foundation for model-based engineering analysis practices that encompass software system design, integration, and assurance. Using AADL, you can conduct lightweight and rigorous analyses of critical real-time factors such as performance, dependability, security, and data integrity. You can integrate additional established and custom analysis/specification techniques into your engineering environment, developing a fully unified architecture model that makes it easier to build reliable systems that meet customer expectations. Model-Based Engineering with AADL is the first guide to using this new international standard to optimize your development processes. Coauthored by Peter H. Feiler, the standard’s author and technical lead, this introductory reference and tutorial is ideal for self-directed learning or classroom instruction, and is an excellent reference for practitioners, including architects, developers, integrators, validators, certifiers, first-level technical leaders, and project managers. Packed with real-world examples, it introduces all aspects of the AADL notation as part of an architecture-centric, model-based engineering approach to discovering embedded software systems problems earlier, when they cost less to solve. Throughout, the authors compare AADL to other modeling notations and approaches, while presenting the language via a complete case study: the development and analysis of a realistic example system through repeated refinement and analysis. Part One introduces both the AADL language and core Model-Based Engineering (MBE) practices, explaining basic software systems modeling and analysis in the context of an example system, and offering practical guidelines for effectively applying AADL. Part Two describes the characteristics of each AADL element, including their representations, applicability, and constraints. The Appendix includes comprehensive listings of AADL language elements, properties incorporated in the AADL standard, and a description of the book’s example system.




Composing Model-Based Analysis Tools


Book Description

This book presents joint works of members of the software engineering and formal methods communities with representatives from industry, with the goal of establishing the foundations for a common understanding of the needs for more flexibility in model-driven engineering. It is based on the Dagstuhl Seminar 19481 „Composing Model-Based Analysis Tools“, which was held November 24 to 29, 2019, at Schloss Dagstuhl, Germany, where current challenges, their background and concepts to address them were discussed. The book is structured in two parts, and organized around five fundamental core aspects of the subject: (1) the composition of languages, models and analyses; (2) the integration and orchestration of analysis tools; (3) the continual analysis of models; (4) the exploitation of results; and (5) the way to handle uncertainty in model-based developments. After a chapter on foundations and common terminology and a chapter on challenges in the field, one chapter is devoted to each of the above five core aspects in the first part of the book. These core chapters are accompanied by additional case studies in the second part of the book, in which specific tools and experiences are presented in more detail to illustrate the concepts and ideas previously introduced. The book mainly targets researchers in the fields of software engineering and formal methods as well as software engineers from industry with basic familiarity with quality properties, model-driven engineering and analysis tools. From reading the book, researchers will receive an overview of the state-of-the-art and current challenges, research directions, and recent concepts, while practitioners will be interested to learn about concrete tools and practical applications in the context of case studies.










Handbook of Research on Emerging Advancements and Technologies in Software Engineering


Book Description

Advanced approaches to software engineering and design are capable of solving complex computational problems and achieving standards of performance that were unheard of only decades ago. Handbook of Research on Emerging Advancements and Technologies in Software Engineering presents a comprehensive investigation of the most recent discoveries in software engineering research and practice, with studies in software design, development, implementation, testing, analysis, and evolution. Software designers, architects, and technologists, as well as students and educators, will find this book to be a vital and in-depth examination of the latest notable developments within the software engineering community.




Formal Methods for Model-Driven Engineering


Book Description

This book presents 11 tutorial lectures by leading researchers given at the 12th edition of the International School on Formal Methods for the Design of Computer, Communication and Software Systems, SFM 2012, held in Bertinoro, Italy, in June 2012. SFM 2012 was devoted to model-driven engineering and covered several topics including modeling languages; model transformations, functional and performance modeling and analysis; and model evolution management.