Frameworks and Hooks: (Software Engineering Research Lab)
Frameworks and Hooks: (Software Engineering Research Lab)
Frameworks and Hooks: (Software Engineering Research Lab)
by
Garry Froehlich
Paul Sorenson
SERL
slide1
Software Reuse
Software reuse is the process of creating
software systems from existing software
systems. (Krueger, 1992)
High level languages
Code scavenging
Code components
Design patterns
Object-oriented frameworks
Application generators
SERL - Software Engineering Research Lab
slide2
Object-Oriented Frameworks
Framework
Application
Components
slide3
slide4
Framework Design
slide5
HotDraw Overview
A framework for
developing structured
graphical editors.
Smalltalk version
maintained by Ralf
Johnsons group at the
University of Illinois.
slide6
HotDraw Framework
Drawing
Controller
Tool
Figure
Drawing
View
Rectangle
Figure
Arrow
Figure
Handle
Composite
Figure
Drawing
SERL - Software Engineering Research Lab
slide7
Frozen Spots:
capture the
commonalties across
applications.
Hot Spots: general
areas of variability
within a framework.
Hooks: specific ways
in which a
framework can be
customized.
Drawing
Controller
Tool
Select Tool
New Tool
New Tool
Type
slide8
Rectangle
Figure
Text
Figure
Handle
Composite
Figure
RCIM
Figure
Layout
Manager
SERL - Software Engineering Research Lab
Drawing
RCIM
Drawing
slide9
Framework Use
slide10
slide11
Framework Experience
Framework developments
we have been involved in:
slide12
Framework Evolution
slide13
Framework Benefits
slide14
Framework Concerns
slide15
Research Issues
slide16
Conclusion
slide17
Integration framework.
Identifying hotspots in current
customizations => use cases for framework
development and evolution
Use of reengineering tools to assist in better
understanding of the existing code base.
Process and quality issues??
slide18