We always need a common language to describe the process. Find more about various attempts in . There are better options than a reductionist description of the software process as a set “independent” of (unrelated) practices.
- People first
- knowledge work: people over processes and tools
- Process fundamentals are inter-related
- e.g., we cannot decide about the requirements management approach without thinking also about the solution, quality, or the life-cycle.
- Process state evolution is always an Information Rolling Wave
- we always acquire/craft/validate the information incrementally, no matter our beliefs. It is not just a simplistic state transition.
- Core Agile Practices are essentials for a Lean & lightweight process
|Copyright © 2018 Valentin Tudor Mocanu|
- which life-cycles are used, definitions and selection criteria
- Core Agile Practices
- coverage and guidance to acquire core software domain-level skills
- Adapt to context
- guidance about selecting practices in context and selection criteria
- Teal Teams & Organizations -
- Cellular, self-organizing, adaptive, self-awareness, with evolutionary purposes. Be Awesome by respecting the others and willingly collaborate with them.
- Information Rolling Wave
- life-cycle, practices, context, value stream - all must fit together in our information rolling wave toward building a Consumable Solution.
- Looking ahead and feedback dimensions should be both represented for all disciplines and all timing levels by appropriate practices
- Continuous Improvement
- should be an explicit goal with explicit guidance
Process "alphabet" fundamentals should be addressed by:
- any Agile/Lean method
- any process customization in a specific team/product/business context.
Practices Selection Criteria
Sources of guidance for practices selection:
- Industry-proven experience
- Context: product, business milestones, team, etc.
- Life-cycle used in the context: timing aspect
INTER-DEPENDENCY - Life-cycle and practices are interdependent:
- The selected life-cycle becomes a context for practices selection
- Example: you cannot select manual testing & comprehensive non-executable specification/documentation for Continuous Delivery. The feedback cycles for all kinds of information must be much shorter: specific timing must be reflected in the selected practices
- The team set of known practices it is a context for life-cycle selection.
- Example: you cannot select/perform Continuous Delivery if you do not have skills for the practices that make quick validation and testing as TDD, to fit in the short CD life-cycle.