• Nie Znaleziono Wyników

Modelowanie i analiza systemów informatycznych

N/A
N/A
Protected

Academic year: 2021

Share "Modelowanie i analiza systemów informatycznych"

Copied!
29
0
0

Pełen tekst

(1)

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

1

Modelowanie i analiza

systemów informatycznych

1. Warstwowa budowa systemów informatycznych

2. Model procesu wytwarzania

oprogramowania - model cyklu życia oprogramowania

3. Wstęp do modelowania systemów informatycznych

4. Środowisko tworzenia oprogramowania

5. Podstawy UML

(2)

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

2

Modelowanie i analiza

systemów informatycznych

1. Warstwowa budowa systemów

informatycznych

(3)

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

3

Warstwy aplikacji (Java EE)*

(4)

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

4

Pięciowarstwowy model logicznego rozdzielania zadań (wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe.)

Warstwa klienta

Klienci aplikacji, aplety, aplikacje i inne elementy z graficznym interfejsem użytkownika

Warstwa prezentacji

Strony JSP, serwlety i inne elementy interfejsu użytkownika

Warstwa biznesowa

Komponenty EJB i inne obiekty biznesowe

Warstwa integracji

JMS, JDBC, konektory i połączenia z systemami zewnetrznymi

Warstwa zasobów

Bazy danych, systemy zewnętrzne i pozostałe zasoby

Interakcja z użytkownikiem, urządzenia i prezentacja

interfejsu użytkownika

Logowanie, zarządzanie sesją, tworzenie zawartości,

formatowania i dostarczanie

Logika biznesowa, transakcje, dane i usługi

Adaptery zasobów, systemy zewnętrzne, mechanizmy zasobów, przepływ sterowania

Zasoby, dane i usługi zewnętrzne

(5)

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

5

Modelowanie i analiza

systemów informatycznych

1. Warstwowa budowa systemów informatycznych

2. Model procesu wytwarzania

oprogramowania - model cyklu życia

oprogramowania

(6)

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

6

Model procesu wytwarzania oprogramowania - czyli model cyklu życia oprogramowania*

Tworzenie technicznego systemu informacyjnego jest powiązane z:

budową oprogramowania: co i jak wykonać?

zarządzaniem procesem tworzenia oprogramowania: kiedy wykonać?

wdrażaniem oprogramowania

Modelowanie struktury i dynamiki systemu

Implementacja systemu,

struktury i dynamiki generowanie kodu

Perspektywa koncepcji co należy wykonać?

Perspektywa specyfikacji

jak należy używać?

Perspektywa implementacji

jak należy wykonać?

model problemu np.

przedsiębiorstwa

• wymagania

• analiza

(model konceptualny )

testy modelu

projektowanie

(model projektowy:

architektura sprzętu i oprogramowania;

dostęp użytkownika;

przechowywanie danych)

testy projektu

programowanie

(specyfikacja programu : deklaracje, definicje;

dodatkowe struktury danych:

struktury „pojemnikowe”, pliki, bazy danych)

• testy oprogramowania

• wdrażanie

• testy wdrażania

(7)

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

7

Zunifikowany iteracyjno- przyrostowy

proces tworzenia oprogramowania – kiedy?

Zarządzanie zmianami

Przepływ działań

Wymagania

Analiza, Projektowanie Programowanie

Wdrożenie Testowanie

Iteracje (czas )

1-a 2-a - - - - - n-1 n

Etap1:

Początek

Etap2:

Opracowanie

Budowa Zakończenie

Modelowanie przedsiębiorstwa

Środowisko Zarządzanie przedsięwzięciem

(8)

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

8

Przepływy czynności (wg G.Booch, J. Rumbaugh, I.Jacobson)

• Modelowanie przedsiębiorstwa – opis dynamiki i struktury przedsiębiorstwa

• Wymagania – zapisanie wymagań metodą opartą na przypadkach użycia

• Analiza i projektowanie – zapisanie różnych perspektyw architektonicznych

• Implementacja – tworzenie oprogramowania, testowanie modułów, scalanie systemu

• Testowanie – opisanie danych testowych, procedur i metryk poprawności

• Wdrożenie – ustalenie konfiguracji gotowego systemu

• Zarządzanie konfiguracjami – panowanie nad zmianami i dbanie o spójność elementów systemu

• Zarządzanie przedsięwzięciem - opisane różnych strategii prowadzenia procesu iteracyjnego

• Określenie środowiska – opisanie struktury niezbędnej do opracowania systemu

(9)

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

9

Modelowanie i analiza

systemów informatycznych

1. Warstwowa budowa systemów informatycznych

2. Model procesu wytwarzania

oprogramowania - model cyklu życia oprogramowania

3. Wstęp do modelowania systemów

informatycznych

(10)

10

Co i jak wykonać?

