Sovellusohjelman suunnittelu & toteutus
Tietojärjestelmän kehityksen elinkaari Burch (1992)
Ohjelman suunnittelu – Ohjelmiston elinkaari Haikala & Märijärvi (2002)
Ohjelman suunnittelu (Ohjelman osiinjako) Ohjelmiston kehittäminen voi edetä seuraavan kuvan mukaisesti. Ohjelma ositetaan Osien väliset rajapinnat määritellään ja kuvataan Osat suunnitellaan ja toteutetaan Haikala & Märijärvi (2002)
Ohjelman suunnittelu (Algoritmien kuvaaminen 1/2) - Pseudokoodi alustukset loop pyydä luku1; lue luku1; until ehdot täyttyvät; pyydä luku2; lue luku2; laske lukujen summa; tulosta lukujen summa; kysy jatketaanko; if halutaan jatkaa then palaa alustuksiin; else lopeta;
Ohjelman suunnittelu (Algoritmien kuvaaminen 2/2) - Vuokaavio Toisto: Do Until aloitus Jatketaanko Kyllä/Ei Lopetus Laske summa pyydä luku1 luku OK Lue luku1 Kyllä Ei ilmoita virhe A Tulosta summa pyydä luku2 Lue luku2 Sekvenssi Valinta: If-Then-Else
Ohjelman toteutus (Modulaarisuus) Moduuli A Moduuli B Moduuli C C-kielen ohjelmakirjasto Moduuli Y Moduuli X
Ohjelman toteutus (C-kielen kääntäjä) Linkkeri Assembleri Kääntäjä Esikääntäjä Lähdekoodi tiedostot Ajovalmis exe-tiedosto Ohjelma A Ohjelma X Ohjelma B . Ohjelma n lausekieli konekieli kielioppivirheet pois summa.exe summa.c summa.obj
Ohjelman toteutus (Yhteenlasku ohjelman koodi) #include <stdio.h> // C:n kirjastot sisaan void main(void) // ohjelma alkaa { int eka, toka; //alustukset eka=0; toka=0; clrscr(); // naytto tyhjaksi printf("\t\tTervetuloa\n\n"); do // ..kunnes luku > 0 ja < 101 printf("Anna ensimmainen luku (valilta 1 - 100).: "); // pyytaa ensimmaista lukua scanf("%d",&eka); // lukee ensimmaisen luvun if (eka < 1 || eka > 100) // testaa lukualueen (1-100) printf("Luku ei ole annetulta alueelta!\n\n"); // .. jos virhe, niin } while(eka < 1 || eka > 100 ); // alkuun jos virhe luvussa do printf("Anna toinen luku (valilta 1 - 100)......: "); scanf("%d",&toka); if (toka < 1 || toka > 100) printf("Luku ei ole annetulta alueelta!\n\n"); } while(toka < 1 || toka > 100 ); printf("\nLukujen summa on: %d\n", eka + toka); // tulostaa summan getch(); } // ohjelma loppuu toisto-rakenne
Ohjelman toteutus (Ohjelman suoritus)