Lekcje 7

Page 1

5/27/2014

Z metod projektowania systemów informatycznych obecnie najczęściej używanych w praktyce zdecydowanie wciąż wyróżnia się podejście strukturalne, chociaż za nowocześniejsze uważa się obecnie inne metodyki, na przykład projektowanie obiektowe

Wprowadzenie do systemów informacyjnych Projektowanie strukturalne

© UEK w Krakowie

Ryszard Tadeusiewicz

1

Główna idea metod strukturalnych opiera się na zasadzie:

Make simple things simple and complex things possible

W projektowaniu strukturalnym zakłada się naprzemienne etapy: analiz teoretycznych, prac projektowych oraz eksperymentów praktycznych

Z doskonaleniem systemu informatycznego nie wolno przesadzać, bo albo poniesie się za duże koszty, albo coś się „przedobrzy”

Dlatego warto pamiętać hasło, jakie stosują najlepsze amerykańskie firmy komputerowe: > GOOD ENOUGH IS PERFECT < Można to przetłumaczyć: ZNAKOMITE, BO ZADOWALAJĄCE

1


5/27/2014

Podejście strukturalne dostarcza modelu pojęciowego, który jest potem używany podczas całego cyklu życia systemu

Model relacji biznesu i technologii informacyjnych w ujęciu ogólnym Planowanie, implementacja i zarządzanie usługami

Zarządzanie usługami

Perspektywa biznesu

Wsparcie usług

Zarządzanie Infrastrukturą

T E C H N O L O G I A

B IZ N E S

Dostarczanie usług Zarządzanie bezpieczeństwem

Zarządzanie aplikacją

Co jest wizją ?

Gdzie jesteśmy teraz ?

Gdzie chcemy być?

Jak dostaniemy się tam gdzie chcemy ?

Jak sprawdzimy, że nasz problem został rozwiązany?

Jak zatrzymamy tempo sytuacji?

Hardware

Planowanie wprowadzenia w życie Zarządzania usługami Klienci

B

T

Wsparcie Usług

I

Zarządzanie reacjami w biznesie

Z

Współpraca, Edukacja i Komunikacja

Service Desk

Projektowanie i planowanie

Rozmiesz - czenie / Instalacja

Wsparcie techniczne

Obsługa

Środowiska

E C

Zarządzanie Konfiguracją

N

Zarządzanie relacjami z Dostawcą

E

Zarządzanie Incydentem

Zarządzanie Infrastrukturą ICT

Usługi

S

Inspekcja, Planowanie i Rozwój

Perspektywy Biznesowe

H Sieci

Zarządzanie Zmianą

N O L

Zarządzanie problemem Procesy Zarządzanie Wersją

O

Zarządzanie dostępnością

G Zarządzanie Wydajnością

Utrzymanie

Planowanie

Bazy Danych

Użytkownicy

I A

Zarządzanie poziomem usług

Kontrola

Zarządzanie finansami dla usług IT

Oprogramowanie Zarządzanie ciągłością usług IT Dostarczanie Usług

Ocena

Implementacja

Bardziej dokładny schemat zależności biznes – modele technologia

To przejście od modelu ogólnego do modelu szczegółowego to właśnie kwintesencja metodyki strukturalnej

Zarządzanie bezpieczeństwem

Wymagania

Optymalizacja

Działanie

Rozmieszczanie / Instalacja

Budowa

Projektowanie

Zarządzanie Aplikacją

Strukturalne podejście do projektowania systemów wiąże się z projektowaniem ukierunkowanym na cel

Prześledźmy ewolucję metod projektowania:

Projektowanie strukturalne

2


5/27/2014

Istotą metod projektowania strukturalnego jest upraszczanie złożonego systemu poprzez systematyczne rozkładanie go na prostsze elementy składowe.

Dzielenie złożonych systemów na elementy składowe wraz z koncentracją uwagi stopniowo na coraz drobniejszych szczegółach bywa używane w wielu dziedzinach

W ten sposób drogowskazem dla projektanta jest struktura rozważanego problemu.

<?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="kursancihtml.xsl"?> <Kursanci xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="kursanci.xsd">

Przykład kodu programu w którym programista starał się uwidocznić aspekty strukturalne

