02 Inzynieria systemowid 3909 ppt

background image

Inżynieria oprogramowania

część 2 - Inżynieria systemów komputerowych

Mgr inż. Piotr Greniewski

Europejska Wyższa Szkoła Informatyczno-

Ekonomiczna

background image

Slajd nr 2

©Ian Sommerville 2000 - Inżynieria oprogramowania

Inżynieria systemów komputerowych

Zawartość:

Pojawiające się właściwości systemu

Systemy i ich środowiska

Modelowanie systemu

Proces inżynierii systemów

Zaopatrywanie w system

background image

Slajd nr 3

©Ian Sommerville 2000 - Inżynieria oprogramowania

Inżynieria systemów komputerowych

System jest celową kolekcją powiązanych ze
sobą komponentów, które współpracują aby
osiągnąć pewien cel.

Systemy są hierarchiczne czyli mogą zawierać
inne systemy.

System jest czymś więcej niż sumą swoich
części.

Pojawiające się właściwości nie mogą być
przypisane żadnej części systemu

background image

Slajd nr 4

©Ian Sommerville 2000 - Inżynieria oprogramowania

Inżynieria systemów komputerowych

Przykłady pojawiających się właściwości
systemu:

Całkowity ciężar systemu

Niezawodność systemu

Użyteczność systemu

background image

Slajd nr 5

©Ian Sommerville 2000 - Inżynieria oprogramowania

Pojawiające się właściwości systemu

Pojawiające się właściwości systemu są
atrybutami systemu jako całości. Ich wartość
można zmierzyć dopiero wtedy gdy
podsystemy są zintegrowane w kompletny
system

Dwa typy pojawiających się właściwości:

Funkcjonalne – rower ma cechy środka transportu

Niefunkcjonalne – niezawodność, efektywność,
bezpieczeństwo i zabezpieczenia

Przykład niezawodności systemu

background image

Slajd nr 6

©Ian Sommerville 2000 - Inżynieria oprogramowania

Pojawiające się właściwości systemu

Istnieją trzy czynniki wpływające na
niezawodność całego systemu;

Niezawodność sprzętu

Niezawodność oprogramowania

Niezawodność operatora

background image

Slajd nr 7

©Ian Sommerville 2000 - Inżynieria oprogramowania

Systemy i ich środowiska

Systemy nie są niezależnymi bytami ale
istnieją w pewnym środowisku

Środowisko ma wpływ na funkcjonalność i
efektywność systemu

background image

Slajd nr 8

©Ian Sommerville 2000 - Inżynieria oprogramowania

Systemy i ich środowiska

Inżynierowie systemu muszą znać otoczenie
systemu

System może powodować zmiany w swoim
środowisku. Poprawne działanie systemu możemy
ocenić jedynie na podstawie jego wpływu na
środowisko

Na funkcjonowanie systemu mogą mieć wpływ
trudne do przewidzenia zmiany zachodzące w
środowisku

background image

Slajd nr 9

©Ian Sommerville 2000 - Inżynieria oprogramowania

Systemy i ich środowiska

Systemy działają nie tylko w środowisku
fizycznym ale i organizacyjnym. Czynniki
mające wpływ na na projekt systemu:

Zmiany procesu – czy system wymaga zmian w
procesach pracy wykonywanej w środowisku?

Zmiana zawodu – czy system zmienia styl pracy
pracowników?

Zmiany organizacyjne – czy system zmienia
strukturę władzy w organizacji?

background image

Slajd nr 10

©Ian Sommerville 2000 - Inżynieria oprogramowania

Modelowanie systemu

W trakcie czynności spisywania wymagań i
projektowania musi powstać model systemu jako zbioru
komponentów i związku między nimi

Jest on przedstawiany graficznie jako model architektury
systemu, dający przegląd organizacji systemu

Architektura systemu jest prezentowana jako diagram
blokowy obrazujący najważniejsze systemy i połączenia
między nimi

Każdy podsystem jest rysowany w postaci prostokąta

Związki pomiędzy podsystemami są zaznaczone za
pomocą strzałek łączących prostokąty

Związki obejmują: przepływ danych, relacje ‘używa’,
‘jest używany’ lub inne rodzaje zależności

background image

Slajd nr 11

©Ian Sommerville 2000 - Inżynieria oprogramowania

Modelowanie systemu

