Are MVP and MMF related and how are they different?
There's a lot of disagreement and confusion about the practical interpretation of these terms. I wouldn't get too hung up on hair-splitting as long as your Product Owner, stakeholders, and development team can all agree on some working definitions for your organization.
Minimum Viable Product (MVP)
[MVP] definition: the minimum viable product is that version of a new product which allows a team to collect the maximum amount of validated learning about customers with the least effort.
In other words, it's the smallest collection of potentially marketable features than you can roll out.
Minimum Marketable Feature (MMF)
An MMF, as defined in Software by the Numbers by Mark Denne and Jane Cleland-Huang, is the smallest unit of functionality with "intrinsic marketable value." This begs the question of what value means in a given context, but makes it clear that the term is generally applied to a feature, rather than to the product as a whole.
How The Terms Relate
Having defined MMF as a feature and an MVP as a product, I understand the difference to be that the MVP is a bare-bones collection of one or more MMFs. In turn, each MMF is the smallest possible increment that has real or potential value to a customer.
Minimum viable product has absolutely nothing to do with usability or marketability. It is the smallest thing you can do to get validated learning against a hypothesis. That is it. It doesn't even have to be a piece of software. Oftentimes, a well formed question and a storyboard will suffice. The point isn't that what you've created is marketable, but that what you've created can be used to answer the persist/pivot question.
Minimum Marketable feature is about something that has tangible value to your customer. It is something someone can use to accomplish something.
Here is a good definition and explanation of differences: http://www.romanpichler.com/blog/agile-product-innovation/minimum-viable-product-and-minimal-marketable-product/#comment-4050
The minimum viable product (MVP) is a powerful concept that allows you to test your ideas. It is not to be confused with the minimal marketable product (MMP), the product with the smallest feature set that still addresses the user needs and creates the right user experience. The MVP helps you acquire the relevant knowledge and address key risks; the MMP reduces time-to-market and enables you to launch your product faster
They're really just different terms for the same thing - the smallest shippable iteration of a piece of software.
One could argue that MMF is best used when you are just talking about a new feature on an existing product and MVP for a new product (which might require several features, each having their own MMF). That's a bit pedantic though.
I quite like BVI (Business Value Increment) as an alternative, I think Chris Matts coined that one. It doesn't contain the word minimum (which can have bad connotations with folk outside of the IT world), is ambiguous enough to cover enhancements or new features/systems and use of "increment" makes it clearer that we intend to continue improving it after launch, provided it makes sense to do so.
I would suggest that MVPs are for when you are looking to provide a product to early adopters. You don't know if the product is even viable. So you're looking for feedback. Using MVPs help you define your customer and demand feedback cycles that are very short and provide the ability to pivot.
With MMFs you are looking for the next thing you can deliver the soonest. The target market is typically not early adopters but rather existing or new customers.
We've used the term MBI (minimum business increment)for a decade (with attribution) because some companies complain "we don't market products". Also, features is an overloaded term. For more check out https://portal.netobjectives.com/pages/flex/flex-solutions/minimum-business-increments-mbis/