<kursant>

<danePersonalne> <nazwisko>Sosna</nazwisko> <imie>Anna</imie> <nrTel>602-314-053</nrTel> <ulica>Radosna 123</ulica> <kodPocztowy>31-455</kodPocztowy> <miejscowosc>Kraków</miejscowosc> </danePersonalne> <kurs> <jezyk>Włoski</jezyk> <rodzaj> <typ>Egzaminacyjny</typ> <poziom>Średniozaawansowany</poziom> <kod>AES</kod> <cenaZaSemestr>639.00</cenaZaSemestr> </rodzaj> <dataRozpoczecia>2005-09-01</dataRozpoczecia> <dataZakonczenia>2006-06-01</dataZakonczenia> <semestr> <nrSemestru>1</nrSemestru> <oplacony>Tak</oplacony> <zaliczony>Nie</zaliczony> <grupa> <nazwa>AES01</nazwa> <lektorzy> <lektorPolski>

W przypadku systemów informacyjnych strukturę można próbować odwzorować odpowiednim zapisem programu, ale jest to zwykle mało czytelne

<nazwisko>Mandryk</nazwisko> <imie>Wojciech</imie> </lektorPolski> <nativeSpeaker> <nazwisko>Wolf</nazwisko> <imie>Phil</imie> <narodowosc>Brytyjska</narodowosc> </nativeSpeaker> </lektorzy> </grupa> </semestr> </kurs> </kursant>

3


5/27/2014

Można próbować posłużyć się rysunkiem w którym elementy programu (albo struktury danych) przedstawione są graficznie, ale przy złożoności typowo spotykanej w systemach informacyjnych schemat jest nadal mało czytelny.

Dlatego przy projektowaniu strukturalnym stosuje się narzędzia zapewniające maksymalną prostotę reprezentowania najbardziej nawet złożonych systemów.

Na początku projektowania trzeba wyodrębnić elementy składowe systemu i określić ich role

4


5/27/2014

Złożoność współczesnych systemów informacyjnych sprawia, że projektanci muszą sobie radzić z ich projektowaniem stosując pewne zabiegi upraszczające. Do najskuteczniejszych z nich należą agregacja i dekompozycja

Metoda dekompozycji

Metoda agregacji

Kolejność postępowania jest taka: Najpierw przedstawia się najbardziej ogólny schemat, w którym cały system traktowany jest jako jeden proces. Ten ogólny schemat nazywa się diagramem kontekstowym.

Przykładowy diagram kontekstowy oznaczany skrótem CD

Przykład jednego kroku procesu dekompozycji

Przykładowy diagram przepływu danych

5


5/27/2014

Przykład strukturalnego opisu fragmentu systemu informacyjnego

Inny przykład stratyfikacji procesów

Projektując określony proces trzeba brać pod uwagę także to, co się znajduje także poza jego granicami

Tworzenie modelu biznesowego Kompetencje

Zarządzanie infrastrukturą

Tworzenie i rozwój produktu

Zarządzanie relacjami z klientem

Sprzedaż produktu

2. 1 Strategia dla portfolio produktów 2.2 Strategia sprzedaży 2.3 Planowanie produktu

3.1 Strategia relacji z klientem 3.2 Strategia relacji z dystrybutorami 3.3 Planowanie kampanii marketingowych

4.1 Planowanie sprzedaży

1.3 Zarządzanie procesami 1.4 Procedury audytu 1.5 Raportowanie

2.4 Zarządzanie produktami 2.5 Zarządzanie kanałem sprzedaży 2.6 Zbieranie opinii o produkcie

3.4 Zarządzanie kontaktami 3.5 Zarządzanie kanałami sprzedaży

1.6 Przychody/należności 1.7 Kadry 1.8 Audyt 1.9 Szkolenia 1.10 Zarządzanie IT

2.7 Wdrożenie i utrzymanie produktu 2.8 Rozwój produktu 2.9 Szkolenia producenta

3.6 Profilowanie i segmentacja klientów 3.7 Kampanie marketingowe 3.8 Obsługa korespondencji 3.9 Obsługa call center

Poziomy operacyjne

Planowanie 1.1 Strategia Firmy 1.2 Startegia inwestycyjna

