Il più basso livello di dettaglio per le specifiche funzionali per essere utile
-
19-08-2019 - |
Domanda
Dove lavoro, alla gente non piace scrivere le specifiche. (Ragazzo, qualcuno?) Quindi non lo fanno, a meno che non siano costretti dai loro capi. Se sono costretti a scriverli, li rendono più corti possibile. (A proposito, loro include anche me .)
Ciò si traduce in specifiche come
- Questo software registra il tempo tra l'evento A e B nel registro eventi
- Il nome e il percorso del parametro X sono impostati in un file di configurazione in formato ini.
- Il software è attivo senza che un utente debba accedere al computer (implementazione come servizio Windows)
Questo esempio è tratto da un progetto molto piccolo e ha funzionato abbastanza bene, ma non credo che basterà per qualcosa di più complesso. Non ho specificato i requisiti di sistema operativo / hardware perché si tratta di sviluppo interno e abbiamo standard aziendali o di reparto che li coprono.
Quindi la mia domanda è: Cosa consideri il livello minimo assoluto di dettaglio in una specifica funzionale per qualsiasi software non banale?
Soluzione
IMHO la cosa importante sulle Specifiche Funzionali (e su tutti gli altri metodi / strumenti formali per lo sviluppo del software e la pianificazione del progetto (Yourdon, SSADM, PRINCE2, UML, ecc.) è che incoraggiano le buone pratiche facendoti riflettere su linee comuni. non garantiscono il successo ma incoraggiano il successo formalizzando le buone pratiche
Quindi il fatto che vengano creati gli FS è una buona cosa, anche se forse potrebbero essere migliori. Pianificare e preparare è meglio di niente, il che è ciò che fanno molti sviluppatori.
Cosa dovrebbe idealmente andare in un FS? Quanto è necessario e il meno possibile. Solo perché alcune specifiche funzionali coprono X, Y & amp; Z non significa che il tuo dovrebbe. Se diventi troppo prescrittivo, aggiungerai burocrazia superflua a progetti più semplici; di conseguenza, per progetti complicati, un approccio prescrittivo potrebbe incoraggiare lo sviluppatore a fermarsi al di sotto del livello di dettaglio a cui dovrebbe realmente rivolgersi.
Altri suggerimenti
Joel on Software ha scritto un articolo di cracking sulle specifiche.
Puoi trovarlo qui Discussione sulle specifiche