Ciclul de viață al sistemelor software.

Conceptul de ciclu de viață este unul dintre conceptele de bază ale metodologiei de proiectare a sistemelor informaționale. Ciclu de viață sistemul informatic este un proces continuu care începe! din momentul în care se ia decizia creării unui sistem informaţional şi se încheie în momentul în care acesta este scos complet din funcţiune.

Standardul ISO/IEC 12207 definește o structură a ciclului de viață care conține procesele, activitățile și sarcinile care trebuie efectuate în timpul creării unui sistem informațional. Conform acestui standard, structura ciclului de viață se bazează pe trei grupuri de procese:

1. principalele procese ale ciclului de viață (cumpărare, furnizare, dezvoltare, operare, suport);

2. procese auxiliare care asigură implementarea proceselor principale (documentare, managementul configurației, asigurarea calității, verificarea, certificarea, evaluarea, auditul, rezolvarea problemelor);

3. procese organizatorice (managementul de proiect, crearea infrastructurii proiectului, definirea, evaluarea si imbunatatirea ciclului de viata propriu-zis, instruire).

Dintre principalele procese ale ciclului de viață, cele mai importante sunt dezvoltarea, operarea și întreținerea. Fiecare proces este caracterizat de anumite sarcini și metode de rezolvare a acestora, date inițiale; obținute în etapa anterioară și rezultatele.

1. Dezvoltare

Dezvoltarea unui sistem informatic include toate lucrările privind dezvoltarea software-ului informațional și a componentelor acestuia în conformitate cu cerințele specificate. Dezvoltarea software-ului de informare include, de asemenea:

1. întocmirea documentației de proiectare și exploatare;

2. pregătirea materialelor necesare pentru testarea produselor software secrete;

3. elaborarea materialelor necesare organizării pregătirii personalului.

Dezvoltarea este unul dintre cele mai importante procese din ciclul de viață al unui sistem informațional și, de regulă, include planificare strategică, analiză, proiectare și implementare (programare).

2. Funcționare

Munca operațională poate fi împărțită în pregătitoare și de bază. Cele pregătitoare includ:

1. configurarea bazei de date și a stațiilor de lucru ale utilizatorilor;

2. furnizarea utilizatorilor cu documentație operațională;

3. instruirea personalului.

Activitățile operaționale majore includ;

1. operare directă;

2. localizarea problemelor și eliminarea cauzelor apariției acestora;

3. modificare software;

4. pregătirea propunerilor de îmbunătățire a sistemului;

5. dezvoltarea şi modernizarea sistemului.

3. Acompaniament

Servicii suport tehnic joacă un rol foarte vizibil în viața oricărui sistem de informații corporative. Prezența unui serviciu tehnic calificat în stadiul de funcționare a sistemului informațional este o condiție necesară pentru rezolvarea sarcinilor care îi sunt atribuite. Mai mult, erorile personalului de service pot duce la pierderi financiare evidente sau ascunse comparabile cu costul sistemului informatic în sine.



Modele de ciclu de viață

Un model de ciclu de viață este o structură care definește secvența de execuție și relațiile proceselor, activităților și sarcinilor efectuate de-a lungul ciclului de viață. Modelul ciclului de viață depinde de specificul sistemului informațional și de condițiile specifice în care acesta din urmă este creat și funcționează

Până în prezent, următoarele modele principale de ciclu de viață au devenit cele mai răspândite:

1. model de sarcină;

2. model în cascadă (sau sistem) (70-85);

3. model în spirală (timpul prezent).

Model cu probleme

Când se dezvoltă un sistem „de jos în sus” de la sarcini individuale la întregul sistem (model de sarcină), o abordare unificată a dezvoltării se pierde inevitabil și apar probleme la conectarea componentelor individuale cu informații. De regulă, pe măsură ce numărul sarcinilor crește, dificultățile cresc și este necesar să se schimbe constant programele și structurile de date existente. Viteza de dezvoltare a sistemului încetinește, ceea ce încetinește dezvoltarea organizației în sine. Cu toate acestea, în unele cazuri, această tehnologie poate fi recomandabilă:

Urgență extremă (problemele trebuie rezolvate cumva; atunci totul va trebui refăcut);

Experimentarea și adaptarea clientului (algoritmii nu sunt clari, soluțiile se găsesc prin încercare și eroare).

Concluzia generală este că este imposibil să se creeze în acest fel un sistem informațional suficient de mare și eficient.

Model în cascadă

În sistemele informatice omogene timpurii, care nu erau foarte mari ca volum, fiecare aplicație era un singur întreg. Pentru dezvoltarea acestui tip de aplicație s-a folosit metoda cascadei. Caracteristica sa principală este împărțirea întregii dezvoltări în etape, iar trecerea de la o etapă la alta are loc numai după ce lucrarea la cea actuală este complet finalizată (Fig. 2). Fiecare etapă culminează cu lansarea unui set complet de documentație suficientă pentru a permite continuarea dezvoltării de către o altă echipă de dezvoltare.

Aspectele pozitive ale utilizării abordării în cascadă sunt următoarele:

la fiecare etapă se generează un set complet de documentație de proiectare care îndeplinește criteriile de completitudine și coerență;

etapele de lucru desfășurate într-o succesiune logică fac posibilă planificarea timpului de finalizare a tuturor lucrărilor și a costurilor corespunzătoare.

Orez. . Schema de dezvoltare a cascadei

Abordarea în cascadă s-a dovedit bine în construcția sistemelor informaționale, pentru care la începutul dezvoltării toate cerințele pot fi formulate destul de precis și complet pentru a oferi dezvoltatorilor libertatea de a le implementa cât mai bine cu punct tehnic viziune. Sistemele complexe de calcul, sistemele în timp real și alte sarcini similare se încadrează în această categorie. Cu toate acestea, în procesul de utilizare a acestei abordări, au fost descoperite o serie de deficiențe ale acesteia, cauzate în primul rând de faptul că procesul real de creare a sistemelor nu se încadrează niciodată complet într-o schemă atât de rigidă. În timpul procesului de creație, a existat o nevoie constantă de a reveni la etapele anterioare și de a clarifica sau revizui mai devreme deciziile luate. Ca rezultat, procesul real de creare a software-ului a luat următoarea formă (Fig. 3):

Orez. 3. Proces real de dezvoltare software folosind o schemă în cascadă

Principalul dezavantaj al abordării în cascadă este întârzierea semnificativă în obținerea rezultatelor. Coordonarea rezultatelor cu utilizatorii se realizează numai în punctele planificate după finalizarea fiecărei etape de lucru, cerințele pentru sistemele informaționale sunt „înghețate” sub formă de specificații tehnice pentru întreaga perioadă de creare. Astfel, utilizatorii își pot face comentariile numai după ce lucrările la sistem sunt complet finalizate. Dacă cerințele sunt declarate incorect sau se schimbă pe o perioadă lungă de dezvoltare a software-ului, utilizatorii ajung să aibă un sistem care nu le satisface nevoile. Modelele (atât funcționale, cât și informaționale) ale obiectului automatizat pot deveni învechite simultan cu aprobarea lor. Esența unei abordări sistematice a dezvoltării SI constă în descompunerea (defalcarea) acestuia în funcții automate: sistemul este împărțit în subsisteme funcționale, care la rândul lor sunt împărțite în subfuncții, subdivizate în sarcini și așa mai departe. Procesul de partiționare continuă până la proceduri specifice. În același timp, sistemul automatizat menține o viziune holistică în care toate componentele sunt interconectate. Astfel, acest model are principalul avantaj al dezvoltării sistematice, iar principalele dezavantaje sunt că este lent și costisitor.

Model în spirală

Pentru a depăși aceste probleme, a fost propus un model de ciclu de viață în spirală (Fig. 4), concentrându-se pe etapele inițiale ciclul de viață: analiză și proiectare. În aceste etape, fezabilitatea soluțiilor tehnice este testată prin crearea de prototipuri. Fiecare tură a spiralei corespunde creării unui fragment sau a unei versiuni a software-ului, în care obiectivele și caracteristicile proiectului sunt clarificate, calitatea acestuia este determinată și este planificată activitatea următoarei ture a spiralei. Astfel, detaliile proiectului sunt aprofundate și specificate în mod consecvent și, ca urmare, este selectată o opțiune rezonabilă, care este adusă la implementare.

Dezvoltarea prin iterații reflectă ciclul spiral existent în mod obiectiv al creării unui sistem. Finalizarea incompletă a lucrărilor la fiecare etapă vă permite să treceți la următoarea etapă fără a aștepta finalizarea completă a lucrărilor la cea curentă. Cu o metodă de dezvoltare iterativă, munca lipsă poate fi finalizată în următoarea iterație. Sarcina principală este de a arăta utilizatorilor sistemului un produs funcțional cât mai repede posibil, activând astfel procesul de clarificare și completare a cerințelor.

