Che cos'è "Dominio problematico"


12

Devo documentare il mio programma per un progetto scolastico e abbiamo una sezione chiamata "dominio problematico" ma non ho idea di cosa discutere in questa sezione.

Quindi la domanda è: cosa dovrebbe essere discusso nel dominio del problema?


2
Dominio problematico = Argomento / tema / soggetto del programma
Ivan Crojach Karačić,

Dato il modo in cui hai formulato la tua domanda, la risposta fornita da @qes la chiude praticamente. Se desideri qualche consiglio più specifico, dovrai fornire alcuni dettagli su ciò di cui tratta il tuo programma.
Mike Nakis,

Perché se non puoi dirci di cosa tratta il tuo programma, non conosci il dominio problematico.
JeffO,

Risposte:


24

Scrivo software incorporato per apparecchiature di telecomunicazione. Il mio dominio problematico sono i protocolli ethernet, voce e video. In altre parole, tutto ciò che non ha nulla a che fare con il linguaggio in cui sto programmando, ma che devo ancora capire per scrivere il software. Se stai creando un sito Web per la vendita di servizi fotografici, il dominio problematico è la fotografia e l'e-commerce. Se si scrive firmware per aerei militari, il dominio problematico sono le armi, i sensori e i sistemi di controllo. Prendi la foto?


6
Assolutamente corretto. E nel settore del software commerciale, le persone che conoscono il dominio del problema vengono spesso chiamate Esperti della Materia (PMI), piuttosto che programmatori, perché il loro valore e ruolo nell'organizzazione sono diversi dai programmatori (e spesso superiori a).
Ross Patterson,

@Karl Bielefeldt grazie. Sei il mio risparmiatore del giorno di oggi.
William Francis Gomes il

10

Dall'articolo di Wikipedia sul dominio problematico :

Un dominio problematico è l'area di competenza o applicazione che deve essere esaminata per risolvere un problema. Un dominio problematico sta semplicemente esaminando solo gli argomenti che ti interessano ed escludendo tutto il resto.

È l'area a cui appartengono i problemi che l'applicazione intende risolvere.


@Murph, le modifiche durante i primi 5 minuti di un post non vengono registrate in modo esplicito.
Péter Török,

Potete fornire un esempio pls?
Samantha Catania,

@ PéterTörök non è mai stata una (completamente) brutta giornata quando hai imparato qualcosa di nuovo (-:
Murph

1
@ SamanthaCatania, nel caso del progetto su cui sto attualmente lavorando, il dominio problematico è il noleggio auto . Un'area centrale in questo è il checkout dei veicoli e il check-in stesso, ma a parte questo, ci sono molti altri sottodomini, come: gestione della flotta , gestione delle entrate , tariffe ecc.
Péter Török,

Si noti che un dominio problematico può essere molto specifico, ad esempio la gestione dell'inventario, in quanto è gestito dalla regione dello stato di New York della nostra azienda . Ma probabilmente non più specifico di questo; "domini" più piccoli sono generalmente considerati singoli problemi.
Paul Brinkley,

4

Non tutti scrivono compilatori, tracker di bug, framework o altri pacchetti software semplici per computer.

Alcune persone scrivono software per l'industria della sabbia e della ghiaia. Alcune persone scrivono software per il monitoraggio delle torri di rifrazione della raffineria. Alcune persone scrivono software per controllare la produzione di sacchetti di plastica per la spesa. Alcune persone scrivono software per riempire i pacchetti di ketchup.

Questi sono tutti domini problematici, in cui per scrivere un buon software è necessario conoscere un po 'il dominio, ad esempio calcestruzzo preconfezionato.


1
Uno scrittore di compilatori ha anche un dominio problematico, tra le altre cose; Architettura della CPU.
contratto del Prof. Falken è stato violato il

1

Ian K. Bray nel suo libro An Introduction to Requirements Engineering (p9) definisce il dominio problematico come il seguente:

Quella parte dell'universo in cui esiste il problema .

Ad esempio, nel caso di un sistema di controllo degli ascensori, includerebbe qualsiasi hardware esistente (ascensori, motori, pulsanti, indicatori, sensori, ecc.), Le caratteristiche dell'edificio (numero di piani e pozzi), lo schema previsto di utilizzo, le caratteristiche degli utenti, la politica di utilizzo dell'ascensore del cliente (ad es. gli utenti dovrebbero essere scoraggiati dall'utilizzare un ascensore per brevi viaggi?) e così via.

Nell'ambito del problema relativo al controllo degli ascensori, il problema, come indicato sopra, è "è necessario un sistema di controllo che farà un uso più efficiente degli ascensori in questo edificio". In pratica, di solito perfezioniamo il problema in un intero insieme di sotto-problemi ma, per ora, basta notare che per risolvere i problemi, è chiaramente necessario che il sistema di soluzione produca alcuni effetti all'interno del dominio del problema . Sono questi effetti desiderati che costituiscono i requisiti.

Quindi, il dominio problematico può anche essere considerato come quella parte del mondo in cui opererà il nuovo sistema di soluzione (a volte abbreviato in SS) e produrrà gli effetti richiesti. Poiché i sistemi di soluzione basati su software sono spesso chiamati applicazioni, il dominio problematico può essere chiamato dominio dell'applicazione.


0

Lo vedo così:

Il dominio problematico: il motivo per cui il software deve essere costruito e l'ambiente e l'industria per i quali il sistema costruito deve essere utile.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.