Core vs Custom už na úrovni špecifikácie

Séria: Ako písať dokumentáciu a manuály v IT projekte

Reálny problém z praxe

Na projekte sa rieši nová funkcionalita.

User story je zapísaná.
Špecifikácia vznikne.
Vývoj implementuje.

Po čase sa tester pýta:

„Prečo to funguje len u klienta XY?“
„Je to bug alebo feature?“
„Platí to pre všetkých alebo len pre jedného zákazníka?“

Nikto si nie je istý.

Vývojár si pamätá, že to bola klientská požiadavka.
Analytik si myslí, že sa to malo dostať do core.
Support to vysvetľuje každému zákazníkovi inak.

Problém nie je v implementácii.
Problém je v tom, že to nebolo jasne označené už v špecifikácii.

 

Čo sa tu vlastne pokazilo (analýza systému)

Vo veľa firmách sa špecifikácia píše bez rozlíšenia:

  • čo je súčasť produktu (core)
  • čo je zákazková úprava (custom)

Všetko sa zapíše do jedného textu.

Dôsledok:

  • miešajú sa všeobecné funkcionality s klientskými výnimkami
  • nie je jasný rozsah platnosti
  • vznikajú mylné očakávania

A tento chaos sa prenesie ďalej:

implementácia → testovanie → dokumentácia → support

 

Skutočné náklady (čas, chaos, riziko)

Ak Core vs Custom nie je jasné už v špecifikácii:

  • tester nevie, čo má testovať pre všetkých a čo len pre jedného klienta
  • vznikajú falošné bugy („prečo to inde nefunguje?“)
  • support sľubuje funkcionality, ktoré nie sú súčasťou produktu
  • nový kolega sa nevie zorientovať
  • dokumentácia mieša všeobecné správanie s výnimkami

Dlhodobo sa z produktu stáva zbierka výnimiek.

 

Minimálny model riešenia

Rozdelenie Core vs Custom musí vzniknúť už pri špecifikácii.

Nestačí to riešiť až v dokumentácii alebo testovaní.

Základné pravidlo

Každá funkcionalita musí mať jasne určené:

  • Core – platí pre všetkých
  • Custom – platí pre konkrétneho klienta

 

Praktické označenie v špecifikácii

Pri každej funkcionalite alebo pravidle by malo byť uvedené:

  • rozsah platnosti
  • prípadné výnimky

Príklad:

  • Validácia IČO – Core funkcionalita
  • Export XML podľa formátu klienta XY – Custom funkcionalita

 

Mini checklist

Pri písaní špecifikácie si tím môže položiť otázky:

  • Platí toto správanie pre všetkých používateľov?
  • Je to súčasť produktu alebo zákazková úprava?
  • Existujú výnimky pre konkrétnych klientov?
  • Má byť custom riešenie dočasné alebo trvalé?

Ak odpovede nie sú jasné, problém sa objaví neskôr.

 

Prepojenie na kvalitu a workflow

Core vs Custom nie je len dokumentačná poznámka.

Je to rozhodnutie, ktoré ovplyvňuje:

  • test cases (rôzne scenáre pre core a custom)
  • dokumentáciu (čo patrí do manuálu a čo do klientskej prílohy)
  • support (čo má platiť všeobecne)
  • release notes (čo je zmena produktu a čo len pre klienta)

Ak sa to nerozhodne na úrovni špecifikácie, každý ďalší krok pracuje s inou realitou.

 

Krátke zhrnutie

Core vs Custom nie je detail.

Je to základná informácia o tom, čo produkt vlastne obsahuje.

Ak to nie je jasné v špecifikácii, nebude to jasné nikde inde.

A tím bude neustále riešiť otázku:

„Je to bug alebo je to len pre niekoho?“

Pridajte Komentár

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *

Návrat hore