Principala problemă a ciclului spirală este determinarea momentului de tranziție la etapa următoare. Pentru a o rezolva, este necesar să se introducă restricții de timp pentru fiecare etapă a ciclului de viață. Tranziția decurge conform planului, chiar dacă nu toate lucrările planificate sunt finalizate. Planul este întocmit pe baza datelor statistice obținute în proiectele anterioare și a experienței personale a dezvoltatorilor.

Figura 4. Modelul spiralat al ciclului de viață al unui circuit integrat

Una dintre posibilele abordări ale dezvoltării software în cadrul modelului ciclului de viață în spirală este cea primită în în ultima vreme utilizarea pe scară largă a metodologiei RAD (Rapid Application Development). Acest termen se referă de obicei la un proces de dezvoltare software care conține 3 elemente:

o echipă mică de programatori (de la 2 la 10 persoane);

scurt dar atent cercetat programul de producție(de la 2 la 6 luni);

un ciclu repetat în care dezvoltatorii, pe măsură ce aplicația începe să prindă contur, solicită și implementează în produs cerințele primite prin interacțiunea cu clientul.

Ciclul de viață al software-ului conform metodologiei RAD constă din patru faze:

1. faza de definire și analiză a cerințelor;

2. faza de proiectare;

3. faza de implementare;

4. faza de implementare.


Curs 6. Clasificarea sistemelor informatice

Sistem informatic- un set interconectat de mijloace, metode și personal utilizate pentru stocarea, prelucrarea și emiterea de informații în interesul atingerii unui obiectiv dat

Clasificarea după scară

După scară, sistemele informaționale sunt împărțite în următoarele grupe:

1. singur;

2. grup;

3. corporative.

Sisteme informatice unice sunt implementate, de regulă, pe un autonom computer personal(rețeaua nu este utilizată). Un astfel de sistem poate conține mai multe aplicații simple conectate printr-un fond comun de informații și este conceput pentru munca unui utilizator sau a unui grup de utilizatori care împărtășesc unul. locul de munca. Astfel de aplicații pot fi create folosind așa-numitele sisteme de gestionare a bazelor de date desktop sau locale (DBMS). Dintre SGBD-urile locale, cele mai cunoscute sunt Clarion, Clipper, FoxPro, Paradox, dBase și Microsoft Access.

Sisteme informatice de grup concentrat pe utilizarea colectivă a informațiilor de către membri grup de lucruși sunt construite cel mai adesea pe baza unei rețele locale. La dezvoltarea unor astfel de aplicații, serverele de baze de date (numite și servere SQL) sunt folosite pentru grupuri de lucru. Există un număr destul de mare de servere SQL diferite, atât comerciale, cât și distribuite gratuit. Dintre acestea, cele mai cunoscute servere de baze de date sunt Oracle, DB2, Microsoft SQL Server, InterBase, Sybase, Informix.

Sisteme informatice corporative sunt o dezvoltare de sisteme pentru grupuri de lucru, acestea sunt concentrate companii mariși poate suporta noduri sau rețele dispersate geografic. Practic au o structură ierarhică de mai multe niveluri. Astfel de sisteme se caracterizează printr-o arhitectură client-server cu specializarea serverelor sau o arhitectură pe mai multe niveluri. La dezvoltarea unor astfel de sisteme, pot fi utilizate aceleași servere de baze de date ca și la dezvoltarea sistemelor de informații de grup. Cu toate acestea, în sistemele informatice mari, cele mai utilizate servere sunt Oracle, DB2 și Microsoft SQL Server.

Pentru sistemele de grup și corporative, cerințele pentru funcționare fiabilă și securitatea datelor sunt semnificativ crescute. Aceste proprietăți sunt furnizate prin menținerea integrității datelor, legăturilor și tranzacțiilor în serverele de baze de date.

Clasificarea pe domenii de aplicare

În funcție de domeniul de aplicare, sistemele informatice sunt de obicei împărțite în patru grupuri:

1. sisteme de procesare a tranzacțiilor;

2. sisteme decizionale;

3. sisteme informatice si de referinta;

4. sisteme informatice de birou.

Sisteme de procesare a tranzacțiilor, la rândul lor, în funcție de eficiența prelucrării datelor, se împart în sisteme informatice pachet și sisteme informaționale operaționale. În sistemele informaţionale management organizatoric modul de procesare a tranzacțiilor online prevalează să reflecte relevante starea subiectului în orice moment, iar procesarea lotului ocupă o parte foarte limitată.

Sisteme de sprijinire a deciziei - DSS (Decision Support Systeq) - reprezintă un alt tip de sisteme informaționale în care, folosind interogări destul de complexe, datele sunt selectate și analizate în diverse contexte: timp, geografie și alți indicatori.

Clasa extinsa sisteme informatice si de referinta bazate pe documente hipertext și multimedia. Astfel de sisteme informatice au primit cea mai mare dezvoltare pe Internet.

Clasă sisteme informatice de birou are ca scop traducerea documentelor pe hârtie în vizualizare electronică, automatizare de birou și management de documente.

Clasificarea după modul de organizare

Conform metodei de organizare, sistemele informaționale de grup și corporative sunt împărțite în următoarele clase:

1. sisteme bazate pe arhitectura file-server;

2. sisteme bazate pe arhitectura client-server;

3. sisteme bazate pe arhitectură pe mai multe niveluri;

4. sisteme bazate pe tehnologii Internet/intranet.

Oricând sistem informatic Este posibil să se identifice componentele funcționale necesare care ajută la înțelegerea limitărilor diferitelor arhitecturi ale sistemelor informaționale.

Arhitectura serverului de fișiere extrage doar date din fișiere, astfel încât utilizatorii și aplicațiile suplimentare să adauge doar o încărcare neglijabilă a CPU. Fiecare client nou adaugă putere de calcul rețelei.

Arhitectura client-server este conceput pentru a rezolva problemele aplicațiilor server de fișiere prin separarea componentelor aplicației și plasarea lor acolo unde vor funcționa cel mai eficient. O caracteristică a arhitecturii client-server este utilizarea serverelor de baze de date dedicate care înțeleg interogările în limbajul de interogare structurat (SQL) și efectuează căutări, sortare și agregare a informațiilor.

În prezent, arhitectura client-server a câștigat recunoaștere și utilizare pe scară largă ca modalitate de organizare a aplicațiilor pentru grupuri de lucru și sisteme informaționale la nivel de întreprindere. Organizare similară munca crește eficiența execuției aplicației prin utilizarea capacităților serverului de baze de date, descărcarea rețelei și asigurarea controlului integrității datelor.

Arhitectură stratificată a devenit o dezvoltare a arhitecturii client-server și în forma sa clasică constă din trei niveluri:

1. Nivelul inferior reprezintă aplicațiile client care au o interfață de programare pentru apelarea aplicației la nivelul mediu;

2. nivel intermediar este un server de aplicații;

3. Nivelul superior este un server de baze de date specializat la distanță.

Arhitectura cu trei niveluri echilibrează și mai mult sarcina între diferite noduri și rețea, promovând totodată specializarea instrumentelor pentru dezvoltarea aplicațiilor și eliminând deficiențele modelului client-server pe două niveluri.

În dezvoltare Tehnologii Internet/intranet Accentul principal până acum este pus pe dezvoltarea instrumentelor software. În același timp, există o lipsă de instrumente dezvoltate pentru dezvoltarea aplicațiilor care funcționează cu baze de date. O soluție de compromis pentru crearea unor sisteme informaționale convenabile și ușor de utilizat și de întreținut care funcționează eficient cu bazele de date a fost combinația dintre tehnologia Internet/Intranet cu o arhitectură pe mai multe niveluri. În acest caz, structura aplicației de informații îmbracă următoarea formă: browser - server de aplicații - server de baze de date - server de pagini dinamice - server web.

Pe baza naturii informațiilor stocate, bazele de date sunt împărțite în fapticeŞi documentar. Dacă facem o analogie cu exemplele de depozite de informații descrise mai sus, atunci bazele de date faptice sunt indici de carduri, iar bazele de date documentare sunt arhive. Bazele de date factuale stochează informații scurte într-un format strict definit. Bazele de date documentare conțin tot felul de documente. Mai mult, acestea pot fi nu numai documente text, ci și grafică, video și sunet (multimedia).

Un sistem de control automat (ACS) este un set de instrumente tehnice și software, împreună cu structuri organizaționale (indivizi sau echipe), care asigură controlul unui obiect (complex) într-un mediu de producție, științific sau public.

Există sisteme informaționale pentru managementul educației (De exemplu, programe de personal, solicitant, student, bibliotecă). Sisteme automatizate pt cercetarea stiintifica(ASNI), care sunt sisteme software și hardware care prelucrează date provenite de la diferite tipuri de instalații experimentale și instrumente de măsură și, pe baza analizei acestora, facilitează descoperirea de noi efecte și modele de sisteme de proiectare asistată de computer și sisteme de informații geografice.

Un sistem de inteligență artificială construit pe baza cunoștințelor de specialitate de înaltă calitate despre un anumit domeniu (obținut de la experți - specialiști în acest domeniu) se numește sistem expert. Sistemele experte - unul dintre puținele tipuri de sisteme de inteligență artificială - s-au răspândit și au găsit aplicare practică. Există sisteme expert în afaceri militare, geologie, inginerie, informatică, tehnologie spațială, matematică, medicină, meteorologie, industrie, agricultură, management, fizică, chimie, electronică, drept etc. Și doar faptul că sistemele expert rămân foarte complexe, costisitoare și, cel mai important, programele foarte specializate le împiedică distribuția și mai largă.

Sistemele expert (ES) sunt programe de calculator create pentru a efectua acele tipuri de activități pe care le poate face un expert uman. Ele funcționează într-un mod care imită comportamentul unui expert uman și sunt destul de diferite de algoritmii și procedurile matematice precise și bine motivate ale celor mai multe modele tradiționale.

1. Ciclul de viață al IS și structura acestuia. 2

1.1 Etapele ciclului de viață IS.. 3

1.2 Standardele ciclului de viață IS.. 4

2. Modele de ciclu de viață. 6

2.1 Tipuri de modele de ciclu de viață IS.. 6

2.2 Avantajele și dezavantajele modelelor de ciclu de viață IS.. 8

3. Procesele ciclului de viață al IS............................................ ........................ 11

3.1 Procese de bază ale ciclului de viață. 11

3.2 Sprijinirea proceselor ciclului de viață. 13

3.3 Procese organizaționale.. 14

Lista literaturii folosite... 16


Ciclul de viață al unui sistem informațional este o perioadă de timp care începe din momentul în care se ia o decizie privind necesitatea creării unui sistem informațional și se termină în momentul în care acesta este scos complet din funcțiune.

Conceptul de ciclu de viață este unul dintre conceptele de bază ale metodologiei de proiectare a sistemelor informaționale.

Metodologia de proiectare a sistemelor informaționale descrie procesul de creare și întreținere a sistemelor sub forma unui ciclu de viață (LC) SI, prezentându-l ca o anumită succesiune de etape și procese efectuate asupra acestora. Pentru fiecare etapă se determină componența și succesiunea lucrărilor efectuate, rezultatele obținute, metodele și mijloacele necesare pentru finalizarea lucrării, rolurile și responsabilitățile participanților etc. O astfel de descriere formală a ciclului de viață al unui sistem informațional face posibilă planificarea și organizarea procesului de dezvoltare colectivă și asigurarea managementului acestui proces.

Ciclul de viață complet al unui sistem informațional include de obicei planificarea strategică, analiza, proiectarea, implementarea, implementarea și operarea. ÎN caz general ciclul de viață poate fi, la rândul său, împărțit în mai multe etape. În principiu, această împărțire în etape este destul de arbitrară. Vom lua în considerare una dintre opțiunile pentru o astfel de divizie, oferită de Rational Software Corporation, una dintre companiile lider de pe piața de software pentru instrumente de dezvoltare a sistemelor informaționale (printre care instrumentul universal CASE Rational Rose este pe măsură foarte popular).


1.1 Etapele ciclului de viață IP

Etapa - parte a procesului de creare a unui IP, limitată de un anumit interval de timp și care se termină cu lansarea unui anumit produs (modele, componente software, documentație), determinată de cerințele specificate pentru această etapă. Relația dintre procese și etape este determinată și de modelul ciclului de viață IS utilizat.

Conform metodologiei propuse de Rational Software, ciclul de viață al unui sistem informațional este împărțit în patru etape.

Granițele fiecărei etape sunt definite de anumite momente în timp în care anumite decizii critice trebuie luate și, prin urmare, anumite obiective cheie trebuie atinse.

1) Etapa inițială

În etapa inițială, se stabilește domeniul de aplicare al sistemului și se determină condițiile de limită. Pentru a face acest lucru, este necesar să se identifice toate obiectele externe cu care sistemul dezvoltat trebuie să interacționeze și să se determine natura acestei interacțiuni la un nivel înalt. În etapa inițială, toate funcționalitățile sistemului sunt identificate și sunt descrise cele mai semnificative dintre ele.

2) Etapa de clarificare

La etapa de clarificare se realizează o analiză a zonei de aplicare și se dezvoltă baza arhitecturală a sistemului informațional.

La luarea oricăror decizii cu privire la arhitectura sistemului, sistemul în ansamblu trebuie să fie luat în considerare. Aceasta înseamnă că este necesar să descrii cele mai multe funcţionalitate sistem și să țină cont de relațiile dintre componentele sale individuale.

La finalul etapei de clarificare, se realizează o analiză a soluțiilor arhitecturale și a modalităților de eliminare a principalilor factori de risc din proiect.

3) Etapa de construcție

În faza de proiectare, este dezvoltat un produs finit, gata de livrare către utilizator.

La finalul acestei etape se determină performanța software-ului dezvoltat.

4) Etapa de punere în funcțiune

În etapa de punere în funcțiune, software-ul dezvoltat este transferat utilizatorilor. Când se operează un sistem dezvoltat în condiții reale, apar adesea diverse tipuri de probleme care necesită muncă suplimentară pentru a face ajustări la produsul dezvoltat. Acest lucru este de obicei asociat cu detectarea erorilor și a deficiențelor.

La finalul etapei de punere în funcțiune este necesar să se stabilească dacă obiectivele de dezvoltare au fost sau nu atinse.

1.2 Standardele ciclului de viață IP

Rețelele moderne sunt dezvoltate pe baza standardelor, ceea ce face posibilă asigurarea, în primul rând, a eficienței lor ridicate și, în al doilea rând, a posibilității interacțiunii lor între ele.

Printre cele mai cunoscute standarde se numără următoarele:

GOST 34.601-90 - se aplică sistemelor automate și stabilește etapele și etapele creării acestora. În plus, standardul conține o descriere a conținutului lucrării în fiecare etapă. Etapele și etapele de lucru consacrate în standard sunt mai conforme cu modelul ciclului de viață în cascadă.

ISO/IEC 12207 (International Organization of Standardization / International Electrotechnical Commission) 1995 - standard pentru procese si organizarea ciclului de viata. Se aplică tuturor tipurilor de software personalizat. Standardul nu conține descrieri ale fazelor, etapelor și etapelor.

Procesul Rational Unified (RUP) oferă un model de dezvoltare iterativ care include patru faze: pornire, explorare, construire și implementare. Fiecare fază poate fi împărțită în etape (iterații) care au ca rezultat lansarea unei versiuni pentru uz intern sau extern. Progresul prin cele patru faze principale se numește ciclu de dezvoltare, fiecare ciclu terminându-se cu generarea unei versiuni a sistemului. Dacă munca la proiect nu se oprește după aceasta, atunci produsul rezultat continuă să se dezvolte și trece din nou prin aceleași faze. Esența muncii în cadrul RUP este crearea și întreținerea modelelor bazate pe UML.

Microsoft Solution Framework (MSF) este similar cu RUP, include și patru faze: analiză, proiectare, dezvoltare, stabilizare, este iterativ și implică utilizarea modelării orientate pe obiecte. MSF, în comparație cu RUP, se concentrează mai mult pe dezvoltarea de aplicații de afaceri.

Programare extremă (XP). Programarea extremă (cea mai nouă dintre metodologiile luate în considerare) a fost creată în 1996. Metodologia se bazează pe munca în echipă, comunicare eficientă între client și contractor pe parcursul întregului proiect de dezvoltare IP, iar dezvoltarea se realizează folosind prototipuri extrem de rafinate.


2. Modele de ciclu de viață

Un model de ciclu de viață IS este o structură care definește secvența execuției și relațiile dintre procese, acțiuni și sarcini de-a lungul ciclului de viață. Modelul ciclului de viață depinde de specificul, scara și complexitatea proiectului și de condițiile specifice în care sistemul este creat și funcționează.

Modelul ciclului de viață IS include:

rezultatele muncii în fiecare etapă;

evenimente cheie - puncte de finalizare a lucrărilor și de luare a deciziilor.

Modelul ciclului de viață reflectă diverse state sisteme, incepand din momentul in care apare necesitatea acestui sistem informatic si terminand cu momentul invechirii sale complete.

2.1 Tipuri de modele de ciclu de viață IS

În prezent sunt cunoscute și utilizate următoarele modele de ciclu de viață:

Modelul în cascadă (Fig. 2.1) prevede implementarea secvențială a tuturor etapelor proiectului într-o ordine strict fixă. Trecerea la etapa următoare înseamnă finalizarea completă a lucrărilor în etapa anterioară.

Model în etape cu control intermediar (Fig. 2.2). Dezvoltarea IS se realizează în iterații cu bucle de feedback între etape. Ajustările între etape fac posibilă luarea în considerare a influenței reciproce reale a rezultatelor dezvoltării în diferite etape; Durata de viață a fiecărei etape se extinde pe întreaga perioadă de dezvoltare.

Model în spirală (Fig. 2.3). La fiecare tură a spiralei, se creează următoarea versiune a produsului, se precizează cerințele proiectului, se determină calitatea acestuia și se planifică activitatea următoarei ture. O atenție deosebită se achită etapelor inițiale de dezvoltare – analiză și proiectare, unde se verifică și se justifică fezabilitatea anumitor soluții tehnice prin realizarea de prototipuri (layout).

Orez. 2.1. Modelul în cascadă al ciclului de viață IS

Orez. 2.2. Model treptat cu control intermediar

Orez. 2.3. Model în spirală al ciclului de viață al IS

În practică, două modele principale ale ciclului de viață sunt cele mai utilizate pe scară largă:

model în cascadă (tipic pentru perioada 1970-1985);

model în spirală (tipic pentru perioada de după 1986).

2.2 Avantajele și dezavantajele modelelor de ciclu de viață IP

În proiectele timpurii de IS destul de simplu, fiecare aplicație era un singur bloc, independent din punct de vedere funcțional și informațional. Metoda în cascadă s-a dovedit a fi eficientă pentru dezvoltarea acestui tip de aplicație. Fiecare etapă a fost finalizată după finalizarea completă și documentarea tuturor lucrărilor necesare.

Se pot distinge următoarele aspecte pozitive aplicarea abordării în cascadă:

la fiecare etapă se generează un set complet de documentație de proiectare care îndeplinește criteriile de completitudine și coerență;

etapele de lucru efectuate într-o succesiune logică fac posibilă planificarea timpului de finalizare a tuturor lucrărilor și a costurilor corespunzătoare.

Abordarea în cascadă s-a dovedit bine în construcția de circuite integrate relativ simple, când chiar la începutul dezvoltării este posibil să se formuleze destul de precis și complet toate cerințele pentru sistem. Principalul dezavantaj al acestei abordări este că procesul real de creare a unui sistem nu se încadrează niciodată complet într-o schemă atât de rigidă, există în mod constant nevoia de a reveni la etapele anterioare și de a clarifica sau revizui deciziile luate anterior; Ca rezultat, procesul real de creare a unui IS se dovedește a corespunde unui model pas cu pas cu control intermediar.

Modelul ciclului de viață în spirală a fost propus pentru a depăși aceste probleme. În fazele de analiză și proiectare, prin realizarea de prototipuri se verifică fezabilitatea soluțiilor tehnice și gradul în care nevoile clienților sunt îndeplinite. Fiecare rotație a spiralei corespunde creării unui fragment sau a unei versiuni funcționale a sistemului. Acest lucru vă permite să clarificați cerințele, obiectivele și caracteristicile proiectului, să determinați calitatea dezvoltării și să planificați activitatea următoarei ture a spiralei. În acest fel, detaliile proiectului sunt aprofundate și specificate în mod consecvent și, ca urmare, este selectată o opțiune rezonabilă care satisface cerințele reale ale clientului și este adusă la implementare.

Principala problemă a ciclului spirală este determinarea momentului de tranziție la etapa următoare. Pentru a rezolva această problemă, se introduc restricții de timp pentru fiecare dintre etapele ciclului de viață, iar tranziția se realizează în conformitate cu planul, chiar dacă nu toate lucrările planificate sunt finalizate. Planificarea se face pe baza datelor statistice obținute în proiectele anterioare și a experienței personale a dezvoltatorilor.

În ciuda recomandărilor puternice din partea experților în proiectare și dezvoltare IC, multe companii continuă să folosească modelul cascadă în loc de o variantă a modelului iterativ. Principalele motive pentru care modelul de cascadă rămâne popular sunt următoarele:

Obiceiul – Mulți profesioniști IT au fost educați într-o perioadă în care se preda doar modelul în cascadă, motiv pentru care îl folosesc și astăzi.

Iluzia reducerii riscurilor participanților la proiect (client și antreprenor). Modelul în cascadă presupune dezvoltarea produselor finite în fiecare etapă: specificații tehnice, proiectare tehnică, produs software și documentație pentru utilizator. Documentația elaborată permite nu numai să se determine cerințele pentru produsul etapei următoare, ci și să se determine responsabilitățile părților, domeniul de activitate și termenele limită, în timp ce evaluarea finală a calendarului și costului proiectului se face la fazele inițiale, după finalizarea sondajului. Evident, dacă cerințele pentru sistemul informațional se modifică în timpul implementării proiectului, iar calitatea documentelor se dovedește a fi scăzută (cerințele sunt incomplete și/sau contradictorii), atunci în realitate utilizarea modelului cascadă creează doar iluzia certitudinii și de fapt crește riscurile, reducând doar responsabilitatea participanților la proiect.

Probleme de implementare la utilizarea unui model iterativ. În unele zone, modelul în spirală nu poate fi utilizat deoarece este imposibil să utilizați/testați un produs care are funcționalitate incompletă (de exemplu, dezvoltare militară, energie nucleară etc.). Implementarea iterativă în etape a unui sistem informațional de afaceri este posibilă, dar este asociată cu dificultăți organizaționale (transfer de date, integrare de sisteme, modificări ale proceselor de afaceri, politici contabile, instruire a utilizatorilor). Costurile cu forța de muncă în timpul implementării iterative în faze se dovedesc a fi mult mai mari, iar managementul de proiect necesită artă adevărată. Anticipând aceste dificultăți, clienții aleg un model în cascadă pentru a „implementa sistemul o dată”.

Un proces este definit ca un set de activități interconectate care transformă intrările în ieșiri. Descrierea fiecărui proces include o listă de sarcini de rezolvat, date de intrare și rezultate.

În conformitate cu baza standard international ISO/IEC 12207 toate procesele ciclului de viață al software-ului sunt împărțite în trei grupuri:

3.1 Procese de bază ale ciclului de viață

Achiziție (acțiuni și sarcini ale clientului care achiziționează IP)

Livrare (acțiuni și sarcini ale furnizorului care furnizează clientului un produs sau serviciu software)

Dezvoltare (acțiuni și sarcini efectuate de dezvoltator: crearea de software, pregătirea documentației de proiectare și operaționale, pregătirea materialelor de testare și instruire etc.)

Operare (acțiuni și sarcini ale operatorului - organizația care operează sistemul)

Întreținere (acțiuni și sarcini efectuate de organizația însoțitoare, adică serviciul de suport). Asistență - efectuarea de modificări la software pentru a corecta erorile, a îmbunătăți productivitatea sau a se adapta la condițiile sau cerințele de operare în schimbare.

Dintre principalele procese ale ciclului de viață, trei sunt de cea mai mare importanță: dezvoltarea, operarea și întreținerea. Fiecare proces este caracterizat de anumite sarcini și metode de rezolvare a acestora, date inițiale obținute în etapa anterioară și rezultate.

Dezvoltare

Dezvoltarea unui sistem informatic include toate lucrările de creare a software-ului informațional și a componentelor acestuia în conformitate cu cerințele specificate. Dezvoltarea software-ului de informare include, de asemenea:

pregătirea documentației de proiectare și operaționale;

pregătirea materialelor necesare pentru testarea produselor software dezvoltate;

dezvoltarea materialelor necesare pregătirii personalului.

Dezvoltarea este unul dintre cele mai importante procese din ciclul de viață al unui sistem informațional și, de regulă, include planificarea strategică, analiza, proiectarea și implementarea (programarea).

Operațiunea

Munca operațională poate fi împărțită în pregătitoare și de bază. Cele pregătitoare includ:

configurarea bazei de date și a stațiilor de lucru ale utilizatorului;

furnizarea utilizatorilor cu documentație operațională;

instruirea personalului.

Activitățile operaționale majore includ:

operare directă;

localizarea problemelor și eliminarea cauzelor apariției acestora;

modificare software;

pregătirea propunerilor de îmbunătățire a sistemului;

dezvoltarea si modernizarea sistemului.

Escorta

Serviciile de suport tehnic joacă un rol foarte important în viața oricărui sistem informațional corporativ. Prezența unui serviciu tehnic calificat în etapa de funcționare a unui sistem informațional este o condiție necesară pentru rezolvarea sarcinilor care îi sunt atribuite, iar erorile personalului de întreținere pot duce la pierderi financiare evidente sau ascunse comparabile cu costul sistemului informațional în sine.

Principalele acțiuni preliminare în pregătirea organizării întreținerii unui sistem informațional sunt:

identificarea celor mai critice componente ale sistemului și determinarea criticității timpului de nefuncționare pentru acestea (acest lucru va permite identificarea celor mai critice componente ale sistemului informațional și optimizarea alocării resurselor pentru întreținere);

identificarea sarcinilor de întreținere și împărțirea acestora în interne, rezolvate de departamentul de service, și externe, rezolvate de organizațiile de service specializate (se realizează astfel o definire clară a gamei de funcții îndeplinite și împărțirea responsabilităților);

efectuarea unei analize a existente interne și resurse externe necesare pentru organizarea întreținerii în cadrul sarcinilor descrise și împărțirea competențelor (principale criterii de analiză: disponibilitatea garanției echipamentelor, starea fondului de reparații, calificarea personalului);

întocmirea unui plan de organizare a întreținerii, în care este necesar să se determine etapele acțiunilor efectuate, momentul executării acestora, costurile etapelor, precum și responsabilitatea executanților.

3.2 Sprijinirea proceselor ciclului de viață

Documentație (descrierea formalizată a informațiilor create în timpul ciclului de viață IS)

Managementul configurației (aplicarea procedurilor administrative și tehnice pe tot parcursul ciclului de viață al SI pentru a determina starea componentelor SI și a gestiona modificările acestuia).

Asigurarea calității (oferind garanții că sistemul informațional și procesele ciclului său de viață respectă cerințele specificate și planurile aprobate)

Verificare (determinarea faptului că produsele software rezultate dintr-o anumită acțiune îndeplinesc pe deplin cerințele sau condițiile impuse de acțiunile anterioare)

Certificare (determinarea completității conformității cerințelor specificate și a sistemului creat cu scopul lor funcțional specific)

Evaluare comună (evaluarea stării lucrărilor la proiect: controlul planificării și gestionării resurselor, personalului, echipamentelor, instrumentelor)

Audit (determinarea conformității cu cerințele, planurile și termenii contractului)

Rezolvarea problemelor (analiza și rezolvarea problemelor, indiferent de originea sau sursa lor, care sunt descoperite în timpul dezvoltării, exploatării, întreținerii sau altor procese)

3.3 Procese organizaționale

Control (acțiuni și sarcini care pot fi efectuate de orice parte care își gestionează procesele)

Crearea infrastructurii (selectarea și întreținerea tehnologiei, standardelor și instrumentelor, selectarea și instalarea hardware-ului și software-ului utilizat pentru dezvoltarea, operarea sau întreținerea software-ului)

Îmbunătățirea (evaluarea, măsurarea, controlul și îmbunătățirea proceselor ciclului de viață)

Instruire (formare inițială și dezvoltare continuă ulterioară a personalului)

Managementul proiectelor este asociat cu probleme de planificare și organizare a muncii, crearea de echipe de dezvoltare și monitorizarea timpului și a calității muncii efectuate. Suportul tehnic și organizatoric pentru proiect include:

selectarea metodelor și instrumentelor de implementare a proiectelor;

determinarea metodelor de descriere a statelor intermediare de dezvoltare;

dezvoltarea de metode și mijloace de testare a software-ului creat;

1. Izbachkov S.Yu., Petrov V.N. Sisteme informaționale – Sankt Petersburg: Peter, 2008. – 655 p.

2. http://ru.wikipedia.org

3. http://www.intuit.ru

Ca un organism viu, fiecare produs (bun sau serviciu) are propriile sale ciclu de viață , care începe cu momentul „nașterii” sale (sau, poate, cu originea ideii) și se termină cu „moartea”, sau retragerea din uz.

Ciclul de viață EIS un set de etape prin care parcurge un EIS în dezvoltarea sa din momentul în care se ia decizia de a-l crea până când încetează să mai funcționeze.

Ciclul de viață al unui sistem informațional economic include următoarele etape:

1) pre-proiectare;

2) proiectare logica si tehnica;

3) proiectare (fizică) de lucru;

4) implementare;

5) exploatare;

6) convulsii.

Pre-proiectare Etapa include cercetarea și analiza sistemului de management al companiei, identificarea consumatorilor de informații existenți. Scopul acestei etape este de a formula cerințe SI care să reflecte corect și cu acuratețe scopurile și obiectivele organizației clienților. Pentru a preciza procesul de creare a unui sistem informațional care să răspundă nevoilor organizației, este necesar să se afle și să se articuleze clar care sunt aceste nevoi. Pentru a face acest lucru, este necesar să se determine cerințele clienților pentru IS și să le mapam într-un limbaj model în cerințe pentru dezvoltarea unui proiect IS, astfel încât să se asigure conformitatea viitorului SI cu scopurile și obiectivele organizației.

Sarcina de formare a cerințelor pentru sistemele informaționale este una dintre cele mai importante, greu de oficializat și cea mai costisitoare și dificil de corectat în cazul unei erori.

Instrumentele și produsele software moderne vă permit să creați rapid IP în conformitate cu cerințele gata făcute. Dar adesea aceste sisteme nu satisfac clienții și necesită numeroase modificări, ceea ce duce la o creștere bruscă a costului real al IP. Motivul principal pentru această situație este definirea incorectă, inexactă sau incompletă a cerințelor SI în etapa de analiză.

În această etapă, ar trebui rezolvate problemele legate de elaborarea specificațiilor tehnice, un plan de acțiune pentru pregătirea unității, inclusiv pregătirea personalului și finanțarea. În această etapă, se efectuează și o analiză a fezabilității IP, și anume, se iau în considerare următoarele:

· fezabilitate operațională – este posibil să se creeze acest IS, cât de convenabil va fi utilizarea și îndeplinirea cerințelor specificate;

· fezabilitate economică – cost, eficacitate din punctul de vedere al utilizatorului;

Proiecta logic și tehnic - aceasta este o dezvoltare în conformitate cu cerințele formulate și nevoile de informații identificate ale sistemului și arhitecturii funcționale a EIS.

În etapa de proiectare, în primul rând, se formează modele de date. Designerii primesc rezultatele analizei ca informații inițiale. Construirea modelelor de date logice și fizice este o parte fundamentală a proiectării bazei de date. Modelul informațional obținut în timpul procesului de analiză este mai întâi convertit într-un model de date logic și apoi într-un model de date fizic.

În paralel cu proiectarea schemei bazei de date, se realizează proiectarea procesului pentru a obține specificațiile (descrierile) tuturor modulelor IS. Ambele procese de proiectare sunt strâns legate deoarece o parte din logica de afaceri este de obicei implementată în baza de date (constrângeri, declanșatoare, proceduri stocate). Scopul principal proiectarea procesului constă în maparea funcţiilor obţinute în etapa de analiză în module ale sistemului informaţional. La proiectarea modulelor, se determină interfețele programului: aspectul meniului, aspectul ferestrei, tastele rapide și apelurile aferente.

În plus, în faza de proiectare, se realizează și dezvoltarea arhitecturii IS, inclusiv selecția platformei (platformelor) și a sistemului de operare (sisteme de operare). Într-un IS eterogen, mai multe computere pot rula pe platforme hardware diferite și pot rula sisteme de operare diferite.

Pe lângă alegerea unei platforme, în etapa de proiectare sunt determinate tipurile de arhitectură:

· arhitectura „file-server” sau „client-server”;

· bază de date centralizată sau distribuită. Dacă baza de date este distribuită, atunci ce mecanisme vor fi utilizate pentru a menține consistența și relevanța datelor;

· servere, paralele sau unice pentru baze de date (pentru a atinge performanța cerută), etc.

Etapa de proiectare se încheie cu elaborarea unui proiect tehnic al IP.

Proiecta lucrul (fizic) include crearea și configurarea programelor, completarea bazelor de date, crearea instrucțiunilor de lucru pentru personal. Designul se termină cu crearea unui proiect de lucru.

Un proiect de lucru este o documentație tehnică aprobată în modul prescris, care conține date actualizate și soluții detaliate de proiectare la nivelul întregului sistem, programe și instrucțiuni pentru rezolvarea problemelor, precum și o evaluare actualizată a eficienței economice a sistemului de control automat și o listă actualizată de măsuri de pregătire a instalației pentru implementare.

În timpul pilotului și industrial implementare se efectuează instalarea completă a sistemului și instruirea personalului.


Implementarea sistemului este un proces de tranziție treptată de la un EIS existent la unul nou, prevăzut de documentația detaliată de proiectare a întregului sistem. Implementarea sarcinilor și subsistemelor individuale poate fi realizată în paralel cu dezvoltarea unui proiect de lucru pentru întregul sistem.

Principalele etape ale implementării sistemului sunt:

· pregătirea unității pentru implementarea sistemului;

· livrarea sarcinilor și subsistemelor pentru operare de probă;

· efectuarea operațiunii de probă;

· punerea în funcțiune comercială a sarcinilor, subsistemelor și a sistemului în ansamblu.

Funcționarea de probă a IS constă în testarea algoritmilor, a programelor și a legăturilor proces tehnologic prelucrarea datelor in conditii reale. Se realizează pentru următoarele:

· depanarea finală a programelor și testarea procesului tehnologic de rezolvare a problemelor;

· verificarea gradului de pregătire a bazei de informații;

· elaborarea interconectarii sarcinilor de sistem;

· dobândirea deprinderilor de muncă de către personalul întreprinderii;

· configurarea întregului sistem în ansamblu și eliminarea deficiențelor identificate.

După finalizarea funcționării de probă a sistemului, se întocmește un raport de implementare. Dacă rezultatele operațiunii de probă sunt pozitive, sistemul este pus în funcțiune comercială.

Operațiunea EIS – utilizarea sa în condiții reale. În timpul funcționării, se efectuează, de asemenea, suport, analiza funcționării sistemului, corectarea erorilor și deficiențelor, înregistrarea cerințelor și elaborarea planurilor de modernizare și extindere a sistemului.

Convulsii Dezafectarea EIS se referă la scoaterea completă a EIS din exploatare sau modernizarea semnificativă, ceea ce ne permite să vorbim despre crearea unui sistem informațional fundamental nou.

Modelele ciclului de viață existente determină ordinea de execuție a etapelor în timpul dezvoltării, precum și criteriile de trecere de la etapă la etapă. În conformitate cu aceasta, următoarele trei modele de ciclu de viață sunt cele mai utilizate pe scară largă:

1) model în cascadă, care implică trecerea la etapa următoare după finalizarea completă a lucrărilor la etapa anterioară;

2) model etapizat cu control intermediar, i.e. model de dezvoltare iterativă cu bucle de feedback între etape. Avantajul acestui model este că ajustările între etape asigură o intensitate mai mică a muncii în comparație cu modelul în cascadă, cu toate acestea, durata de viață a fiecărei etape se extinde pe întreaga perioadă de dezvoltare;

3) modelul în spirală pune accent pe etapele inițiale ale ciclului de viață: analiza cerințelor, proiectarea caietului de sarcini, proiectarea preliminară și detaliată. În aceste etape se verifică și se justifică fezabilitatea soluțiilor tehnice prin realizarea de prototipuri. Fiecare tură a spiralei corespunde unui model pas cu pas pentru crearea unui fragment sau a unei versiuni a unui produs software, în care obiectivele și caracteristicile proiectului sunt clarificate, calitatea acestuia este determinată și activitatea următoarei ture a proiectului. spirală este planificată. Astfel, detaliile proiectului sunt aprofundate și specificate în mod consecvent și, ca urmare, este selectată o opțiune rezonabilă, care este adusă la implementare.

În toate etapele ciclului de viață EIS, un rol important îl joacă specialiștii economici care:

· formularea cerințelor pentru un viitor sistem informațional sau un plan de modernizare a acestuia;

· efectuează justificarea și calculul eficienței economice a soluțiilor individuale utilizate ca parte a SI și a sistemului în ansamblu;

· să participe direct la procesul de realizare a unui sistem informatic electronic, ajutând la modelarea proceselor de afaceri și a proceselor informaționale aferente acestora, inclusiv angajații întreprinderii pentru care este creat sistemul informatic, în conformitate cu unul dintre principiile creării unui sistem informatic.

· participa la depanarea sistemului atunci când îl pune în funcțiune;

· (experții) își folosesc cunoștințele și experiența pentru a completa bazele de date și cunoștințele;

· în etapa de implementare, ei elaborează instrucțiuni și pregătesc personalul, aplicând cunoștințele și experiența lor practică.

Cercetare ultimii ani au arătat că câștigurile de productivitate prin utilizarea tehnologiei informației sunt foarte rar realizate. Motivul principal este că noile tehnologii informaționale sunt adesea imagini în oglindă ale metodelor și proceselor anterioare. Această realizare a dus la

apariția unei noi direcții în domeniul managementului - reinginerire procese de afaceri, care se referă la îmbunătățirea sau îmbunătățirea unui proces de afaceri existent prin utilizarea tehnologiei informației cu o regândire fundamentală paralelă și o reorientare radicală a proceselor de afaceri pentru a obține îmbunătățiri dramatice indicatori importanți(creșterea productivității, îmbunătățirea calității, reducerea costurilor).

Ciclul de viață nu este o perioadă de timp de existență, ci un proces de schimbări secvențiale de stare, determinate de tipul de impacturi produse (R 50-605-80-93).

Termenul „ciclu de viață al sistemului” se referă de obicei la evoluția unui nou sistem sub forma mai multor etape, incluzând etape atât de importante precum conceptul, dezvoltarea, producția, exploatarea și dezafectarea finală:70.

Istoria conceptului de ciclu de viață

Conceptul de ciclu de viață a apărut la sfârșitul secolului al XIX-lea. ca un complex de idei, inclusiv ideile de ereditate și dezvoltare la nivelul indivizilor și organismelor, precum și adaptarea, supraviețuirea și extincția la nivelul speciilor individuale și populațiilor întregi de organisme vii.

Modele tipice ale ciclului de viață al sistemului

Nu există un singur model de ciclu de viață care să satisfacă cerințele fiecărei sarcini posibile. Diverse organizații Agențiile de standardizare, agențiile guvernamentale și societățile de inginerie își publică propriile modele și tehnologii care pot fi utilizate pentru a construi modelul. Astfel, este nepotrivit să se pretindă existența unui singur algoritm posibil pentru construirea unui model de ciclu de viață.

Unii experți în inginerie de sisteme sugerează să se ia în considerare un model de ciclu de viață al sistemului bazat pe următoarele trei surse: modelul de management logistic al Departamentului de Apărare (DoD) (DoD 5000.2), modelul ISO/IEC 15288 și Societatea Nationala of Professional Engineers (NSPE):71.

Model tipic de ciclu de viață conform ISO/IEC 15288

Conform standardului, procesele și activitățile ciclului de viață sunt definite, configurate în mod corespunzător și utilizate în timpul unei etape a ciclului de viață pentru a satisface pe deplin obiectivele și rezultatele acestei etape. Diferite organizații pot fi implicate în diferite etape ale ciclului de viață. Nu există un model universal unic al ciclurilor de viață ale sistemului. Anumite etape ale ciclului de viață pot fi absente sau prezente în funcție de fiecare caz specific de dezvoltare a sistemului:34.

Standardul a oferit următoarele etape ale ciclului de viață ca exemple:

  1. Ideea.
  2. Dezvoltare.
  3. Productie.
  4. Aplicație.
  5. Suport pentru aplicații.
  6. Întreruperea și anularea.

Nu există exemple de etape ale ciclului de viață în versiunea 2008 a standardului (ISO/IEC 15288:2008).

Model tipic de ciclu de viață conform Departamentului de Apărare al SUA

Pentru a gestiona riscurile utilizării tehnologiilor avansate și pentru a minimiza erorile tehnice sau de management costisitoare, Departamentul de Apărare al SUA a elaborat un ghid care conține toate principiile necesare pentru dezvoltarea sistemului. Aceste principii sunt incluse într-o listă specială de directive - DoD 5000.

Modelul ciclului de viață al unui sistem de management al logisticii conform Departamentului de Apărare al SUA constă din cinci etape:71:

  1. Analiză.
  2. Dezvoltarea tehnologiei.
  3. Inginerie și dezvoltare a producției.
  4. Productie si implementare.
  5. Operare și suport.

Modelul ciclului de viață al sistemului generic al Societății Naționale a Inginerilor Profesioniști (NSPE).

Acest model adaptate pentru dezvoltarea sistemelor comerciale. Acest model se concentrează în principal pe dezvoltarea de noi produse, de obicei rezultatul progresului tehnologic. Modelul NSPE oferă o vedere alternativă a modelului versiunii DoD. Ciclul de viață conform modelului NSPE este împărțit în șase etape:72:

  1. Concept.
  2. Implementare tehnica.
  3. Dezvoltare.
  4. Validarea comercială și pregătirea producției.
  5. Productie la scara completa.
  6. Asistență pentru produsul final.

Model tipic ciclului de viață al produsului conform R 50-605-80-93