Detektory ruchu

Detektory

Drzwiowe

Centralka alarmu

Syrena

Syntezator mowy

Automat

dzwoniący

background image

Slajd nr 12

©Ian Sommerville 2000 - Inżynieria oprogramowania

Modelowanie systemu

Detektory ruchu

Wykrywają ruch w monitorowanych pomieszczeniach

Detektory drzwiowe

Wykrywają otwarcie drzwi

Centralka alarmu

Steruje działaniem systemu

Syrena

Nadaje sygnały dźwiękowe po wykryciu intruza

Syntezator mowy

Nadaje słowny komunikat o położeniu intruza

Automat dzwoniący

Wykonuje zewnętrzne połączenia do firmy

ochroniarskiej i policji

background image

Data comms.

system

Transponder

system

Radar

system

Aircraft
comms.

Telephone

system

Flight plan

database

Backup

position

processor

Position

processor

Comms.

processor

Backup comms.

processor

Aircraft

simulation

system

Weather map

system

Accounting

system

Controller

info. system

Controller

consoles

Activity logging

system

ATC system
architecture

©Ian Sommerville 2000 - Inżynieria oprogramowania

background image

Slajd nr 14

©Ian Sommerville 2000 - Inżynieria oprogramowania

Modelowanie systemu

Architektura systemu powinna być
zaprojektowana w kategoriach funkcjonalnych
podsystemów bez względu na to czy są to
systemy programowe czy sprzętowe

Komponenty funkcjonalne można zaklasyfikować:

Komponenty detektorowe – zbierają informację (np..
Detektor papieru w drukarce )

Komponenty uruchamiające (efektorowe) – powodujące
zmiany w środowisku systemu (np.. Mechanizm
wciągania papieru w drukarce)

Komponenty obliczeniowe - pobierają dane wejściowe,
wykonują na nich pewne obliczenia i wytwarzają wyniki
(np.. Procesor zmiennoprzecinkowy)

background image

Slajd nr 15

©Ian Sommerville 2000 - Inżynieria oprogramowania

Modelowanie systemu

Komponenty funkcjonalne cd.

Komponenty komunikacyjne – umożliwiają
komunikację innym komponentom systemu (np..siec
ethernet w budynku)

Komponenty koordynujące - koordynują operacje
innych komponentów (np.. Proces szeregujący w
systemie czasu rzeczywistego)

Komponenty interfejsu – przetwarzają dane w
reprezentacji używanej jedne komponenty na
reprezentacje używane przez inne komponenty (np..
Przetwornik analogowo - cyfrowy)

background image

Slajd nr 16

©Ian Sommerville 2000 - Inżynieria oprogramowania

Proces inżynierii systemów

Istotne różnice między procesem inżynierii
systemów a procesem tworzenia
oprogramowania:

Interdyscyplinarna zawiłość – wiele różnych dziedzin
inżynierii wchodzi w skład inżynierii systemów. Możliwe
są więc nieporozumienia

Ograniczona możliwość modyfikacji w trakcie tworzenia
systemu – gdy pewne decyzje techniczne są już podjęte
to wszelkie zmiany są bardzo kosztowne.

Fazy procesu inżynierii systemów są
przedstawione na następnym slajdzie

Proces ten miał duży wpływ na model kaskadowy,
który omówimy później

background image

Slajd nr 17

©Ian Sommerville 2000 - Inżynieria oprogramowania

Proces inżynierii systemów

System

integration

Sub-system

development

System

design

Requirements

definition

System

installation

System

evolution

System

decommissioning

background image

Slajd nr 18

©Ian Sommerville 2000 - Inżynieria oprogramowania

Proces inżynierii systemów

Omówimy teraz system ATC - kontroli lotów w
którym używa się radarów i innych
detektorów do wyznaczania pozycji
samolotów.

następny slajd pokazuje różne dyscypliny,
których specjaliści muszą być obecni w
zespole inżynierii systemów

background image

Slajd nr 19

©Ian Sommerville 2000 - Inżynieria oprogramowania

Inter- dyscyplinarna zawiłość

ATC systems

engineering

Electronic

engineering

Electrical

engineering

User interface

design

Mechanical

engineering

Architecture

Structural

engineering

Software

engineering

Civil

engineering

background image

Slajd nr 20

©Ian Sommerville 2000 - Inżynieria oprogramowania

