widget framework
DESCRIPTION
TRANSCRIPT
© Fraunhofer-Institut für Angewandte Informationstechnik FIT
A Software Process Framework for PLE Development to Reduce Time and Costs of Widget Creation and Evolution
Christian Prause
© Fraunhofer-Institut für Angewandte Informationstechnik FIT
Software changes continuously
Continuous change for improvement
Changing requirements
Bug fixes
...
Usability improvement
© Fraunhofer-Institut für Angewandte Informationstechnik FIT
Realization of change
Change realized by developers
Change has a cost
Lower cost, more change
Better software
© Fraunhofer-Institut für Angewandte Informationstechnik FIT
Usability improvement requires change...in accordance with ISO-9126 view Developers must understand first
Project knowledge must be learned
– “understanding the problem is the problem”
– 40% to 60% of efforts for (re-)understanding software to change
Goal: Learnability of project knowledge
© Fraunhofer-Institut für Angewandte Informationstechnik FIT
Development framework to support understanding of PLE software
Algorithmic information theory view:
– Full information = structural knowledge plus details
Resulting framework for managing knowledge:
Structure: exploit conceptual structure using patterns
Preserve: improve preservation of detail knowledge
© Fraunhofer-Institut für Angewandte Informationstechnik FIT
Structure: exploit conceptual structure
Modifiable library of design patterns
Collected best practice wisdom
Common-grounds or lingua franca for PLE widget design
Named concepts carry meaning for developers
Reflected in various software project material
© Fraunhofer-Institut für Angewandte Informationstechnik FIT
Preserve: motivate documenting activities
Documentation preserves and communicates knowledge
Purpose: impart knowledge
Wiki articles, requirements, bug tracker, source code
But: documentation is missing in practice
Technical debt: interest can grind development to halt
© Fraunhofer-Institut für Angewandte Informationstechnik FIT
Three reasons for documentation problem
Developers do not like to write documentation
It has few value for the individual
Lack of enforcement structures
Especially in distributed, multi-partner projects
Low acceptance of software engineering rigor in research
smiled upon and seen as overly bureaucratic
“we can't afford bug, they have to be fixed”
© Fraunhofer-Institut für Angewandte Informationstechnik FIT
Motivating developers to document
Management issue
Advertise advantages, create awareness
Set up documentation-friendly environment, good software process
Support through reputation systems
Keep developers on track
Reward good behavior with social games
© Fraunhofer-Institut für Angewandte Informationstechnik FIT
Conclusion
Reduced cost of change leads to better usability Cost reduction through better knowledge management
Framework based on algorithmic information theory:
Structure and preserve
Structure: Pattern library for PLE widget design
Preserve: Promote documentation activities with reputation systems