Model-Based Development


Book Description

A Proven Development Methodology That Delivers On the Promise of Model-Based Approaches Software continues to become more and more complex, while software consumers’ expectations for performance, reliability, functionality, and speed-to-market are also growing exponentially. H. S. Lahman shows how to address all these challenges by integrating proven object-oriented techniques with a powerful new methodology. Model-Based Development represents Lahman’s half century of experience as a pioneering software innovator. Building on Shlaer-Mellor’s work, Lahman’s unique approach fully delivers on the promise of models and is firmly grounded in the realities of contemporary development, design, and architecture. The book introduces the methodology’s core principles, showing how it separates each of a project’s concerns, enabling practitioners to optimize each domain for its unique needs and characteristics. Next, it demonstrates how to perform more effective object-oriented analysis, emphasizing abstraction, disciplined partitioning, modeling invariants, finite state machines, and efficient communications among program units. Coverage includes How we got here: a historical perspective and pragmatic review of object principles Problem space versus computing space: reflecting crucial distinctions between customer and computer environments in your designs Application partitioning: why it matters and how do it well Building static models that describe basic application structure Modeling classes, class responsibilities, associations, and both referential and knowledge integrity Creating dynamic models that describe behavior via finite state machines Successfully using abstract action languages (AALs) and action data flow diagrams (ADFDs) Throughout, Lahman illuminates theoretical issues in practical terms, explaining why things are done as they are, without demanding rigorous math. His focus is on creating implementation-independent models that resolve functional requirements completely, precisely, and unambiguously. Whether you’re a developer, team leader, architect, or designer, Lahman’s techniques will help you build software that’s more robust, easier to maintain, supports larger-scale reuse, and whose specification is rigorous enough to enable full-scale automatic code generation.




Model-based Development and Evolution of Information Systems


Book Description

There is no single approach to modelling and model-based systems development that is best for all possible situations. Therefore, a high-level overview is needed in order to evaluate the options and identify the optimal approach. This unique textbook/reference introduces and describes in detail the SEQUAL framework for understanding the quality of models and modelling languages, including the numerous specialisations of the generic framework, and the various ways in which this can be used for different applications. Examples are provided from the application of SEQUAL in industrial and governmental settings. Topics and features:Contains case studies, chapter summaries, review questions, problems and exercises throughout the text, in addition to Appendices on terminology and abbreviationsPresents a thorough introduction to the most important concepts in conceptual modelling, including the underlying philosophical outlook on the quality of modelsDescribes the basic tasks and model types in information systems development and evolution, and the main methodologies for mixing different phases of information system developmentProvides an overview of the general mechanisms and perspectives used in conceptual modellingPredicts future trends in technological development, and discusses how the role of modelling can be envisaged in this landscapeThis didactic guide is essential reading for postgraduate students of computer science, software engineering and information systems wishing to learn more about conceptual modelling in their preparation for professional practice. Developers of information systems will also find the book an ideal reference to support their professional activity. Dr. John Krogstie is a Professor of Information Systems in the Department of Computer and Information Science at the Norwegian University of Science and Technology, Trondheim, Norway.




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.




Model-Driven Software Development: Integrating Quality Assurance


Book Description

Covers important concepts, issues, trends, methodologies, and technologies in quality assurance for model-driven software development.




Model-Driven Software Engineering in Practice


Book Description

This book discusses how model-based approaches can improve the daily practice of software professionals. This is known as Model-Driven Software Engineering (MDSE) or, simply, Model-Driven Engineering (MDE). MDSE practices have proved to increase efficiency and effectiveness in software development, as demonstrated by various quantitative and qualitative studies. MDSE adoption in the software industry is foreseen to grow exponentially in the near future, e.g., due to the convergence of software development and business analysis. The aim of this book is to provide you with an agile and flexible tool to introduce you to the MDSE world, thus allowing you to quickly understand its basic principles and techniques and to choose the right set of MDSE instruments for your needs so that you can start to benefit from MDSE right away. The book is organized into two main parts. The first part discusses the foundations of MDSE in terms of basic concepts (i.e., models and transformations), driving principles, application scenarios, and current standards, like the well-known MDA initiative proposed by OMG (Object Management Group) as well as the practices on how to integrate MDSE in existing development processes. The second part deals with the technical aspects of MDSE, spanning from the basics on when and how to build a domain-specific modeling language, to the description of Model-to-Text and Model-to-Model transformations, and the tools that support the management of MDSE projects. The second edition of the book features: a set of completely new topics, including: full example of the creation of a new modeling language (IFML), discussion of modeling issues and approaches in specific domains, like business process modeling, user interaction modeling, and enterprise architecture complete revision of examples, figures, and text, for improving readability, understandability, and coherence better formulation of definitions, dependencies between concepts and ideas addition of a complete index of book content In addition to the contents of the book, more resources are provided on the book's website http://www.mdse-book.com, including the examples presented in the book.




