The Infona portal uses cookies, i.e. strings of text saved by a browser on the user's device. The portal can access those files and use them to remember the user's data, such as their chosen settings (screen view, interface language, etc.), or their login data. By using the Infona portal the user accepts automatic saving and using this information for portal operation purposes. More information on the subject can be found in the Privacy Policy and Terms of Service. By closing this window the user confirms that they have read the information on cookie usage, and they accept the privacy policy and the way cookies are used by the portal. You can change the cookie settings in your browser.
This summary reports the workshops accepted in the 1st International Conference on Software Architecture (ICSA 2017), held by Chalmers University at Gothenburg (Sweden). We gather the description of current and new research trends in different software architecture topics to provide a wide view to researchers and practitioners about the current status and trends in the field. ICSA is a premier software...
Software architecture has many definitions. One widely accepted definition of software architecture is that it is a composition of a set of architectural design decisions. Hence, designing a software architecture is a decision-making process. Agile methods drastically changed the way of designing a software architecture. In projects using agile methods (e.g. Scrum), making architectural design decisions...
Blockchain is an emerging technology for sharing transactional data and computation without using a central trusted third party. It is an architectural choice to use a blockchain instead of traditional databases or protocols, and this creates trade-offs between non-functional requirements such as performance, cost, and security. However, little is known about predicting the behaviour of blockchain-based...
Despite past efforts, we have little understanding and limited research efforts on how architects make decisions in the real-world settings. It seems that software architecture researchers make implicit assumption that decision making by software architects can be a rational and prescribed process. Such an assumption is disputed in other fields such as economics and decision research. This paper studies...
Among other knowledge, software architecture de-sign decision-making relies on the relation between architecturalpatterns and quality attributes (QAs). However, this relation isoften implicit, or in the best case informally and partially defined. This leads to sub-optimal understanding of the impact of thearchitecture design on the desired level of quality. In this work, we aim to shed light on the...
Internet scale, the increasing rate of technology evolution, and the broad adoption of lean and agile methods have triggered a profound change in not only application and infrastructure architectures but also the software architect's roles and responsibilities. This article reviews the field's state of the art, identifies the skills of the connected architect, and gives an overview of related education...
The problems of multi-criteria choice of software system architecture are discussed, connected with definition of criterial function structure and formalization of trade-offs definition procedure for decision making. Universal scalar convolution is offered for taking into account requirements of subject area and criteria values limitations. The criterion weight in this convolution depends on its value...
Through the processes set out by Learning Analytics, this paper describes a decision making model which supports the managers of higher education institutions at the moment of making academic decisions. In the analysis and requirements phase, the importance of creating and categorizing indicators is presented in detail, thereby facilitating the finding of hidden patterns in the educational information...
Software architecture is no more a mere system specification as resulting from the design phase, but it includes the process by which its specification was carried out. In this respect, design decisions in component-based software engineering play an important role: they are used to enhance the quality of the system, keep the current market level, keep partnership relationships, reduce costs, and...
Software architecture decision-making is critical to the success of a software system as software architecture sets the structure of the system, determines its qualities, and has far-reaching consequences throughout the system life cycle. The complex nature of the software development context and the importance of the problem has led the research community to develop several techniques, tools, and...
Software development methodology is a proposition that is used to structure, plan, and control the process of developing a system. However, traditional methods, such as waterfall-like model, component-based programming, software architecture method and agile method, have encountered more fundamental difficulties in processing complex system development. To address this challenge, we have witnessed...
Decision-making is at the core of software architecture design. However, in order for the architect to take the right design decisions, assistance is required for exploring the architectural knowledge, which encompasses the various architectural solutions, their relationships and distinctions. In the past decades, the number of available technology options has increased significantly, while existing...
One of the main challenges in addressing Non-Functional Requirements (NFRs) in designing systems is to take into account their interdependencies and mutual impacts. For this reason, they cannot be considered in isolation and a careful balance and tradeoff among them should be established. This makes it a difficult task to select design decisions and features that lead to the satisfaction of all different...
The architecture of a software system is the result of balancing concerns expressed by system stakeholders using a decision-making process. Several industrial approaches have been proposed that recognize the importance of architectural decisions and their rationale, but most do not provide mechanisms to systematically formalize and manage this decision-making. This article proposes a strategy to enrich...
Requirement change management is an important activity in software development. When we change our requirements it affects the other requirements of the system as well as the architecture of the system. It needs a proper approach which improves the requirement change management and its impact on architecture in a better way. In this paper a framework has been introduced which integrates the impact...
The documentation of architecture and design decisions lies at the backbone of building a comprehensive architectural knowledge basis within a company. As a consequence, a plethora of supporting frameworks has been lately proposed by the research community. The existing frameworks focus on capturing the rationale that lies behind a certain decision, but less on sustaining the collaborative process...
Enterprise Architecture (EA) modeling languages, such as ArchiMate, describe an enterprise holistically. In doing so, they show an enterprise's business products and services, and how these are realized by IT infrastructure and applications. However, EA modeling languages lack the capability to capture design rationales for decisions that lead to specific architectural designs. In our previous work...
A system's early architectural decisions impact its properties (e.g., scalability, dependability) as well as stakeholder concerns (e.g., cost, time to delivery). Choices made early on are both difficult and costly to change, and thus it is paramount that the engineer gets them “right”. This leads to a paradox, as in early design, the engineer is often forced to make these decisions under uncertainty,...
Software architecture is a key factor to scale up Agile Software Development (ASD) in large software-intensive systems. Currently, software architectures are more often approached through mechanisms that enable to incrementally design and evolve software architectures (aka. agile architecting). Agile architecting should be a light-weight decision-making process, which could be achieved by providing...
Set the date range to filter the displayed results. You can set a starting date, ending date or both. You can enter the dates manually or choose them from the calendar.