Results 1 - 10
of
17
A Design Space for Multimodal Systems: Concurrent Processing and Data Fusion
, 1993
"... Multimodal interaction enables the user to employ different modalities such as voice, gesture and typing for communicating with a computer. This paper presents an analysis of the integration of multiple communication modalities within an interactive system. To do so, a software engineering perspecti ..."
Abstract
-
Cited by 58 (1 self)
- Add to MetaCart
Multimodal interaction enables the user to employ different modalities such as voice, gesture and typing for communicating with a computer. This paper presents an analysis of the integration of multiple communication modalities within an interactive system. To do so, a software engineering perspective is adopted. First, the notion of "multimodal system" is clarified. We aim at proving that two main features of a multimodal system are the concurrency of processing and the fusion of input/output data. On the basis of these two features, we then propose a design space and a method for classifying multimodal systems. In the last section, we present a software architecture model of multimodal systems which supports these two salient properties: concurrency of processing and data fusion. Two multimodal systems developed in our team, VoicePaint and NoteBook, are used to illustrate the discussion.
From Single-User Architectural Design to PAC*: a Generic Software Architecture Model for CSCW
- In CHI '97
, 1997
"... This article reports our reflection on software architecture modelling for multi-user systems (or groupware). First, we introduce the notion of software architecture and make explicit the design steps that most software designers in HCI tend to blend in a fuzzy way. Building on general concepts and ..."
Abstract
-
Cited by 37 (4 self)
- Add to MetaCart
This article reports our reflection on software architecture modelling for multi-user systems (or groupware). First, we introduce the notion of software architecture and make explicit the design steps that most software designers in HCI tend to blend in a fuzzy way. Building on general concepts and practice from main stream software engineering, we then present a comparative analysis of the most significant architecture models developed for singleand multi-user systems. We close with the presentation of PAC*, a new architectural framework for modelling and designing the software architecture of multi-user systems. PAC* is a motivated combination of existing architectural models selected for the complementarity of their "good properties". These include operational heuristics such as rules for deriving agents in accordance to the task model or criteria for reasoning about replication, as well as properties such as support for style heterogeneity, portability, and reusability. Keywords ...
A software architecture reconstruction method
- In Proc. Working Conf. on Software Architecture (WICSA
, 1999
"... Abstract: Changes to a software system during implementation and maintenance can cause the architecture of a system to deviate from its documented architecture. If design documents are to be useful, maintenance programmers must be able to easily evaluate how closely the documents conform to the code ..."
Abstract
-
Cited by 29 (2 self)
- Add to MetaCart
Abstract: Changes to a software system during implementation and maintenance can cause the architecture of a system to deviate from its documented architecture. If design documents are to be useful, maintenance programmers must be able to easily evaluate how closely the documents conform to the code they are meant to describe. Software architecture recovery, which deals with the extraction and analysis of a system’s architecture, has gained more tool support in the past few years. However, there is little research on developing effective and efficient architectural conformance methods. In particular, given the increasing emphasis on patterns and styles in the software engineering community, a method needs to explicitly aid a user in identifying architectural patterns. This paper presents a semi-automatic method, called ARM (Architecture Reconstruction Method), that guides a user in the reconstruction of software architectures based on the recognition of patterns. Once the system’s actual architecture has been reconstructed, we can analyze conformance of the software to the documented design patterns. 1.
Architectures for Synchronous Groupware
, 1999
"... Synchronous groupware systems allow physically separated users to interact with one another and with shared computational objects in real time. Such systems are problematic to build since their user interfaces must support multiple, concurrent users, and both their application logic and their user i ..."
Abstract
-
Cited by 24 (6 self)
- Add to MetaCart
Synchronous groupware systems allow physically separated users to interact with one another and with shared computational objects in real time. Such systems are problematic to build since their user interfaces must support multiple, concurrent users, and both their application logic and their user interfaces must be distributed across multiple platforms. This survey explores the range of software architectures that have been proposed to solve this problem. The presentation includes three distinct architectural views: reference models, which divide complete systems into named functional elements and specify data flow between those elements; architectural styles, which prescribe component and connector types and their allowed patterns of interaction; and distribution architectures, which represent the distribution of system functionality across connected computing platforms. The distribution architectures are presented using a new descriptive framework called Interlace. The architectural presentation is complemented by a brief overview of consistency maintenance
Toward Deriving Software Architectures From Quality Attributes
, 1994
"... ion 8 4.3 Compression 8 4.4 Uniform Composition 9 4.5 Replication 9 4.6 Resource Sharing 10 4.7 Unit Operations and Quality Attributes 10 5 Constructing Software Architectures: Case Studies 13 5.1 User Interface Management Systems 13 5.2 Compilers 17 6 Conclusions and Future Work 21 7 Acknowledgm ..."
Abstract
-
Cited by 17 (4 self)
- Add to MetaCart
ion 8 4.3 Compression 8 4.4 Uniform Composition 9 4.5 Replication 9 4.6 Resource Sharing 10 4.7 Unit Operations and Quality Attributes 10 5 Constructing Software Architectures: Case Studies 13 5.1 User Interface Management Systems 13 5.2 Compilers 17 6 Conclusions and Future Work 21 7 Acknowledgments 23 References 25 Appendix A Unit Operations and Quality Attributes 27 A.1 Scalability 28 A.2 Separation 28 A.3 Modifiability 28 A.4 Integrability 29 A.5 Portability 30 A.6 Performance 31 A.7 Reliability 32 A.8 Ease of Creation 33 A.9 Reusability ii CMU/SEI-94-TR-10 CMU/SEI-94-TR-10 iii List of Figures Figure 5-1: Creation of Software Architectures Based On Quality Attributes 13 Figure 5-2: Functional Representation of a System 14 Figure 5-3: Abstraction of the Presentation 14 Figure 5-4: Abstraction of the Dialogue 15 Figure 5-5: The Final UIMS Functional Partitioning 16 Figure 5-6: Application of Uniform Composition to Dialogue 17 Figure 5-7: Functional Decomposition of Com...
The beach application model and software framework for synchronous collaboration in ubiquitous computing environments
- Journal of Systems and Software
, 2004
"... In this paper, a conceptual model for synchronous applications in ubiquitous computing environments is proposed. To test its applicability, it was used to structure the architecture of the BEACH software framework that is the basis for the software infrastructure of i-LAND (the ubiquitous computing ..."
Abstract
-
Cited by 17 (2 self)
- Add to MetaCart
In this paper, a conceptual model for synchronous applications in ubiquitous computing environments is proposed. To test its applicability, it was used to structure the architecture of the BEACH software framework that is the basis for the software infrastructure of i-LAND (the ubiquitous computing environment at FhG-IPSI). The BEACH framework provides the functionality for synchronous cooperation and interaction with roomware components, i.e. room elements with integrated information technology. To show how the BEACH model and framework can be applied, the design of a sample application is explained. Also, the BEACH model is positioned against related work. In conclusion, we provide our experiences with the current implementation.
PAC-ing the Architecture of Your User Interface
, 1997
"... A number of architectural models, such as PAC, are available for the software design of interactive systems. These design abstractions, however, are not always clearly articulated nor do they explicitly exploit the foundational concepts developed recently in main-stream software architecture enginee ..."
Abstract
-
Cited by 13 (0 self)
- Add to MetaCart
A number of architectural models, such as PAC, are available for the software design of interactive systems. These design abstractions, however, are not always clearly articulated nor do they explicitly exploit the foundational concepts developed recently in main-stream software architecture engineering. Similarly, technical solutions from main-stream software engineering may improve portability and reusability at the code level while hindering the quality of the resulting user interfaces. This article is an attempt to undertake an explicit bridging effort between software engineering and the specific domain of user interface software design using PAC as the running example. We present a brief evolution of the architectural models for single-user systems that motivated PAC. We then unfold PAC into PAC* for designing the conceptual architecture of multi-user systems. Keywords : Software architecture modelling, multi-agent modelling, PAC, PAC-Amodeus, PAC*. 1 Introduction Software arch...
Software Architectures for Human-Computer Interaction: Analysis and Construction
"... : Software architectures have long been a focus of research and development in humancomputer interaction. This paper analyzes the history of architectures for user interface software in terms of their evolution in response to the pressures of non-functional quality goals. These goals are things like ..."
Abstract
-
Cited by 3 (1 self)
- Add to MetaCart
: Software architectures have long been a focus of research and development in humancomputer interaction. This paper analyzes the history of architectures for user interface software in terms of their evolution in response to the pressures of non-functional quality goals. These goals are things like modifiability, integrability, and performance that expert software designers commonly endeavor to satisfy when creating large software systems. To codify the knowledge that expert designers bring to bear on this problem, we introduce the notion of "unit operations"---structuremodifying architectural operations. These operations are used to analyze the evolution of user interface software architectures in terms of their structural changes in response to non-functional quality goals. This analysis provides a means of understanding these architectures, their motivations, similarities and differences. To describe the effects of unit operations, we present two parallel evolutionary tracks: those...
A Specification Paradigm for the Design and Implementation of Tangible User Interfaces
, 2009
"... Tangible interaction shows promise to significantly enhance computer-mediated support for activities such as learning, problem solving, and design. However, tangible user interfaces are currently considered challenging to design and build. Designers and developers of these interfaces encounter sever ..."
Abstract
-
Cited by 3 (0 self)
- Add to MetaCart
Tangible interaction shows promise to significantly enhance computer-mediated support for activities such as learning, problem solving, and design. However, tangible user interfaces are currently considered challenging to design and build. Designers and developers of these interfaces encounter several conceptual, methodological and technical difficulties. Among others, these challenges include: the lack of appropriate interaction abstractions, the shortcomings of current user interface software tools to address continuous and parallel interactions, as well as the excessive effort required to integrate novel input and output technologies. To address these challenges, we propose a specification paradigm for designing and implementing Tangible User Interfaces (TUIs), that enables TUI developers to specify the structure and behavior of a tangible user interface using high-level constructs, which abstract away implementation details. An important benefit of this approach, which is based on User Interface Description Language (UIDL) research, is that these specifications could be automatically or semi-automatically converted into concrete TUI implementations. In addition, such specifications could serve as a common ground for investigating both design and implementation concerns by TUI developers from different disciplines. Thus, the primary contribution of this paper is a high-level UIDL that provides developers,

