FEATURE



Features can be defined as a set of functionalities which would enhance the value of a product. Ideally, a feature should add the value to a product, be easy to estimate, be capable of fitting into iteration and be testable. However, commonly features are large and require development to be spread across multiple iterations or sprints. An important concept in Agile software development is Minimal Marketable Feature (MMF). That is, what is the minimum amount of functionality we can ship for this feature to release value? Following the initial release, further releases can be made to enrich the feature with higher fidelity functionality, again in small batches to realise the incremental value. A very common behaviour often observed is when an MMF is released, the product owner becomes frustrated because the organisational expectations have moved onto the next big feature whilst the product owner knows that not all value has yet been realised from the MMF. To combat this Product Owners should utilise product roadmaps to set expectations. Features are often mapped out in a user story map whereby stories are linked to features. The terms Epics and Features are often used interchangeably. A feature could be made up of several epics. A common requirements hierarchy is Programme -> Product -> Feature -> Epic -> Story -> Defect. Features are regularly depicted as diagrams or wireframes showing how users interact with them. Other useful ways to express a feature could be with Unified Modelling Language (UML), entity relationship diagrams, and many more. Solutioneers run a one day Create Better User Stories workshop in which we cover the relationship between the various hierarchical elements including Features.