Come tradurre requisiti di business / logica in codice?

0

Sono nuovo alla programmazione e sto cercando di sviluppare un modello di domande che posso applicare alle regole aziendali che mi aiuteranno a estrarre ciò che è necessario per iniziare la codifica.

I programmatori hanno una serie di domande che si pongono o qualsiasi tipo di modello che usano per aiutare in questo processo?

Regola di esempio:

Regola aziendale 2 : Devono esserci almeno due settimane di tempo retribuito tra le assegnazioni. Se non sono state selezionate almeno due settimane tra il precedente incarico e il nuovo incarico, viene visualizzato un messaggio di errore. Mostra al gestore la prima data disponibile sul calendario selezionando e mostrando quella data nel calendario "Inizio nuova data".

Non sapevo esattamente come tradurre questo in codice. Ho la risposta (da un corso di Bob Tabor), ma per passare da questa regola a questo codice, devo farmi domande più profonde che sono stato perché non ho ottenuto questo codice da quella regola aziendale.

        TimeSpan timeBetweenAssignment = newCalendar.SelectedDate.Subtract(previousCalendar.SelectedDate);


        if (timeBetweenAssignment.TotalDays < 14)
        {
            resultLabel.Text = "Error:  Must allow at least two weeks between " + "previous assignment and new assignment.";

            DateTime earliestNewAssignmentDate = previousCalendar.SelectedDate.AddDays(14);

            newCalendar.SelectedDate = earliestNewAssignmentDate;
            newCalendar.VisibleDate = earliestNewAssignmentDate;                
        }

Finora sulla base di una domanda che ho chiesto di recente, ho trovato alcune domande, ma volevo sapere come i professionisti passano da una regola all'altra e se ci sono suggerimenti / trucchi per aiutare a pensare abbastanza profondamente per estrarre il codice necessario.

Grazie per l'aiuto!

    
posta JM1 09.02.2017 - 17:00
fonte

1 risposta

1

Hai un sacco di pezzi Lego sparsi e hai bisogno di costruire una piccola macchina per uno dei tuoi bambini. Non hai un manuale di istruzioni per questo. Come si fa?

Inizi a pensare a cosa stai cercando di costruire esattamente. Cos'è una macchina?

  • Una macchina è una cosa quadrata.
  • Può trattenere le persone al suo interno.
  • Ha le ruote.

Conoscendo questo, guardi i tuoi pezzi Lego, scegli quelli che corrispondono alla tua esigenza o - manchi quei pezzi - combina alcuni Lego per ottenere qualcosa che funzioni per la cosa che stai costruendo. Poi, guardi la tua piccola macchina deforme e vedi quanto è brutto e come potrebbe essere migliorato.

Quindi procedi con il refactoring - rimuovi alcuni blocchi rosa vaganti per rendere la tua auto tutta rossa, aggiungi un posto di guida e un piccolo volante, aggiungi alcune porte mobili in modo che il minifig possa "entrare e lascia "la macchina, ecc.

Continui ad aggiungere piccoli dettagli fino a quando la tua auto assomiglia un po 'a quello che voleva tuo figlio.

Può sembrare sciocco, ma questo esempio di Lego non è diverso dalla programmazione. Ottieni il tuo problema, rompilo nei requisiti con cui puoi lavorare, fai una bozza iniziale e la pulisci fino a quando non assomiglia a ciò che il tuo cliente desidera. Solo che, nel nostro caso, i nostri mattoncini Lego sono le nostre API e Framework, e le connessioni tra loro sono fatte usando non le spine rotonde ma la nostra lingua preferita.

Si inizia con una piccola porzione di codice che segue alcune regole che è necessario soddisfare, quindi si inizia a lucidare la bozza finché non diventa accettabile. Non è necessario creare un codice grande e perfetto fin dalla prima volta che si siedono sul computer. Non risolvi un puzzle abbinando ogni pezzo alla volta, ma lo fai uno alla volta.

Alla fine, siamo tutti semplicemente glorificati Lego-Builders.

Tutto è fantastico!

    
risposta data 09.02.2017 - 17:13
fonte

Leggi altre domande sui tag