Identification of Framework Hot Spots Using Pattern Languages

  • Rosana T. Vaccare Braga USP
  • Paulo Cesar Masiero USP

Resumo


One of the major factors that brings complexity to framework development is the identification of its hot spots, i.e., the framework parts that must be kept flexible as they are specific of individual systems. In this paper we show that pattern languages can be important sources for framework hot spots identification and, consequently, can be used for framework construction. We define the types of hot spots that are identifiable from information presented in the elements of each pattern of the pattern language. We propose also a process for hot spots identification and present a case study for identifying the hot spots of a framework built based on a pattern language for business resource management.

Referências

AARSTEN, A.; BRUGALI, D.; MENGA, G. (2000). A CIM Framework and Pattern Language, in "FAYAD, M. E. & JOHNSON, R. E. (eds.) (2000). Domain-Specific Application Frameworks: Frameworks Experience by Industry, John Wiley & Sons.", p. 21-42.

BOYD, L. (1998). Business Patterns of Association Objects. In: "R. Martin, D. Riehle, F. Buschmann (eds.) Pattern Languages of Program Design 3, Addison-Wesley, 1998", p. 395-408.

BOSCH, J. et al. (1999). Framework Problems and Experiences, in: "FAYAD, M. E.; JOHNSON, R. E.; SCHMIDT, D. C. (eds.) (1999). Building Application Frameworks: Object-Oriented Foundations of Framework Design, John Wiley & Sons", p. 55-82.

