22,830 research outputs found

    Software Design Guidelines for Usability

    Get PDF
    For years, the Human Computer Interaction (HCI) community has crafted usability guidelines that clearly define what
characteristics a software system should have in order to be easy to use. However, in the Software Engineering (SE)
community keep falling short of successfully incorporating these recommendations into software projects. From a SE
perspective, the process of incorporating usability features into software is not always straightforward, as a large number
of these features have heavy implications in the underlying software architecture. For example, successfully including an
“undo” feature in an application requires the design and implementation of many complex interrelated data structures and
functionalities. Our work is focused upon providing developers with a set of software design patterns to assist them in the
process of designing more usable software. This would contribute to the proper inclusion of specific usability features
with high impact on the software design. Preliminary validation data show that usage of the guidelines also has positive
effects on development time and overall software design quality

    Adaptive development and maintenance of user-centric software systems

    Get PDF
    A software system cannot be developed without considering the various facets of its environment. Stakeholders – including the users that play a central role – have their needs, expectations, and perceptions of a system. Organisational and technical aspects of the environment are constantly changing. The ability to adapt a software system and its requirements to its environment throughout its full lifecycle is of paramount importance in a constantly changing environment. The continuous involvement of users is as important as the constant evaluation of the system and the observation of evolving environments. We present a methodology for adaptive software systems development and maintenance. We draw upon a diverse range of accepted methods including participatory design, software architecture, and evolutionary design. Our focus is on user-centred software systems

    Pattern languages in HCI: A critical review

    Get PDF
    This article presents a critical review of patterns and pattern languages in human-computer interaction (HCI). In recent years, patterns and pattern languages have received considerable attention in HCI for their potential as a means for developing and communicating information and knowledge to support good design. This review examines the background to patterns and pattern languages in HCI, and seeks to locate pattern languages in relation to other approaches to interaction design. The review explores four key issues: What is a pattern? What is a pattern language? How are patterns and pattern languages used? and How are values reflected in the pattern-based approach to design? Following on from the review, a future research agenda is proposed for patterns and pattern languages in HCI

    Evaluating Software Architectures: Development Stability and Evolution

    Get PDF
    We survey seminal work on software architecture evaluationmethods. We then look at an emerging class of methodsthat explicates evaluating software architectures forstability and evolution. We define architectural stabilityand formulate the problem of evaluating software architecturesfor stability and evolution. We draw the attention onthe use of Architectures Description Languages (ADLs) forsupporting the evaluation of software architectures in generaland for architectural stability in specific

    Systematic development of courseware systems

    Get PDF
    Various difficulties have been reported in relation to the development of courseware systems. A central problem is to address the needs of not only the learner, but also instructor, developer, and other stakeholders, and to integrate these different needs. Another problem area is courseware architectures, to which much work has been dedicated recently. We present a systematic approach to courseware development – a methodology for courseware engineering – that addresses these problems. This methodology is rooted in the educational domain and is based on methods for software development in this context. We illustrate how this methodology can improve the quality of courseware systems and the development process

    Assessing the value of the information provision for enhancing the autonomy of mobility impaired users. Madrid pilot Site Study.

    Get PDF
    A City is the space where every person acquires the citizen condition, which demands access to multiple services and facilities, and develops social relations in a free and equal condition of options. A lack of accessibility limits independency and autonomy. Thus, the relationship between “sustainable development” and “accessibility for all” becomes clearer, and both goals reinforce each other. In this sense, information plays a key role in order to overcome existing barriers, specially for people who rarely use public transport, have impaired mobility, or make a particular journey for the first time. The impact and benefits is linked with public transport as a “facilitator” of mobility, and, in particular, for the aim of intermodality. The usefulness of information that should be provided (both the information itself and how is offered) to mobility impaired users (MI users) is discussed on this paper based on following of the ASK-IT project that has being carry out on Madrid. The work was done in close cooperation with representatives of all different types of MI user groups

    Accessible user interface support for multi-device ubiquitous applications: architectural modifiability considerations

    Get PDF
    The market for personal computing devices is rapidly expanding from PC, to mobile, home entertainment systems, and even the automotive industry. When developing software targeting such ubiquitous devices, the balance between development costs and market coverage has turned out to be a challenging issue. With the rise of Web technology and the Internet of things, ubiquitous applications have become a reality. Nonetheless, the diversity of presentation and interaction modalities still drastically limit the number of targetable devices and the accessibility toward end users. This paper presents webinos, a multi-device application middleware platform founded on the Future Internet infrastructure. Hereto, the platform's architectural modifiability considerations are described and evaluated as a generic enabler for supporting applications, which are executed in ubiquitous computing environments

    Ontology-based patterns for the integration of business processes and enterprise application architectures

    Get PDF
    Increasingly, enterprises are using Service-Oriented Architecture (SOA) as an approach to Enterprise Application Integration (EAI). SOA has the potential to bridge the gap between business and technology and to improve the reuse of existing applications and the interoperability with new ones. In addition to service architecture descriptions, architecture abstractions like patterns and styles capture design knowledge and allow the reuse of successfully applied designs, thus improving the quality of software. Knowledge gained from integration projects can be captured to build a repository of semantically enriched, experience-based solutions. Business patterns identify the interaction and structure between users, business processes, and data. Specific integration and composition patterns at a more technical level address enterprise application integration and capture reliable architecture solutions. We use an ontology-based approach to capture architecture and process patterns. Ontology techniques for pattern definition, extension and composition are developed and their applicability in business process-driven application integration is demonstrated

    Distribution pattern-driven development of service architectures

    Get PDF
    Distributed systems are being constructed by composing a number of discrete components. This practice is particularly prevalent within the Web service domain in the form of service process orchestration and choreography. Often, enterprise systems are built from many existing discrete applications such as legacy applications exposed using Web service interfaces. There are a number of architectural configurations or distribution patterns, which express how a composed system is to be deployed in a distributed environment. However, the amount of code required to realise these distribution patterns is considerable. In this paper, we propose a distribution pattern-driven approach to service composition and architecting. We develop, based on a catalog of patterns, a UML-compliant framework, which takes existing Web service interfaces as its input and generates executable Web service compositions based on a distribution pattern chosen by the software architect
    corecore