Documentul de orientare R 50-605-80-93 studiază cu atenție ciclul de viață al unui produs industrial, inclusiv - echipament militar.

Pentru produsele industriale de uz civil se propun următoarele etape:

  1. Cercetare și proiectare.
  2. Fabricarea.
  3. Apel și implementare.
  4. Funcționare sau consum.

În cadrul ciclului de viață al produselor industriale de uz civil, se propune să se ia în considerare 73 de tipuri de muncă și 23 de tipuri de părți interesate („participanți la lucru” în terminologia documentului).

Pentru produsele industriale de uz militar se propun următoarele etape:

  1. Cercetarea și justificarea dezvoltării.
  2. Dezvoltare.
  3. Productie.
  4. Operațiunea.
  5. Renovare majoră.

În cadrul ciclului de viață al produselor industriale militare, se propune să se ia în considerare 25 de tipuri de muncă și 7 tipuri de părți interesate (participanți la lucru).

Model tipic ciclului de viață al software-ului

Etapele ciclului de viață al sistemului și fazele componente ale acestora, prezentate în figura „Modelul ciclului de viață al sistemului”, se aplică celor mai multe sisteme complexe, inclusiv celor care conțin software cu o cantitate semnificativă de funcționalitate la nivel de componentă. În sistemele cu consum intensiv de software în care software-ul îndeplinește aproape toate funcțiile (cum ar fi sistemele financiare moderne, sistemele de rezervare a biletelor de avion, internetul global etc.), de regulă, ciclurile de viață sunt similare ca conținut, dar sunt adesea complicate de iterare. procese și prototipare: 72-73.

Etapele principale ale ciclului de viață al sistemului (Kossiakoff, Sweet, Seymour, Biemer)

După cum se arată în figura „Modelul ciclului de viață al sistemului”, modelul ciclului de viață al sistemului conține 3 etape. Primele 2 etape sunt în timpul dezvoltării, iar a treia etapă acoperă post-dezvoltarea. Aceste etape arată mai multe tranziții generale de la stare la stare în ciclul de viață al unui sistem și, de asemenea, arată schimbări în tipul și domeniul de aplicare al activităților implicate în ingineria sistemelor. Etapele sunt:73:

  • etapa de dezvoltare a conceptului;
  • stadiul de dezvoltare tehnică;
  • etapa post-dezvoltare.

Etapa de dezvoltare a conceptului

Scopul etapei de dezvoltare a conceptului este de a evalua noi posibilități în domeniul de aplicare a sistemului, de a dezvolta preliminar cerinţele de sistemși posibile soluții de proiectare. Etapa de dezvoltare a designului conceptual începe cu realizarea necesității de a crea un nou sistem sau de a modifica unul existent. Etapa include începutul cercetării faptice, o perioadă de planificare și sunt evaluate bazele economice, tehnice, strategice și de piață ale acțiunilor viitoare. Are loc un dialog între părțile interesate și dezvoltatori.

Obiectivele principale ale etapei de dezvoltare a conceptului:74:

  1. Efectuați cercetări pentru a determina ce este necesar pentru noul sistem, precum și fezabilitatea tehnică și economică a sistemului.
  2. Explorați concepte potențiale de sistem și formulați și validați un set de cerințe de performanță a sistemului.
  3. Selectați cel mai atractiv concept de sistem, determinați-i caracteristicile funcționale și dezvoltați un plan detaliat pentru etapele ulterioare de proiectare, producție și implementare operațională a sistemului.
  4. Dezvoltați orice tehnologie nouă potrivit pentru conceptul de sistem ales și validarea capacității acestuia de a răspunde nevoilor.

Etapa de dezvoltare tehnică

Etapa de dezvoltare tehnică implică procesul de proiectare a unui sistem pentru a implementa funcțiile formulate în conceptul de sistem într-o concretizare fizică care poate fi susținută și operată cu succes în mediul său de operare. Ingineria sistemelor se ocupă în primul rând de ghidarea dezvoltării și proiectării, gestionarea interfețelor, dezvoltarea planurilor de testare și determinarea modului în care discrepanțele în performanța unui sistem netestat în timpul testării și evaluării ar trebui corectate în mod corespunzător. Cea mai mare parte a activităților de inginerie se desfășoară în această etapă.

Obiectivele principale ale etapei de dezvoltare tehnică sunt:74:

  1. Efectuați dezvoltarea tehnică a unui prototip de sistem care îndeplinește cerințele de performanță, fiabilitate, întreținere și siguranță.
  2. Proiectați un sistem adecvat pentru utilizare și demonstrați adecvarea operațională a acestuia.

Etapa post-dezvoltare

Etapa de post-dezvoltare constă în activități în afara perioadei de dezvoltare a sistemului, dar necesită totuși sprijin semnificativ din partea inginerilor de sisteme, mai ales atunci când se întâlnesc probleme neașteptate care necesită o rezolvare promptă. În plus, progresele tehnologice necesită adesea actualizări interne ale sistemului de servicii, care pot fi la fel de dependente de ingineria sistemelor precum conceptul și etapele de dezvoltare tehnică.

