SlideShare ist ein Scribd-Unternehmen logo
1 von 10
Programmas
izstrādes posmi
Programmatūras izstrādes
        etapi
Produkts savā izstrādes gaitā iziet caur
  vairākām izstrādes fāzēm. Katra no
  tām ir svarīga testēšanai. Dzīves ciklā
  svarīgākās fāzes varētu būt:
  –   Plānošana
  –   Projektēšana
  –   Kodēšana un dokumentēšana
  –   Testēšana
  –   Uzturēšana un uzlabošana
Programmatūras izmaksas

• Analīze
                     3%         • Projektēšana
                                                       7%     • Testēšana
                                                                                 67%
              • Specifikācija                    • Kodēšana                 • Uzturēšana



       3%                             5%                           15%




                                             Jo agrāk tiek atrasta un izlabota
                                               kļūda, jo lētākas izmaksas

               http://doit.ort.org/course/languages/391.htm
Izstrādes komanda
• Projekta vadītājs
• Projektētājs
    – Arhitekts
• Programmatūras analītiķis
    – Ergonomists
    – Lietotāja interfeisa programmētājs
    – Galvenais programmētājs
•   Produkta menedžeris
•   Tehniskā atbalsta pārstāvis
•   Rakstnieks
•   Testētājs
•   Citi speciālisti.
Algoritmizācija
Lineārais algoritms
Cikliskais
algoritms

Weitere ähnliche Inhalte

Was ist angesagt?

Androidの表示レイヤーと画面常駐型アプリの話
Androidの表示レイヤーと画面常駐型アプリの話Androidの表示レイヤーと画面常駐型アプリの話
Androidの表示レイヤーと画面常駐型アプリの話
kirimin
 

Was ist angesagt? (20)

LDP lecture 1
LDP lecture 1LDP lecture 1
LDP lecture 1
 
basics dart.pdf
basics dart.pdfbasics dart.pdf
basics dart.pdf
 
Software Quality Gate.pptx
Software Quality Gate.pptxSoftware Quality Gate.pptx
Software Quality Gate.pptx
 
Agile QA presentation
Agile QA presentationAgile QA presentation
Agile QA presentation
 
General overview low code/ no code
General overview low code/ no codeGeneral overview low code/ no code
General overview low code/ no code
 
リテラルと型の話 #__swift__
リテラルと型の話 #__swift__リテラルと型の話 #__swift__
リテラルと型の話 #__swift__
 
Androidの表示レイヤーと画面常駐型アプリの話
Androidの表示レイヤーと画面常駐型アプリの話Androidの表示レイヤーと画面常駐型アプリの話
Androidの表示レイヤーと画面常駐型アプリの話
 
業務システムにおけるMongoDB活用法
業務システムにおけるMongoDB活用法業務システムにおけるMongoDB活用法
業務システムにおけるMongoDB活用法
 
工数把握のすすめ 〜WorkTimeプラグインの使い方〜
工数把握のすすめ 〜WorkTimeプラグインの使い方〜工数把握のすすめ 〜WorkTimeプラグインの使い方〜
工数把握のすすめ 〜WorkTimeプラグインの使い方〜
 
Cursos Agile Think - Feature Driven Development (FDD) - 4/4
Cursos Agile Think - Feature Driven Development (FDD) - 4/4Cursos Agile Think - Feature Driven Development (FDD) - 4/4
Cursos Agile Think - Feature Driven Development (FDD) - 4/4
 
GSM Coffee.co
GSM Coffee.coGSM Coffee.co
GSM Coffee.co
 
fixkglogo.pdf
fixkglogo.pdffixkglogo.pdf
fixkglogo.pdf
 
Mobile development with Flutter
Mobile development with FlutterMobile development with Flutter
Mobile development with Flutter
 
Low code vs. No code: Which is better for web and app development?
Low code vs. No code: Which is better for web and app development?Low code vs. No code: Which is better for web and app development?
Low code vs. No code: Which is better for web and app development?
 
