A small matter of programming: perspectives on end user computing
A small matter of programming: perspectives on end user computing
Watch what I do: programming by demonstration
Watch what I do: programming by demonstration
Software architecture: perspectives on an emerging discipline
Software architecture: perspectives on an emerging discipline
Pattern-oriented software architecture: a system of patterns
Pattern-oriented software architecture: a system of patterns
A framework for classifying and comparing architecture description languages
ESEC '97/FSE-5 Proceedings of the 6th European SOFTWARE ENGINEERING conference held jointly with the 5th ACM SIGSOFT international symposium on Foundations of software engineering
Acme: architectural description of component-based systems
Foundations of component-based systems
Architectural Styles, Design Patterns, and Objects
IEEE Software
A compositional formalization of connector wrappers
Proceedings of the 25th International Conference on Software Engineering
Style-Based Reuse for Software Architectures
ICSR '96 Proceedings of the 4th International Conference on Software Reuse
Rapid development of custom software architecture design environments
Rapid development of custom software architecture design environments
DiscoTect: A System for Discovering Architectures from Running Systems
Proceedings of the 26th International Conference on Software Engineering
Bridging the Gap between Systems Design
SEW '05 Proceedings of the 29th Annual IEEE/NASA on Software Engineering Workshop
CHI EA '97 CHI '97 Extended Abstracts on Human Factors in Computing Systems
Taverna: lessons in creating a workflow environment for the life sciences: Research Articles
Concurrency and Computation: Practice & Experience - Workflow in Grid Systems
Scientific workflow management and the Kepler system: Research Articles
Concurrency and Computation: Practice & Experience - Workflow in Grid Systems
Pegasus: A framework for mapping complex scientific workflows onto distributed systems
Scientific Programming
Discovering Architectures from Running Systems
IEEE Transactions on Software Engineering
Architecture-driven modelling and analysis
SCS '06 Proceedings of the eleventh Australian workshop on Safety critical systems and software - Volume 69
Some Problems of Professional End User Developers
VLHCC '07 Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing
Enabling Smart Spaces with OSGi
IEEE Pervasive Computing
Direct manipulation interfaces
Human-Computer Interaction
Environmental Modelling & Software
Two studies of opportunistic programming: interleaving web foraging, learning, and writing code
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Geospatial Analysis: A Comprehensive Guide to Principles, Techniques and Software Tools
Geospatial Analysis: A Comprehensive Guide to Principles, Techniques and Software Tools
IAAI'07 Proceedings of the 19th national conference on Innovative applications of artificial intelligence - Volume 2
Taxonomies of visual programming and program visualization
Journal of Visual Languages and Computing
Analyzing architectural styles
Journal of Systems and Software
Domain Specific Languages
Documenting Software Architectures: Views and Beyond
Documenting Software Architectures: Views and Beyond
The state of the art in end-user software engineering
ACM Computing Surveys (CSUR)
Scientific software production: incentives and collaboration
Proceedings of the ACM 2011 conference on Computer supported cooperative work
An architectural approach to end user orchestrations
ECSA'11 Proceedings of the 5th European conference on Software architecture
Hi-index | 0.00 |
Within an increasing number of domains an important emerging need is the ability for technically naïve users to compose computational elements into novel configurations. Examples include astronomers who create new analysis pipelines to process telescopic data, intelligence analysts who must process diverse sources of unstructured text to discover socio-technical trends, and medical researchers who have to process brain image data in new ways to understand disease pathways. Creating such compositions today typically requires low-level technical expertise, limiting the use of computational methods and increasing the cost of using them. In this paper we describe an approach -- which we term end-user architecting -- that exploits the similarity between such compositional activities and those of software architects. Drawing on the rich heritage of software architecture languages, methods, and tools, we show how those techniques can be adapted to support end users in composing rich computational systems through domain-specific compositional paradigms and component repositories, without requiring that they have knowledge of the low-level implementation details of the components or the compositional infrastructure. Further, we outline a set of open research challenges that the area of end-user architecting raises.