Etapy rozwiązywania problemów:
1. Sformułowanie zadania
2. Określenie danych wejściowych
3. Określenie celu, czyli wyniku
4. Poszukiwanie metody rozwiązania, czyli algorytmu
5. Przedstawienie algorytmu w postaci:
6. opisu słownego
7. listy kroków
8. schematu blokowego
9. języka programowania
10. Analiza poprawności rozwiązania
11. Testowanie rozwiązania dla różnych danych. Ocena efektywności przyjętej metody.
Zasadniczym etapem tworzenia specyfikacji jest tzw. inżynieria wymagań:
--> proces szukania, analizowania, dokumentowania, sprawdzania i zatwierdzania usług i ograniczeń projektowanego systemu;
--> innymi słowy – proces ustalenia, co system powinien robić, przy uwzględnieniu istniejących ograniczeń;
--> opisy usług i ograniczeń są wymaganiami stawianymi systemowi;
W wyniku przeprowadzonych analiz otrzymujemy kompletną Specyfikację Wymagań Systemowych.
Ogólny model procesu projektowania
Specyfikacją problemu algorytmicznego nazywamy dokładny opis problemu algorytmicznego, który ma zostać rozwiązany, oraz podanie danych wejściowych i danych wyjściowych wraz z ich typami.
Najczęściej specyfikacja składa się z opisu danych wejściowych wraz ze wszystkimi warunkami, jakie mają one spełniać, oraz danych wyjściowych (wyników) z uwzględnieniem warunków, jakie mają spełniać i ich związku z danymi wejściowymi.
Specyfikacja problemu algorytmicznego
Problem algorytmiczny: Obliczanie potęgi liczby naturalnej o wykładniku naturalnym
Dane wejściowe: a ∈ N - podstawa potęgi, b∈ N - wykładnik potęgi
Dane wyjściowe: w∈ N - wartość a b <
Dane w algorytmie są najczęściej przedstawiane za pomocą liter lub dłuższych nazw, które nazywamy zmiennymi.
Zmienną nazywamy obiekt występujący w algorytmie, określony przez nazwę i służący do zapamiętywania pewnych danych.