Model-Driven Engineering and Software Development


Book Description

This book constitutes thoroughly revised and selected papers from the 8th International Conference on Model-Driven Engineering and Software Development, MODELSWARD 2020, held in Valletta, Malta, in February 2020. The 15 revised and extended papers presented in this volume were carefully reviewed and selected from 66 submissions. They present recent research results and development activities in using models and model driven engineering techniques for software development. The papers are organized in topical sections on​ methodologies, processes and platforms; applications and software development; modeling languages, tools and architectures.




Model-Driven Engineering and Software Development


Book Description

This book constitutes thoroughly revised and selected papers from the 7th International Conference on Model-Driven Engineering and Software Development, MODELSWARD 2019, held in Prague, Czech Republic, in February 2019. The 16 thoroughly revised and extended papers presented in this volume were carefully reviewed and selected from 76 submissions. They address some of the most relevant challenges being faced by researchers and practitioners in the field of model-driven engineering and software development and cover topics like language design and tooling; programming support tools; code and text generation from models, behavior modeling and analysis; model transformations and multi-view modeling; as well as applications of MDD and its related techniques to cyber-physical systems, cyber security, IoT, autonomous vehicles and healthcare.




Model-Based Development and Evolution of Information Systems


Book Description

This book introduces and describes in detail the SEQUAL framework for understanding the quality of models and modeling languages, including the numerous specializations of the generic framework, and the various ways in which this can be used for different applications. Topics and features: contains case studies, chapter summaries, review questions, problems and exercises throughout the text, in addition to Appendices on terminology and abbreviations; presents a thorough introduction to the most important concepts in conceptual modeling, including the underlying philosophical outlook on the quality of models; describes the basic tasks and model types in information systems development and evolution, and the main methodologies for mixing different phases of information system development; provides an overview of the general mechanisms and perspectives used in conceptual modeling; predicts future trends in technological development, and discusses how the role of modeling can be envisaged in this landscape.




Model-Based Design for Embedded Systems


Book Description

The demands of increasingly complex embedded systems and associated performance computations have resulted in the development of heterogeneous computing architectures that often integrate several types of processors, analog and digital electronic components, and mechanical and optical components—all on a single chip. As a result, now the most prominent challenge for the design automation community is to efficiently plan for such heterogeneity and to fully exploit its capabilities. A compilation of work from internationally renowned authors, Model-Based Design for Embedded Systems elaborates on related practices and addresses the main facets of heterogeneous model-based design for embedded systems, including the current state of the art, important challenges, and the latest trends. Focusing on computational models as the core design artifact, this book presents the cutting-edge results that have helped establish model-based design and continue to expand its parameters. The book is organized into three sections: Real-Time and Performance Analysis in Heterogeneous Embedded Systems, Design Tools and Methodology for Multiprocessor System-on-Chip, and Design Tools and Methodology for Multidomain Embedded Systems. The respective contributors share their considerable expertise on the automation of design refinement and how to relate properties throughout this refinement while enabling analytic and synthetic qualities. They focus on multi-core methodological issues, real-time analysis, and modeling and validation, taking into account how optical, electronic, and mechanical components often interface. Model-based design is emerging as a solution to bridge the gap between the availability of computational capabilities and our inability to make full use of them yet. This approach enables teams to start the design process using a high-level model that is gradually refined through abstraction levels to ultimately yield a prototype. When executed well, model-based design encourages enhanced performance and quicker time to market for a product. Illustrating a broad and diverse spectrum of applications such as in the automotive aerospace, health care, consumer electronics, this volume provides designers with practical, readily adaptable modeling solutions for their own practice.




Model-Driven Software Development


Book Description

Model-Driven Software Development (MDSD) is currently a highly regarded development paradigm among developers and researchers. With the advent of OMG's MDA and Microsoft's Software Factories, the MDSD approach has moved to the centre of the programmer's attention, becoming the focus of conferences such as OOPSLA, JAOO and OOP. MDSD is about using domain-specific languages to create models that express application structure or behaviour in an efficient and domain-specific way. These models are subsequently transformed into executable code by a sequence of model transformations. This practical guide for software architects and developers is peppered with practical examples and extensive case studies. International experts deliver: * A comprehensive overview of MDSD and how it relates to industry standards such as MDA and Software Factories. * Technical details on meta modeling, DSL construction, model-to-model and model-to-code transformations, and software architecture. * Invaluable insight into the software development process, plus engineering issues such as versioning, testing and product line engineering. * Essential management knowledge covering economic and organizational topics, from a global perspective. Get started and benefit from some practical support along the way!