Proces inżynierii systemów

W tego typu systemach oprogramowanie musi
być bardzo elastyczne i dlatego wiele
niespodziewanych problemów zostawia się
inżynierom oprogramowania (np.. Położenie
radaru powoduje powstanie podwójnego
obrazu. Przeniesienie radaru jest niemożliwe,
trzeba modyfikować oprogramowanie.

Inżynierowie oprogramowania często stają
przed zadaniem zwiększenia możliwości
oprogramowania bez zwiększania kosztu
sprzętu co czasami prowadzi do porażki nie z
winy oprogramowania.

background image

Slajd nr 21

©Ian Sommerville 2000 - Inżynieria oprogramowania

Proces inżynierii systemów

Definiowanie wymagań systemowych ma na celu
odkrycie wymagań stawianych systemowi jako
całości. Proces ten tak jak w przypadku wymagań
dla oprogramowania obejmuje konsultacje z
klientami i użytkownikami. Najczęściej
uwzględniamy trzy rodzaje wymagań:

Abstrakcyjne wymagania funkcjonalne – podstawowe
funkcje są definiowane na wysokim poziomie abstrakcji

Właściwości systemu – są to wymagania niefunkcjonalne
takie jak: dostępność, efektywność i bezpieczeństwo

Cechy których system ma nie mieć – np.. Nie podawać
kontrolerowi zbyt dużej ilości informacji

background image

Slajd nr 22

©Ian Sommerville 2000 - Inżynieria oprogramowania

Proces inżynierii systemów

Projektowanie systemu ma na celu określenie jak

funkcjonalność systemu będzie realizowana przez

jego poszczególne komponenty. Czynnościami tego

procesu są:

Podział wymagań

Identyfikacja podsystemów

Przypisanie wymagań podsystemom

Określenie funkcjonalności podsystemów

Zdefiniowanie interfejsów podsystemów

Strzałki dwukierunkowe oznaczają, że pomiędzy

każdą parą istnieje wiele iteracji i sprzężeń

zwreotnych

Dla niemal wszystkich systemów istnieje wiele

projektów realizacji

background image

Slajd nr 23

©Ian Sommerville 2000 - Inżynieria oprogramowania

Proces projektowania systemu

Partition

requirements

Identify

sub-systems

Assign requirements

to sub-systems

Specify sub-system

functionality

Define sub-system

interfaces

background image

Slajd nr 24

©Ian Sommerville 2000 - Inżynieria oprogramowania

Tworzenie podsystemów

W czasie tworzenia implementuje się
podsystemy zidentyfikowane w czasie
projektowania

Jeśli jest to podsystem oprogramowania to
rozpoczyna się proces tworzenia
oprogramowania o czym później.

Nie wszystkie podsystemy budujemy od zera.
Czasami używamy gotowe

Zwykle różne podsystemy tworzymy
równolegle

background image

Slajd nr 25

©Ian Sommerville 2000 - Inżynieria oprogramowania

Integracja systemu

Integracja systemu polega na scaleniu
zbudowanych podsystemów w jeden kompletny
system. Najlepiej robić to przyrostowo tzn. w
jednym kroku integrowany jest jeden system

Powody stosowania metody przyrostowej:

Zwykle nie da się ustalić jednej daty uruchomienia
podsystemów

Integracja przyrostowa zmniejsza koszty wykrywania
błędów.

Awarie podsystemów, które są konsekwencjami
niewłaściwych założeń o innych podsystemach,
zwykle są wykrywane na etapie integracji systemu

background image

Slajd nr 26

©Ian Sommerville 2000 - Inżynieria oprogramowania

Instalacja systemu

W trakcie instalacji system jest umieszczany w
środowisku w którym ma działać. Powstaje
przy tym wiele problemów:

Środowisko w którym ma działać system jest inne
niż zakładali twórcy. Występuje najczęściej w chwili
instalacji podsystemów oprogramowania

Potencjalni użytkownicy mogą być wrogami jego
wprowadzenia

Nowy system ma koegzystować z istniejącym
systemem do czasu stwierdzenia jego poprawności

Mogą wystąpić fizyczne problemy z instalacją

background image

Slajd nr 27

©Ian Sommerville 2000 - Inżynieria oprogramowania

Działanie systemu

Po instalacji system zaczyna działać

Wymagane są szkolenia personelu

Pojawiają się przypadki nie uwzględnione w
wymaganiach

System działa zgodnie z wymaganiami ale
funkcjonalnie nie spełnia prawdziwych
potrzeb przedsiębiorstwa

Mogą wystąpić problemy z przeniesieniem
danych pomiędzy starym a nowym systemem

background image

Slajd nr 28

©Ian Sommerville 2000 - Inżynieria oprogramowania

Ewolucja systemu

Czas życia systemów bywa bardzo długi

W trakcie życia system podlega ewolucji aby
usunąć błędy w założeniach

Firma może się zreorganizować

Kupowany jest nowy sprzęt komputerowy

Ewolucja systemu jest bardzo kosztowna

background image

Slajd nr 29

©Ian Sommerville 2000 - Inżynieria oprogramowania

Likwidacja systemu

Po okresie funkcjonowania system należy
zlikwidować ...

background image

Slajd nr 30

©Ian Sommerville 2000 - Inżynieria oprogramowania

Zaopatrywanie w system

Proces dostaw podzespołów, bywa
skomplikowany i długotrwały – przetargi
publiczne itp..

background image

Slajd nr 31

©Ian Sommerville 2000 - Inżynieria oprogramowania

Proces zaopatrywania w system

Choose

supplier

Issue request

for bids

Choose

system

Adapt

requirements

Survey market for

existing systems

Let contract for

development

Negotiate

contract

Select

tender

Issue request

to tender

Off-the-shelf

system available

Bespoke system

required

background image

Slajd nr 32

©Ian Sommerville 2000 - Inżynieria oprogramowania

Model wykonawca/podwykonawca

Sub-contractor 2

Sub-contractor 1

Sub-contractor 3

Principal

contractor

System

customer

background image

Slajd nr 33

©Ian Sommerville 2000 - Inżynieria oprogramowania

Główne tezy

Inżynieria systemów jest złożonym i trudnym procesem,
który wymaga wkładu pracy specjalistów wielu innych
dziedzin inżynierii.

Pojawiające się właściwości są charakterystykami systemu
jako całości, a nie jego części składowych. Są to m.in.
efektywność, niezawodność, użyteczność, bezpieczeństwo i
zabezpieczenia. Powodzenie lub porażka systemu często
zależy od tych pojawiających się właściwości.

Architekturę systemu prezentuje się na diagramach
blokowych, przedstawiających główne podsystemy i związki
między nimi.

Typami komponentów funkcjonalnych systemu są
komponenty detektorowe, komponenty efektorowe,
komponenty obliczeniowe, komponenty koordynujące,
komponenty komunikacyjne i komponenty interfejsu.

background image

Slajd nr 34

©Ian Sommerville 2000 - Inżynieria oprogramowania

Główne tezy

Proces inżynierii systemów obejmuje specyfikację,
projektowanie, tworzenie, integrację i testowanie.
Integracja systemów (łączenie podsystemów od
różnych dostawców tak, aby współpracowały) jest
zwykle najtrudniejsza i najważniejsza.

Proces zaopatrywania w system obejmuje specyfikację
systemu, ogłoszenie przetargu, wybór dostawcy i
zawarcie kontraktu na dostawę systemu. Niektóre
części systemu są kupowane jako komercyjne
komponenty z półki

.


Document Outline


Wyszukiwarka

Podobne podstrony:
2(45) Inżynieria systemów komputerowychid 21043 ppt
02 czujniki, systematyka, zastosowania
02 MAKROEKONOMIA(2)id 3669 ppt
02 Notajca UMLid 3691 ppt
02 Zanieczyszczenie środowiskaid 3460 ppt
4 Systemy informatyczne 2 ppt
C 02 Wniosek o system weekendowy
02 33 o systemie oceny zgodności
C 02 Wniosek o system skroconego tygodnia pracy
01 Systemy Operacyjne ppt
generatory rc 02, Inzynieria Materiałowa, I semestr, Elektrotechnika, elektrotechnika, Układy Elektr
DIAGNOZA SYSTEMU RODZINNEGO 2 ppt
02 Powstanie filozofiiid 3435 ppt
06 Proces inzynierii wymaganid 6526 ppt
1(45) Przedmiot i cele inżynierii oprogramowaniaid 10176 ppt
02 geneza RBDid 3906 ppt

więcej podobnych podstron