10 research outputs found

    Software Product Line

    Get PDF
    The Software Product Line (SPL) is an emerging methodology for developing software products. Currently, there are two hot issues in the SPL: modelling and the analysis of the SPL. Variability modelling techniques have been developed to assist engineers in dealing with the complications of variability management. The principal goal of modelling variability techniques is to configure a successful software product by managing variability in domain-engineering. In other words, a good method for modelling variability is a prerequisite for a successful SPL. On the other hand, analysis of the SPL aids the extraction of useful information from the SPL and provides a control and planning strategy mechanism for engineers or experts. In addition, the analysis of the SPL provides a clear view for users. Moreover, it ensures the accuracy of the SPL. This book presents new techniques for modelling and new methods for SPL analysis

    Architectural Design Decision Documentation through Reuse of Design Patterns

    Get PDF
    While design decisions on the application of architectural design patterns involve complex trade-offs between functionality and quality properties, such decisions are often spontaneous, and documentation of decisions and trace links to related artefacts is usually insufficient. The approach proposed in this thesis provides a support to overcome these problems. It combines support for evaluation of design pattern application, and semi-automated documentation of decisions and trace links

    Architectural Design Decision Documentation through Reuse of Design Patterns

    Get PDF
    The ADMD3 approach presented in this book enchances the architectural design documentation of decision via reuse of design patterns. It combines the support for evaluation of pattern application, semi-automated documentation of decision rationale and trace links. The approach is based on a new kind of design pattern catalogue, whereby usual pattern descriptions are captured together with question annotations to the patterns and information on architectural structure of patterns

    CoMoVA - A comprehension measurement framework for visualization systems

    Get PDF
    Despite the burgeoning interest shown in visualizations by many disciplines, there yet remains the unresolved question concerning comprehension. Is the concept that is being communicated through the visual easily grasped and clearly interpreted? Visual comprehension is that characteristic of any visualization system, which deals with how efficiently and effectively users are able to grasp the underlying concepts through suitable interactions provided for exploring the visually represented information. Comprehension has been considered a very complex subject, which is intangible and subjective in nature. Assessment of comprehension can help to determine the true usefulness of visualization systems to the intended users. A principal contribution of this research is the formulation of an empirical evaluation framework for systematically assessing comprehension support provided by a visualization system to its intended users. To assess comprehension i.e. to measure this seemingly immeasurable factor of visualization systems, we propose a set of criteria based on a detailed analysis of information flow from the raw data to the cognition of information in human mind. Our comprehension criteria are adapted from the pioneering work of two eminent researchers - Donald A. Norman and Aaron Marcus, who have investigated the issues of human perception and cognition, and visual effectiveness respectively. The proposed criteria have been refined with the help of opinions from experts. To gauge and verify the efficacy of these criteria in a practical sense, they were then applied to a bioinformatics visualization study tool and an immersive art visualization environment. Given the vast variety of users and their visualization goals, it may be noted that it is difficult for one to decide on the effectiveness of different visualization tools/techniques in a context independent fashion. We therefore propose an innovative way of evaluating a visualization technique by encapsulating it in a visualization pattern where it is seen as a solution to the visualization problem in a specific context. These visualization patterns guide the tool users/evaluators to compare, understand and select appropriate visualization tools/techniques. Lastly, we propose a novel framework named as CoMoVA (Comprehension Model for Visualization Assessment) that incorporates 'context of use', visualization patterns, visual design principles and important cognitive principles into a coherent whole that can be used to effectively tell us in a more quantifiable manner the benefits of visual representations and interactions provided by a system to the intended audience. Our approach of evaluation of visualization systems is similar to other questionnaire-based approaches such as SUMI (Software Usability Measurement Inventory), where all the questions deal with the measurement of a common trait. We apply this framework to two static software visualization tools in the software visualization domain to demonstrate the practical benefits of using such a framework

    A Distributed Service Delivery Platform for Automotive Environments: Enhancing Communication Capabilities of an M2M Service Platform for Automotive Application

    Get PDF
    Full version: Access restricted permanently due to 3rd party copyright restrictions. Restriction set on 11.04.2018 by SE, Doctoral CollegeThe automotive domain is changing. On the way to more convenient, safe, and efficient vehicles, the role of electronic controllers and particularly software has increased significantly for many years, and vehicles have become software-intensive systems. Furthermore, vehicles are connected to the Internet to enable Advanced Driver Assistance Systems and enhanced In-Vehicle Infotainment functionalities. This widens the automotive software and system landscape beyond the physical vehicle boundaries to presently include as well external backend servers in the cloud. Moreover, the connectivity facilitates new kinds of distributed functionalities, making the vehicle a part of an Intelligent Transportation System (ITS) and thus an important example for a future Internet of Things (IoT). Manufacturers, however, are confronted with the challenging task of integrating these ever-increasing range of functionalities with heterogeneous or even contradictory requirements into a homogenous overall system. This requires new software platforms and architectural approaches. In this regard, the connectivity to fixed side backend systems not only introduces additional challenges, but also enables new approaches for addressing them. The vehicle-to-backend approaches currently emerging are dominated by proprietary solutions, which is in clear contradiction to the requirements of ITS scenarios which call for interoperability within the broad scope of vehicles and manufacturers. Therefore, this research aims at the development and propagation of a new concept of a universal distributed Automotive Service Delivery Platform (ASDP), as enabler for future automotive functionalities, not limited to ITS applications. Since Machine-to-Machine communication (M2M) is considered as a primary building block for the IoT, emergent standards such as the oneM2M service platform are selected as the initial architectural hypothesis for the realisation of an ASDP. Accordingly, this project describes a oneM2M-based ASDP as a reference configuration of the oneM2M service platform for automotive environments. In the research, the general applicability of the oneM2M service platform for the proposed ASDP is shown. However, the research also identifies shortcomings of the current oneM2M platform with respect to the capabilities needed for efficient communication and data exchange policies. It is pointed out that, for example, distributed traffic efficiency or vehicle maintenance functionalities are not efficiently treated by the standard. This may also have negative privacy impacts. Following this analysis, this research proposes novel enhancements to the oneM2M service platform, such as application-data-dependent criteria for data exchange and policy aggregation. The feasibility and advancements of the newly proposed approach are evaluated by means of proof-of-concept implementation and experiments with selected automotive scenarios. The results show the benefits of the proposed enhancements for a oneM2M-based ASDP, without neglecting to indicate their advantages for other domains of the oneM2M landscape where they could be applied as well

    Analysis of the Software Architectural Support of the Usability of Mobile Applications

    Get PDF
    Rasante Innovationszyklen, kurze Produkteinführungszeiten und ein hoher Konkurrenzdruck sind typische Rahmenbedingungen für die Entwicklung mobiler Anwendungen. Dies sind Anwendungen, die auf mobilen Endgeräten laufen und in verschiedenen Umgebungen verwendet werden. Usability (Benutzbarkeit) kann durch die Softwarearchitektur einer Anwendung unterstützt, aber auch behindert werden. Je später im Softwareentwicklungsprozess Usability beachtet wird, umso aufwendiger werden Änderungen an der Softwarearchitektur. Um dieses Risiko zu verringern, ist es nötig, so früh wie möglich offenzulegen, ob Usability-Anforderungen architektonisch unterstützt werden. Potenziell hohe Architekturänderungen werden mit Methoden zur szenario-basierten Softwarearchitekturanalyse ermittelt; es wird dabei verifiziert, dass ein Qualitätsmerkmal architektonisch berücksichtigt wurde. Frühere Methoden bezüglich Usability erreichen dieses Ziel, erscheinen aber sehr komplex: Sie erfordern zum einen Wissen über Patterns und zum anderen sind die Freiheitsgrade beim Erstellen, Auswählen und Evaluieren von Szenarios hoch. Wie die früheren Methoden Usability-Attribute verwenden, behindert zudem eine engere Kooperation mit dem Usability Engineering, für das gemeinsame Begriffe und Vorgehensweisen grundlegend wären. Deshalb ist es notwendig, eine Methode zu konstruieren, die einfacher und interdisziplinärer ausgerichtet ist. Aufgrund dessen werden in dieser Forschungsarbeit mittels Literaturstudien zuerst Forschungsfragen, dann Hilfsmittel und schließlich eine theoretisch fundierte Methode erarbeitet. Um diese zu validieren und zu vereinfachen, durchläuft sie - mit kanonischer anwendungsnaher Forschung - zwei Fallstudien zu mobilen Anwendungen. Ergebnis ist die szenario-basierte Methode SATURN („SoftwareArchitekTuranalyse von Usability-anfoRderungeN“), in der anfangs mittels Nutzungskontextanalyse die Interaktionsszenarios erstellt werden, die für Anwender relevant sind. Hilfsmittel umfassen die Faktoren des mobilen Nutzungskontexts und einen Katalog von 50 potenziell architektursensitiven Interaktionsszenarios. Diese sind von Patterns abgeleitet, referenzieren sie und unterliegen einem definierten Lebenszyklus. Die Analyse stützt sich auf die verwendete Architekturdefinition und auf das Prinzip der Sichtenmodelle. Bewertet wird, inwiefern Struktur oder Verhalten von architektonischen Elementen verhindern können, dass ein Interaktionsszenario (hypothetisch) durchgeführt werden kann. Betrachtet wird dabei, wie Usability berücksichtigt wurde, welche vor- und nachteiligen Architekturentscheidungen und welche Austauschbeziehungen mit anderen Qualitätsmerkmalen bestehen. Die Ergebnisse von SATURN fließen zurück zur Erstellung der Softwarearchitektur und zum Usability Engineering. Die Methode ist auch mit einem Nutzertest kombinierbar. Mit SATURN ist die Analyse der architektonischen Unterstützung für die Usability mobiler Anwendungen einfacher als mit früheren Arbeiten. Dies inspiriert zu weiterer Forschung, wie beispielsweise Fallstudien zum Zusammenhang zwischen Usability und Softwarearchitektur, die Ausrichtung der Methode auf andere Qualitätsmerkmale, neue konstruktive Möglichkeiten in agilen Prozessen oder allgemein die Koordination von Usability Engineering und Softwareentwicklung.The software development of mobile applications, i.e. applications which run on mobile devices and are used in various environments, faces a fast time to market, high competitive pressure, short technical innovation cycles, and high user expectations regarding usability. The software architecture of an application can support but also constrain usability. The later in software development usability is considered, the costlier architectural modifications become. In order to reduce this risk, it is necessary to discover usability requirements that are not supported architecturally as early as possible. Potentially high architectural changes are elicited using scenario-based software architecture analyses; it is verified, that a quality factor was considered architecturally. Earlier works regarding usability achieve this, though they appear very complex: they depend on the knowledge of patterns and leave room for interpretation while creating, selecting and evaluating scenarios. Also, respective uses of usability attributes hinder a further cooperation with usability engineering, because common terms and methods are a prerequisite for this. Therefore, it is necessary to construct a new method which is easier to use and more interdisciplinary-oriented. In order to describe research questions, means for the method and a first version of the method itself, literature studies are conducted. Afterwards, the method is validated and improved through two case studies with mobile applications adhering to canonical action research. In the new scenario-based method SATURN („Software ArchitecTure analysis of Usability-RequiremeNts“), interaction scenarios that are relevant from a users’ point of view are depicted and selected based on a usage context analysis. This is facilitated by providing factors of the mobile usage context and a catalog of 50 interaction scenarios that are potentially architectural sensitive (derived from patterns, referring to them, and complying to a scenario life cycle). The analysis of the architecture itself is based on the principle of view models. We analyze, in what way structure or behavior of architectural elements can constrain the interaction described by a specific interaction scenario. Results verify that usability was considered architecturally, explain disadvantageous and advantageous architectural decisions as well as trade-offs with other quality factors. Thus, results can flow back to architectural design and usability engineering. Additionally, the method is combined with a user test. With this research, analyzing and assessing the architectural support for the usability of mobile applications is easier than with earlier works. This inspires further research, for example, more case studies regarding the relationship between usability and software architecture, other quality factors and software architecture, new possibilities for construction in agile processes, and the cooperation amongst the fields usability engineering and software engineering in general

    Mining Patterns to Support Software Architecture Evaluation

    No full text
    In this paper, we present an approach to improve the software architecture evaluation process by systematically extracting and appropriately documenting architecturally significant information from software architecture and design patterns; we are interested in only two pieces of information found in software patterns: general scenarios and architectural tactics. General scenarios distilled from patterns not only assist stakeholders in developing concrete scenarios during a scenario-based architecture evaluation, but can also help an architect select and calibrate a quality attribute reasoning framework. Architectural tactics in patterns are used as a means of manipulating independent parameters in the reasoning framework to achieve the desired quality. Moreover, we believe if we use general scenarios and tactics extracted from patterns in an architectural evaluation, the results of that evaluation can be used as an evidence to validate the pattern’s claim with respect to the quality attributes. We demonstrate our approach by using EJB architecture usage patterns. We contend that this approach can be used to analyze and validate any architecture pattern. 1

    Mining Patterns to Support Software Architecture Evaluation

    No full text
    In this paper, we present an approach to improve the software architecture evaluation process by systematically extracting and appropriately documenting architecturally significant information from software architecture and design patterns; we are interested in only two pieces of information found in software patterns: general scenarios and architectural tactics. General scenarios distilled from patterns not only assist stakeholders in developing concrete scenarios during a scenario-based architecture evaluation, but can also help an architect select and calibrate a quality attribute reasoning framework. Architectural tactics in patterns are used as a means of manipulating independent parameters in the reasoning framework to achieve the desired quality. Moreover, we believe if we use general scenarios and tactics extracted from patterns in an architectural evaluation, the results of that evaluation can be used as an evidence to validate the pattern's claim with respect to the quality attributes. We demonstrate our approach by using EJB architecture usage patterns. We contend that this approach can be used to analyze and validate any architecture pattern
    corecore