An Empirical Study of Architecture-centric Software Development
Title | An Empirical Study of Architecture-centric Software Development PDF eBook |
Author | Samiksha Potey |
Publisher | |
Pages | |
Release | 2020 |
Genre | |
ISBN |
Architecture-centric development is a novel software paradigm that uses software architecture as a centerpiece to drive other development activities, such as program development and testing. Existing studies in this area are limited to the conceptual analysis of architecture-centric development. In this project, we propose to perform an empirical study based on an existing architecture mapping approach. To that end, we used a video game application as a case study. We recovered and developed an architectural model for this game application using the ArchStudio and xMapper software toolset. We made some modifications to the game using the architecture-centric approach. The result shows that architecture-centric development is applicable to the implementation of a real software system and can automatically maintain architecture-implementation conformance. The study allows us to further analyze architecture-centric development practically for other different applications. The architecture-based system that we developed can also facilitate the future research of software architecture.
Relating System Quality and Software Architecture
Title | Relating System Quality and Software Architecture PDF eBook |
Author | Ivan Mistrik |
Publisher | Morgan Kaufmann |
Pages | 421 |
Release | 2014-07-30 |
Genre | Computers |
ISBN | 0124171680 |
System Quality and Software Architecture collects state-of-the-art knowledge on how to intertwine software quality requirements with software architecture and how quality attributes are exhibited by the architecture of the system. Contributions from leading researchers and industry evangelists detail the techniques required to achieve quality management in software architecting, and the best way to apply these techniques effectively in various application domains (especially in cloud, mobile and ultra-large-scale/internet-scale architecture) Taken together, these approaches show how to assess the value of total quality management in a software development process, with an emphasis on architecture. The book explains how to improve system quality with focus on attributes such as usability, maintainability, flexibility, reliability, reusability, agility, interoperability, performance, and more. It discusses the importance of clear requirements, describes patterns and tradeoffs that can influence quality, and metrics for quality assessment and overall system analysis. The last section of the book leverages practical experience and evidence to look ahead at the challenges faced by organizations in capturing and realizing quality requirements, and explores the basis of future work in this area. Explains how design decisions and method selection influence overall system quality, and lessons learned from theories and frameworks on architectural quality Shows how to align enterprise, system, and software architecture for total quality Includes case studies, experiments, empirical validation, and systematic comparisons with other approaches already in practice.
Supporting Architecture-centric Software Development Through Code Generation
Title | Supporting Architecture-centric Software Development Through Code Generation PDF eBook |
Author | Nobuyuki Takeo |
Publisher | |
Pages | 168 |
Release | 2009 |
Genre | |
ISBN |
Agile Software Architecture
Title | Agile Software Architecture PDF eBook |
Author | Muhammad Ali Babar |
Publisher | Newnes |
Pages | 433 |
Release | 2013-11-27 |
Genre | Computers |
ISBN | 0124078850 |
Agile software development approaches have had significant impact on industrial software development practices. Today, agile software development has penetrated to most IT companies across the globe, with an intention to increase quality, productivity, and profitability. Comprehensive knowledge is needed to understand the architectural challenges involved in adopting and using agile approaches and industrial practices to deal with the development of large, architecturally challenging systems in an agile way. Agile Software Architecture focuses on gaps in the requirements of applying architecture-centric approaches and principles of agile software development and demystifies the agile architecture paradox. Readers will learn how agile and architectural cultures can co-exist and support each other according to the context. Moreover, this book will also provide useful leads for future research in architecture and agile to bridge such gaps by developing appropriate approaches that incorporate architecturally sound practices in agile methods. - Presents a consolidated view of the state-of-art and state-of-practice as well as the newest research findings - Identifies gaps in the requirements of applying architecture-centric approaches and principles of agile software development and demystifies the agile architecture paradox - Explains whether or not and how agile and architectural cultures can co-exist and support each other depending upon the context - Provides useful leads for future research in both architecture and agile to bridge such gaps by developing appropriate approaches, which incorporate architecturally sound practices in agile methods
Economics-Driven Software Architecture
Title | Economics-Driven Software Architecture PDF eBook |
Author | Ivan Mistrik |
Publisher | Elsevier |
Pages | 380 |
Release | 2014-06-03 |
Genre | Computers |
ISBN | 0124105076 |
Economics-driven Software Architecture presents a guide for engineers and architects who need to understand the economic impact of architecture design decisions: the long term and strategic viability, cost-effectiveness, and sustainability of applications and systems. Economics-driven software development can increase quality, productivity, and profitability, but comprehensive knowledge is needed to understand the architectural challenges involved in dealing with the development of large, architecturally challenging systems in an economic way. This book covers how to apply economic considerations during the software architecting activities of a project. Architecture-centric approaches to development and systematic evolution, where managing complexity, cost reduction, risk mitigation, evolvability, strategic planning and long-term value creation are among the major drivers for adopting such approaches. It assists the objective assessment of the lifetime costs and benefits of evolving systems, and the identification of legacy situations, where architecture or a component is indispensable but can no longer be evolved to meet changing needs at economic cost. Such consideration will form the scientific foundation for reasoning about the economics of nonfunctional requirements in the context of architectures and architecting. - Familiarizes readers with essential considerations in economic-informed and value-driven software design and analysis - Introduces techniques for making value-based software architecting decisions - Provides readers a better understanding of the methods of economics-driven architecting
Essential Software Architecture
Title | Essential Software Architecture PDF eBook |
Author | Ian Gorton |
Publisher | Springer Science & Business Media |
Pages | 251 |
Release | 2011-04-27 |
Genre | Computers |
ISBN | 3642191762 |
Job titles like “Technical Architect” and “Chief Architect” nowadays abound in software industry, yet many people suspect that “architecture” is one of the most overused and least understood terms in professional software development. Gorton’s book tries to resolve this dilemma. It concisely describes the essential elements of knowledge and key skills required to be a software architect. The explanations encompass the essentials of architecture thinking, practices, and supporting technologies. They range from a general understanding of structure and quality attributes through technical issues like middleware components and service-oriented architectures to recent technologies like model-driven architecture, software product lines, aspect-oriented design, and the Semantic Web, which will presumably influence future software systems. This second edition contains new material covering enterprise architecture, agile development, enterprise service bus technologies, RESTful Web services, and a case study on how to use the MeDICi integration framework. All approaches are illustrated by an ongoing real-world example. So if you work as an architect or senior designer (or want to someday), or if you are a student in software engineering, here is a valuable and yet approachable knowledge source for you.
The Architecture Centric Development Method
Title | The Architecture Centric Development Method PDF eBook |
Author | Anthony J. Lattanze |
Publisher | |
Pages | 114 |
Release | 2005 |
Genre | Computer architecture |
ISBN |
Abstract: "Functionally is a measure of how well a system does the work it was intended to do, but functionality is not all that matters in software development. Properties like interoperability, modifiability, and portability also matter as much as functionality does. These properties are determined primarily by the software structure -- or the software architecture. While many structures can satisfy functionality, few can satisfy the required functionally [sic] and the quality attribute properties needed in a system. Achieving quality attributes in a predicable [sic] way can only be accomplished by deliberately selecting the appropriate structures early in the development process. This is a radical departure from high speed, lightweight programming methodologies (e.g. XP) that focuses on functionality and prescribes writing software until a product emerges -- architectures also emerge in this paradigm. Emergent architectural structures may or may not meet the expectations of the broader stakeholders. Other methods espouse high ceremony processes and heavy emphasis on document production. The Architecture Centric Development Method (ACDM) can be differentiated from these extremes in that ACDM places the software architecture at the center of a development effort rather than software processes. Like architectures in the building and construction industries, ACDM prescribes using the architecture design to drive not only the technical aspects of the project, but also the programmatic issues of a development effort as well. ACDM weaves together product, technology, process, and people into a cohesive lightweight, scaleable development method."