curs 7 mp management schimbari

Upload: razzumatazzu

Post on 15-Feb-2018

249 views

Category:

Documents


0 download

TRANSCRIPT

  • 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.jpg
  • 7/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.jpg
  • 7/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