Altri sistemi di classificazione dei requisiti

Esistono molti diversi sistemi di classificazione dei requisiti, nel mondo del software.
Uno è lo standard ISO25010. Un altro il mio sistema di classificazione, FOCUS-TBD. Qui di seguito, in sintesi, alcuni tra i più diffusi tra gli altri sistemi classificatori.

ISO 9126

Incose

Volere


ISO 9126

La norma ISO 9126 non nasce per classificare i requisiti, è relativa agli aspetti di qualità dei prodotti sw. Ma è stata molto usata nella classificazione dei requisiti.

Dal 2011, la norma ISO 9126 è sostituita da ISO25010.

Prevede sei categorie principali, ciascuna suddivisa in sottocategorie:

Functionality – A set of attributes that bear on the existence of a set of functions and their specified properties. The functions are those that satisfy stated or implied needs.

  • Suitability
  • Accuracy
  • Interoperability
  • Compliance
  • Security

Reliability – A set of attributes that bear on the capability of software to maintain its level of performance under stated conditions for a stated period of time.

  • Maturity
  • Recoverability
  • Fault Tolerance

Usability – A set of attributes that bear on the effort needed for use, and on the individual assessment of such use, by a stated or implied set of users.

  • Learnability
  • Understandability
  • Operability

Efficiency – A set of attributes that bear on the relationship between the level of performance of the software and the amount of resources used, under stated conditions.

  • Time behaviour
  • Resource behaviour

Maintainability – A set of attributes that bear on the effort needed to make specified modifications.

  • Stability
  • Analysability
  • Changeability
  • Testability

Portability – A set of attributes that bear on the ability of software to be transferred from one environment to another.

  • Installability
  • Replaceability
  • Adaptability

Incose

(International Council on Systems Engineering). Il Requirements Working Group (2001) prevede le seguenti tipologie.

Functional – requisito funzionale: cosa va realizzato

Performance – in che modo le funzioni vanno realizzate

Quality Factor – altri fattori di qualità del prodotto o del processo, così dettagliati:

  • Workmanship requirements – abilità tecnica, esecuzione
  • Reliability, availability – affidabilità, disponibilità
  • Maintainability – mantenibilità
  • Supportability – modalità di supporto
  • Portability – portabilità
  • Flexibility – flessibilità
  • Usability – usabilità
  • Safety – sicurezza (assenza di danni, incolumità)
  • Security – sicurezza (assenza di accessi inopportuni)
  • Integrity – integrità (es. integrità referenziale)

Environment – requisiti sull’ambiente fisico (ma anche socio-politico-economico) in cui il
sistema viene eseguito, o viene effettuato il lavoro

Physical – requisiti sul formato fisico del prodotto

Interface – requisiti sulle interfacce del prodotto con l’esterno

Constraint – vincoli sulle modalità di applicazione degli altri requisiti, o su come va effettuato il lavoro


Volere

(template per la specifica dei requisiti di James e Suzanne Robertson) ha queste categorie:

Requisiti funzionali e sui dati (Functional and Data Requirements)

  • Requisiti funzionali (Functional Requirements)
  • Requisiti sui dati (Data Requirements)

Requisiti di aspetto e percezione (Look and Feel Requirements)

  • Requisiti di aspetto del prodotto (Appearance Requirements)
  • Requisiti di stile (Style Requirements)

Requisiti di usabilità e sui fattori umani (Usability and Humanity Requirements)

  • Requisiti di facilità d’uso (Ease of Use Requirements)
  • Requisiti di personalizzazione ed internazionalizzazione (Personalization and Internationalization Requirements)
  • Requisiti di apprendimento (Learning Requirements)
  • Requisiti di comprensibilità e cortesia (Understandability and Politeness Requirements)

Requisiti di prestazioni (Performance Requirements)

  • Requisiti di velocità e latenza (Speed and Latency Requirements)
  • Requisiti di sicurezza fisica (Safety-Critical Requirements)
  • Requisiti di precisione o accuratezza (Precision or Accuracy Requirements)
  • Requisiti di affidabilità e disponibilità (Reliability and Availability Requirements)
  • Requisiti di robustezza o tolleranza ai malfunzionamenti (Robustness or Fault-Tolerance Requirements)
  • Requisiti di capacità (Capacity Requirements)
  • Requisiti di scalabilità o estensibilità (Scalability or Extensibility Requirements)
  • Requisiti di longevità (Longevity Requirements)

Requisiti di operatività ed ambientali (Operational and Environmental Requirements)

  • Ambiente fisico previsto (Expected Physical Environment)
  • Requisiti di interazione con sistemi adiacenti (Requirements for Interfacing with Adjacent Systems)
  • Requisiti di ingegnerizzazione del prodotto (Productization Requirements)
  • Requisiti di rilascio (Release Requirements)

Requisiti di manutenibilità e supporto (Maintainability and Support Requirements)

  • Requisiti di manutenibilità (Maintenance Requirements)
  • Requisiti sul supporto (Supportability Requirements)
  • Requisiti di adattabilità (Adaptability Requirements)

Requisiti di sicurezza (Security Requirements)

  • Requisiti di accesso (Access Requirements)
  • Requisiti di integrità (Integrity Requirements)
  • Requisiti di riservatezza (Privacy Requirements)
  • Requisiti di audit (Audit Requirements)
  • Requisiti di immunità (Immunity Requirements)

Requisiti culturali e politici (Cultural and Political Requirements)

  • Requisiti culturali (Cultural Requirements)
  • Requisiti politici (Political Requirements)

Requisiti legali (Legal Requirements)

  • Requisiti di conformità (Compliance Requirements)
  • Requisiti sugli standard (Standards Requirements)

Migrazione al nuovo prodotto (Migration to the New Product)

  • Requisiti per la migrazione al nuovo prodotto (Requirements for Migration to the New Product)
  • Dati da modificare o tradurre per il nuovo sistema (Data That Has to Be Modified or Translated for the New System)

Documentazione utente e formazione (User Documentation and Training)

  • Requisiti di documentazione utente (User Documentation Requirements)
  • Requisiti di formazione (Training Requirements)

Vincoli imposti (Mandated Constraints)

  • Vincoli alla soluzione (Solution Constraints)
  • Ambiente di implementazione del sistema attuale (Implementation Environment of the Current System)
  • Applicazioni partner o collaboranti (Partner or Collaborative Applications)
  • Software da scaffale (Off-the-Shelf Software)
  • Ambiente di operatività previsto (Anticipated Workplace Environment)
  • Vincoli temporali (Schedule Constraints )
  • Vincoli economici (Budget Constraints)