Skip to main content

Foundations and Tools for End-User Architecting

  • Conference paper
Large-Scale Complex IT Systems. Development, Operation and Management (Monterey Workshop 2012)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 7539))

Included in the following conference series:

Abstract

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
eBook
USD 39.99
Price excludes VAT (USA)
Softcover Book
USD 54.99
Price excludes VAT (USA)

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others

References

  1. Alion MA&D Operation. VIBES: Visualization of Belief Systems (May 2012), http://www.maad.com/index.pl/visualization_of_belief_systems

  2. Bass, L., Clements, P., Kazman, R.: Software Architecture in Practice, 2nd edn. Addison Wesley (2007) ISBN 0-201-19930-0

    Google Scholar 

  3. Bavoil, L., Callahan, S.P., Scheidegger, C.E., Vo, H.T., Crossno, P., Silva, C.T., Freire, J.: Vistrails: Enabling interactive multiple-view visualizations. In: IEEE Visualization, vol. 18 (2005)

    Google Scholar 

  4. Biomedical Informatics Research Network. (BIRN), http://www.birncommunity.org

  5. Brandt, J., Guo, P.J., Lewenstein, J., Dontcheva, M., Klemmer, S.R.: Two studies of opportunistic programming: interleaving web foraging, learning, and writing code. In: CHI, pp. 1589–1598 (2009)

    Google Scholar 

  6. Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P., Stal, M.: Pattern Oriented Software Architecture: A System of Patterns. John Wiley & Sons (1996)

    Google Scholar 

  7. Carley, K.M.: A dynamic network approach to the assessment of terrorist groups and the impact of alternative courses of action. In: Visualizing Network Information Meeting, RTO-MP-IST 2006, France (2006)

    Google Scholar 

  8. Clements, P., Bachmann, F., Bass, L., Garlan, D., Ivers, J., Little, R., Merson, P., Nord, R., Stafford, J.: Documenting Software Architectures: Views and Beyond, 2nd edn. Addison-Wesley Professional (October 2010)

    Google Scholar 

  9. Clements, P., Kazman, R., Klein, M.: Evaluating Software Architectures: Methods and Case Studies. Addison Wesley (2001)

    Google Scholar 

  10. Cypher, A. (ed.): Watch What I Do – Programming by Demonstration. MIT Press, Cambridge (1993)

    Google Scholar 

  11. Deelman, E., Singh, G., Su, M.-H., Blythe, J., Gil, Y., Kesselman, C., Mehta, G., Vahi, K., Bruce Berriman, G., Good, J., Laity, A.C., Jacob, J.C., Katz, D.S.: Pegasus: A framework for mapping complex scientific workflows onto distributed systems. Scientific Programming 13(3), 219–237 (2005)

    Google Scholar 

  12. Dwivedi, V., Velasco-Elizondo, P., Maria Fernandes, J., Garlan, D., Schmerl, B.: An Architectural Approach to End User Orchestrations. In: Crnkovic, I., Gruhn, V., Book, M. (eds.) ECSA 2011. LNCS, vol. 6903, pp. 370–378. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  13. Eidelberg, D.: Metabolic brain networks in neurodegenerative disorders: A functional imaging approach. Trends Neurosci. 32, 548–557 (2009)

    Article  Google Scholar 

  14. FMRIB Software Library (fsl), http://www.fmrib.ox.ac.uk/fsl/

  15. Fowler, M.J.: Domain-Specific Languages. Addison-Wesley (2011)

    Google Scholar 

  16. Garlan, D., Carley, K.M., Schmerl, B., Bigrigg, M., Celiku, O.: Using service-oriented architectures for socio-cultural analysis. In: Proceedings of the 21st International Conference on Software Engineering and Knowledge Engineering (SEKE 2009), Boston, USA, July 1-3 (2009)

    Google Scholar 

  17. Garlan, D., Monroe, R.T., Wile, D.: Acme: Architectural description of component-based systems. In: Leavens, G.T., Sitaraman, M. (eds.) Foundations of Component-Based Systems, p. 47. Cambridge University Press (2000)

    Google Scholar 

  18. Garlan, D., Reinholtz, W.K., Schmerl, B., Sherman, N., Tseng, T.: Bridging the gap between systems design and space systems software. In: Proceedings of the 29th Annual IEEE/NASA Software Engineering Workshop (SEW-29), Greenbelt, MD, April 6-7 (2005)

    Google Scholar 

  19. Garlan, D., Schmerl, B.: Architecture-driven modelling and analysis. In: Cant, T. (ed.) Proceedings of the 11th Australian Workshop on Safety Related Programmable Systems (SCS 2006), Melbourne, Australia. Conferences in Research and Practice in Information Technology, vol. 69 (2006)

    Google Scholar 

  20. Garlan, D., Schmerl, B., Dwivedi, V., Banerjee, A., Glendenning, L., Nakayama, M., Patel, N.: Swift: A tool for constructing workflows for dynamic network analysis (2011), http://acme.able.cs.cmu.edu/pubs/show.php?id=333

  21. Giardine, B., Riemer, C., Hardison, R.C., Burhans, R., Elnitski, L., Shah, P., Zhang, Y., Blankenberg, D., Albert, I., Taylor, J., Miller, W., Kent, W.J., Nekrutenko, A.: Galaxy: a platform for interactive large-scale genome analysis. Genome Res. 15(10), 1451–1455 (2005)

    Article  Google Scholar 

  22. Gil, Y., Ratnakar, V., Deelman, E., Mehta, G., Kim, J.: Wings for Pegasus: Creating large-scale scientific applications using semantic representations of computational workflows. In: AAAI, pp. 1767–1774 (2007)

    Google Scholar 

  23. Goodell, H.: End-user computing. In: CHI 1997 Extended Abstracts on Human Factors in Computing Systems: Looking to the Future, CHI EA 1997, pp. 132–132. ACM, New York (1997)

    Chapter  Google Scholar 

  24. Hellar, D.B., Vega, L.C.: The Ozone Widget Framework: towards modularity for C2 human interfaces. In: Proceedings of SPIE Conference on Defense Transformation and Net-Centric Systems, Baltimore, Maryland (2012)

    Google Scholar 

  25. Howison, J., Herbsleb, J.D.: Scientific software production: incentives and collaboration. In: CSCW, pp. 513–522 (2011)

    Google Scholar 

  26. Hutchins, E.L., Hollan, J.D., Norman, D.A.: Direct manipulation interfaces. Human Computer Interaction 1(4), 311–338 (1985)

    Article  Google Scholar 

  27. Kim, J.S., Garlan, D.: Analyzing architectural styles. Journal of Software and Systems 83(7), 1216–1235 (2010)

    Article  Google Scholar 

  28. Ko, A.J., Abraham, R., Beckwith, L., Blackwell, A.F., Burnett, M.M., Erwig, M., Scaffidi, C., Lawrance, J., Lieberman, H., Myers, B.A., Rosson, M.B., Rothermel, G., Shaw, M., Wiedenbeck, S.: The state of the art in end-user software engineering. ACM Comput. Surv. 43(3), 21 (2011)

    Article  Google Scholar 

  29. Lee, C., Nordstedt, D., Helal, S.: Enabling smart spaces with osgi. IEEE Pervasive Computing 2, 89–94 (2003)

    Google Scholar 

  30. Letondal, C.: Participatory programming: Developing programmable bioinformatics tools for end-users. In: Lieberman, H., Paterno, F., Wulf, V. (eds.) End-User Development, pp. 207–242 (2005)

    Google Scholar 

  31. LexisNexis, http://www.lexisnexis.net

  32. Ludäscher, B., Altintas, I., Berkley, C., Higgins, D., Jaeger, E., Jones, M.B., Lee, E.A., Tao, J., Zhao, Y.: Scientific workflow management and the Kepler system. Concurrency and Computation: Practice and Experience 18(10), 1039–1065 (2006)

    Article  Google Scholar 

  33. McConahy, A.L., Herbsleb, J.D.: Platform design strategies: Contrasting case studies of two audio production systems. In: FutureCSD Workshop at CSCW (2011)

    Google Scholar 

  34. Medvidovic, N., Taylor, R.N.: A framework for classifying and comparing architecture description languages. In: ESEC / SIGSOFT FSE, pp. 60–76 (1997)

    Google Scholar 

  35. Monroe, R.T.: Rapid Develpomentof Custom Software Design Environments. PhD thesis, Carnegie Mellon University, School of Computer Science (July 1999)

    Google Scholar 

  36. Monroe, R.T., Garlan, D.: Style-based reuse for software architectures. In: Proceedings of the Fourth International Conference on Software Reuse (April 1996)

    Google Scholar 

  37. Monroe, R.T., Kompanek, A., Melton, R.E., Garlan, D.: Architectural styles, design patterns, and objects. IEEE Software 14(1), 43–52 (1997)

    Article  Google Scholar 

  38. Moore, D.M., Crowe, P., Cloutier, R.: Driving major change: The balance between methods and people. Software Technology Support Center Hill AFB UT (2011)

    Google Scholar 

  39. Myers, B.A.: Taxonomies of visual programming and program visualization. J. Vis. Lang. Comput. 1(1), 97–123 (1990)

    Article  Google Scholar 

  40. myExperiment, http://www.myexperiment.org/

  41. Nardi, B.A.: A small matter of programming: perspectives on end user computing. MIT Press (1993)

    Google Scholar 

  42. neuGRID CNRS. N4u - neugrid for you, http://neugrid4you.eu

  43. Oinn, T.M., Mark Greenwood, R., Addis, M., Nedim Alpdemir, M., Ferris, J., Glover, K., Goble, C.A., Goderis, A., Hull, D., Marvin, D., Li, P., Lord, P.W., Pocock, M.R., Senger, M., Stevens, R., Wipat, A., Wroe, C.: Taverna: lessons in creating a workflow environment for the life sciences. Concurrency and Computation: Practice and Experience 18(10), 1067–1100 (2006)

    Article  Google Scholar 

  44. Pekar, J.J.: A brief introduction to functional MRI. IEEE Engineering in Medicine and Biology Magazine 25(2), 24–26 (2006)

    Article  Google Scholar 

  45. Potomac Fusion. Ozone/Synapse download portal (2012), http://widget.potomacfusion.com/main/home

  46. Rex, D.E., Ma, J.Q., Toga, A.W.: The LONI Pipeline Processing Environment. Neuroimage 19, 1033–1048 (2003)

    Article  Google Scholar 

  47. Schmerl, B., Aldrich, J., Garlan, D., Kazman, R., Yan, H.: Discovering architectures from running systems. IEEE Transactions on Software Engineering 32(7) (July 2006); also available from IEEE. Appendix A, Appendix B

    Google Scholar 

  48. Schmerl, B.R., Garlan, D., Dwivedi, V., Bigrigg, M.W., Carley, K.M.: SORASCS: a case study in SOA-based platform design for socio-cultural analysis

    Google Scholar 

  49. Segal, J.: Some problems of professional end user developers. In: VL/HCC, pp. 111–118 (2007)

    Google Scholar 

  50. Shaw, M., Garlan, D.: Software architecture - perspectives on an emerging discipline. Prentice Hall (1996)

    Google Scholar 

  51. de Smith, M.J., Goodchild, M.F., Longley, P.A.: Geospatial Analysis: A Comprehensive Guide to Principles, Techniques and Software Tools, 2nd edn. Troubador Publishing Ltd. (December 2007)

    Google Scholar 

  52. Spitznagel, B., Garlan, D.: A compositional formalization of connector wrappers. In: The 2003 International Conference on Software Engineering, ICSE 2003 (2003)

    Google Scholar 

  53. Strother, S.C.: Evaluating fMRI preprocessing pipelines. IEEE Engineering in Medicine and Biology Magazine 25(2), 27–41 (2006)

    Article  Google Scholar 

  54. The Portuguese Brain Imaging Network Grid - IEETA. (BING), http://www.brainimaging.pt

  55. The University of Manchester and the European Bioinformatics Institute (EMBL-EBI). BioCatalogue. The Life Science Web Services Registry, http://www.biocatalogue.org/

  56. Elizondo, P.V., Dwivedi, V., Garlan, D., Schmerl, B., Fernandes, J.M.: Resolving data mismatches in end-user compositions (submitted for publication, 2012)

    Google Scholar 

  57. Villa, F., Athanasiadis, I.N., Rizzoli, A.E.: Modelling with knowledge: A review of emerging semantic approaches to environmental modelling. Environmental Modelling and Software 24(5), 577–587 (2009)

    Article  Google Scholar 

  58. Yan, H., Garlan, D., Schmerl, B., Aldrich, J., Kazman, R.: DiscoTect: A system for discovering architectures from running systems. In: Proceedings of the 26th International Conference on Software Engineering, Edinburgh, Scotland, May 23-28 (2004)

    Google Scholar 

  59. Zhao, Y., Gallup, S.P., MacKinnon, D.J.: Lexical link analysis for the haiti earthquake relief operation using open data sources. In: International Command and Control, Research and Technology Symposium, Québec City, Canada, June 21-23 (2011)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2012 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Garlan, D., Dwivedi, V., Ruchkin, I., Schmerl, B. (2012). Foundations and Tools for End-User Architecting. In: Calinescu, R., Garlan, D. (eds) Large-Scale Complex IT Systems. Development, Operation and Management. Monterey Workshop 2012. Lecture Notes in Computer Science, vol 7539. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-34059-8_9

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-34059-8_9

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-34058-1

  • Online ISBN: 978-3-642-34059-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics