Tuesday, April 9, 2013

Introduzione al ciclo di sviluppo Software

Ciclo di sviluppo del software.


Per capire che cosa è il ciclo di vita di sviluppo del Software (SDLC) cerchiamo di rompere queste parole in due parti: lo sviluppo del Software e del ciclo di vita.


Sviluppo del software.


Lo sviluppo del software è un processo per creare software.A prima vista di uno sviluppatore - questo è il processo di codifica. Questo è quando ti siedi con il computer e iniziare a scrivere i codici che successivamente elaborati (compilato, legata ecc.) diventano il software reale che viene utilizzato dall'utente finale. Questo è potrebbe essere il caso per i principianti o sviluppatore novizio che stanno lavorando sul progetto "garage".


In una un persona piccola progetto suo comune per gli sviluppatori di andare direttamente in codifica e poi prova il loro codice. Essi utilizzano comuni divide e conquistare, poi prova e test di errore.Ma per una dimensione significativa, metodo di prova ed errore di sviluppo software sarà costoso.Questo è perché il progetto di grandi dimensioni normalmente coinvolti pochi sviluppatori. Qualsiasi cambiamento in qualsiasi parte dei codici potrebbe richiede altri sviluppatori di modificare il loro codice anche.


Maggiore sviluppo del software richiede anche il modo migliore per comunicare, tra gli sviluppatori.La comunicazione è di assicurarsi che gli sviluppatori di capiscono che cosa essere sviluppato, quando iniziare lo sviluppo, quando l'altra parte del software che sarà sviluppato dipendenza, quando testare queste parti insieme, quello che è considerato il passaggio...Sacco di problemi a sincronizzare gli sviluppatori etc. etc..


Il più grande del gruppo, più difficile è di comunicare a tutti i membri del team.
Questo può essere peggiore se i membri del team non si trovano nello stesso luogo - che sono comuni in questi giorni. La squadra che io sono parte di avere persone che lavorano in 4 diversi continenti in un fuso orario diverso.


Per rendere più facile, è stato introdotto un concetto di "Ciclo di vita".


Ciclo di vita


Comune concetto di ciclo di vita viene comunicata a un team di sviluppo di sincronizzare tutti i membri del team - modo che ognuno sappia quando sono importanti pietre miliari.
Pietre miliari sono date quando alcuni criteri importanti o requisito è da rispettare.


Concetto di ciclo di vita non è esclusivo per lo sviluppo del software.
Per esempio un essere umano ha anche il ciclo di vita. Inizia dal giorno che è nato un essere umano.
Poi egli cresce diventa bambino, adolescente, adulto, vecchio e morto. Questo ciclo di vita anche può essere ricondotte in modo diverso basato su diversi Mostra - esempio se guardi dal ciclo di istruzione (dell'essere umano stesso) può cominciare da pre-school, junior high, liceo, undergrad college e laureato.


Software lifecycle è guardare come normali prodotti (automobili, computer, mobili) creazione del ciclo di vita.Possono essere diviso in 5 fasi:


+ Requisito
+ Design
+ Implementazione
+ Prova finale
+ Consegna


Questo fasi effettivamente applicabile al prodotto finale, o anche in singoli componenti che compongono il prodotto. Per esempio se si sta creando una sedia, poi si dispone di componenti come il resto del braccio, le gambe, cuscini e schienale. Una volta che i requisiti di "alto livello" (descrizione, specifica - sacco di nomi diversi della stessa cosa) è definito lo sviluppatore di ogni componente deve essere in grado di continuare in proprio per produrre i componenti. Ciascuno dei componenti passerà anche attraverso la stessa 5 fasi del ciclo di vita.


Questo concetto di "componente" sviluppo è che non lontano da ciò che sta accadendo nello sviluppo di software. Se siete stati nel settore lungo che abbastanza scommetto che avete sentito parlare di sviluppo "component-based". L'idea è di introdurre l'obbligo generico su come componenti possono essere gestiti, quindi fino a quando un componente è sviluppato in conformi a questo standard può essere "collegato" in un altro software che capire questo standard con poco sforzo.


Anche un sacco di gente dire che lo sviluppo del software dovrebbe essere lo stesso di altri sviluppo prodotto - come auto e costruzione costruzioni, ma esperienza ha dimostrato che questo non è vero. La disciplina normale che viene utilizzata nella costruzione di edifici non funziona davvero nello sviluppo di software.


Da ciò che l'osservazione di esperto questo è perché nella costruzione del prodotto normale come una superstrada, idee e creatività vengono iniettate al progetto solo in parte molto specifica della fase - fase in anticipo. In costruzione creatività può venire dall'architetto e anche il genio civile che ha per capire come costruire ciò che è immaginato dall'architetto. Questo viene fatto nella fase iniziale (design) della fase di sviluppo. Una volta che si è fissato l'implementazione, test e consegna solo bisogno di seguire le istruzioni.


Nello sviluppo di software d'altra parte, l'iniezione di idee è difficile controllato dal suo effettivamente necessari in ogni fase. Dall'architettura di alto livello, fino a basso livello di programmazione, è necessario l'ingegno e la creatività. La maggior parte dei software development in realtà a seconda di scoperte di sviluppo a venire con prodotti innovativi. Nuovo modo di codifica, nuovo algoritmo, nuovo componente può fare la differenza tra il software a altro in termini di prestazioni, utilizzo delle risorse e funzionalità offerte.


A causa di questo sviluppo software processo è normalmente "meno rigido" confronta con costruzione auto o buiding. L'effetto collaterale è che questo può anche causato due problemi principali:


+ ritardo di progetto
+ bassa qualità - più bug, caratteristiche e di codice non testati.


Questa è parte della sfida nello sviluppo di software.

No comments:

Post a Comment