12 research outputs found

    A Meta Model for Software Architecture Conformance and Quality Assessment

    Get PDF
    Software architecture and design suffer from a lack of documented knowledge on how different architectural styles influence software quality. Existing software quality models do not allow engineers to evaluate whether a given software system adequately implements the basic principles of the chosen architectural style, and which architectural properties and best practices beyond these principles contribute to the system's quality. In this paper, I present a meta quality model for software architectures, which can be used not only as a knowledge-base to easily compare architectural styles based on their impact on software quality, but also to increase efficiency of architectural quality analysis by leveraging existing modeling concepts and tools. An experiment performing an architecture assessment using a quality model for the SOA architectural style not only showed that the approach is applicable in practice, but also indicated a reduction of manual effort compared to other architecture assessment approaches

    Conceptualizing Quality in Software Industry

    Get PDF
    This paper investigates the different software quality perceptions from the different stakeholders’ perspectives and presents a critique to previously developed quality models and measurement theory frameworks associated. It emphasizes the rationale beyond the selection of the Goal Question Metric (GQM) as an evaluation method for the development of the software project with the desired quality needs satisfying the software system. Then it ends up with several concluding remarks that pinpoint the main discussion points and offers guidance for further research

    A Comprehensive Model of Usability

    Get PDF
    Abstract. Usability is a key quality attribute of successful software systems. Unfortunately, there is no common understanding of the factors influencing usability and their interrelations. Hence, the lack of a comprehensive basis for designing, analyzing, and improving user interfaces. This paper proposes a 2-dimensional model of usability that associates system properties with the activities carried out by the user. By separating activities and properties, sound quality criteria can be identified, thus facilitating statements concerning their interdependencies. This model is based on a tested quality meta-model that fosters preciseness and completeness. A case study demonstrates the manner by which such a model aids in revealing contradictions and omissions in existing usability standards. Furthermore, the model serves as a central and structured knowledge base for the entire quality assurance process, e.g. the automatic generation of guideline documents

    Mantenibilidad y evolutividad en el software libre y de código abierto

    Get PDF
    El presente trabajo parte del objetivo general de elaborar criterios para evaluar aspectos técnicos de productos F/OSS (Software Libre y de Código Abierto) como posibles bases o componentes para el desarrollo de aplicaciones. Una de las características más importantes de este tipo de software es la disponibilidad pública del código; en muchos casos, además, también se dispone de amplia información sobre .el desarrollo del producto. Las licencias bajo las cuales se distribuyen habi- tualmente los productos F/OSS no sólo habilitan sino que alientan a la reutilización y/o modificación de las aplicaciones. Al momento de plantearse el desarrollo con F/OSS, sin embargo, es frecuente encontrar que la información pública de la cual se dispone es incompleta, deficitaria o desactualizada; además, nada sabemos a priori respecto de la facilidad o dificultad que supondrá realizar cambios en un código desarrollado por una comunidad. Estos aspectos representan limitaciones de peso para la reutilización del F/OSS. Resulta necesario, entonces, desarrollar modelos, criterios y herramientas que permitan evaluar las características de productos y proyectos F/OSS, y al mismo tiempo proveer a la comunidad de desarrollo de elementos que posibiliten atender la demanda de mantenibilidad.Tesis digitalizada en SEDICI gracias a la colaboración de la Biblioteca de la Facultad de Informática.Facultad de Informátic

    Mantenibilidad y evolutividad en el software libre y de código abierto

    Get PDF
    El presente trabajo parte del objetivo general de elaborar criterios para evaluar aspectos técnicos de productos F/OSS (Software Libre y de Código Abierto) como posibles bases o componentes para el desarrollo de aplicaciones. Una de las características más importantes de este tipo de software es la disponibilidad pública del código; en muchos casos, además, también se dispone de amplia información sobre .el desarrollo del producto. Las licencias bajo las cuales se distribuyen habi- tualmente los productos F/OSS no sólo habilitan sino que alientan a la reutilización y/o modificación de las aplicaciones. Al momento de plantearse el desarrollo con F/OSS, sin embargo, es frecuente encontrar que la información pública de la cual se dispone es incompleta, deficitaria o desactualizada; además, nada sabemos a priori respecto de la facilidad o dificultad que supondrá realizar cambios en un código desarrollado por una comunidad. Estos aspectos representan limitaciones de peso para la reutilización del F/OSS. Resulta necesario, entonces, desarrollar modelos, criterios y herramientas que permitan evaluar las características de productos y proyectos F/OSS, y al mismo tiempo proveer a la comunidad de desarrollo de elementos que posibiliten atender la demanda de mantenibilidad.Tesis digitalizada en SEDICI gracias a la colaboración de la Biblioteca de la Facultad de Informática.Facultad de Informátic

    Traceability und Entwurfsentscheidungen für Software-Architekturen mit der Quasar-Methode

    Get PDF
    Today software maintenance plays an important role for the success of software development projects, because existing systems have to be adapted to frequently changing needs and requirements. The concept of traceability helps to understand the development activities during the changes of a software system by linking the different artifacts via traceability links. However, traceability has to be integrated into the design methods.In this thesis the development steps of the architectural design method Quasar are evaluated. The Quasar method provides only a low support for the design of graphical user interfaces and therefore, it is extended concerning this aspect. The activities of Quasar are refined by additional activities to fill the gaps in the method and to facilitate traceability. The extended Quasar method is applied for the development of the architecture and the graphical user interface of a business information system. The design decisions in this process are described and the corresponding traceability links are established. A special emphasis while designing the user interface is also placed on the consideration of usability guidelines and principles. The extended method is evaluated during the development activities for the business information system.Die Wartung von Software spielt heutzutage eine wichtige Rolle, da bestehende Systeme häufig an sich ändernde Bedürfnisse und Anforderungen angepasst werden müssen. Mit dem Konzept der Traceability können Entwicklungsschritte eines Softwaresystems nachvollzogen werden, indem die Artefakte der verschiedenen Schritte über Traceability-Links miteinander verknüpft werden.In der vorliegenden Arbeit wird das Vorgehen nach der Architekturentwurfsmethode Quasar kritisch untersucht. Quasar bietet unzureichende Unterstützung für die Erstellung von graphischen Benutzerschnittstellen und wird diesbezüglich erweitert. Die einzelnen Aktivitäten von Quasar werden außerdem durch zusätzliche Aktivitäten verfeinert, um ein präzise beschriebenes Vorgehen zu erreichen. Zusätzlich wird Quasar um eine Zuordnung von Traceability-Links ergänzt. Die Architektur der grafischen Benutzerschnittstelle der Beispielanwendung eines betrieblichen Informationssystems wird unter Verwendung der erweiterten Quasar-Methode sowie auf Basis des SalesPoint-Frameworks neu entwickelt. Die getroffenen Entwurfsentscheidungen werden dokumentiert und Traceability-Links erstellt. Besondere Beachtung bei der Erstellung der Benutzerschnittstelle wird auch der Einhaltung von softwareergonomischen Richtlinien geschenkt, um gute Ergonomie zu erreichen. Die weiterentwickelte Methode wird bei der Entwicklung dieser Beispielanwendung eingesetzt und dabei evaluiert.Ilmenau, Techn. Univ., Diplomarbeit, 200

    Quality Goal Oriented Architectural Design and Traceability for Evolvable Software Systems

    Get PDF
    Softwaresysteme werden heute z.B. aufgrund sich ändernder Geschäftsprozesse oder Technologien mit häufigen Veränderungen konfrontiert. Die Software und speziell ihre Architektur muss diese Änderungen zur dauerhaften Nutzbarkeit ermöglichen.Während der Software-Evolution können Änderungen zu einer Verschlechterung der Architektur führen, der Architekturerosion. Dies erschwert oder verhindert weitere Änderungen wegen Inkonsistenz oder fehlendem Programmverstehen. Zur Erosionsvermeidung müssen Qualitätsziele wie Weiterentwickelbarkeit, Performanz oder Usability sowie die Nachvollziehbarkeit von Architekturentwurfsentscheidungen berücksichtigt werden. Dies wird jedoch oft vernachlässigt.Existierende Entwurfsmethoden unterstützen den Übergang von Qualitätzielen zu geeigneten Architekturlösungen nur unzureichend aufgrund einer Lücke zwischen Methoden des Requirements Engineering und des Architekturentwurfs. Insbesondere gilt dies für Weiterentwickelbarkeit und die Nachvollziehbarkeit von Entwurfsentscheidungen durch explizite Modellabhängigkeiten.Diese Arbeit präsentiert ein neues Konzept, genannt Goal Solution Scheme, das Qualitätsziele über Architekturprinzipien auf Lösungsinstrumente durch explizite Abhängigkeiten abbildet. Es hilft somit, Architekturlösungen entsprechend ihrem Einfluss auf Qualitätsziele auszuwählen. Das Schema wird speziell hinsichtlich Weiterentwickelbarkeit diskutiert und ist in ein zielorientiertes Vorgehen eingebettet, das etablierte Methoden und Konzepte des Requirements Engineering und Architekturentwurfs verbessert und integriert. Dies wird ergänzt durch ein Traceability-Konzept, welches einen regelbasierten Ansatz mit Techniken des Information Retrieval verbindet. Dies ermöglicht eine (halb-) automatische Erstellung von Traceability Links mit spezifischen Linktypen und Attributen für eine reichhaltige Semantik sowie mit hoher Genauigkeit und Trefferquote.Die Realisierbarkeit des Ansatzes wird an einer Fallstudie einer Software für mobile Serviceroboter gezeigt. Das Werkzeug EMFTrace wurde als eine erweiterbare Plattform basierend auf Eclipse-Technologie implementiert, um die Anwendbarkeit der Konzepte zu zeigen. Es integriert Entwurfsmodelle von externen CASE-Tools mittels XML-Technologie in einem gemeinsamen Modell-Repository, wendet Regeln zur Linkerstellung an und bietet Validierungsfunktionen für Regeln und Links.Today software systems are frequently faced with demands for changes, for example, due to changing business processes or technologies. The software and especially its architecture has to cope with those frequent changes to permanently remain usable.During software evolution changes can lead to a deterioration of the structure of software architectures called architectural erosion, which hampers or even inhibits further changes because of inconsistencies or lacking program comprehension. To support changes and avoid erosion, especially quality goals, such as evolvability, performance, or usability, and the traceability of design decisions have to be considered during architectural design. This however often is neglected.Existing design methods do not sufficiently support the transition from the quality goals to appropriate architectural solutions because there is still a gap between requirements engineering and architectural design methods. Particularly support is lacking for the goal evolvability and for the traceability of design decisions by explicit model dependencies.This thesis presents a new concept called Goal Solution Scheme, which provides a mapping from goals via architectural principles to solution instruments by explicit dependencies. Thus it helps to select appropriate architectural solutions according to their influence on quality goals. The scheme is discussed especially regarding evolvability, and it is embedded in a goal-oriented architectural design method, which enhances and integrates established methods and concepts from requirements engineering as well as architectural design. This is supplemented by a traceability concept, which combines a rule-based approach with information retrieval techniques for a (semi-) automated establishment of links with specific link types and attributes for rich semantics and a high precision and recall.The feasibility of the design approach has been evaluated in a case study of a software platform for mobile robots. A prototype tool suite called EMFTrace was implemented as an extensible platform based on Eclipse technology to show the practicability of the thesis' concept. It integrates design models from external CASE tools in a joint model repository by means of XML technology, applies rules for link establishment, and provides validation capabilities for rules and links
    corecore