少人数チームにおけるプロジェクト管理のベストプラクティス
少人数チームにおけるプロジェクト管理のベストプラクティス少人数チームにおけるプロジェクト管理のベストプラクティス
少人数チームにおけるプロジェクト管理のベストプラクティス
 
Smart storeを実現するAzureサービス IoT編
Smart storeを実現するAzureサービス IoT編Smart storeを実現するAzureサービス IoT編
Smart storeを実現するAzureサービス IoT編
 
Mojoliciousでつくる! Webアプリ入門
Mojoliciousでつくる! Webアプリ入門Mojoliciousでつくる! Webアプリ入門
Mojoliciousでつくる! Webアプリ入門
 
Angular based enterprise level frontend architecture
Angular based enterprise level frontend architectureAngular based enterprise level frontend architecture
Angular based enterprise level frontend architecture
 
Flutter introduction
Flutter introductionFlutter introduction
Flutter introduction
 
Amazon CodeGuru vs SonarQube for Java Developers at AWS DeveloperWeek Europe ...
Amazon CodeGuru vs SonarQube for Java Developers at AWS DeveloperWeek Europe ...Amazon CodeGuru vs SonarQube for Java Developers at AWS DeveloperWeek Europe ...
Amazon CodeGuru vs SonarQube for Java Developers at AWS DeveloperWeek Europe ...
 

Mehr von Maija Liepa (20)

Virknes
VirknesVirknes
Virknes
 
My trip to Kaunas
My trip to KaunasMy trip to Kaunas
My trip to Kaunas
 
The arithmetic and geometric progression
The arithmetic and geometric progressionThe arithmetic and geometric progression
The arithmetic and geometric progression
 
Darbs un energija
Darbs un energijaDarbs un energija
Darbs un energija
 
22
2222
22
 
Blogi
BlogiBlogi
Blogi
 
Ms Word
Ms WordMs Word
Ms Word
 
Windows vide
Windows videWindows vide
Windows vide
 
5.presentation4
5.presentation45.presentation4
5.presentation4
 
4.noteiktais integrālis
4.noteiktais integrālis4.noteiktais integrālis
4.noteiktais integrālis
 
3.2.nenoteiktais integraalis
3.2.nenoteiktais integraalis3.2.nenoteiktais integraalis
3.2.nenoteiktais integraalis
 
3.1.nenoteiktais integralis
3.1.nenoteiktais integralis3.1.nenoteiktais integralis
3.1.nenoteiktais integralis
 
2.vairāk argumentu funcijas diferenciālrēķini
2.vairāk argumentu funcijas diferenciālrēķini2.vairāk argumentu funcijas diferenciālrēķini
2.vairāk argumentu funcijas diferenciālrēķini
 
1.2.funkcijas pētīšana
1.2.funkcijas pētīšana1.2.funkcijas pētīšana
1.2.funkcijas pētīšana
 
1.augstāku kārtu atvasinājumi un diferenciāļi
1.augstāku kārtu atvasinājumi un diferenciāļi1.augstāku kārtu atvasinājumi un diferenciāļi
1.augstāku kārtu atvasinājumi un diferenciāļi
 
1.1.augstaku kartu atvasinajumi
1.1.augstaku kartu atvasinajumi1.1.augstaku kartu atvasinajumi
1.1.augstaku kartu atvasinajumi
 
Transport
TransportTransport
Transport
 
Romanian students 20
Romanian students 20Romanian students 20
Romanian students 20
 
V. levski burgas
V. levski burgasV. levski burgas
V. levski burgas
 
Atmospheric pollution bulgaria, bourgas
Atmospheric pollution bulgaria, bourgasAtmospheric pollution bulgaria, bourgas
Atmospheric pollution bulgaria, bourgas
 