BRAGA, R. T. V.; GERMANO, F. S. R.; MASIERO, P. C. (1998). A Family of Patterns for Business Resource Management. Proceeding of the 5th Annual Conference on Pattern Languages of Programs (PLOP'98), Monticello-IL-EUA. Technical Report WUCS-98-25, Washington University in St. Louis, Missouri, USA, august, 1998, available at 15/03/99 in the URL: [link].

BRAGA, R. T. V.; GERMANO, F. S. R.; MASIERO, P. C. (1999) A Pattern Language for Business Resource Management. Proceedings of the 6th Pattern Languages of Programs Conference (PLoP'99), Monticello-IL, USA, v.7, p. 1-34.

BRAGA, R. T. V. (2001). GREN: A framework for Business Resource Management. WEB Page, ICMC-USP, São Carlos-SP, Available in 04/10/01, URL: http://www.icmc.sc.usp.br/~rtvb/GRENFramework.html.

BRAGA, R. T. V.; GERMANO, F. S. R.; MASIERO, P. C. (2001). Extension of the Pattern Language for Business Resource Management. Unpublished, ICMC-USP, São Carlos-SP. Available for download in 03/10/01, URL: http://www.icmc.sc.usp.br/~rtvb/extended_patlang.zip.

BROWN, K. & WHITENACK, B. G. (1996). Crossing Chasms: A Pattern language for Object-RDBMS Integration, The Static Patterns, in "VLISSIDES, J.; COPLIEN, J.; KERTH, N. (eds.) (1996). Pattern Languages of Program Design 2. Reading-MA; Addison-Wesley", p. 227-238.

BRUGALI, D. & MENGA, G. (1999). Frameworks and Pattern Languages: an Intriguing Relationship. ACM Computing Surveys, march 1999.

BRUGALI, D.; MENGA, G.; AARSTEN, A. (2000). A Case Study for Flexible Manufacturing Systems, in "FAYAD, M. E. & JOHNSON, R. E. (eds.) (2000). Domain-Specific Application Frameworks: Frameworks Experience by Industry, John Wiley & Sons.", p. 85-99.

CAREY, J.; CARLSON, B.; GRASER, T. (2000). SanFrancisco Design Patterns: Blueprints for Business Software, Addison-Wesley.

COAD, P.; NORTH, D.; MAYFIELD, M. (1997) Object Models: Strategies, Patterns and Applications, 2.ed., Yourdon Press.

COPLIEN, J. O. (1995) A Generative Development-Process Pattern Language, in "Coplien, J.O. & Schmidt, D. C. (1995) Pattern Languages of Program Design, Addison-Wesley", p. 183-237.

COPLIEN, J.O. (1998). Software Design Patterns: Common Questions and Answers, in Linda Rising (editor) (1998) The Patterns Handbook: Techniques, Strategies, and Applications, Cambridge University Press, New York, p. 311-320.

GAMMA, E.; HELM, R.; JOHNSON, R.; VLISSIDES, J. (1995). Design Patterns - Elements of Reusable Object-Oriented Software. Reading-MA, Addison-Wesley.

FONTOURA, M. F.; PREE, W.; RUMPE B. (2000) UML-F: A Modeling Language for Object-Oriented Frameworks, 14th European Conference on Object Oriented Programming (ECOOP 2000), Lecture Notes in Computer Science 1850, Springer, 63-82, Cannes, France.

FOWLER, M. (1997). Analysis Patterns. Addison-Wesley.

FROEHLICH, G.; HOOVER, H. J.; LIU, L.; SORENSON, P. (1997). Hooking into Object-Oriented Application Frameworks. Proceedings of the International Conference on Software Engineering, Boston-Mass-USA, p. 491-501.

JOHNSON, R. E. (1992). Documenting Frameworks using Patterns, Proceedings of the Conference on Object-Oriented Programs, Systems, Languages and Applications (OOPSLA'92), Vancouver, British Columbia, p. 63-76.

JOHNSON, R. E. (1996). Transactions and Accounts, in "VLISSIDES, J.; COPLIEN, J.; KERTH, N. (eds.) (1996). Pattern Languages of Program Design 2. Addison-Wesley", p. 239-249.

JOHNSON, R. E.; WOOLF, B. (1998). Type Object. In "Martin, R., Riehle D., Buschmann F. (eds.) Pattern Languages of Program Design 3, Addison-Wesley", p. 47-65.

MESZAROS, G. (1996). A Pattern Language for Improving the Capacity of Reactive Systems, in "VLISSIDES, J.; COPLIEN, J.; KERTH, N. (eds.) (1996). Pattern Languages of Program Design 2. Reading-MA; Addison-Wesley", p. 575-591.

PREE, W. (1995). Design Patterns for Object-Oriented Software Development, Reading-MA, Addison-Wesley.

PREE, W. (1999). Hot-spot-Driven Development, in: "FAYAD, M. E.; JOHNSON, R. E.; SCHMIDT, D. C. (eds.) (1999). Building Application Frameworks: Object-Oriented Foundations of Framework Design, John Wiley & Sons", p. 379-393.

ROBERTS, D. & JOHNSON, R. E. (1998). Evolving Frameworks: A Pattern Language for Developing Object-Oriented Frameworks, in Martin et al. (1998), p. 471-486, disponível em 12/03/99 na URL: http://st-www.cs.uiuc.edu/users/droberts/evolve.html

SCHMID, H. A. (1997). Systematic Framework Design by Generalization. Communications of the ACM, v. 40, n.10, p. 48-51.

SCHMID, H. A. (1999). Framework Design by Systematic Generalization, in: "FAYAD, M. E.; JOHNSON, R. E.; SCHMIDT, D. C. (eds.) (1999). Building Application Frameworks: Object-Oriented Foundations of Framework Design, John Wiley & Sons", p. 353-378.
Publicado
03/10/2001
BRAGA, Rosana T. Vaccare; MASIERO, Paulo Cesar. Identification of Framework Hot Spots Using Pattern Languages. In: SIMPÓSIO BRASILEIRO DE ENGENHARIA DE SOFTWARE (SBES), 15. , 2001, Rio de Janeiro/RJ. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2001 . p. 145-160. DOI: https://doi.org/10.5753/sbes.2001.23986.