Perspektywy projektowania obiektowych systemów informacyjnych

(wg Alan Shalloway, James R.Trott)

koncepcji (model analizy)

( co obiekty powinny powinny robić?)

specyfikacji interfejsów (model projektowy)

( jak używać obiektów?)

implementacji (implementacja)

( w jaki sposób zaimplementować interfejs ?)

tworzenia i zarządzania obiektami

(implementacja)

(obiekt A w roli fabryki obiektów tworzy obiekt B i/lub zarządza obiektem B )

używania obiektów (implementacja)

( obiekt A tylko używa obiektu B – nie może go jednocześnie tworzyć; )

(11)

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

11

Perspektywy rozumienia obiektów – identyfikacji obiektów

• Perspektywa koncepcji (modelu konceptualnego) - obiekt jest zbiorem różnego rodzaju

odpowiedzialności

• Perspektywa specyfikacji (modelu projektowego) - obiekt jest zbiorem metod (zachowań), które

mogą być wywoływane przez metody tego obiektu lub innych obiektów

• Perspektywa implementacji (kodu źródłowego)

- obiekt składa się z kodu metod i danych oraz

interakcji między nimi

(12)

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

12

Perspektywy skalowania systemu – tworzenia, zarządzania i używania

obiektów

• Perspektywa tworzenia i zarządzania obiektami

Zmiany w implementacji obiektów dotyczą

obiektów czyli fabryk obiektów (tworzących te obiekty i zarządzających tworzeniem tych

obiektów)

• Używanie obiektów

Zmiana implementacji obiektów nie zmienia implementacji obiektów, które używają

zmieniane obiekty

(13)

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

13

Metoda identyfikacji obiektów i klas

Analiza wspólności

Analiza zmienności

Perspektywa koncepcji

Perspektywa specyfikacji

Perspektywa implementacji

Klasa abstrakcyjna +Metody()

Klasa konkretna1

+Metody()

Klasa konkretna2

+Metody()

Związek między perspektywą specyfikacji,

koncepcji i implementacji

(14)

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

14

Zależności między analizą, projektowaniem i implementacją

Związek między perspektywą specyfikacji i koncepcji

• Perspektywa specyfikacji określa interfejs

potrzebny do obsługi wszystkich przypadków

danego problemu (czyli część wspólną określoną przez perspektywę koncepcji)

Związek pomiędzy perspektywą specyfikacji i implementacji

• Biorąc pod uwagę określoną specyfikację ustala się, w jaki sposób należy zaimplementować

poszczególne przypadki (czyli część zmienną)

(15)

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

15

Podsumowanie zasad obiektowości

• Obiekty definiuje się przez pryzmat ich odpowiedzialności

• Hermetyzacja oznacza dowolny rodzaj ukrywania: danych, implementacji, klas (za pomocą klas abstrakcyjnych, lub interfejsu), projektu, instancji

• Wykorzystanie analizy wspólności i zmienności w celu

utworzenia abstrakcji reprezentujących zmienność danych i zachowań

• Wykorzystanie dziedziczenia jako sposobu przedstawienia zmienności

• Dążenie do niskiego stopnia powiązań

• Dążenie do dużego stopnia spójności

• Oddzielenie kodu używającego obiektów od kodu, który je tworzy

• Zasada pojedynczej reguły - implementacja tylko raz pewnej operacji określonej jedną regułą

• Stosowanie nazw jasno opisujących przeznaczenie obiektów

(16)

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

16

Modelowanie i analiza

systemów informatycznych

1. Warstwowa budowa systemów informatycznych

2. Model procesu wytwarzania

oprogramowania - model cyklu życia oprogramowania

3. Wstęp do modelowania systemów informatycznych

4. Środowisko tworzenia oprogramowania

(17)

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

17

Ludzie

Proces

Projekt

Produkt

Narzędzia Uczestnicy

Wzorzec

Rezultat

Automatyzacja

(18)

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

18

W tworzenia oprogramowania istotne są następujące elementy:

Ludzie: eksperci dziedziny biznesowej, analitycy,

projektanci, testujący, użytkownicy oprogramowania, konserwatorzy oprogramowania

Projekt: główny organizacyjny element, określający tworzenie oprogramowania: projekt tworzy produkt Produkt: elementy tworzone podczas cyklu życia

oprogramowania: modele, kod źródłowy, kod wynikowy, dokumentacja

Proces: wszystkie czynności podejmowane w celu przekształcenia wymagań użytkownika w

oprogramowanie; jest to wzorzec realizacji projektu

Narzędzia: oprogramowanie umożliwiające

zautomatyzowanie procesu.

(19)

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

19

Produkt

1. Podsystemy

2. Diagramy: klas, interakcji, kooperacji, stanów 3. Wymagania, testy, produkcja , instalacja

