Inżynieria Oprogramowania
Egzamin 2FD
Zadanie 1.
Kod z ramek implementuje klasy obiektów transferowych pewnego systemu (nie pokazano metod).
Narysuj tabele z relacyjnej bazy danych, odpowiadające obiektom transferowym, wypełnione
następującymi danymi:
Wyroby trampki i kozaki sklasyfikowano jako obuwie. Wyrób koszula sklasyfikowano jako odzież.
class WyrobDTO {
/** @var int */
private $ID;
/** @var string */
private $nazwa;
/** @var TypWyrobuDTO */
private $klasyfikacja;
}
class TypWyrobuDTO {
/** @var int */
private $ID;
/** @var string */
private $nazwa;
/** @var array[WyrobDTO] lista wyrobów */
private $przedmiotyKlasyfikacji;
}
Zadanie 2.
W systemie z zadania 1 funkcjonalność Dodaj
nowy typ wyrobu zaimplementowano tak, jak
pokazano na diagramie sekwencji.
Napisz kod klasy
TypWyrobuBackingBean
z metodą
onClickZapisz()
. W metodzie
onClickZapisz
przyjmij założenia:
•
zmienne
nazwa
i
fasada
to pola klasy,
•
pola zostały zainicjowane w konstruktorze.
Podpowiedź: w języku PHP operator dostępu
do pola to $this->
onClickZapisz()
dodajTypWyrobu(typWyrobu)
typWyrobu
:TypWyrobuDTO
setNazwa(nazwa)
użytkownik
typWyrobuForm
:TypWyrobuBackingBean
fasada
:Fasada
Zadanie 3.
Diagram przypadków użycia pokazany niżej modeluje funkcjonalność pewnego systemu
informatycznego.
Zarządzanie wyrobami
Prezentuj
Listę wyrobów
Edycja
wyrobu
Usuń
wyrób
Dodaj
wyrób
Pracownicy
System
<<extend>>
<<extend>>
<<extend>>
Naszkicuj okienko odpowiadające przypadkowi użycia Prezentuj Listę wyrobów.
Inżynieria Oprogramowania
Egzamin 2FD
Zadanie 1.
Kod z ramek implementuje klasy obiektów transferowych pewnego systemu (nie pokazano metod).
Narysuj tabele z relacyjnej bazy danych, odpowiadające obiektom transferowym, wypełnione
następującymi danymi:
Na rachunku nr 12-000-1234-4321 należącym do klienta nr 80010112345, dnia 28-06-2012
zaksięgowano wypłatę 100zł, a 29-06-2012 wpłatę 500zł.
class RachunekDTO {
/** @var string */ private $numer;
/** @var KlientDTO */
private $wlasciciel;
/** @var array[OperacjaDTO] */
private $operacje;
}
class OperacjaDTO {
/** @var int */ private $ID;
/** @var DateTime */ private $czas;
/** @var float */private $kwota;
/** @var RachunekDTO */
private $rachunek;
}
Zadanie 2.
W systemie z zadania 1 funkcjonalność Dodaj
nową operację zaimplementowano tak, jak
pokazano na diagramie sekwencji.
Napisz kod klasy
PrzelewBackingBean
z metodą
onClickOK()
. W metodzie
onClickOK
przyjmij założenia:
•
zmienne
kwota
,
r
i
fasada
to pola klasy,
•
pola zostały zainicjowane w konstruktorze.
Podpowiedź: w języku PHP operator dostępu do
pola to $this->
onClickOK()
dodajOperacje(przelew)
przelew
:OperacjaDTO
setKwota(kwota)
użytkownik
przelewForm
:PrzelewBackingBean
fasada
:Fasada
setRachunek(r)
Zadanie 3.
Diagram przypadków użycia pokazany niżej modeluje funkcjonalność pewnego systemu
Naszkicuj okienko odpowiadające przypadkowi użycia Prezentuj Listę nieruchomości.
A
29.06.2012
B
29.06.2012
Zarządzanie nieruchomościami
Prezentuj
Listę nieruchomości
Edycja
nieruchomości
Usuń
nieruchomość
Dodaj
nieruchomość
Pracownik
System
<<extend>>
<<extend>>
<<extend>>
Prezentuj
historię własności
<<extend>>