Programmas izstrādes posmi

  • 2. Programmatūras izstrādes etapi Produkts savā izstrādes gaitā iziet caur vairākām izstrādes fāzēm. Katra no tām ir svarīga testēšanai. Dzīves ciklā svarīgākās fāzes varētu būt: – Plānošana – Projektēšana – Kodēšana un dokumentēšana – Testēšana – Uzturēšana un uzlabošana
  • 3. Programmatūras izmaksas • Analīze 3% • Projektēšana 7% • Testēšana 67% • Specifikācija • Kodēšana • Uzturēšana 3% 5% 15% Jo agrāk tiek atrasta un izlabota kļūda, jo lētākas izmaksas http://doit.ort.org/course/languages/391.htm
  • 4. Izstrādes komanda • Projekta vadītājs • Projektētājs – Arhitekts • Programmatūras analītiķis – Ergonomists – Lietotāja interfeisa programmētājs – Galvenais programmētājs • Produkta menedžeris • Tehniskā atbalsta pārstāvis • Rakstnieks • Testētājs • Citi speciālisti.
  • 7.
  • 8.
  • 9.

Hinweis der Redaktion

  1. Programmatūru parasti izstrādā cilvēku grupa, kuru mēs saucam par izstrādes komandu. Bieži vien programmu izstrādā viens cilvēks. Pat tādā gadījumā var uzskatīt, ka strādā dažādi speciālisti. Viens cilvēks var spēlēt dažādas lomas. Lomas varētu būt sekojošas:Projekta vadītājs - atbild par kvalitāti, plānošanu, produkta budžetu utt.Projektētājs – (var būt arī apakšklasifikācija)Arhitekts - visaptveroša projektēšana, datu struktūru un datu plūsmas specificēšana, moduļu plānošana un to izmantošana, augšējā līmeņa baltās kastes testu izstrāde, specifikācijas pārbaudītājsProgrammatūras analītiķis - pēta klientu vajadzības un formulē prasības citiem speciālistiemErgonomists - cilvēciskā faktora analītiķis, kas ir ar zināšanām psiholoģijā, nosaka produkta lietojamību, interfeisa ar lietotāju derīgumu.Lietotāja interfeisa programmētājs - izstrādā lietotāja interfeisu pamatojoties uz pētījumiem psiholoģija un jaunākajiem sasniegumiem interfeisu programmēðanā.Galvenais programmētājs - raksta iekšējās specifikācijas, galvenās programmas.Produkta menedžeris - atbild par produkta pārdošanu, ilgtermiņa plānošanu, mārketinga aktivitātēm.Tehniskā atbalsta pārstāvis - palīdz lietotājiem lietot produktu.Rakstnieks - raksta visa veida dokumentāciju un rokasgrāmatas.Testētājs - testē programmas.Citi speciālisti.
  2. Cilvēku rīcību ikdienas dzīvē lielā mērā regulē instrukcijas, t.i., iepriekš izstrādātas operācijas un to izpildes kārtība, kas ļauj sasniegt vēlamo rezultātu. Kā piemēru var minēt mobilā telefona ekspluatāciju. Tikai precīzi izpildot atbilstošas instrukcijas var sasniegt vēlamo rezultātu. Lai iegūtu matemātiska rakstura uzdevuma atrisinājumu, ir jāzina šī uzdevuma atrisināšanas algoritms.Par algoritmu var uzskatīt konkrētas secības darbību kopumu, kura pielietojums dotiem objektiem, nodrošina meklējamā rezultāta iegūšanu.Algoritma pierakstam jābūt sadalītam precīzos nošķirtos soļos, kur katrā solī ir paredzēts izpildīt vienu vienkāršu norādījumu. Katru šādu norādījumu sauc par komandu.Sastādot, labojot un uzlabojot sarežģītākus algoritmus, to pieraksts teksta formā nav pietiekami uzskatāms un viegli lasāms. Tāpēc neretiprogrammēšanai paredzētos algoritmus veido ar grafisku elementu palīdzību.Algoritma pieraksta grafiskā forma ir blokshēma, kura veidota no atsevišķiem tipizētiem elementiem. Attēlā redzami blokshēmās izmantojamie grafiskie elementi.Vispārīgā gadījumā katra algoritma komanda sastāv no divām daļām: izpildāmās darbības un norādes uz vietu algoritma pierakstā, kur atrodas nākamā izpildāmā komanda.Strukturētā teksta pierakstā tiek pieņemts, ka pēc katras komandas izpildes algoritma izpildītājam jāpāriet pie komandas, kas atrodas nākamajā rindā, ja vien nav bijis norādījums izpildīt kādu citu komandu. Tāds pats pieņēmums ir spēkā arī Pascal programmās.
  3. Blokshēmās uz katru nākamo izpildāmo komandu norāda bultiņa, kura "iziet" no izpildītās komandas. Katram blokshēmas elementam var pienākt viena bultiņa (izņēmums ir sākuma elements, kuram nepienāk neviena bultiņa). No katra blokshēmas elementa iziet tikai viena bultiņa (izņēmums ir beigu elements, no kura neiziet neviena bultiņa un sazarošanās elements, no kura iziet divas bultiņas). Algoritmus, kuru komandas tiek izpildītas tādā secībā, kādā tās pierakstītas, sauc par lineāriem algoritmiem. Blokshēmās lineāro algoritmu pierakstā nelieto sazarošanās elementus.Parasti algoritmi netiek rakstīti vienam konkrētam gadījumam vai uzdevumam, bet gan veselai līdzīgu uzdevumu grupai. Algoritma blokshēmas piemērs, atbilstoši kurai nosaka funkcijas t=2ab+5c vērtību, redzams attēlā.
  4. Bieži vien vienu un to pašu rezultātu var sasniegt pēc formas dažādos veidos.Formas izmaiņa dod iespēju meklēt racionālāko risinājuma variantu konkrētā uzdevuma atrisināšanai ar mērķi taupīt datora resursus un radīt ērtas programmas.Tā, piemēram, vidējo vērtību var noteikt kā visu lielumu algebriskās summas dalījumu ar summējamo lielumu skaitu, av = (Sai )/ n , vai arī summējot katra lieluma n-tās daļas av = Sai n . Otrajā gadījumā tiek veikta (n-1) papildus aritmētiska darbība.No algebras zinām, ka lielums 2 2c = a - b iegūstams gan kā c = a × a - b × b , gan kā c = (a - b)(a + b). Šai piemērā darbību skaits abos gadījumos ir vienāds, atšķirīga irizpildes secība. Gadījumos, kad aprēķinu secība un saturs mainās atkarībā no iegūtajiem starprezultātiem, mēs nonākam pie sazarotas aprēķinu shēmas. Aprēķinu gaitā, nonākot pie kāda loģiska nosacījuma, tiek pārbaudīts, vai šis nosacījums izpildās, vai nē. Pozitīva rezultāta gadījumā uzdevuma risinājums tiek veikts izpildot vienas izskaitļošanas operācijas, bet pretējā gadījumā citas operācijas.Tāds gadījums parādīts blokshēmā a). Iespējams arī nepilnā sazarojuma gadījums, kad nosacījuma pārbaudes rezultātā tiek izpildīta tikai viena operātoru grupa. Šis gadījums attēlots blokshēmā b). Nav izslēgts gadījums, ka izpildot pirmā vai otrā veida operācijas atkal nonākam pie kāda cita loģiskā nosacījuma, kurš atkal regulē turpmāko aprēķinu gaitu.Attēlā c) parādīts viens no šāda veida iespējamiem gadījumiem.
  5. Ciklisku aprēķinu gadījumā katra cikla izpildes gaitā izmainās cikla parametri un atkarībā no to vērtībām ciks tiek atkārtots vai arī pārtraukts. Šāds algoritms organizē neierobežotu ciklu skaitu. Tā blokshēma parādīta attēlā.