4. System złożony z artefaktów reprezentujących narzędzia programistyczne, kompilatory, komputery, programistów, architektów, testujących, handlowców, administratorów 5. Artefakty to różne rodzaje informacji tworzonej,

produkowanej, zmienianej lub używanych podczas cyklu

życia oprogramowania. Są to artefakty inżynierskie związane z tworzeniem oprogramowania (wymagania, analiza,

projekt, programowanie, testy) i artefakty procesu zarządzania projektem

(20)

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

20

Projekt

Podstawowe pojęcia związane z projektem:

1. Wykonalność projektu 2. Zarządzanie ryzykiem

3. Struktura grup projektowych

4. Szeregowanie zadań projektowych 5. Zrozumiałość projektu

6. Sensowność działań w projekcie Cechy projektu:

1. Sekwencja zmian w projekcie 2. Seria iteracji

3. Wzorzec organizacyjny

(21)

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

21

Proces

1. Proces tworzenia oprogramowania jest definicją kompletnego zbioru aktywności potrzebnych do

odwzorowania wymagań użytkownika w zbiór artefaktów, które reprezentują oprogramowanie

2. Czynniki organizacyjne 3. Czynniki dziedzinowe 4. Czynniki cyklu życia 5. Czynniki techniczne

(22)

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

22

Narzędzia

• Automatyzacja procesu

• Standaryzacja procesu i produktu

• Wspomaganie całego cyklu życia oprogramowania:

wymagania, wizualne modelowanie i

projektowanie, programowanie, testowanie

(23)

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

23

Ludzie

Eksperci

Kierownik projektu

Użytkownicy

Testujący

Projektanci Analitycy

System

(24)

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

24

Modele

Model

use-case Model analizy

Model projektu

Model

wdrożenia Model implementacji

Model testów

Modele:

• Abstrakcja systemu

• Przedstawianie różnych perspektyw systemu

• Związki między modelami

(25)

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

25

Modelowanie i analiza

systemów informatycznych

1. Warstwowa budowa systemów informatycznych

2. Model procesu wytwarzania

oprogramowania - model cyklu życia oprogramowania

3. Wstęp do modelowania systemów informatycznych

4. Środowisko tworzenia oprogramowania

5. Podstawy UML

(26)

26

Diagramy UML modelowania strukturalnego

1.1. Diagramy pakietów 1.2. Diagramy klas

1.3. Diagramy obiektów 1.4. Diagramy mieszane

1.5. Diagramy komponentów 1.6. Diagramy wdrożenia

UML – język wspierający zunifikowany iteracyjno - przyrostowy proces

tworzenia oprogramowania

(27)

27

Diagramy UML modelowania zachowania

2.1. Diagramy przypadków użycia 2.2. Diagramy aktywności

2.3. Diagramy stanów

2.4. Diagramy komunikacji 2.5. Diagramy sekwencji 2.6. Diagramy czasu

2.7. Diagramy interakcji

(28)

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

28

Rola diagramów UML 2

 praca zespołowa

 pokonanie złożoności projektu

 formalne, precyzyjne prezentowanie projektu

 tworzenie wzorca projektu

 możliwość testowania oprogramowania we

wczesnym stadium jego tworzenia

(29)

Model

use-case Model analizy

Model projektu

Model

wdrożenia Model implementacji

Model testów

przypadków użycia rozmieszczenia

2.1, 2.2 1.1, 1.2, 1.3, 2.5, 2.7, 2.3 – wyższy poziom

abstrakcji niż w modelu projektowym

1.1, 1.2, 1.3, 2.5, 2.7, 2.3-więcej szczegółów niż w modelu analizy (niższy poziom abstrakcji)

1.6, 1.5 1.2, 1.5 1.2, 2.2

Numery diagramów UML:

slajdy 26 i 27

Cytaty

Powiązane dokumenty

• Equip the students with advanced conceptual and practical knowledge in (Object-Role Modeling) for data modeling and specification, also process modeling techniques and

Prepare a fact type - instance table showing the entity types, label types and roles.. Populate each table with a set of significant instances of label

ABC Ltd Mowing Green Tow ABC Ltd Mowing Waterford ABC Ltd Pool maint Green Tow ABC Ltd Pool maint Waterford Better Staff Mowing Green Tow Better Staff Mowing Light Plaza Better

It specifies how often an instance of an entity type, or combination of entity types, may be involved in a role, or combination of roles. E i..j

• If a nested fact type plays a role in a non-nested fact type than it should be represented in the relation schema by all attributes.. ‘contributing’ to this nested fact

All binary fact types involving an entity type E, which have ‘touching’ roles with that entity type covered by single UC, contribute to the relation which has.. Attributes –

UML does not provide notation for subset constraints between single roles or parts of associations..

• Model Driven Architecture (MDA) is an approach that separates a system's desired functions from its implementation on a specific technology platform, resulting in an