Á! Spravíme skvelý softvérový produkt! Super! Dáme tam autentifikáciu, notifikáciu smskami, spravím registráciu cez web formulár, kde bude administračné rozhranie. To všetko bude podporovať single sign-on. Samozrejme nesmú chýbať grafy na hodnotenie a reportovací systém, ktorý generuje všetko v PDF. Ešte to napojíme na možnosť platenia cez Paypal. Administračné rozhranie, na to nesmieme zabudnúť. Hlavne to musí byť user friendly. A ešte tam pravidelne sa budú zobrazovať výsledky z burzy a futbalových zápasov a bude tam podpora pre stromové vyhľadávanie v kategóriách. A to ešte napojíma na podnikový SAP. Hlavne tam ale musí byť táto enterprise komponenta, ktorá je totálne kúl a umožňuje generovať OLAP. A všetko to pobeží na cloude.
Uf?
Rozumiete tomu?
Za ako dlho dokážete vyvinúť takýto produkt?
Vážne, za ako dlho? Manažér sa vás pýta na časový odhad, tak mu nejaký dajte. Veď sa v tej oblasti predsa vyznáte.
Neviete? Ale veď je to úplne jasné. Fakt neviete? Za ako dlho sa dá vyvinúť takýto produkt? Rozmýšľajte, rozmýšľajte…
Ešte stále neviete?
Správna odpoveď! Uvedený príklad je dokonalou ukážkou feature soup. Pokiaľ začnete vyvíjať takýto produkt, tak si pripravte poriadny balík peňazí. Vlastne nie. Pripravte si dva. Jeden použijete na sponzorovanie vývoja a druhý si necháte ako rezervu na doťahovanie aspoň základnej sady vlastností.
V čom je problém?
Je to predsa tak jednoduché. Požiadavky uvedené na začiatku článku vôbec nie sú zadaním, je to čistý chaos.
Dobre, ale my potrebujeme nejako produkt vyvinúť. Čo s tým?
Jedným z možných prístupov je využiť princíp: Minimum feature set. V preklade: minimálna sada vlastností.
Pointou je zamerať sa na minimálne množstvo vlastností, ktoré sú kľúčové pre produkt a pracovať na nich.
Je dôležitá integrácia so SAPom? Prinesie nám niečo? Nóo to by bolo strašne kúl, ale nie. Preč s tým. Potrebujeme multidimezionálny OLAP? Nie? Preč s tým. Atď.
Proces minimalizácie nepodstatných vlastností rozhodne nie je jednorázová záležitosť. Prehodnotenie by malo prebiehať opakovane, rádovo v týždňových iteráciach. Podpora pre minimalizáciu je často priamou súčasťou agilných metodík, ako napríklad SCRUM.
Dokonca aj Freddy Mercury na túto skutočnosť upozorňoval: Too much features will kill you.
I’m just the pieces of the manager I used to beToo many bitter tears are raining down on me
I’m far away from goals
And I’ve been facing this alone
For much too long
I feel like no-one ever told the truth to me
About software and what a struggle it would be
In my tangled state of mind
I’ve been looking back to find
Where I went wrong
Too much features will kill you
If you can’t make up your mind
Torn between the products
And the marketing you leave behind
You’re headed for disaster
‘cos you never read the signs
Too much features will kill you
Every time
I’m just the shadow of the manager I used to be
And it seems like there’s no way out of this for me
I used to bring you sunshine
Now all I ever do is bring you down
How would it be if you were standing in my shoes
Can’t you see that it’s impossible to choose
No there’s no making sense of it
Every way I go I’m bound to lose
Too much features will kill you
Just as sure as none at all
It’ll drain the power that’s in you
Make you plead and scream and crawl
And the pain will make you crazy
You’re the victim of your crime
Too much features will kill you
Every time
Too much features will kill you
It’ll make your product a lie
Yes, too much features will kill you
And you won’t understand why
You’d give your life, you’d sell your soul
But here it comes again
Too much features will kill you
In the end…
In the end.


