173,743 research outputs found
An Object-oriented drawing package in smalltalk/v
Graphics creation applications tend to fall into two categories: bit-mapped paint packages, and object-oriented drawing packages. Although each interface has its own unique advantages, few vendors have attempted to integrate the two into a single package. Those who have tried have, in fact, poor integration both from the user\u27s perspective and in the underlying mathematical model. In this thesis, I have addressed the issue of integrating bit-mapped and object-oriented interfaces by creating an object-oriented graphics package which provides the user with a consistent interface for creating and manipulating both graphical objects and bit-mapped graphics. The consistency of the interface was facilitated by the consistency of the design, the underlying geometric model, and the implementation, all of which are themselves object-oriented. The thesis is written in Smalltalk/V for the Macintosh* . While the solution for this integration was not derived overnight, the use of object-oriented design principles sped the development of a complex graphical user interface, while providing fresh insight into the problem of representing bit-mapped objects. Because Smalltalk enforces the notion that every element in the system is an object, the Smalltalk developer is forced to begin designing his solution purely in terms of objects. This mind-set allowed me to view the point as no other graphics package has presented it: as a unique graphical entity (just as ll IS 1R formal geometry) available to the user as a graphical tool. As a result, users of my package are able to enjoy the benefits of both bit-mapped and object-oriented editors without ever abandoning an environment in which every graphical element is an object, in terms of both the interface and the underlying mathematical model
Recommended from our members
Separable User Interface Architectures in Teaching Object Technology
This paper concerns the critical role of separable user interface design in teaching object-oriented systems. M206 "Computing: An Object-oriented Approach" is a large-scale university-level introduction to software development designed from scratch for distance learning, using an objects-first approach with Smalltalk. The course is degree-level, counting as one sixth, and is being offered in the UK, Western Europe and Singapore. To address the needs of industry we have developed a radical syllabus that adheres to the principle of designing complex systems by separating view and model, and have developed a programming and learning environment to support these ideas. In the paper we examine how separable user interface architectures have guided our teaching of object technology and the design of powerful microworlds that are both usable and extendible by neophytes. The course and relevant teaching with software is outlined and the technical design and pedagogic use of the microworlds and GUI builder tool are described
Recommended from our members
User interface system based on active objects
An active-object user interface system (AOUIS) is a user interface system implemented as an active object system (AOS). An AOS is a transition-based object-oriented system suitable for the design of various concurrent systems. In an AOUIS, user interface objects, which are sometimes called "widgets", are represented as active user interface objects (AUIOs). The behavior of an AUIO is defined by the transition rules, the equational assignment statements, and the event routines provided in its class definition. Furthermore, an AUIO can be constructed from its component AUIOs through structural composition as ifit were a hardware object. Thus, AUIOs are better encapsulated and provide more flexible communication protocols than ordinary user interface objects. In addition, declarative descriptions of multiple views can be provided for each AUIO.Key Words and Phrases : user interface management system, active object system, production system, structural composition, software IC, subject/view
Recommended from our members
PolyView : an object-oriented data model for supporting multiple user views
In a typical database application, there are many different users with a great variety of skills, needs and perceptions. The problem of supporting this plethora of user views in a dynamic, data intensive environment is the topic of this dissertation.In traditional record-based systems, all information is represented by an idealized data structure and a set of operations on that structure. User views are defined by simple variations in this structure, such as permuting field names, selecting a subset of the data, or creating links between records. Semantic database models support more complex, "natural" structures. It is often claimed that relativism is supported because semantic schemas can be correctly interpreted (by users) in different ways. The object-oriented paradigm, with its simple and elegant structural semantics, provides both simplicity and richness. Unfortunately, current object-oriented systems only provide a single object interface (or protocol). This dissertation presents PolyView; an object-oriented data model capable of simultaneously supporting many points of view. In PolyView, objects encapsulate a single structure and any number of object interfaces (view instance descriptions). PolyView, therefore, supports distributed mappings from user views to the underlying database structure.Algorithms are presented for generic methods which retrieve and update information through user views. PolyView "colors" queries (messages) by attaching a view identity to them. As messages are propagated through the schema, each receiving object uses the color to determine how the message is to be processed. The color is used to select the user's protocol and allows different user's queries to be processed through apparently different database structures. Because objects act independently, PolyView is a data-driven system; messages are processed without any centralized control or shared memory.Finally, PolyView provides a set of view transformations which allow view administrators to build object interfaces. Since views are supported by both global and localized mechanisms, there are transformations which operate at each of these levels. There are three major categories of transformations presented in this thesis: those which customize the schema as a whole, transformations for changing the structure of the IS-A hierarchy and transformations for customizing attributes
Employing Object Technology to Expose Fundamental Object Concepts
We explore technical issues in the design of programming tools, development environments, simulations, code examples, user interface frameworks and pedagogies for a university-level course on object-oriented software development. The course, M206 Computing: An Object-Oriented Approach has been specifically developed for distance learning, and is enrolling over 5,000 students per year (average age 37) in the UK, Europe and Singapore. The course introduces computing via an object-oriented approach. M206 is substantial in extent representing one sixth of a degree. It embodies a practical, industry oriented view of computing and includes programming, analysis, design and group working. Considerable effort has been invested in making the simplicity, consistency and power of object technology accessible to and capable of being applied by beginners. A diverse set of educational media, such as CD-ROMs, TV and the Web, have been deployed as learning resources. We describe the agenda for the course; its object-oriented pedagogy and our strategy for delivery. We explain measures taken to avoid misconceptions about objects, our analysis and design method, and the Smalltalk programming environment we have developed specifically for learners and which is crucial to our approach. We outline how our adherence to the separation of view and domain model leads to technical innovations. Concluding remarks reflect on the benefits a reflexive strategy, both in education and training
A human-machine interaction tool set for Smalltalk 80.
This research represents an investigation into user acceptance of computer systems. It starts with the premise that existing systems do not fully meet user requirements, and are therefore rejected as 'difficult to use'. Various problems and influences affecting user acceptance are identified, and improvements are suggested. Although a broad range of factors affecting user acceptance are discussed, emphasis is given to the impact of actual computer software.Initially, both general and specific user interface software influences are examined, and it is shown how these needs can be met using new software technology. A new Intelligent Interface architecture model is presented, and comparisons are made to existing interface design approaches.Secondly, the role of empirical work within the field of Human Computer Interaction is highlighted. An investigation into the usability and user. acceptance of a large working library database system is described, and the results discussed. The role of Systems Analysis and Design and its effect upon user acceptance is also explored. It is argued that despite improvements in interface technology and related software engineering techniques, a software application is also a product of the Systems Analysis and Design process. Traditional Systems Design approaches are examined, and suitable improvements suggested based upon experience with emerging separable software architectures.Thirdly, the research proceeds to examine the potential of Quantitative User Modelling, and describes the implementation of an example object oriented Quantitative User Model. This is then evaluated in order to determine new knowledge, concerning the major issues surrounding the potential application of user modelling to interface design.Finally, attention is given to the concept of interface and application separation. An object oriented User Interface Management System is presented, and its implementation in the Smalltalk 80 programming language discussed. The proposed User Interface Management System utilises a new software architecture which provides explicit user interface separation, using the concept of a Pluggable View Controller. It also incorporates an integrated design Tool-set for Direct Manipulation interfaces. The proposed User Interface Management System and software architecture represents the major contribution of this project to the growing body of Human Computer Interaction research. In particular, the importance of explicit interface separation is established, and the proposed software architecture is critically evaluated to determine new knowledge concerning the requirements, constraints, and potential of proper user interface separation. The implementation of an object oriented Part Hierarchy mechanism is also presented. This mechanism is related to the proposed User Interface Management System, and is critically evaluated in order to add to the body of knowledge concerning object oriented systems
An Object-oriented methodology for modern user interface development.
by Lam Siu Hong.Thesis (M.Phil.)--Chinese University of Hong Kong, 1991.Includes bibliographical references.Chapter Chapter1 --- Introduction --- p.1Chapter 1.1 --- Software Development Crisis of User Interface --- p.1Chapter 1.2 --- Objectives and Scope of Interests --- p.1Chapter 1.3 --- Overview of the Thesis --- p.2Chapter Chapter2 --- Background and Problems --- p.4Chapter 2.1 --- Categories of User Interfaces --- p.4Chapter 2.2 --- Trends of User Interfaces --- p.6Chapter 2.3 --- Some other Desirable Features and Problems of UI Development --- p.7Chapter 2.3.1 --- Separating UI from Application --- p.7Chapter 2.3.1.1 --- Benefits of Separable UIs and Applications --- p.7Chapter 2.3.1.2 --- Requirements of Complete Separation --- p.10Chapter 2.3.2 --- Instant Continuous Feedback --- p.12Chapter 2.3.2.1 --- Problems of Linguistic Model on World Model Type UIs --- p.12Chapter 2.3.3 --- Undo and Recovery --- p.15Chapter 2.3.4 --- Iterative Design through Rapid Protyping --- p.16Chapter Chapter3 --- An Object-Oriented Model for Model World User Interfaces Development --- p.18Chapter 3.1 --- Features of UIs to be supported by the Model --- p.18Chapter 3.2 --- A Linkage Model for Separating UI from Application --- p.19Chapter 3.2.1 --- Communication Messages Modeled using an Object Oriented Approach --- p.20Chapter 3.2.2 --- A Sample Message --- p.22Chapter 3.2.3 --- Linkage in a Distributed Heterogenous Environment --- p.24Chapter 3.2.4 --- Comparing the Linkage Model with the Application Interface Model in Seeheim's UI Model --- p.25Chapter 3.3 --- An Object-Oriented Model for Supporting Multiple Feedbacks and Multi-thread dialogue --- p.26Chapter 3.3.1 --- An Overview of the Model --- p.27Chapter 3.3.2 --- Objects on the Lexical Layer --- p.28Chapter 3.3.3 --- Roles of Presentation Objects --- p.29Chapter 3.3.4 --- Syntactic Objects --- p.31Chapter 3.3.5 --- Interaction Objects --- p.32Chapter 3.3.6 --- Interaction between objetcs and Linkage Component --- p.33Chapter 3.3.7 --- Multiple U-tubes Ladder for Supporting Multiple Feedbacks --- p.33Chapter 3.3.8 --- Recovery through a Generic UNDO stack --- p.35Chapter 3.3.9 --- Dialogue Control in an Object --- p.37Chapter 3.3.10 --- Interactive Objects --- p.39Chapter 3.3.11 --- An Architecture for Supporting Multi-thread Dialogue --- p.40Chapter 3.4 --- Basic Object Structure --- p.42Chapter 3.4.1 --- An Event Model for Dialogue Control --- p.43Chapter 3.4.2 --- Maintain Consistency through ε-rules --- p.45Chapter 3.4.3 --- An Example of an Inner Object Specification --- p.47Chapter 3.4.4 --- Pre and Post Condition of Action --- p.49Chapter 3.4.5 --- Automatic Message Routing --- p.49Chapter 3.5 --- Systematic Approach to UI Specification --- p.50Chapter Chapter4 --- User Interface Framework Design --- p.52Chapter 4.1 --- A Framework for UI Development --- p.52Chapter 4.1.1 --- Abstract Base Class for Each Object Type --- p.54Chapter 4.1.2 --- A Kernel for Message Routing --- p.60Chapter 4.1.3 --- Interaction Knowledge Base --- p.63Chapter 4.1.4 --- A Dynamic View of UI Objects --- p.64Chapter 4.1.5 --- Switch Box Mechanism for Dialogue Switching --- p.66Chapter 4.1.6 --- Software IC Construction --- p.68Chapter 4.2 --- Summaries of Object-Object UI Model and UI Framework --- p.70Chapter 4.2.1 --- A New Approach to User Interface Development 、 --- p.70Chapter 4.2.2 --- Feautures of UI Development provided by the Object-Object UI Model and UI Framework --- p.71Chapter Chapter5 --- Implementation --- p.73Chapter 5.1 --- Implementation of Framework in Microsoft Window Environment --- p.73Chapter 5.1.1 --- Implementation of automatic message routing through dynamic binding --- p.73Chapter 5.1.2 --- A generic message structure --- p.75Chapter 5.1.3 --- A meta class for object communication --- p.76Chapter 5.1.4 --- Software component of UI framework in Microsoft Window environment --- p.76Chapter 5.2 --- A Simple Stock Market Decision Support System (SSMDSS) --- p.77Chapter 5.2.1 --- UI Specification --- p.81Chapter 5.2.2 --- UI features supported by SSMDSS --- p.87Chapter Chapter6 --- Results --- p.89Chapter 6.1 --- Facts discovered --- p.89Chapter 6.1.1 --- Asynchronous and synchronous communication among objects --- p.89Chapter 6.1.2 --- Flexibility of the C+ + language --- p.90Chapter 6.2 --- Technical Problems Encountered --- p.91Chapter 6.2.1 --- Problems from Implementation Platform --- p.91Chapter 6.2.2 --- Problems due to Object Decomposition in an Interactive Object in SSMDSS --- p.92Chapter 6.3 --- Objectives accomplished by the Object-Oriented UI Model indicated by SSMDSS --- p.93Chapter Chapter7 --- Conclusion --- p.95Chapter 7.1 --- Thesis Summary --- p.95Chapter 7.2 --- Merits and Demerit of the Object-Oriented UI Model --- p.96Chapter 7.3 --- Cost of the Object-Oriented UI Model --- p.96Chapter 7.4 --- Future work --- p.97AppendixChapter A1 --- An Alogrithm for Converting Transition Network Diagram to Event Response Language --- p.A1Chapter A2 --- An Object-Oriented Software Development --- p.A4Chapter A2.1 --- Traditional Non Object-Oriented Software Development --- p.A4Chapter A2.2 --- An Object-Oriented Software Development --- p.A6Chapter A3 --- Vienna Development Method (VDM) --- p.A8Chapter A3.1 --- An Overview of VDM --- p.A8Chapter A3.2 --- Apply VDM to Object-Oriented UI model --- p.A10Chapter A4 --- Glossaries and Terms --- p.A12Referenc
The comparison of two graphic user interface frameworks: Windows Presentation Foundation and Windows Forms
The purpose of this thesis is to compare Windows Presentation Foundation and Windows Forms as the framework of graphical user interfaces. Although both tools serve the same purpose, they tackle it with a different approach. Windows Presentation Foundation is tightly bound to the architectural pattern model-view-view model that separates the visual aspect of a graphical user interface from the business and back end logic as well as using the markup language XAML for the design of the graphical interface. Windows Forms offers an extensible set of object oriented classes that enable the development of content and visually rich applications.
The individual approach to the development in both frameworks is shown on a practical example in the form of an application. The application is designed as a home library that allows the user to view and edit the data stored in a local database. The pros and cons of each framework are presented on the basis of empirical and theoretical comparison. The results of the comparison have shown that Windows Forms is more applicable for the type of applications such as the home library as it provides more conducive solutions despite many advantages and benefits of Windows Presentation Foundation
The comparison of two graphic user interface frameworks: Windows Presentation Foundation and Windows Forms
The purpose of this thesis is to compare Windows Presentation Foundation and Windows Forms as the framework of graphical user interfaces. Although both tools serve the same purpose, they tackle it with a different approach. Windows Presentation Foundation is tightly bound to the architectural pattern model-view-view model that separates the visual aspect of a graphical user interface from the business and back end logic as well as using the markup language XAML for the design of the graphical interface. Windows Forms offers an extensible set of object oriented classes that enable the development of content and visually rich applications.
The individual approach to the development in both frameworks is shown on a practical example in the form of an application. The application is designed as a home library that allows the user to view and edit the data stored in a local database. The pros and cons of each framework are presented on the basis of empirical and theoretical comparison. The results of the comparison have shown that Windows Forms is more applicable for the type of applications such as the home library as it provides more conducive solutions despite many advantages and benefits of Windows Presentation Foundation
Model-based engineering of animated interactive systems for the interactive television environment
Les interfaces graphiques étaient la plupart du temps statiques, et représentaient une succession d'états logiciels les uns après les autres. Cependant, les transitions animées entre ces états statiques font partie intégrante des interfaces utilisateurs modernes, et leurs processus de design et d'implémentations constituent un défi pour les designers et les développeurs. Cette thèse propose un processus de conception de systèmes interactifs centré sur les animations, ainsi qu'une architecture pour la définition et l'implémentation d'animations au sein des interfaces graphiques. L'architecture met en avant une approche à deux niveaux pour définir une vue haut niveau d'une animation (avec un intérêt particulier pour les objets animés, leurs propriétés à être animé et la composition d'animations) ainsi qu'une vue bas niveau traitant des aspects détaillés des animations tels que les timings et les optimisations. Concernant les spécifications formelles de ces deux niveaux, nous utilisons une approche qui facilite les réseaux de Petri orientés objets pour la conception, l'implémentation et la validation d'interfaces utilisateurs animées en fournissant une description complète et non-ambiguë de l'ensemble de l'interface utilisateur, y compris les animations. Enfin, nous décrivons la mise en pratique du processus présenté, illustré par un cas d'étude d'un prototype haute-fidélité d'une interface utilisateur, pour le domaine de la télévision interactive. Ce processus conduira à une spécification formelle et détaillée du système interactif, et incluera des animations utilisant des réseaux de Petri orientés objet (conçus avec l'outil PetShop CASE).Graphical User Interfaces used to be mostly static, representing one software state after the other. However, animated transitions between these static states are an integral part in modern user interfaces and processes for both their design and implementation remain a challenge for designers and developers. This thesis proposes a process for designing interactive systems focusing on animations, along with an architecture for the definition and implementation of animation in user interfaces. The architecture proposes a two levels approach for defining a high-level view of an animation (focusing on animated objects, their properties to be animated and on the composition of animations) and a low-level one dealing with detailed aspects of animations such as timing and optimization. For the formal specification of these two levels, we are using an approach facilitating object-oriented Petri nets to support the design, implementation and validation of animated user interfaces by providing a complete and unambiguous description of the entire user interface including animations. Finally, we describe the application of the presented process exemplified by a case study for a high-fidelity prototype of a user interface for the interactive Television domain. This process will lead to a detailed formal specification of the interactive system, including animations using object-oriented Petri nets (designed with the PetShop CASE tool)
- …