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.
Security requirements strongly influence the architectural design of complex IT systems in a similar way as other non-functional requirements. Both security engineering as well as software engineering provide methods to deal with such requirements. However, there is still a critical gap concerning the integration of the methods of these separate fields. In this paper we close this gap with respect...
Software systems have to be changed continuously and evolutionarily throughout the whole time of their development and usage. Meanwhile, the software systems have to remain flexible in order to retain the ability to be extended by additional new features or to be changed. To maintain this ability, known as evolvability, the architecture of such software systems and its evolution must be continuously...
Although in recent years some progress in software engineering (SE) and human-computer interaction (HCI) has been made, there is still a gap between the two research areas and their methodologies. Today, from the engineering point of view, the specification and design of graphical user interfaces and their corresponding software architectural components is still a challenging task. The advanced component...
The frequent changes during the development and usage of large software systems often lead to a loss of architectural quality which hampers the implementation of further changes and thus the systemspsila evolution. To maintain the evolvability of such software systems, their architecture has to fulfil particular quality criteria. Available metrics and rigour approaches do not provide sufficient means...
Software systems have to provide flexibility by implementing variability. Existing design methodologies do not support means for optimizing the design for variability and for measuring the overhead effort. Therefore, the solutions cannot be optimized regarding a minimal overhead for variability. Other methods are lacking of a traceability for variability mechanisms, or do not provide means for measuring...
Traceability links are widely accepted as efficient means to support an evolutionary software development. However, their usage in analysis and design is effort consuming and error prone due to lacking or missing methods and tools for their creation, update and verification. In this paper we analyse and classify Unified Process artefacts to establish a traceability link model for this process. This...
Refactoring of software systems represents a fundamental way of improving their quality properties. Large-scale refactoring has to be performed at an architectural level to execute such changes for larger systems. Architecture-oriented refactoring requires decisions with multiple, partly contradicting objectives and uncertain consequences. To minimize risks and effort, the decisions about optimal...
Software product lines (PLs) are large, complex systems, demanding high maintainability and enhanced flexibility. Nonetheless, in the state of the art PL methods, features are scattered and tangled throughout the system components, leading to poor maintainability. Additionally, the majority of PL methods support manual product composition, while the implementation of feature-level variability in PL...
Reusable architectures, like frameworks or product lines, can improve the efficiency of software development. In this paper, methods from the areas of software engineering, domain engineering, software architectures and tool-supported implementation are combined and integrated to successfully build reusable architectures. Special emphasis is placed on process issues and on modeling. Software product...
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.