Witam!
Moje zadanie polega na stworzeniu modelu systemu zorientowanego serwisowo. Tematem jest sklep internetowy sprzedający książki i inne produkty. Najważniejsze jest dla mnie zidentyfikowanie odpowiednich serwisów jakie mogłyby się znaleźć w obrębie takiego systemu i m. in tutaj mam wątpliwości.
Przedstawiam podstawowe wymagania:
Sprzedaż książek i innych produktów:
- Jest kilka możliwości prowadzenia sprzedaży produktów także zalecana jest elastyczność w tej funkcjonalności.
Wyszukiwanie:
-
Użytkownik musi mieć możliwość wyszukiwania produktów
-
Istnieje możliwość wyszukiwania produktow na podstawie różnych kryteriów (po tytule, po autorze...)
Konta użytkowników
-
Mają możliwość ustawiania swoich preferencji
-
Mają możliwość sprawdzania ,które produkty pasują do ich preferencji
-
Ich preferencje mogą być wykorzystywanie to rekomendowania im produktów
System notyfikacji
-
Użytkownik jest informowany kiedy produkt, którym był zainteresowany pojawia się w asortymencie.
-
Użytkownik jest informowany kiedy jego płatność zostanie zakończona.
Interoperacyjność
-
System korzysta z zewnętrznego systemu płatności.
-
System korzysta z zewnętrznego systemu zarządzania asortymentem i wysyłką
Co do reszty wymagań to należy dokonać odpowiednich założeń. Istotne jest wizualizowanie powyższych wymagań.
Na ten moment mam następujących kandydatów na serwisy:
UserAccounts - rejestracja, uwierzytelnianie, ustawianie preferencji, ...
Search Engine - wyszukiwanie, filtrowanie wyników na podstawie słów kluczowych ,filtrowanie wyników wyszukiwania na podstawie preferencji użytkownika
ProductCatalog - dokonywanie zakupu, katalog produktów. Źródłem katalogu są zasoby magazynu jak i ?produkty oferowane przez zaprzyjaznione sklepy?
NotificationSystem - serwis obsługuje wszelkiego rodzaju notyfikacje
Serwisy Wymagane
PaymentSystem
Warehouse Management & Distribution
1.Co myślicie o moich decyzjach związanych z wyodrębnianiem serwisów (mogę bardziej uzasadnić jeżeli ktoś sobie życzy)?
2.Musze przedstawić te serwisy i ich relacje (consumer/provider) na diagramie używając SoaML. Nie mogę znaleźć żadnego przykładu ,w którym wszystkie serwisy i ich relacje byłyby przedstawione na jednym diagramie. Czy to znaczy ,że dla każdego serwisu ,który opisuje powinienem zrobić osobny diagram żeby przedstawić jego konsumentów?