As part of our technical strategy on the patterns & practices team, we created a set of guiding principles for our product development teams:
- Long-term customer success
- Help customers balanced tension between new product features and application portfolio stability
- Collaborative, transparent execution
- Explicit intent and rigorous prioritization
- Quality over scope
- Context precision over one-size fits all
- Framework for evolution and innovation over fixed solutions
- Skeletal over full-featured
- Modular over monolithic
- Easy to adopt; easy to adapt, easy to consume incrementally
If you're familiar with Stephen Covey, he espoused using principles as a way to govern actions without needing an explicit rule for every situation. An advantage of this is that you leave flexibility in the tactics while still guiding the outcome.
To create the princples, we used the approach for the values in the Agile Manifesto which contrasts one value over another (e.g. Customer collaboration over contract negotiation.) Using this approach, we thought of the outcomes we wanted to move away from and outcomes we wanted to achieve.