A cookbook for using the model-view controller user interface paradigm in Smalltalk-80
Journal of Object-Oriented Programming
Contracts: specifying behavioral compositions in object-oriented systems
OOPSLA/ECOOP '90 Proceedings of the European conference on object-oriented programming on Object-oriented programming systems, languages, and applications
Documenting frameworks using patterns
OOPSLA '92 conference proceedings on Object-oriented programming systems, languages, and applications
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Deceived by ease of use: using paradigmatic applications to build visual design environments
Proceedings of the 1st conference on Designing interactive systems: processes, practices, methods, & techniques
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
Building application frameworks: object-oriented foundations of framework design
Building application frameworks: object-oriented foundations of framework design
Empirical studies of software engineering: a roadmap
Proceedings of the Conference on The Future of Software Engineering
Proceedings of the 22nd international conference on Software engineering
A framework for framework documentation
ACM Computing Surveys (CSUR)
Qualitative Data Analysis: A User-Friendly Guide for Social Scientists
Qualitative Data Analysis: A User-Friendly Guide for Social Scientists
Empirical Software Engineering
Design erosion: problems and causes
Journal of Systems and Software
Investigating Reading Techniques for Object-Oriented Framework Learning
IEEE Transactions on Software Engineering
Managing Object-Oriented Frameworks with Specialization Templates
Proceedings of the Workshop on Object-Oriented Technology
Patterns Generate Architectures
ECOOP '94 Proceedings of the 8th European Conference on Object-Oriented Programming
Bridging Program Comprehension Tools by Design Navigation
ICSM '00 Proceedings of the International Conference on Software Maintenance (ICSM'00)
Understanding Frameworks by Exploration of Exemplars
CASE '95 Proceedings of the Seventh International Workshop on Computer-Aided Software Engineering
A field study in static extraction of runtime architectures
Proceedings of the 8th ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
Questions about object structure during coding activities
Proceedings of the 2010 ICSE Workshop on Cooperative and Human Aspects of Software Engineering
Analyzing security architectures
Proceedings of the IEEE/ACM international conference on Automated software engineering
Proceedings of the eighteenth ACM SIGSOFT international symposium on Foundations of software engineering
Salespoint: A Java framework for teaching object-oriented software development
Science of Computer Programming
Domain-Specific Modeling Languages to improve framework instantiation
Journal of Systems and Software
Hi-index | 0.00 |
This paper describes the results of a long-term empirical investigation into object-oriented framework reuse. The aim is to identify the major problems that occur during framework reuse and the impact of current documentation techniques on these problems. Four major reuse problems are identified: understanding the functionality of framework components; understanding the interactions between framework components; understanding the mapping from the problem domain to the framework implementation; understanding the architectural assumptions in the framework design. Two forms of documentation are identified as having the potential to address these problems, namely pattern languages and micro-architecture descriptions. An in-depth, qualitative analysis suggests that, although pattern languages do provide useful support in terms of introducing framework concepts, this can be bypassed by developers using their previous knowledge, occasionally to the detriment of the final solution. Micro-architecture documentation appears to provide support for simple interaction and functionality queries, but it is not able to address large scale interaction problems involving multiple classes within the framework. The paper concludes that, although a combination of pattern language and micro-architecture documentation is useful for framework reuse, the forms of these documentation types used in this study require further enhancement to become effective. The paper also serves as an example to encourage others to perform evaluation of framework understanding and documentation.