.
  • Batovrin V.K., Bakhturin D.A. Managementul ciclului de viață al sistemelor tehnice. - 2012.
  • GOST R ISO/IEC 15288-2005 Tehnologia de informație. Ingineria Sistemelor. Procesele ciclului de viață al sistemelor
  • R 50-605-80-93. Recomandări. Sistem de dezvoltare și punere în producție a produselor. Termeni și definiții (Link către text).
  • în inginerie electrică). Acest standard definește o structură a ciclului de viață care conține procesele, activitățile și sarcinile care trebuie finalizate în timpul creării unui sistem software.

    ÎN acest standard PS (sau produs software) este definit ca un set de programe de calculator, proceduri și, eventual, documentație și date asociate. Un proces este definit ca un set de acțiuni interconectate care transformă unele date de intrare în ieșire (G. Myers numește această traducere a datelor). Fiecare proces este caracterizat de anumite sarcini și metode de rezolvare a acestora. La rândul său, fiecare proces este împărțit într-un set de acțiuni, iar fiecare acțiune într-un set de sarcini. Fiecare proces, acțiune sau sarcină este inițiată și executată de un alt proces după cum este necesar și nu există secvențe de execuție predeterminate (desigur, menținând conexiunile între datele de intrare).

    Trebuie remarcat faptul că în Uniunea Sovietică și apoi în Rusia, crearea de software (software) a fost inițial, în anii 70 ai secolului trecut, reglementată de standardele GOST ESPD (Sistemul unificat de documentare a programelor - seria GOST 19.ХХХ ), care erau programe relativ simple, mici, orientate spre clasă, create de programatori individuali. În prezent, aceste standarde sunt depășite din punct de vedere conceptual și din punct de vedere al formei, perioada lor de valabilitate a expirat și utilizarea lor este inadecvată.

    Procesele de creare a sistemelor automatizate (AS), care includ software, sunt reglementate de standardele GOST 34.601-90 „Tehnologia informației. Set de standarde pentru sisteme automate. Etapele creării”, GOST 34.602-89 „Tehnologia informației. Set de standarde”. pentru sisteme automate. Termeni de referință pentru crearea unui sistem automatizat" și GOST 34.603-92 "Tehnologia informației. Tipuri de testare a sistemelor automatizate." Cu toate acestea, multe dintre prevederile acestor standarde sunt depășite, iar altele nu sunt suficient de reflectate pentru a fi folosite pentru proiecte serioase de creare a substațiilor. Prin urmare, în dezvoltările interne, este recomandabil să se utilizeze standarde internaționale moderne. .

    În conformitate cu standardul ISO / IEC 12207, toate procesele ciclului de viață al software-ului sunt împărțite în trei grupuri (Fig. 5.1).


    Orez. 5.1.

    Grupurile definesc cinci procese principale: achiziție, livrare, dezvoltare, operare și suport. Opt procese auxiliare asigură executarea proceselor principale, și anume documentare, managementul configurației, asigurarea calitatii, verificarea, certificarea, evaluarea comuna, auditul, rezolvarea problemelor. Cele patru procese organizaționale asigură management, infrastructură, îmbunătățire și învățare.

    5.2. Principalele procese ale ciclului de viață PS

    Procesul de achiziție constă în acțiunile și sarcinile clientului care achiziționează software-ul. Acest proces acoperă următoarele activități:

    1. inițierea achiziției;
    2. pregătirea propunerilor de licitație;
    3. intocmirea si ajustarea contractului;
    4. supravegherea activitatilor furnizorului;
    5. acceptarea și finalizarea lucrărilor.

    Inițierea unei achiziții include următoarele sarcini:

    1. determinarea de către client a nevoilor sale pentru achiziția, dezvoltarea sau îmbunătățirea unui sistem, produse software sau servicii;
    2. luarea deciziilor privind achiziția, dezvoltarea sau îmbunătățirea software-ului existent;
    3. verificarea disponibilității documentației necesare, garanțiilor, certificatelor, licențelor și suportului în cazul achiziționării unui produs software;
    4. pregătirea și aprobarea planului de achiziții, inclusiv cerințele de sistem, tipul de contract, responsabilitățile părților etc.

    Propunerile de aplicare trebuie să conțină:

    1. cerințe pentru sistem;
    2. lista de produse software;
    3. termenii de achiziție și acord;
    4. restricții tehnice (de exemplu, asupra mediului de operare al sistemului).

    Ofertele sunt trimise furnizorului selectat sau mai multor furnizori în cazul unei licitații. Un furnizor este o organizație care încheie un contract cu un client pentru furnizarea unui sistem, software sau serviciu software în condițiile specificate în contract.

    Pregătirea și ajustarea contractului include următoarele sarcini:

    1. determinarea de către client a unei proceduri de selectare a unui furnizor, inclusiv a criteriilor de evaluare a propunerilor de la eventualii furnizori;
    2. selectarea unui anumit furnizor pe baza analizei propunerilor;
    3. pregătire și încheiere acorduri cu furnizorul;
    4. efectuarea de modificări (dacă este necesar) la contract în timpul implementării acestuia.

    Supravegherea activităților furnizorului se realizează în conformitate cu acțiunile prevăzute în procesele comune de evaluare și audit. În timpul procesului de acceptare sunt pregătite și efectuate testele necesare. Finalizarea lucrărilor conform contractului se realizează dacă sunt îndeplinite toate condițiile de acceptare.

    Procesul de livrare acoperă activitățile și sarcinile efectuate de furnizorul care furnizează clientului un produs sau serviciu software. Acest proces include următorii pași:

    1. inițierea livrării;
    2. pregătirea unui răspuns la propunerile de licitație;
    3. intocmirea contractului;
    4. planificarea lucrărilor conform contractului;
    5. executarea și controlul lucrărilor contractuale și evaluarea acestora;
    6. livrarea si finalizarea lucrarilor.

    Inițierea livrării constă în examinarea de către furnizor a ofertelor și decizia dacă este de acord cu cerințele și condițiile menționate sau dacă le oferă propriile lor (de acord). Planificarea include următoarele sarcini:

    1. luarea unei decizii de către furnizor cu privire la executarea lucrărilor pe cont propriu sau cu implicarea unui subcontractant;
    2. elaborarea de către furnizor a unui plan de management de proiect care să conţină structura organizatorica proiect, împărțirea responsabilităților, cerințe tehnice la mediul și resursele de dezvoltare, managementul subcontractanților etc.

    Procesul de dezvoltare implică acțiunile și sarcinile efectuate de dezvoltator și acoperă munca de creare a software-ului și a componentelor acestuia în conformitate cu cerințele specificate. Aceasta include pregătirea documentației de proiectare și operaționale, pregătirea materialelor necesare pentru testarea performanței și calitatea produselor software, materiale necesare organizării pregătirii personalului etc.

    Procesul de dezvoltare include următorii pași:

    1. munca pregatitoare;
    2. analiza cerințelor sistemului;
    3. proiectarea arhitecturii sistemului;
    4. analiza cerintelor pentru software;
    5. proiectarea arhitecturii software;
    6. proiectare detaliată a software-ului;
    7. codificare și testare software;
    8. integrare software;
    9. testarea calificării software-ului;
    10. integrarea sistemului;
    11. testarea calificării sistemului;
    12. instalare software;
    13. acceptarea software-ului.

    Munca pregătitoare începe cu selectarea unui model de ciclu de viață al software-ului corespunzător amplorii, semnificației și complexității proiectului. Activitățile și sarcinile procesului de dezvoltare trebuie să corespundă modelului ales. Dezvoltatorul trebuie să selecteze, să se adapteze la condițiile proiectului și să utilizeze standarde, metode și instrumente de dezvoltare, precum și întocmirea unui plan de execuție a lucrărilor.

    Analiza cerințelor pentru sistem implică determinarea funcționalității acestuia, cerinţele utilizatorului, cerințe de fiabilitate, securitate, cerințe pentru interfețe externe, performanță etc. Cerințele de sistem sunt evaluate pe baza criteriilor de fezabilitate și testabilitate.

    Proiectarea arhitecturii unui sistem implică determinarea componentelor hardware (hardware), software-ului și operațiunilor efectuate de personalul care operează sistemul. Arhitectura sistemului trebuie să se conformeze cerințelor sistemului și standardelor și practicilor de proiectare acceptate.

    Analiza cerințelor software implică determinarea următoarelor caracteristici pentru fiecare componentă software:

    1. funcționalitatea, inclusiv caracteristicile de performanță și mediul de operare al componentei;
    2. interfețe externe;
    3. specificații de fiabilitate și siguranță;
    4. cerințe ergonomice;
    5. cerințe pentru datele utilizate;
    6. cerințe de instalare și acceptare;
    7. cerințe pentru documentația utilizatorului;
    8. cerinţele de operare şi întreţinere.

    Cerințele software sunt evaluate pe baza criteriilor de conformitate cu cerințele pentru întregul sistem, fezabilitate și testabilitate.

    Proiectarea arhitecturii software include următoarele sarcini pentru fiecare componentă software:

    1. transformarea cerințelor software într-o arhitectură care definește la un nivel înalt structura software-ului și compoziția componentelor acestuia;
    2. dezvoltarea și documentarea interfețelor software și a bazelor de date (DB);
    3. dezvoltarea unei versiuni preliminare a documentației utilizatorului;
    4. dezvoltarea și documentarea cerințelor preliminare de testare și a planului de integrare software.

    Proiectarea detaliată a software-ului include următoarele sarcini:

    1. descrierea componentelor software și a interfețelor dintre ele la un nivel inferior suficient pentru codarea și testarea ulterioară;
    2. dezvoltarea și documentarea unui proiect detaliat al bazei de date;
    3. actualizarea (dacă este necesar) documentația utilizatorului;
    4. dezvoltarea și documentarea cerințelor de testare și un plan de testare pentru componentele software;

    Codarea și testarea software-ului includ următoarele sarcini:

    1. codificarea și documentarea fiecărei componente software și bază de date, precum și pregătirea unui set de proceduri de testare și date pentru testarea acestora;
    2. testarea fiecărei componente software și bază de date pentru conformitatea cu cerințele pentru acestea, urmată de documentarea rezultatelor testelor;
    3. actualizarea documentației (dacă este necesar);
    4. actualizarea planului de integrare software.

    Integrarea software implică asamblarea componentelor software dezvoltate în conformitate cu planul de integrare și testare pentru componentele agregate. Pentru fiecare dintre componentele agregate, seturi de testare și proceduri de testare sunt dezvoltate pentru a verifica fiecare dintre cerințele de calificare în timpul testelor de calificare ulterioare. Cerință de calificare este un set de criterii sau condiții care trebuie îndeplinite pentru a se califica produs software ca întrunind specificațiile sale și gata de utilizare în teren.

    Testarea calificării software-ului este efectuată de dezvoltator în prezența clientului (

    Procesul de operare acoperă activitățile și sarcinile organizației operatorului care operează sistemul. Procesul de operare include următorii pași.

    1. Lucrări pregătitoare, care includ operatorul care îndeplinește următoarele sarcini:

      1. planificarea activităților și lucrărilor efectuate în timpul funcționării și stabilirea standardelor operaționale;
      2. determinarea procedurilor de localizare si rezolvare a problemelor aparute in timpul functionarii.
    2. Testare operațională efectuată pentru fiecare ediție ulterioară a unui produs software, după care această ediție este pusă în funcțiune.
    3. Funcționarea efectivă a sistemului, care se realizează în mediul destinat acestui scop în conformitate cu documentația utilizatorului.
    4. analiza problemelor și solicitărilor de modificare a software-ului (analiza mesajelor despre o problemă sau cerere de modificare, evaluarea scalei, costul modificării, efectul rezultat, evaluarea fezabilității modificării);
    5. modificarea software-ului (efectuarea de modificări la componentele produsului software și la documentație în conformitate cu regulile procesului de dezvoltare);
    6. verificarea și acceptarea (din punct de vedere al integrității sistemului modificat);
    7. transferul de software într-un alt mediu (conversia de programe și date, operarea paralelă a software-ului în mediul vechi și nou pentru o anumită perioadă de timp);
    8. scoaterea din funcțiune a software-ului prin decizia clientului cu participarea organizației de exploatare, a serviciului de asistență și a utilizatorilor. În acest caz, produsele software și documentația sunt supuse arhivării în conformitate cu acordul.

    Vizualizări