Download presentation
Presentation is loading. Please wait.
1
Programų sistemų inžinerija
Saulius Ragaišis, VU MIF
2
Projektas PKP Branda Projektas, laimėjęs Lietuvos valstybinio mokslo ir studijų fondo konkursą pagal programą "Aukštųjų technologijų plėtros programa“. Programos tikslas – didinti Lietuvos pramonės tarptautinį konkurencingumą. Projektų vertinimo kriterijai: numatoma projekto ekonominė nauda, įtaka tos aukštųjų technologijų srities pažangai, gamybos apimčių ir eksporto augimo bei kitų rodiklių prasme; ...
3
Projektas PKP Branda (2003-2005 m.)
Pilnas pavadinimas: Brandaus programų kūrimo proceso įdiegimo metodikos ir instrumentinių priemonių sukūrimas. Santrumpa: PKP Branda. Vykdytojai: Vilniaus universitetas, Kauno technologijos universitetas, AB "Alna“, UAB "Sintagma“. Pagrindinis projekto tikslas: sudaryti prielaidas Lietuvos informacinių technologijų įmonėms eksportuoti programinius produktus bei paslaugas, suteikiant joms metodines ir instrumentines priemones, padedančias vertinti, apibrėžti ir įdiegti brandų (kokybišką) programų kūrimo procesą, leisiantį kurti aukštesnės kokybės programinius produktus ir paslaugas ir kurį galima būtų sertifikuoti pagal tarptautiniu mastu pripažįstamus standartus, tokiu būdu skleidžiant informaciją užsienyje apie Lietuvos įmonių pasiektą kokybės lygį.
4
Pagrindiniai projekto rezultatai
Metodiniai: programų kūrimo procesų modelis ir brandaus programų kūrimo proceso įdiegimo metodika. Technologiniai: sukurtos brandaus programų kūrimo proceso įdiegimo ir palaikymo instrumentinės priemonės. Moksliniai: projekto moksliniai rezultatai paskelbti 10 straipsnių, padaryti 27 pranešimai mokslinėse konferencijose. Sklaida: surengti 2 seminarų ciklai asociacijos “Infobalt” vykdomo projekto “Outsource 2 Lithuania” dalyviams. Vykdant projektą, realiai įgyvendintas akademinių institucijų ir gamybinių įmonių bendradarbiavimas. Projekto rezultatai viešai prieinami:
5
Programų kūrimo proceso modelis
Projekto PKP Branda vykdymo laikotarpiu įvyko esminė evoliucija programų kūrimo proceso vertinimo ir gerinimo standartizacijoje: procesų gebėjimo vertinimui turi būti naudojamas dvidimensinis modelis, tenkinantis ISO/IEC reikalavimus procesų gebėjimo vertinimo modeliui. Pagrindinis reikalavimas naudojamam vertinimo modeliui yra gebėjimo dimensijoje apimti ištisinę sritį, pradedant pirmuoju lygiu, o procesų dimensijoje apimti bent vieną vertinamą procesą. Projekto eigoje buvo sukurtos 3 programų kūrimo procesų modelio versijos. Programų kūrimo procesų modelio PKP Branda versija 3 atitinka procesų dimensiją ISO/IEC 12207:2002 ir tenkina ISO/IEC reikalavimus procesų gebėjimo vertinimo modeliui (ji artima pavyzdiniam programų kūrimo proceso vertinimo modeliui ISO/IEC , kuris buvo išleistas vėliau).
6
Brandaus programų kūrimo proceso įdiegimo metodika
Brandaus programų kūrimo proceso įdiegimo metodika „Branda” siekia suderinti ir perimti teigiamus bruožus dviejų pagrindinių programų kūrimo proceso vertinimo ir gerinimo modelių: CMM, CMMI SPICE, ISO/IEC 15504 CMM, CMMI pateikia standartinį programų kūrimo proceso gerinimo kelią, tenkinantį 80% įmonių, ir apibrėžia pagrindinius etapus tame gerinimo kelyje, vadinamus brandos lygiais. Brandos lygiai turi labai didelę marketinginę vertę, dėl kurios įmonės netgi dalinai aukoja pagrindinį tikslą – proceso gerinimą. SPICE, ISO/IEC įgalina individualizuoti ir fiksuoti įmonės programų kūrimo proceso vertinimo ir gerinimo veiklą, nustatyti programų kūrimo vardinių procesų gebėjimo detalų profilį ir detalius gerinimo žingsnius. Tačiau modelis nepateikia įmonės proceso gerinimo gairių.
7
Situacija Lietuvoje Daugumos Lietuvos informacinių technologijų įmonių programų kūrimo procesas yra nebrandus, chaotiškas ir neprognozuojamas, vykdomi projektai nuolatos slegiami artėjančių terminų...
8
„Aksioma” Vienintelis realus brandaus programų kūrimo proceso diegimo kelias yra nuolatinis įmonės proceso gerinimas.
9
Kokybės sudedamosios dalys
Žmonės Technologijos Procesas
10
Proceso gerinimo pagrindiniai principai
• Didieji programų kūrimo proceso pakeitimai turi prasidėti nuo aukščiausio lygmens vadovybės • Visi turi būti įtraukti • Efektyvūs pakeitimai reikalauja tikslų ir esamo proceso žinojimo • Pakeitimai turi būti nuolatiniai • Proceso pakeitimai nebus išlaikyti be nuolatinių pastangų • Programų proceso gerinimui reikalingos investicijos
11
Klaidingos nuostatos apie procesą
• Projektas pradedamas, kai žinomi tikslūs reikalavimai • Jei praėjo testavimą, tai nėra klaidų • Programų kokybės negalima išmatuoti • Problemų prigimtis – techninė • Reikia geresnių žmonių • Programų kūrimo valdymas yra kitoks
12
Pasipriešinimo proceso keitimui priežastys
• Profesionalai mano, kad problemos yra techniškai išsprendžiamos • Vadybininkai nesupranta problemų esmės ir mano, kad problemos yra techninės • Nusistatymas prieš taisykles, ypač „svetimas”
13
Proceso keitimo strategija
• „Atšildymas” - Čempionai, Sponsoriai, Agentai • Pakeitimas - Planavimas, Įgyvendinimas, Paskleidimas • „Užšaldymas” - Užtikrinti, kad pasiekimai bus išlaikyti organizacijoje
14
Programų kūrimo proceso gerinimo schema
15
Pagrindiniai proceso gerinimo žingsniai
1. Poreikių ir tikslų identifikavimas (Examine Organization’s Needs) 2. Proceso gerinimo inicijavimas (Initiate Process Improvement) 3. Proceso vertinimas (Perform Process Assessment) 4. Vertinimo rezultatų analizė ir veiksmų plano sudarymas (Analyze Results and Derive Action Plan) 5. Gerinimo veiksmų įgyvendinimas (Implement Improvement Actions) 6. Proceso pakeitimų analizė (Confirm the Improvement) 7. Pagerinto proceso įtvirtinimas (Sustain Improvement Gain) 8. Proceso vykdymo stebėjimas (Monitor Performance)
16
Poreikių ir tikslų identifikavimas
organizacijos poreikių ir verslo tikslų analizė identifikavimas proceso gerinimo poreikio ir ko bus siekiama galimos proceso gerinimo priežastys: - užsakovų nepasitenkinimas dėl projektų vėlavimo - kokybės problemos dėl defektų pateiktuose projektuose - per dideli kaštai - noras pagerinti resursų naudojimą ir kt. šis žingsnis kiekvienoje gerinimo ciklo iteracijoje nebūtinas, bet organizacijos poreikiai ir verslo tikslai gali keistis, todėl laikas nuo laiko jie turėtų būti peržiūrėti ir prireikus atnaujinti
17
Proceso gerinimo inicijavimas
atskiras projektas, kurio tikslas yra atlikti proceso gerinimo ciklo iteraciją; projekto įgyvendinimui būtina: - paskirti reikalingus resursus - sudaryti projekto planą atliekant proceso gerinimą pirmą kartą: • susipažinimas su naudojamu proceso modeliu; • pradinis einamojo organizacijos proceso apibrėžimas – tipinių organizacijos projektų gyvavimo ciklo modelis, nurodant: vykdomus procesus, jų bazines praktikas, naudojamus ir sukuriamus darbo produktus bei jų charakteristikas (aprašymus)
18
Proceso vertinimas Vertinimo apimties nustatymas:
- kam bus taikoma (visai organizacijai, padaliniui) - kokie procesai ir iki kurio gebėjimo lygio bus vertinami Lietuvoje yra aktualu visų pirma gerinti programinės įrangos gyvavimo ciklo pagrindinius (inžinerinius) procesus. Kad programinės įrangos kūrimo inžineriniai procesai galėtų pasiekti antrą gebėjimo lygį, yra būtina, kad jų atlikimą paremtų organizacinių procesų ir pagalbinių procesų kategorijų procesai.
19
Minimalus „bendras” vertinamų procesų rinkinys
Kategorija Grupė ID Procesas Pagrindiniai gyvavimo ciklo procesai Inžineriniai procesai ENG.1. Reikalavimų išsiaiškinimas ENG.4. Reikalavimų programinei įrangai analizė ENG.5. Programinės įrangos projektavimas ENG.6. Programinės įrangos konstravimas ENG.7. Programinės įrangos integravimas ENG.8. Programinės įrangos testavimas ENG.11. Programinės įrangos instaliavimas ENG.12. Programinės įrangos priežiūra Pagalbiniai gyvavimo ciklo procesai Konfigūracijos valdymo procesai SUP.8 Konfigūracijos valdymas SUP.9 Problemų sprendimas Kokybės užtikrinimo procesai SUP.1. Kokybės užtikrinimas Organizaciniai gyvavimo ciklo procesai Valdymo procesai MAN.3. Projekto valdymas Neįtraukti inžineriniai procesai: ENG.2 Sistemos reikalavimų analizė ENG.3 Sistemos architektūros projektavimas ENG.9 Sistemos integravimas ENG.10 Sistemos testavimas
20
Naudojama vertinimo modelio gebėjimo dimensija
Proceso gebėjimo lygis Gebėjimo lygio pavadinimas ID Atributas Lygis 1 Vykdomas procesas PA 1.1. Proceso atlikimo atributas Lygis 2 Valdomas procesas PA 2.1. Proceso atlikimo valdymo atributas PA 2.2. Darbo produktų valdymo atributas Daugumos Lietuvos IT įmonių tiksliniu procesų gebėjimo profiliu artimiausių 2-3 metų laikotarpiui yra: inžinerinių procesų antras gebėjimo lygis ir pagalbinių bei organizacinių procesų pirmas gebėjimo lygis.
21
Procesai susiję su antro lygio CMMI proceso sritimis
ID Procesas ENG.1 Reikalavimų išsiaiškinimas SUP.1 Kokybės užtikrinimas ENG.4 Programinės įrangos reikalavimų analizė SUP.2 Verifikavimas ENG.5 Programinės įrangos projektavimas SUP.3 Validavimas ENG.6 Programinės įrangos projekto realizavimas SUP.4 Jungtinės peržiūros ENG.7 Programinės įrangos integravimas SUP.5 Auditas ENG.8 Programinės įrangos testavimas SUP.7 Dokumentavimas ENG.11 Programinės įrangos instaliavimas SUP.8 Konfigūracijos valdymas ENG.12 Programinės įrangos ir sistemos priežiūra SUP.9 Problemų sprendimo valdymas MAN.3 Projekto valdymas SUP.10 Keitimų poreikio valdymas MAN.4 Kokybės valdymas MAN.5 Rizikos valdymas MAN.6 Matavimai
22
Vertinimo rezultatų analizė ir veiksmų plano sudarymas
Vertinimo rezultatas – procesų gebėjimo profilis. Pagal organizacijos poreikius ir verslo tikslus bei faktinį procesų gebėjimo profilį sudaromas tikslinis procesų gebėjimo profilis, nurodant reikiamus procesus ir siekiamas jų gebėjimo atributų reikšmes. Veiksmų plano sudarymo pagrindiniai principai: - siekiant proceso 1-o gebėjimo lygio, remiamasi proceso modelyje šiam procesui apibrėžtomis bazinėmis praktikomis ir darbo produktais - siekiant 2-o ir aukštesnio gebėjimo lygio, remiamasi proceso modelyje su siekiamo gebėjimo lygio atributais asocijuotais procesais Veiksmų plane nurodoma ne tik gerinimo veiksmų seka, bet ir apibrėžiamos proceso efektyvumo metrikos nustatytų gerinimo tikslų pasiekimui matuoti bei siekiami atitinkamų metrikų įvertinimai.
23
Gerinimo veiksmų įgyvendinimas
vadovybės pritarimas veiksmų plano įgyvendinimui pakeitimai turi būti palaipsniniai, evoliuciniai gali būti inicijuoti keli lygiagretūs proceso gerinimo projektai taikymas ne kritiniuose projektuose pakeisto proceso efektyvumo matavimai turi būti „renkamos” kylančios problemos vykdymas kaip „normalaus” projekto (pagal planą)
24
Proceso pakeitimų analizė
Pakeisto programų kūrimo proceso efektyvumo analizė. Analizės metu nustatoma, ar proceso gerinimo iteracijos tikslai pasiekti (t.y. ar atitinkami efektyvumo metrikų įvertinimai atitinka veiksmų plane nustatytus tų metrikų įvertinimus), įvertintas pašalinis poveikis. Jei gerinimo tikslai pasiekti nebuvo, tai analizuojamos priežastys, atliekamas proceso vertinimas, nustatomi nauji, gal būt mažesni (ne tokie ambicingi) gerinimo tikslai, ir sudaromas naujas veiksmų planas, tiems tikslams pasiekti.
25
Pagerinto proceso įtvirtinimas
Jei gerinimo veiksmai buvo sėkmingai įdiegti ir nustatyti gerinimo tikslai pasiekti, tai turi būti atliekamos įdiegtų gerinimo veiksmų įtvirtinimo veiklos, kurios užtikrintų jog pasiektas proceso lygis nebūtų prarastas ir gerinimo veiksmai „prigis” organizacijoje: naujo proceso institucionalizavimas.
26
Proceso vykdymo stebėjimas
Programų kūrimo proceso vykdymas turi būti nuolat stebimas, jo efektyvumas matuojamas, keliami nauji gerinimo tikslai ir inicijuojami nauji proceso gerinimo projektai. Turi būti surinkta patirtis iš proceso gerinimo projekto dalyvių ir asmenų, kuriuos palietė proceso pakeitimai.
27
Metodikos apibendrinimas
Sukurta brandaus programų kūrimo proceso įdiegimo metodika: • Suderinama su ISO/IEC 15504: • Suderinama su ISO/IEC 12207:2002 amd1 ir ISO/IEC 12207:2004 amd2 • Išbandyta įmonėse AB „Alna” ir UAB „Sintagma” • Sudaryti tipiniai Lietuvos IT įmonių projektų vykdymo modeliai • Nustatyta atitinkamybė tarp CMMI brandos lygių ir ISO/IEC procesų gebėjimo profilių
28
Brandaus programų kūrimo proceso įdiegimo ir palaikymo instrumentinės priemonės
PKP Branda projekto metu sukurtos programų kūrimo proceso vertinimo ir gerinimo palaikymo instrumentinės priemonės. Jas galima išbandyti: proin.ktu.lt/pkp/pkbm/ Instrumentinės priemonės turi apimti: - Modelio medžiagos pateikimo priemones; - Organizacijos proceso apibrėžimo ir pavaizdavimo priemones; - Proceso nuolatinio matavimo duomenų surinkimo priemones; - Proceso vertinimo priemones; - Apsikeitimo proceso vertinimo duomenimis priemones; - Apmokymo priemones.
29
Pradinis sistemos puslapis
Projekto informacija Kalbos pasirinkimas Svečiui prieinama informacija Atverti prisijungimo puslapį
30
Sistemos architektūra
31
Puslapio modelio medis iliustracija
32
Puslapio vertinimas iliustracija
Trečias žingsnis: atliekamas greitasis vertinimas įrašant reikšmes procesų atributams Paspaudus mygtuką Atnaujinti išsaugomi daryti keitimai
33
Esminis funkcionalumas
Naudodamiesi instrumentinėmis priemonėmis naudotojai gali: 1. Pasirinktoje vietoje ir tinkamu laiku įvesti į sistemą vertinimų duomenis. 2. Naudotis nutolusia modelio informacijos teikimo paslauga, gaunant aktualią modelio medžiagą, atnaujinamą modelio kūrėjų. 3. Pagal įvestus vertinimų duomenis atlikti analizę, esant poreikiui analizuoti skirtingus vertinimus. 4. Lanksčiai kurti ataskaitas, įtraukiant pasirenkamus vertinimų komponentus ir išsaugoti jas ofiso programų formatais. Kurti savo programinę aplinką, naudojant išplėtimo API. Sukurtos brandaus programų kūrimo proceso diegimo ir palaikymo instrumentinės priemonės turi pranašumų prieš žinomus komercinius ir atvirojo kodo analogus, kurios gali būti išvystytos į konkurencingą programų kūrimo industrijoje įrankį.
34
?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.