Cognitive processes in program comprehension
Papers presented at the first workshop on empirical studies of programmers on Empirical studies of programmers
Mental models and software maintenance
Papers presented at the first workshop on empirical studies of programmers on Empirical studies of programmers
Design reuse and frameworks in the smalltalk-80 system
Software reusability
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Design patterns for object-oriented software development
Design patterns for object-oriented software development
Software architecture: perspectives on an emerging discipline
Software architecture: perspectives on an emerging discipline
Pattern-oriented software architecture: a system of patterns
Pattern-oriented software architecture: a system of patterns
Hooking into object-oriented application frameworks
ICSE '97 Proceedings of the 19th international conference on Software engineering
Object-oriented application frameworks
Communications of the ACM
From custom applications to domain-specific frameworks
Communications of the ACM
Patterns for evolving frameworks
Pattern languages of program design 3
Building application frameworks: object-oriented foundations of framework design
Building application frameworks: object-oriented foundations of framework design
Choosing an object-oriented domain framework
ACM Computing Surveys (CSUR)
Cascaded refactoring for framework
SSR '01 Proceedings of the 2001 symposium on Software reusability: putting software reuse in context
Investigating Reading Techniques for Object-Oriented Framework Learning
IEEE Transactions on Software Engineering
WPC '97 Proceedings of the 5th International Workshop on Program Comprehension (WPC '97)
Towards Framework Selection Criteria and Suitability for an Application Framework
ITCC '04 Proceedings of the International Conference on Information Technology: Coding and Computing (ITCC'04) Volume 2 - Volume 2
How Effective Developers Investigate Source Code: An Exploratory Study
IEEE Transactions on Software Engineering
Identifying and Addressing Problems in Framework Reuse
IWPC '05 Proceedings of the 13th International Workshop on Program Comprehension
Theories, Methods and Tools in Program Comprehension: Past, Present and Future
IWPC '05 Proceedings of the 13th International Workshop on Program Comprehension
Modeling architectural patterns using architectural primitives
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
The Wisdom of Crowds
Design fragments make using frameworks easier
Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
Questions programmers ask during software evolution tasks
Proceedings of the 14th ACM SIGSOFT international symposium on Foundations of software engineering
FrUiT: IDE support for framework understanding
eclipse '06 Proceedings of the 2006 OOPSLA workshop on eclipse technology eXchange
Patterns for documenting frameworks: customization
Proceedings of the 2006 conference on Pattern languages of programs
Hi-index | 0.00 |
Learning and understanding a framework is usually a major obstacle to its effective reuse. Before being able to use a framework successfully, users often go through a steep learning curve by spending a lot of effort understanding its underlying architecture and design principles. This is mainly due to users having to understand not only single isolated classes, but also complex designs of several classes whose instances collaborate for many different purposes, and using many different mechanisms. In addition, frameworks are also full of delocalized plans, and use inheritance and delegation intensively, which makes their design more difficult to grasp. How to obtain the necessary information from the framework itself and its accompanying documentation is the main problem with framework understanding. Considering its importance, this paper presents an initial attempt to capture, in the pattern form, a set of proven solutions to recurrent problems of understanding frameworks. The fundamental objective of this work is to help non-experts on being more effective when trying to learn and understand object-oriented frameworks.