Zarządzanie i kontrola

Wykonanie

4.2 Obliczanie prowizji dla dystrybutorów

3.6 Profilowanie i segmentacja klientów 3.7 Kampanie marketingowe 3.8 Obsługa korespondencji 3.9 Obsługa call center

4.3 Kontrola z wykonywania planów sprzedaży

4.4 Sprzedaż bezpośrednia 4.5 Zarządzanie dystrybutorami 4.6 Logistyka

3.6

3.7

3.8

klient

Dekompozycja procesów na czynności (operacje)

Back-office

komponenty

PROFIL_SEGMENTACJA

3.6.3 Wykonanie analizy

<<komponent>> TELEFON_DO_KLIENTA

3.8.1 Operator dzwoni

<<podsystem>> SPRZEDAŻ_PRODUKTU

TAK NIE

operator <<podsystem>> ZARZĄDZANIE_RELACJAMI_Z_KLIENTEM

<<komponent>>

TAK NIE

4.4.4 Klient dokonuje płatności

3.6.3 Wykonanie analizy

3.8.1 Operator dzwoni do klienta

3.8.12 Operator Kończy call

3.8.7 Operator Informuje klienta

3.8.12 Operator Kończy call

Przebieg procesu

Diagram pokazujący model komponentowy (statyczny) i interakcje (dynamiczne) zachodzące pomiędzy komponentami w czasie

<<komponent>> INFORMUJ

<<komponent>> WYŚLIJ_FAKTURĘ 3.8.12 Operator kończy call

INFORMUJ

3.8.7 Operator Informuje klienta

PROFIL_SEGMENTACJA

TELEFON_DO_K

INFORMUJ

WYŚLIIJ_FAKTURĘ

BD_ZARZĄDZANIE_KO NTAKTAMI

informacja do bazy danych zarządzanie kontaktami

dynamika systemu komponentów

informacja do bazy danych zarządzanie kontaktami

prośba o dodatkowe informacje

faktura wysłana

6


5/27/2014

7


5/27/2014

Przykłady

Jeszcze jeden przykład

Wybrane elementy struktury rozrysowane dokładniej

Inny blok schematu

8


5/27/2014

Jeszcze inny moduł

Po diagramie przepływu danych kolejnym kluczowym składnikiem metodologii strukturalnej są związki encji i relacji

Reprezentacja atrybutu, encji oraz związku na diagramie encji i relacji – oraz ich związki

Przykładowy diagram ERD (Entity-Relationship Diagram)

„Anatomia” diagramu encji i relacji

Związek klient-zamówienie w ujęciu relacyjnym

Liczebność związku (stopień uczestnictwa) Strona jeden relacji

Encja

Nazwa encji Strona wiele relacji

Nazwa związku

Zamówienia

Klienci IdKlienta KP Nazwisko Imię PESEL NIP .....

(1,1)

(0,n)

składa

(K) Reguła usuwania Obowiązkowy typ uczestnictwa

Związek

Opcjonalny typ uczestnictwa

IdZamówienia KP IdKlienta KO DataZamówienia IdPracownika ..... Atrybuty charakteryzujące encję: KP – klucz podstawowy KO – klucz obcy

9


5/27/2014

Encje i związki pomiędzy encjami dla bazy danych wypożyczalni samochodów

W finalnym projekcie te encje i związki są dodatkowo wyposażane w liczne szczegółowe atrybuty

Dobrze zdefiniowany model encji i zależności daje podstawę do zdefiniowania systemu na przykład w programie MS Access

Transformacja modelu logicznego w fizyczny

A tak to wygląda po realizacji

10


5/27/2014

Przykład relacji 1-1

Znak kreski pionowej na linii połączenia oznacza obligatoryjność związku

Przykład relacji 1-n

Realizacja relacji typu n-m

Po stronie 1 związku relacja ma pojedyncze zakończenie (-), po stronie n związku relacja jest zakończona strzałką ().

Znak kółka na linii połączenia (o) oznacza opcjonalność związku.

Kwestie krotności relacji

Przykład relacji n-m

Sklep

Każdy pracownik może należeć do kilku zespołów projektowych jednocześnie,

Klient

Zatrudnia dowolną liczbę

