7/23/2019 Curs 7 MP Management Schimbari
1/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 1
Managementulschimbarilor
Mentenanta,
managementul configuratiei
7/23/2019 Curs 7 MP Management Schimbari
2/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 2
Cuprins
Intretinerea sistemelor de programe
Natura activitatii de intretinereRepartizare efort intretinereFactori ce influenteaza costurile intretinerii
Dinamica evolutiei programelor Managementul configuratiei
Planificare
Controlul schimbarilor Construirea sistemuluiManagementul versiunilor si lansarilor
7/23/2019 Curs 7 MP Management Schimbari
3/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 3
De ce sunt necesare schimbarile?Cauze tehnologice
Arhitectura intreprinderiiParteneriatele cu furnizorii
Integratorii de sistemeExternalizarea (outsoursing)Selectarea tehnologiilor
Cerintele de instalare
Cauze legate deproces
ProprietateaProiectareaProcese la nivel deintreprindere
Procese intre intreprinderiControlul schimbarilor Procese de suport
Cauze umaneSchimbarea liderilor Sponsorizare si suport
Alinierea la conditii standardRecrutarea
TrainingTransfer de cunostinte
- Nivel dificultateN
1 2
3
7/23/2019 Curs 7 MP Management Schimbari
4/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 4
Dinamica evolutiei programelor
Lehman si Belady (studiu incepand din 1985) Legea schimbarii continue
adaptarea la schimbarea mediului real Legea cresterii complexitatii
restructurare / proiectare initiala buna Legea evolutiei programelor mari
dinamica proprie (invariante si tendinte statistice aleatributelor) Legea stabilitatii organizationale
viteza de dezvoltare constanta si independenta deresursele dedicate
Legea conservarii familiaritatiiGradul de schimbare de la o versiune la alta aproximativ
constant
7/23/2019 Curs 7 MP Management Schimbari
5/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 5
Faza de mentenanta dureaza atata timp cateste utilizat sistemul. Activitati:
Monitorizarea sistemuluiPlanificarea unui nou ciclu de dezvoltare, pentrumodificarea sistemului
Perfectionare Adaptare la alte platformeCorectarea erorilor sistemului
Intretinerea sistemelor de programe
intretinere mentenanta suport
7/23/2019 Curs 7 MP Management Schimbari
6/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 6
Monitorizarea sistemului
Sisteme pentru raportarea erorilor
Erorile stocate intr-un sistem de control alversiunilor, impreuna cu software-ul care le areExemple:
DITrack Distributed Issue Tracker (subversion)Bugzilla
http://www.ditrack.org/http://www.ditrack.org/7/23/2019 Curs 7 MP Management Schimbari
7/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 7
Controlul schimbarilor
Procedura de efectuare
a schimbarii
Comisia pt. controlul
schimbarilor Schimbarile inregistrateprintr-un prolog decomentariistandardizateExemplu
Formularul de cerere aschimbarii exempluDescrierea schimbariipropuseSolicitantMotiv
Evaluarea schimbarii Analiza impactuluiCostulRecomandari
http://../MP2011/Curs%20management%20schimbari/Antet%20cod.jpghttp://../MP2011/Curs%20management%20schimbari/Change%20request%20form.jpghttp://../MP2011/Curs%20management%20schimbari/Change%20request%20form.jpghttp://../MP2011/Curs%20management%20schimbari/Antet%20cod.jpg7/23/2019 Curs 7 MP Management Schimbari
8/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 8
Scopul intretinerii programelor
perfectionarea prin adaugarea sau
modificarea functionalitatii pentru a satisfacenoi cerinte - 65 %adaptarea pentru a lucra pe calculatoare saucu sisteme de operare diferite 18 %corectarea greselilor ascunse, care nu au fost
descoperite la validarea programului - 17%
7/23/2019 Curs 7 MP Management Schimbari
9/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 9
Repartizare efort intretinere
65
18
17
Perfectionare
Adaptare
Corectare
7/23/2019 Curs 7 MP Management Schimbari
10/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 10
Efort intretinere (mentenanta) in raport cu
dezvoltarea programuluiMentenanta 67%
Specificareacerintelor 2%
Analiza 5%
Proiectarea 6%
Implementareamodulelor 5%
Testareamodulelor 7%
Integrarea 8%
7/23/2019 Curs 7 MP Management Schimbari
11/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 11
Natura activitatii de intretinere
Tehnici similare cu cele de la dezvoltare
E necesara predictarea / masurarea efortuluide intretinere
E necesara masurarea complexitatiiprogramuluiRestructurarea programului
pt. a imbunatati structura globala
7/23/2019 Curs 7 MP Management Schimbari
12/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 12
Factori ce influenteaza costurile intretinerii
Tehniciindependentamodulelor calitatea si cantitateadocumentatiei
modul in care s-auefectuat validarea sitestarea programului(pt. a descoperi rapiderorile)limbajul si stilul deprogramare
Netehnicistabilitatea echipei sia hardware-uluivechimeaprogramului
responsabilitateacontractualadependentaprogramului demediul sau extern
7/23/2019 Curs 7 MP Management Schimbari
13/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 13
Exemplu de strategie de mentenanta
Notificare activa si achizitie
administratorii afla ce softwarenou exista si il achizitioneaza
Controlul versiunilor inainte de a instala un update,administratorii determina daca eaplicabil in mediul dat
Distributie si instalareinstalarea software-ului la client,pe sistemul dorit 2001, 2002, 2003 Hewlett-Packard
Development Company, L.P.
7/23/2019 Curs 7 MP Management Schimbari
14/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 14
Cuprins
Intretinerea sistemelor de programeNatura activitatii de intretinereRepartizare efort intretinereFactori ce influenteaza costurile intretineriiDinamica evolutiei programelor
Managementul configuratieiPlanificare
Controlul schimbarilor Construirea sistemuluiManagementul versiunilor si lansarilor
7/23/2019 Curs 7 MP Management Schimbari
15/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 15
Managementul configuratiei
Dezvoltarea si aplicarea unor proceduri si
standarde pentru a gestiona evolutiaprogramelor critic pt. intretinerea sistemelor de programe marilegat de procesul de asigurare a calitatiiminimizarea costurilor globale si a gradului deschimbare perceput de vechii utilizatori
7/23/2019 Curs 7 MP Management Schimbari
16/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 16
Panificarea MC
Alegerea documentelor necesare pt.intretinere
a) Schema de numire a documentelor
ierarhica, nume unice Exemplub) Relatii dintre documentele formale ierarhia
documentelor c) Responsabil cu verificarea calitatii unui
document formal
d) Responsabil cu livrarea documentului formal
Inainte si in decursul dezvoltarii / in paralel cu alte planificari
http://../MP2011/Curs%20management%20schimbari/Ierarchy.jpghttp://../MP2011/Curs%20management%20schimbari/Ierarchy.jpg7/23/2019 Curs 7 MP Management Schimbari
17/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 17
Pastrarea informatiilor
Informatii pastrate intr-o baza de date
Exemple interogariCine detine o anumita versiune a sistemului?Ce platforma e necesara pentru o anumitaversiune?Ce versiuni sunt afectate de o schimbare intr-o
anumita componenta?Cate erori au fost raportate pentru o anumitaversiune?
7/23/2019 Curs 7 MP Management Schimbari
18/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 18
Construirea sistemului
Verificari :
Toate componentele incluseVersiuni corespunzatoare ale componentelor
Disponibile toate fisierele de date ceruteConcordanta intre numele de referire si celde instalareVersiunea corespunzatoare de compilator
7/23/2019 Curs 7 MP Management Schimbari
19/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 19
Etape ale construirii sistemuluiSpecificare componente si mod de construire
Alegerea versiunilor potrivite
CompilareEditare legaturi @ Jan Sommervile, Software Engineering 8 th Edition
7/23/2019 Curs 7 MP Management Schimbari
20/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 20
Managementul versiunilor si lansarilor.
Cazuri de utilizarerecuperarea unei stari precedente a unui program (ex.
revenirea inapoi dupa introducerea unui bug) ;gasirea locului unde s-a introdus un anumit bug ;
recuperarea ultimei versiuni certificate, livrate sau testate
sprijin pentru programatori multipli care lucreaza laacelasi program ;
mentinerea unor versiuni diferite ale aceluiasi program(ex. Windows)
7/23/2019 Curs 7 MP Management Schimbari
21/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 21
Controlul versiunilor
Intercalare versiuni pentru corectare erori cuversiuni pentru schimbare functionalitate.
Arbore / graf (retea) de versionareCaracterizarea versiunilor prin atribute
DataCreator Limbaj de programare
Controlul versiunilor este centralizat.
7/23/2019 Curs 7 MP Management Schimbari
22/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 22
Schema de identificare a versiunilorNumerotareIdentificator
pt. clientIdentificator platforma
7/23/2019 Curs 7 MP Management Schimbari
23/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 23
Versiuni, variante, lansari
Versiune
O instanta a sistemului care se deosebeste dinpunct de vedere functional de altele
VariantaO instanta a sistemului identica functional, dar distincta din punct de vedere nefunctional
LansareO instanta a sistemului distribuita catre utilizatoridin afara echipei de dezvoltare
7/23/2019 Curs 7 MP Management Schimbari
24/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 24
Instrumente software pentru
managementul configuratieiurmarirea diferitelor versiuni ale componentelor in codul sursaconstruirea sistemului din partile sale componente
SCCS(Source Code Control System)
retinere versiuni fara
duplicare codcontrolul actualizarilor
sistemului
MAKEcorespondenta cod sursa cod obiect
dificil de scris fisierele Makefilept. sisteme mari
7/23/2019 Curs 7 MP Management Schimbari
25/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 25
Gestionare de versiuni Open Source
RCS (1980) gestiunea versiunilor si
fisierelor ;CVS (1986) RCS + concurentaSubversion (2000) asemanator CVS dar mai bun ;
Arch/Darcs/Monotone (2003) gestiunea
versiunilor distribuit (fiecare spatiu de lucrueste o ramura completa)
7/23/2019 Curs 7 MP Management Schimbari
26/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 26
Facilitati Subversion
Workspace
Import
CommitRevert
RepositoryV1V2 Vn
Checkout
7/23/2019 Curs 7 MP Management Schimbari
27/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 27
Definitii
Workspace (spatiu de lucru)o copie privata a
programului, stocata inspatiul sau local deproprietarul sau ;
Repositoryspatiu de stocare underezida diferite copii publicesi partajate ale
programului ;Revizii (versiuni)
stari succesive ale aceluiasiobiect ;
Checkoutcrearea unei copii a
spatiului de lucruImport
crearea unui proiect
Commitpartajarea modificarilor
Revert
revenirea inapoiRecuperarea unei versiunivechi
7/23/2019 Curs 7 MP Management Schimbari
28/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 28
Alegerea modului de colaborare intre
membrii echipeiModalitati de tratare aconflictelor
lock/modify/unlockconcurentamerge
7/23/2019 Curs 7 MP Management Schimbari
29/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 29
Lock / Modify / Unlock Harry blocheaza fisierul A, apoi il copiaza
pentru editare.
In timp de Harry editeaza, Sally nu reusestesa blocheze fisierul.
Harry isi scrie fisierul si deblocheaza. Acum Sally poate citi, bloca si edita ultima saversiune.
Nu se permite
lucrul inparalel.
7/23/2019 Curs 7 MP Management Schimbari
30/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 30
Concurenta (Concurrence)Doi utilizatori copiaza acelasi fisier Ambii incep sa-si editeze copiile.
Sally publica prima ei versiune. Harry obtine eroarea out-of-date .
Se ia versiuneacelui careterminaprimul
f
7/23/2019 Curs 7 MP Management Schimbari
31/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 31
Se fuzioneaza rezultatele (Merge)Harry compara versiunea sa cu ultima
versiune.Se creaza o nou versiune fuzionata.
Se publica versiune fuzionata. Acum fiecare utilizator are si schimbarileefectuate de celalalt.
Incredere egala inparticipantii ladezvoltare.
Se stie cinepublica o
versiune si cemodificari aefectuat.
ifi i l
7/23/2019 Curs 7 MP Management Schimbari
32/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 32
Verificarea cunostintelor
1. Alegeti cele 3 activitaticare fac parte din fazade mentenanta:
a) Monitorizarea sistemuluib) Corectarea erorilor sistemului
c) Dezvoltarea specificatiilor d) Stabilirea bugetuluie) Modificarea sistemuluif) Proiectarea structurii de date
2. O versiune a unuiprogram se lanseazape piata daca:
a) este stabila;b) introduce modificari ale
functionalitatii;c) indeplineste toate criteriile
stabilite pentru managementulconfiguratiei.
R f i
7/23/2019 Curs 7 MP Management Schimbari
33/33
UPB Facultatea Automatica si CalculatoareManagement de proiect - Anca Ionita 33
Referinte
A. Stellman, J. Greene, Applied Software
Project Management, OReilly 2006Jan Sommerville, Software Engineering,8 th Edition, Pearson Education, 2006Documentatie Subversion