Documenting frameworks using patterns

@article{Johnson1992DocumentingFU,
  title={Documenting frameworks using patterns},
  author={Ralph E. Johnson},
  journal={Conference proceedings on Object-oriented programming systems, languages, and applications},
  year={1992},
  url={https://api.semanticscholar.org/CorpusID:604969}
}
This paper shows one way to document frameworks with patterns, and includes a set of patterns for HotDraw as an example to see how well patterns work to describe a framework.

Figures from this paper

Software design patterns: common questions and answers

A beginner’s guide to patterns, answering common questions about patterns, pattern languages, generativity, and Alexandrian form and describing patterns in terms of objects, rules, idioms, and paradigms in general.

Patterns for Documenting Frameworks - Part II

The patterns here presented address the problems of explaining how to use a framework and illustrating what it can be good for, respectively the patterns β€œCOOKBOOK & RECIPes” and β€œGRADED EXAMPLES”.

Patterns for Documenting Frameworks – Part III

This document presents patterns from a set of related patterns that describe proven solutions to recurrent problems of documenting object-oriented frameworks that complements the subset of artefact patterns under development and address the problems of describing the customizable points of the framework.

Reusing Application Frameworks Through

The notion of hooks is developed as a means of representing knowledge about the places in a framework that can be adapted by application developers to produce an application from the framework and applied to the SEAF (Size Engineering Application Framework) project.

Patterns for Documenting Open Source Frameworks

This work mine patterns from open source frameworks to uncover good solutions used to document them that had not yet been described as patterns, resulting in four new patterns.

Patterns for Effectively Documenting Frameworks

A small set of patterns addressing problems related to the framework documentation itself, here seen as an autonomous and tangible product independent of the process used to create it, aimed at helping nonexperts on cost-effectively documenting object-oriented frameworks.

TASK-DRIVEN SPECIALIZATION SUPPORT FOR OBJECT-ORIENTED FRAMEWORKS

It is shown how the extension points ("hot spots") of a framework can be specified formally in such a way that the specification can be used to automatically generate a task-based wizard for guiding the framework specialization process.

Growing a pattern language (for security)

The mechanism of growing this pattern language is described: how it cataloged the security patterns from books, papers and pattern collections written by all security experts over the last 15 years, how it classified the patterns to help developers find the appropriate ones, and how the relationships between patterns in the language were identified.

Patterns for documenting frameworks: customization

This document presents two of a set of related patterns that describe proven solutions to help non-experts on solving recurrent problems of documenting object-oriented frameworks.

A SURVEY OF FRAMEWORKS

The purpose of this paper is to give an overview of frameworks as well as tools and methods supporting their use and design.
...

Contracts: specifying behavioral compositions in object-oriented systems

Using contracts provides a basis and vocabulary for Interaction-Oriented design which greatly facilitates the early identification, abstraction and reuse of patterns of behavior in programs.

Object Oriented Development in an Industrial Environment

Object-oriented programming is a promising approach to the industrialization of the software development process but it has not yet been incorporated in a development method for large systems, and a technique called block design, used within the telecommunication industry, is used.

Generalized graphical object editing

The Unidraw architecture simplifies the construction of these editors by providing programming abstractions that are common across domains, and results indicate a substantial reduction in implementation time and effort compared with existing tools.

Designing object-oriented software

Offers basic design principles, and a specific design process, that can be applied to any software programming effort, even those not using object-oriented programming languages or environments.…

A Pattern Language

A Pattern Language: Towns, Buildings, Construction (Center For Environmental Structure) PDF, A Pattern Language: Towns, Buildings, Construction (Center For Environmental Structure) PDF Download,…

Smalltalk scaffolding: a case study of minimalist instruction

A curriculum was developed to introduce users to the Smalltalk object-oriented programming language using the Minimalist model of instruction, aimed at supporting real work, getting started fast, reasoning and improvising, coordinating system and text, supporting error recognition and recovery, and exploiting prior knowledge.

The Nurnberg Funnel: Designing Minimalist Instruction for Practical Computer Skill

This book describes a quite different instructional paradigm that uses what learners do spontaneously to find meaning in the activities of learning, and demonstrates that the minimalist approach outperforms the standard "systems approach" in every relevant way.

A cookbook for using the model-view controller user interface paradigm in Smalltalk-80

A switch actuating device adapted for conjoint rotation with a rotatable assembly of a prime mover using a pair of sets of opposite surfaces to effect the axial movement of the switch operating means between its opposite positions.