Application units: Basic building blocks of tailorable applications

  • Anders MØrch
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1015)

Abstract

Application units (AUs) are defined as the smallest self-contained units to be useful in the design and implementation of end-user tailorable applications, such as word processors, drawing programs, and e-mail systems. The notion of application units has been inspired by similar basic building blocks: Lego bricks, HyperCard buttons+scripts, MVC triads, and architectural patterns. It is proposed as a solution to problems in maintenance, reuse, and further development of generic software applications.

An architecture for tailorable, generic applications is presented, application units are introduced, and an example of a generic application built out of AUs is given.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    C.A. Alexander: The Timeless Way of Building. Oxford, University Press, New York, NY, 1979.Google Scholar
  2. 2.
    C.A. Alexander, M. Ishikawa and M. Silverstein: A Pattern Language: towns, buildings, construction. Oxford University Press, New York, NY, 1977.Google Scholar
  3. 3.
    C.A. Alexander, M. Silverstein, S. Angel, S. Ishikawa and S. Abrams: The Oregon Experiment. Oxford, University Press, New York, NY, 1975.Google Scholar
  4. 4.
    C.A. Alexander, and B. Poyner. The Atoms of Environmental Structure. Emerging Methods in Environmental Planning and Design. G.T. Moore (Ed.). MIT Press, Cambridge, MA, 1968.Google Scholar
  5. 5.
    J.M. Carroll: Making Use a Design Representation. CACM. 37, 12 (Dec. 1994), 28–35.Google Scholar
  6. 6.
    B.J. Cox: Planning the Software Industrial Revolution. IEEE Software. 7, 6 (Nov. 1990), 25–33.Google Scholar
  7. 7.
    F. Duffy and J. Torrey: A Progress Report on the Pattern Language. Emerging Methods in Environmental Planning and Design. G.T. Moore (Ed.). MIT Press, Cambridge, MA, 1968.Google Scholar
  8. 8.
    M.C Escher: The Graphic Work of M.C. Escher. Ballantine Books, New York, NY, 1971.Google Scholar
  9. 9.
    G. Fischer, A.C. Lemke, R. McCall and A.I. Morch: Making Argumentation Serve Design. Human-Computer Interaction. 6, 3–4 (1991), 393–419.Google Scholar
  10. 10.
    E.R. Gamma, R. Helm, R. Johnson and J. Vlissides: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading, MA, 1995.Google Scholar
  11. 11.
    S. Gibbs, D. Tsichritzis, E. Casais, O. Nierstrasz and X. Pintado: Class Management for Software Communities. CACM. 33, 9 (Sept. 1990), 90–103.Google Scholar
  12. 12.
    Goldberg, A. and D. Robson. Smalltalk-80: The language and its Implementation. Addison-Wesley, Menlo Park, CA, 1983Google Scholar
  13. 13.
    D. Goodman: The complete HyperCard 2.0 Handbook. Bantam Books, New York, NY, 1990.Google Scholar
  14. 14.
    G.E. Krasner and S.T. Pope: A cookbook for using the model-view-controller user interface paradigm in SmallTalk-80. JOOP, Vol. 1, No. 3. August, 1988.Google Scholar
  15. 15.
    O.L. Madsen, B. MØller-Pedersen and K. Nygaard: Object-Oriented Programming in the BETA Programming Language. Addison-Wesley, UK, 1993.Google Scholar
  16. 16.
    J. Malhotra: Dynamic Extensibility in a Statically-compiled Object-oriented Language, in Proc. of the International Symposium on Object Technologies for Advanced Software, Kanazawa, Japan, Nov. 1993.Google Scholar
  17. 17.
    T.P. Moran and J.M. Carroll (Eds.): Design Rationale. Lawrence Erlbaum, Hillsdale, NJ. 1995.Google Scholar
  18. 18.
    A. MØrch: Designing for Radical Tailorability: Coupling Artifact and Rationale. Knowledge-Based Systems. 7, 4 (Dec. 1994), 253–264.Google Scholar
  19. 19.
    A. MØrch: Three Levels of End-user Tailoring: Customization, Integration, and Extension. Proc. of the Third Decennial Aarhus Conference, Aarhus, DK, Aug. 1995.Google Scholar
  20. 20.
    B. Nardi: A Small Matter of Programming: Perspectives on End User Computing. The MIT Press, Cambridge, MA, 1993.Google Scholar
  21. 21.
    W. Pree: Design Patterns for Object-Oriented Software Development. ACM Press Books, Addison-Wesley, 1994.Google Scholar
  22. 22.
    A. Reinhardt: Managing the New Document. Byte (Aug. 1994), 91–104.Google Scholar
  23. 23.
    K. Schmucker: MacApp: An Application Framework. Byte. 11, 8 (1986).Google Scholar
  24. 24.
    A. Sellen and A. Nicol: Building User-centered On-line Help. The Art of Human-Computer Interface Design. B. Laurel (Ed). Addison-Wesley, Reading, MA, 1990, 143–153.Google Scholar
  25. 25.
    L. Wittgenstein: Philosophical Investigations. Third edition. Basil Blackwell, UK, 1967.Google Scholar

Copyright information

© Springer-Verlag 1995

Authors and Affiliations

  • Anders MØrch
    • 1
  1. 1.Department of InformaticsUniversity of OsloOsloNorway

Personalised recommendations