Upload
roy-rooney
View
215
Download
1
Tags:
Embed Size (px)
Citation preview
FilemakerProductConference ‘12
Development Principles For a Hybrid Approach to Extensible Custom Development
• Chris Cain
Conventional Approaches
Product/Shrink-wrap• Carefully defined scope• Unique Approach to a
Specific Business Need• Hand-crafted, one-of-a-
kind development• Economy of scale
Custom Development• Singular Purpose• Unique Approach to a
Specific Business Need • Hand-crafted, one-of-a-
kind development• Interface or Process
Centric
The Hybrid Approach
• Pre-design as much as possible• Design for Extensibility, not a single, finished
product• Strive for consistency over creativity• Data-Centric development• Cross-pollination of ideas
The Hybrid ApproachPre-design as much as possible
• Don’t reinvent the wheel with each customer• Invest hours up-front, before the customer begins
steering development toward more narrow needs• Focus only on things that 90+% of clients can use– Contact Management– Activity Management– Users and Employees– System Preferences
The Hybrid ApproachDesign for Extensibility, not a single, finished product
• Change is the only constant. Consider each “hard-coded” parameter seriously.
• Place parameters in the hands of administrators
• Consider other uses for the solution of the moment
The Hybrid ApproachStrive for consistency over creativity
• Anyone can “think outside the box”… Build a better box.
• Consistent look and feel. Users shouldn’t have to be re-trained on each new layout, button, report
• Developers shouldn’t have to be retrained on the basics each time they work with a new client’s solution
• Centralize common functions wherever possible, so they can be changed across the board
The Hybrid ApproachData-Centric development
• Designing the data structure reveals gaps and opportunities
• With well-designed data structure, process and interface come naturally
• Good data design supports multiple processes and multiple interfaces… The reverse is NOT true.
The Hybrid ApproachCross-pollination of ideas
• Enhancements from one solution are more likely portable
• Crowdsource testing and enhancement opportunities
• Even totally custom solutions become ready tools in the toolbox for future development
• Opportunity for open-source base system shared by others in the FileMaker community– Reproduction + Variation + Competition = Evolution
Development Principles
Consistent, reliable foundation development
Abstraction
Extensibility and Efficiency
It Works
• 34 xBase Solutions created• 28 xBase Solutions still live and in use – (others lost through business closings, sales,
mergers, etc.)• 22 xBase Solutions have generated
development income in 2012