Zio-6a-lab

From Studia Informatyczne

Spis treści

Ćwiczenia – Personal Software Process

Zadanie 1. Rejestr czasu

Zadanie polega na stworzenie rejestru czasu, podczas dwóch następnych zadań. Rejestr czasu należy wykonać w postaci tabelarycznej.

Program: W tym przypadku zadanie

Data: Data wykonania zadań, np. 09.08.06

Start Przerwa Stop \Delta Faza Uwagi
10:00 10+5 11:00 45 Zadanie 10 Stworzenie szablonu dokumentu

Opis kolumn:

  • Start - godzina rozpoczęcia
  • Przerwa - suma przerw w trakcie pracy (np. 6 + 8)
  • Stop – godzina zakończenia
  • \Delta - różnica między czasem zakończenia a rozpoczęcia pomniejszona o sumę czasów przerw
  • Faza – faza w trakcie której został zebrany pomiar
  • Uwagi – dodatkowe uwagi dotyczące pracy

Zadanie 2. Standard kodowania

Podczas wykładu przedstawiono propozycję odnośnie struktury nagłówka programu. Załóżmy, że masz zamiar napisać program obliczający współczynniki regresji liniowej.

Zaproponuj nagłówek programu opierając się na siedmiu polach:

  1. Pole „Program” określa nazwę programu. Ta nazwa będzie się też pojawiać w rejestrach czasu i defektów.
  2. Pole „Autor” podaje imię i nazwisko osoby, która napisała ten program.
  3. Pole „Data” pokazuje datę rozpoczęcia prac nad kodem programu
  4. Pole „Funkcja” zawiera możliwie krótką specyfikację programu.
  5. W polu „Wejście” umieszcza się opis danych wejściowych i ich roli w programie.
  6. Pole „Wyjście” opisuje dane będące wynikiem działania programu
  7. Pole „Efekt ub.” zawiera opis efektu ubocznego (na przykład opis zmian w bazie danych, jakie następują po wywołaniu programu).
  8. W ostatnim polu - "Uwagi", umieszcza się uwagi na temat implementacji.

Rozwiązanie

Przykładowy nagłówek:

 /*****************************************************************************************
  Program: RegresjaLiniowa
  Autor: Jan Kowalski
  Data: 09.09.2006
  Funkcja: Program wylicza współczynniki regresji liniowej 
           (a – współczynnik kierunkowy i b – wyraz wolny) na podstawie podanych par (x, y). 
  Wejście: Liczba naturalna N > 0, określająca liczbę par wejściowych (x, y)
		   Sekwencja par liczb x, y o liczności N.
  Wyjście: a – współczynnik kierunkowy równania regresji
	 	   b – wyraz wolny równania regresji
  Efekt ub.: brak
  Uwagi: Program wykorzystuje standardowy wzór na regresję liniową.
 ******************************************************************************************/


Zadanie 3. Obliczanie numerycznych reprezentacji wartości rozmytych dla rozmiarów klas

Zadanie polega na obliczeniu numerycznych reprezentacji wartości rozmytych dla rozmiarów klas (mała, średnia, duża). Obliczeń należy dokonać na podstawie danych zgromadzonych z 3 poprzednich projektów programistycznych.

Poniżej znajdują się zebrane dane z ukończonych programów, z wyszczególnieniem typów klas i długości metod w nich zawartych (nawiasy oznaczają klasy, zawierają długości metod).

Program 1.

  • Calculation – (14, 11, 22, 13), (33, 11, 22, 43, 23)
  • Data – (24, 52, 21, 3)
  • I/O – (3, 5, 1, 21, 4)
  • Text – (12, 43, 23), (32, 23, 12, 23)

Program 2.

  • Calculation – (10, 21, 32, 123), (23, 11, 32, 43, 23), (23, 55, 34, 23, 12)
  • Data – (24, 52, 21, 3), (31, 12, 4, 5)
  • I/O – (3, 5, 1, 21, 4)
  • Text – (32, 112, 12, 43, 23), (32, 43, 12, 43)

Program 3.

  • Calculation – (10, 21, 18, 13),
  • Data – (24, 52, 12, 3), (31, 12, 4, 5)
  • I/O – (3, 5, 1, 12, 4)
  • Text – (32, 100, 12, 43, 23, 32, 11)

Rozwiązanie

Rozwiązanie zadania 3

Rys. 1 Rozwiązanie zadania 3

Pytania do dyskusji

  1. Czy prowadzenie rejestru czasu jest opłacalne? Jakie są korzyści i trudności?
  2. Czy sądzisz, że używanie PSP, przyniosłoby Ci więcej korzyści, niż trudności?