We have an embedded system. That means everything takes longer. It takes longer to develop, to test, and to release. I had this idea for a new vertical market, but I wondered if the boot speed was fast enough.
I checked with a great client. I got my product manager to visit the client and ask a bunch of questions about the vertical market and whether they needed something like what we were thinking. Yes, they were interested.
It turns out they were quite concerned about boot speed and application processing speed. Okay, that’s fine. The product manager asked them if they were willing to work with us to test an MVE, not an MVP. We might not deliver a full product, and were they okay with that?
They agreed and we all signed pages of nondisclosures.
I selected four very small performance enhancements, happy path only. No error paths. The team took three days to develop and test the work. Then we all went to visit the customer to watch what the client did.
The team and I were surprised. Turns out boot speed was irrelevant (well, within certain parameters). What made the difference was one particular path through the application. The other three were irrelevant for this specific customer.
That gave us a ton of data. We spent a team-week altogether, on the development in the office, the travel, and watching the customer use the MVE. It looks like a ton of money, but I learned what a "necessary" feature was and wasn’t.