Difference between revisions of "Context, Problem and Consequences First"

From Open Pattern Repository for Online Learning Systems
Jump to navigation Jump to search
(Added source)
(Added contributors)
Line 4: Line 4:
{{Infobox_designpattern
{{Infobox_designpattern
|image= <!-- Provide the filename of the image to be displayed (e.g., Design_pattern.png) -->
|image= <!-- Provide the filename of the image to be displayed (e.g., Design_pattern.png) -->
|contributor=  
|contributor= [[Christian Köppe]]
|source=  Köppe (2011)<ref>Pattern first published in Köppe, C. (2011). [http://dl.acm.org/citation.cfm?id=2396718 A pattern language for teaching design patterns (part 1)]. In ''Proceedings of the 16th European Conference on Pattern Languages of Programs'' (p. 2). ACM:New York.</ref><ref>Patlet published in Köppe, C. (2011). [http://koeppe.nl/publications/PatternsForPatternTeaching_ACM_Plop11.pdf A pattern language for teaching design patterns (part 2)]. In ''Proceedings of the 18th Conference on Pattern Languages of Programs''. ACM:New York.</ref>; Köppe (2013)<ref name="Koppe2013">Pattern also published in Köppe, C. (2013). [http://link.springer.com/chapter/10.1007/978-3-642-38676-3_2 A Pattern Language for Teaching Design Patterns.] In ''Transactions on Pattern Languages of Programming III'' (pp. 24-54). Springer Berlin Heidelberg.</ref>
|source=  Köppe (2011)<ref>Pattern first published in Köppe, C. (2011). [http://dl.acm.org/citation.cfm?id=2396718 A pattern language for teaching design patterns (part 1)]. In ''Proceedings of the 16th European Conference on Pattern Languages of Programs'' (p. 2). ACM:New York.</ref><ref>Patlet published in Köppe, C. (2011). [http://koeppe.nl/publications/PatternsForPatternTeaching_ACM_Plop11.pdf A pattern language for teaching design patterns (part 2)]. In ''Proceedings of the 18th Conference on Pattern Languages of Programs''. ACM:New York.</ref>; Köppe (2013)<ref name="Koppe2013">Pattern also published in Köppe, C. (2013). [http://link.springer.com/chapter/10.1007/978-3-642-38676-3_2 A Pattern Language for Teaching Design Patterns.] In ''Transactions on Pattern Languages of Programming III'' (pp. 24-54). Springer Berlin Heidelberg.</ref>
|dataanalysis= <!-- If applicable, list of data analyses used for mining the pattern separated by a " , "comma -->
|dataanalysis= <!-- If applicable, list of data analyses used for mining the pattern separated by a " , "comma -->

Revision as of 12:22, 14 March 2017


Context, Problem and Consequences First
Contributors Christian Köppe
Last modification March 14, 2017
Source Köppe (2011)[1][2]; Köppe (2013)[3]
Pattern formats OPR Alexandrian
Usability
Learning domain
Stakeholders

Also Known As: First Things First, Focus Beyond the Solution


Context Problem and Consequences First-alx.png


After an initial introduction to patterns, the students will be required to apply them as well. The application requires the choice for a pattern and the application of its solution. You now want to show students how to start applying patterns in a correct way.

***

Students who start to learn patterns often go straight to the solution and apply it, hastily skipping the problem, context, forces, and consequences parts of the pattern.


***

Therefore: Focus first on the problem, context, and forces parts of a pattern. Make sure the students understand the need for a good solution. Then introduce the solution and the consequences of applying the pattern.


We consider this pattern a true invariant, as independent of the domain a specific pattern should only be applied after all relevant information has been gathered and analysed.


References

  1. Pattern first published in Köppe, C. (2011). A pattern language for teaching design patterns (part 1). In Proceedings of the 16th European Conference on Pattern Languages of Programs (p. 2). ACM:New York.
  2. Patlet published in Köppe, C. (2011). A pattern language for teaching design patterns (part 2). In Proceedings of the 18th Conference on Pattern Languages of Programs. ACM:New York.
  3. Pattern also published in Köppe, C. (2013). A Pattern Language for Teaching Design Patterns. In Transactions on Pattern Languages of Programming III (pp. 24-54). Springer Berlin Heidelberg.