Design and validation of computer protocols
Design and validation of computer protocols
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
Designing object-oriented software
Designing object-oriented software
Design patterns for object-oriented software development
Design patterns for object-oriented software development
Architectural mismatch or why it's hard to build systems out of existing parts
Proceedings of the 17th international conference on Software engineering
Regular types for active objects
Object-oriented software composition
MFC internals: inside the Microsoft foundation class architecture
MFC internals: inside the Microsoft foundation class architecture
Model checking large software specifications
SIGSOFT '96 Proceedings of the 4th ACM SIGSOFT symposium on Foundations of software engineering
Hooking into object-oriented application frameworks
ICSE '97 Proceedings of the 19th international conference on Software engineering
Applying static analysis to software architectures
ESEC '97/FSE-5 Proceedings of the 6th European SOFTWARE ENGINEERING conference held jointly with the 5th ACM SIGSOFT international symposium on Foundations of software engineering
Model checking graphical user interfaces using abstractions
ESEC '97/FSE-5 Proceedings of the 6th European SOFTWARE ENGINEERING conference held jointly with the 5th ACM SIGSOFT international symposium on Foundations of software engineering
Object-oriented framework-based software development: problems and experiences
ACM Computing Surveys (CSUR)
State-Based Model Checking of Event-Driven System Requirements
IEEE Transactions on Software Engineering
Frameworks in the Financial Engineering Domain - An Experience Report
ECOOP '93 Proceedings of the 7th European Conference on Object-Oriented Programming
Hi-index | 0.01 |
Although they are intended to support and encourage reuse, Object-Oriented application frameworks are difficult to use. The architecture and implementation details of frameworks, because of their size and complexity, are rarely fully understood by the developers that use them. Instead, developers must somehow learn just enough about the parts of the framework required for their task. Faced with a framework problem, the developer will ask for assistance or muddle through using a trial-and-error approach. In many cases, they will not learn what the framework designer had in mind as the proper solution to their problem, and thus misuse the framework.This paper is a preliminary look at the kinds of problems faced by framework users, and how the framework developer can assist in mitigating these problems. Our goal is to develop mechanisms for detecting when the framework user has violated the conditions of use intended by the framework developer, using static analysis of structure, and dynamic analysis of behavior.