Research Object
Architecture Analysis Method A method for analyzing existing software architectures, e.g., to measure or evaluate specific qualities or functions. Architecture Design Method A method for designing software architectures, e.g., to obtain specific qualities or functions. Architecture Optimization Method A method to optimize existing architectures (implemented or designed) to regarding specific qualities or properties. Architecture Evolution The process of maintaining and adapting existing software architecture to meet requirement and environmental changes [Imran et al., 2016]. This includes papers that investigate the evolution of specific architectures. Architecture Description Language A formal or software language to create a description of a software architecture, i.e., "any form of expression for use in architecture descriptions" [ISO/IEC 42010]. Architecture Decision Making In software development and evolution, decision-making is an integral part. Thus, various decisions are being made throughout the software development life cycle concerning processes, products, tools, methods, and techniques. From a decision-making perspective, all these questions are confronted by different objectives and constraints, a huge number of variables under dynamically changing requirements, processes, actors, stakeholders, tools and techniques. This is combined with incomplete, fuzzy or inconsistent information about all the involved artefacts. [Ruhe2003] Reference Architecture A description of an architecture (e.g. domain-specific or to solve recurring problems) that can be tailored to specific use cases. Architecture Pattern An architectural pattern is a general, reusable solution to a commonly occurring problem in software architecture within a given context. Patterns with negative effects on the product, i.e., anti-patterns, are also included here. [Taylor et al, 2009] Architecture Description An Architecture Description (AD) is a work product used to express the Architecture of some System Of Interest. An AD describes one possible Architecture for a System Of Interest. An AD may take the form of a document, a set of models, a model repository, or some other form [ISO/IEC 42010]. Architectural Aspects A method for identifying or specifying specific architectural aspects in existing implemented architectures, e.g., automatically identifying transactional contexts in an architecture. Note that if you analyse an architecture description containing these aspects, the analysis is a separate research object. Technical Debt "In software-intensive systems, technical debt consists of design or implementation constructs that are expedient in the short term, but set up a technical context that can make a future change more costly or impossible. Technical debt is a contingent liability whose impact is limited to internal system qualities, primarily maintainability and evolvability." [Avgeriou2016] Architecture Extraction Designing and realizing methods and algorithms to automatically extract architecture information from existing implementations. Architectural Assumptions Assumptions are the reasons for architectural decisions that are more or less arbitrarily taken on the fly because of personal experience, background, domain knowledge, the artifacts reused, and the like [Lago et al., 2005]