SMALLTALK-80: the interactive programming environment
SMALLTALK-80: the interactive programming environment
A cookbook for using the model-view controller user interface paradigm in Smalltalk-80
Journal of Object-Oriented Programming
ET++—an object oriented application framework in C++
OOPSLA '88 Conference proceedings on Object-oriented programming systems, languages and applications
Creating user interfaces using programming by example, visual programming, and constraints
ACM Transactions on Programming Languages and Systems (TOPLAS)
The early history of Smalltalk
HOPL-II The second ACM SIGPLAN conference on History of programming languages
IRIS Inventor, a 3D graphics toolkit
OOPSLA '93 Proceedings of the eighth annual conference on Object-oriented programming systems, languages, and applications
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
The design and evolution of C++
The design and evolution of C++
ACM Computing Surveys (CSUR) - Special issue: position statements on strategic directions in computing research
Why interaction is more powerful than algorithms
Communications of the ACM
Communications of the ACM - Special issue Participatory Design
Software architecture in practice
Software architecture in practice
Using metalevel techniques in a flexible toolkit for CSCW applications
ACM Transactions on Computer-Human Interaction (TOCHI)
The Rational Unified Process: an introduction
The Rational Unified Process: an introduction
Requirements engineering: a roadmap
Proceedings of the Conference on The Future of Software Engineering
Communications of the ACM
Agile Software Development: Principles, Patterns, and Practices
Agile Software Development: Principles, Patterns, and Practices
The Art of the Metaobject Protocol
The Art of the Metaobject Protocol
Developing Software for the User Interface
Developing Software for the User Interface
User Interface Management Systems
User Interface Management Systems
Architectural Mismatch: Why Reuse Is So Hard
IEEE Software
Architectural Mismatch: Why Reuse Is So Hard
IEEE Software
Implementing Dialogue Independence
IEEE Software
Scenario-Based Analysis of Software Architecture
IEEE Software
Specifying the Behavior of Graphical Objects Using Esterel
TAPSOFT '89 Proceedings of the International Joint Conference on Theory and Practice of Software Development, Volume 2: Advanced Seminar on Foundations of Innovative Software Development II and Colloquium on Current Issues in Programming Languages
Defining the Dynamic Behaviour of Animated Interfaces
Proceedings of the IFIP TC2/WG2.7 Working Conference on Engineering for Human-Computer Interaction
Arctic: A functional language for real-time control
LFP '84 Proceedings of the 1984 ACM Symposium on LISP and functional programming
A molecular architecture for creating advanced GUIs
Proceedings of the 16th annual ACM symposium on User interface software and technology
OpenMVC: a non-proprietry component-based framework for web applications
Proceedings of the 13th international World Wide Web conference on Alternate track papers & posters
Revisiting visual interface programming: creating GUI tools for designers and programmers
Proceedings of the 17th annual ACM symposium on User interface software and technology
Vers des outils pour les équipes de conception d'interfaces post-WIMP
IHM 2004 Proceedings of the 16th conference on Association Francophone d'Interaction Homme-Machine
Hackers & Painters: Big Ideas from the Computer Age
Hackers & Painters: Big Ideas from the Computer Age
Hi-index | 0.00 |
This article analyses the relationships between software architecture, programming languages and interactive systems. It proposes to consider that languages, like user interface tools, implement architecture styles or patterns aimed at particular stakeholders and scenarios. It lists architecture issues in interactive software that would be best resolved at the language level, in that conflicting patterns are currently proposed by languages and user interface tools, because of differences in target scenarios. Among these issues are the contra-variance of reuse and control, new scenarios of software reuse, the architecture-induced concurrency, and the multiplicity of hierarchies. The article then proposes a research agenda to address that problem, including a requirement-and scenario-oriented deconstruction of programming languages to understand which of the original requirements still hold and which are not fully adapted to interactive systems.