Diplomdarbs
Tehnoloģijas
Datori, elektronika, programmēšana
Ekstremālās programmēšanas lietošanas labās prakses-
Ekstremālās programmēšanas lietošanas labās prakses
Nr. | Sadaļas nosaukums | Lpp. |
Ievads | 8 | |
1. | Metodoloģijas jēdziens | 10 |
2. | Programmatūras dzīves cikls | 15 |
2.1. | Ūdenskrituma modelis | 15 |
2.2. | Spirāles modelis | 17 |
2.3. | Ekstremālā programmēšana – extreme Programming | 19 |
3. | Ekstremālās programmēšanas prakses | 21 |
3.1. | Plānošanas etaps – plānošanas spēle | 22 |
3.1.1. | Lietotāju stāsti – user story | 24 |
3.1.2. | Versiju - relīžu plānošana | 24 |
3.1.3. | Iteratīva pieeja | 26 |
3.1.4. | Kolektīva koda pārvalde | 28 |
3.2. | Vienkārša projektēšana | 29 |
1. | Sistēma sekmīgi iziet visus testus | 29 |
2. | Sistēmas kods precīzi atspoguļo programmētāja iecerētus plānus | 30 |
3. | Sistēmā nav koda dublēšanās | 30 |
4. | Tiek izmantots minimāls klašu un metožu skaits | 30 |
3.2.1. | Sistēmas metafora | 31 |
3.2.2. | CRC kartiņas | 32 |
3.2.3. | Pagaidu atrisinājumi | 33 |
3.2.4. | Koda pārbūve -refaktorings | 33 |
3.3. | Ekstremālā kodēšana | 36 |
3.3.1. | Koda standarti | 38 |
3.3.2. | Izstrādātāju grupas struktūras | 38 |
3.3.3. | Pāra programmēšana | 39 |
3.3.4. | Nepārtraukta integrācija | 41 |
3.3.5. | Pūļu pārvērtēšana | 42 |
3.4. | Ekstremālā testēšana | 43 |
3.4.1. | Moduļu testi | 43 |
3.4.2. | Programmētāji un moduļu testi | 44 |
3.4.3. | Funkcionāli testi | 46 |
4. | Ekstremālās programmēšanas salīdzinājums ar citām metodoloģijām | 49 |
5. | Ekstremālās programmēšanas praktiskais pielietojums | 53 |
Nobeigums | 62 | |
Literatūra | 64 |
Objektorientēta pieeja uz doto brīdi ir pati populārāka un stabila programmēšanas tehnoloģiju ziņā. Šīs objektorientētas tehnoloģijas ļoti radikāli izmainīja programmēšanu uz labo pusi. Bet vairāki pētījumi liecina, ka joprojām pastāv programmas projekti, kuri nevar iekļauties noteiktos termiņos vai pārsniedz savu budžetu. Problēma pastāv nevis programmēšanas tehnoloģijā, bet tur, kādā veidā tiek izstrādāta programmatūra. Izstrādāt programmatūru nav viegli, bet izstrādāt kvalitatīvu programmatūru, iekļaujoties termiņos ir vēl sarežģītāk. Viens no darba mērķim ir noskaidrot, ko no sevis izsaka programmatūras izstrādes process un kādā veidā to var vadīt, lai veicinātu kvalitatīvo, ātro un izmaiņām drošu izstrādi.
Kā risinājums tiek piedāvātas tās saucamās „veiklās” (angl. agile) programmatūras izstrādes pieejas kopā ar objektorientēto valodu spēcīgumu un elastīgumu. Pati populārāka „veiklās” pieejas metodoloģija ir ekstremālā programmēšana (angl. eXtreme Programming). Darba mērķis ir apskatīt visu ekstremālās programmēšanas prakšu kopu, kas izpaužas uz visām programmatūras izstrādes procesa sastāvdaļām - plānošanu, projektēšanu, kodēšanu un testēšanu, kā arī veikt analīzi, kāpēc šīs prakses ir būtiskas un lietderīgas kā programmētājiem, tā arī menedžeriem un visiem programmatūras izstrādē iesaistītiem cilvēkiem.
Pēc ekstremālās programmēšanas prakšu apskatīšanas ir svarīgi salīdzināt to ar citām programmatūras izstrādes pieejām, atzīmēt būtiskas priekšrocības un īpatnības, piemēram, ka cilvēku saskarsme ir labāka par instrumentiem un procesiem, strādājoša programmatūra labāka par visaptverošas dokumentācijas, saprašanās ar pasūtītāju pārāka par vienošanu parakstīšanu un reakcija uz izmaiņām ir labāka par sekošanu plānam.
Noslēguma daļā piedāvāts praktisks ekstremālās programmēšanas pielietojums. Tika apskatīts telekomunikācijas uzņēmuma Lattelekom projekts – Python integrators, kas ir lietojumprogrammu integrācijas risinājums. Projekta aprakstīšanas gaitā uzmanība tiek pievērsta projektā izmantotām ekstremālās programmēšanas praksēm un kāda nozīme biju šo prakšu pielietojumam. Kā pats ekstremālās programmēšanas pamatlicējs Kents Beks atzīst [Kent Beck, 1999], šī metodoloģija domāta nelielām komandām, kas nodarbojas ar programmas produkta izveidi neskaidro vai ātri mainīgo prasību apstākļos. Tāpēc Lattelekom izstrādātāju komanda projekta izveidē pielietoja šīs prakses. Visā darba gaitā akcents likts uz to, kā visas ekstremālās programmēšanas prakses sadarbojas viena ar otru, tāpēc, ja tas tiek ievērotas un pielietotas kopā, var sasniegt labāko rezultātu.
Bakalaura darba mērķis un uzdevumu nostādne pētījumam nosaka virzīties nedaudz vairāk analītiskajā dimensijā, nekā projektēšanas.
…
Darbā detalizēti tiek izskatīts programmatūras izstrādes procesa organizācijas jautājums. Šis jautājums tieši saistīts ar programmatūras kvalitāti, izstrādes laiku, kā arī ar izmaiņu ieviešanu visā programmatūras uzturēšanas periodā. Visiem minētiem faktiem darbā tiek veltīta īpaša nozīme, par cik tās ir būtiskas lietas, kas ir jāievēro programmatūras izstrādātājiem. Programmatūras izstrāde tieši ir saistīta ar metodoloģijas izvēli un tās pielietojumu. Darbā tiek aprakstīta viena no populārām programmatūras izstrādes metodoloģijām – ekstremālā programmēšana. Šī metodoloģija tika izveidota un attīstīta ar aktīvo izstrādātāju – praktiķu piedalīšanos. Darbā ir izklāstīti šīs metodoloģijas kopējie principi un idejas, kā arī paskaidrots kā tie darbojas praktiskajā pielietojumā un kādu būtisku labumu no tiem iegūst programmatūras izstrādātāji, kā arī produkta pasūtītāji. Kā projektējuma daļa darbā tiek piedāvāts uzņēmuma Lattelekom projekts - „Python integrators”, kura izstrādē tika pielietotas ekstremālās programmēšanas prakses.
- Ekstremālās programmēšanas lietošanas labās prakses
- Informācijas sistēmu ieviešanas problēmas un risinājumi
- Internetā ievietojamo JAVA appletu izstrāde mācību līdzekļiem
-
Tu vari jebkuru darbu ātri pievienot savu vēlmju sarakstam. Forši!Interneta ietekme uz jauniešu personības vajadzību veidošanos
Diplomdarbs augstskolai40
Novērtēts! -
Automatizētās testēšanas iespējas SAP R/3 sistēmā
Diplomdarbs augstskolai106
-
Programmēšānas valodu Java un C# salīdzinājums
Diplomdarbs augstskolai58
-
Vides novērojumu anketu uzskaites sistēma "Bebrs"
Diplomdarbs augstskolai63
-
UML koda ģenerēšanas rīku lietošanas analīze programmu sagatavju izstrādei
Diplomdarbs augstskolai126