Kupuje dowolną liczbę Jest kupiony przez jednego

Wyrób

Jest sprzedany przez jednego

Jest zatrudniony tylko w jednym Sprzedawca

Może sprzedać dowolna liczbę Pochodzi z jednego

a każdy projekt jest realizowany przez wyznaczoną grupę pracowników

Przechowuje dowolną liczbę Magazyn Dostarcza do wielu Dostawca Otrzymuje od wielu

11


5/27/2014

Ten sam schemat nieco rozbudowany Klient KodKlienta <pi> NO <M> NazwaK TXT55 <M> AdresK TXT45 <M> StatusK TXT15 <M> KodKlienta <pi> Wyrób

Sprzedawca

Sklep

KodSprzed <pi> TXT25 <M> NazwaS TXT45 <M> DataZat D <M> Stanowisko TXT15 <M>

NrSklep <pi> I <M> AdresS TXT35 <M> KierownikS TXT45

KodSprzed <pi>

NrSklep <pi>

NrSeria <pi> TXT25 <M> NazwaW TXT35 <M> TypW TXT15 <M> CenaW MN <M> DataSprzed D <M> DatGwar D <M> NrSeria <pi>

Magazyn NrMag <pi> I <M> AdresM TXT35 <M> KierownikM TXT45 NrMag <pi>

Dostawa NrDostawy <pi> TXT25 <M> DataDost D <M> Wartosc MN <M> OpisDs MBT NrDostawy <pi>

Dostawca KodDostawcy <pi> TXT25 <M> Nazwa TXT35 <M> Adres TXT25 <M> OpisD MBT KodDostawcy <pi>

Przykład diagramu strukturalnego obsługa procedury odwołań przy zamówieniach publicznych

12


5/27/2014

Strukturalne projektowanie systemu informatycznego jest procesem konstruowania modelu biznesowych danych, a także modelu reguł działalności stosowanych w określonej organizacji, który w przeciwieństwie do projektowania fizycznego jest niezależny od implementacji.

Przechodzenie od ogólnego modelu do modeli szczegółowych na przykładzie systemu zarządzania transportem lotniczym Rząd RP

Firmy lotnicze

Obiekt przestrzenny

Model logiczny to model struktury zgodny z modelem danych, a nie z ich fizyczną reprezentacją.

Atrybuty encji Rząd RP

Porty lotnicze System informacji przestrzennej

Centrum przetwarzania informacji

Centrum rejestracji zagrożeń

Atrybuty encji Firmy lotnicze Rezerwacja Wymiana z innymi towarzystwami

Minister lub urzędnik

Jednostka antyterrorystyczna

MSW

Sprzedaż biletów

Biuro informacyjne Położenie

Opieka medyczna

Minister/ urzędnik Rząd RP

Hotele współpracujące

MON Jednostka komandosów

Hierarchia Firmy pomocnicze

Nazwa

Sprzątanie

Organizacja

Ochrona

Komenda straży pożarnej

Firmy lotnicze

Zbiór samolotów

Funkcja

Jednostka straży (nazwa, c, m, z)

Atrybuty encji Obiekt przestrzenny int*

Atrybuty encji Wieża lotniska

Planowy

char*

Oficer dyżurny

Nieplanowy

Nr id.

Lot

Wyraża zgodę

Plan lotów

Cofa zgodę Wieża lotniska

Samolot Bazowe

Plan dyżurów

Inne instrukcje

Helikopter Obiekt przestrzenny Starty

Lotnisko

Typ

Nr id. lotniska Awionetka

Lądowania

Inne

Trasa lotu (międzylądowania)

(c, m, st)

Zgoda na lądowanie

Wyraża zgodę

Cofa zgodę

(c, m, ląd)

13


5/27/2014

Atrybuty encji Port lotniczy Nr id.

Plany lotów

Nazwa

Lista towarzystw

Personel lotniczy Port lotniczy Pracownicy

Inny personel

Lista samolotów bazujących

Procedury awaryjne Straż pożarna

Medyczne Ochrony

Analiza i projektowanie systemów informacyjnych Projektowanie strukturalne

© UEK w Krakowie

Ryszard Tadeusiewicz

81

14


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.