Wprowadzenie do informatyki gospodarczej wykˇad III

Transkrypt

Wprowadzenie do informatyki gospodarczej wykˇad III
Katedra Informatyki Gospodarczej
Szkoła Główna Handlowa
dr in . Andrzej Sobczak
W prezentacji wykorzystano fragmenty materiałów:
E. Richter-Was, Teoretyczne Podstawy Informatyki
J. Florek, Systemy Komputerowe
P. Gawrysik, Projektowanie systemów informatycznych
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
1
Agenda zaj
Jak TO działa – czyli par słów o budowie
komputerów
Od danych przez informacje do wiedzy
Jak zmusi TO do pracy – czyli par słów o
pisaniu programów komputerowych
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
2
Informacje analogowe vs dyskretne
Informacje analogowe
U(t)
Umax
Umax
R=(0,Umax)
0
niesko czony
zbiór mo liwych
warto ci
0
MASZYNA
ANALOGOWA
WE
WY
Informacje dyskretne (cyfrowe)
U(t)
Umax
Umaxq
R=(∆U, 2∆
∆U,
3∆
∆U, 4∆
∆U)
0
0
#
∼
a/c
#
MASZYNA
CYFROWA
#
#
c/a
∼
moc zbioru R
wynosi 4
∆U - kwant
Wprowadzenie do informatyki...warto ci
Dr Andrzej Sobczak
3
1
Konwersja liczb (przypomnienie)
10100B = 1*24 + 0*23 + 1*22 + 0*21 + 0*20 =
= 1*16 + 0*8 + 1*4 + 0*2 + 0*1 = 20D
2.
20:2 = 10
10:2 = 5
5:2 = 2
2:2 = 1
1:2 = 0
czyli
reszta=0
reszta=0
reszta=1
reszta=0
reszta=1
kierunek odczytu wyniku
1.
20D = 10100B
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
4
Przetwarzanie informacji
Wszelkie procesy zamierzonego
przetwarzania informacji przebiegaj według
ustalonego algorytmu:
DANE
POCZ TKOWE
PROCES
PRZETWARZANIA
WYNIKI
KO COWE
ALGORYTM
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
5
Przetwarzanie informacji
Przetwarzanie informacji mo na zrealizowa
dwoma sposobami:
Specjalizowany układ cyfrowy:
DANE
SPECJALIZOWANY
UKŁAD CYFROWY
WYNIKI
System mikroprocesorowy (maszyna cyfrowa):
PROGRAM
DANE
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
MASZYNA
CYFROWA
WYNIKI
6
2
Architektura maszyny cyfrowej
MASZYNA CYFROWA
WYNIKI
PROGRAM
PAMI
ZEWN TRZNA
PAMI
OPERACYJNA
BLOK
PRZETWARZANIA
UKŁADY WE
URZ DZENIA
ZEWN TRZNE
UKŁADY WY
URZ DZENIA
ZEWN TRZNE
DANE
STEROWANIE
PROCESOR
JEDNOSTKA CENTRALNA
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
7
System mikroprocesorowy
SZYNA ADRESOWA
SZYNA DANYCH
SZYNA STEROWANIA
ZEGAR
PROCESOR
Centralna jednostka
przetwarzaj ca (CPU)
Uniwersalny układ
przetwarzaj cy informacj i
steruj cy prac pozostałych
elementów systemu
PAMI C
DANE
PROGRAMY
WYNIKI
UKŁADY
WE/WY
...
URZ.
ZEWN.
MONITORY, DRUKARKI,
CZYTNIKI,...
U YTKOWNIK
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
8
Architektura klasycznego komputera
Architektura klasycznego komputera (wg von
Neumana) opiera si na zało eniach:
program wykonywany przez procesor wraz z danymi jest
umieszczony w pami ci;
kolejno wykonywanych rozkazów zale y od ich
umieszczenia w programie (w kolejnych komórkach
pami ci), a zmiana tej zasady mo e by wykonana tylko:
przez program (rozkaz skoku);
przez system operacyjny np. wykrycie bł du;
przez operatora np. reset;
procesor odczytuje kolejne rozkazy z pami ci wysyłaj c
odpowiednie adresy
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
9
3
Pami
w komputerze
Pami jako układ przeznaczony do
przechowywania informacji binarnej mo na
scharakteryzowa nast puj cymi parametrami:
pojemno
szybko
koszt
pobór mocy
Pojemno pami ci okre la ilo informacji jak
mo na w niej przechowa wyra on w bitach,
bajtach.
Pami dzielona jest na fragmenty (w zale no ci od
typu pami ci) umo liwiaj ce adresowanie.
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
10
Parametry pami ci
Szybko pami ci okre la jak cz sto procesor (lub inne
urz dzenie) mo e z niej korzysta .
czas dost pu - czas od momentu dania informacji z pami ci do
momentu, w którym ta informacja uka e si na wyj ciu pami ci
czas cyklu - najkrótszy czas jaki musi upłyn pomi dzy dwoma
daniami dost pu do pami ci
szybko transmisji - okre la ile bajtów (bitów) mo na przesła
pomi dzy pami ci a innym urz dzeniem w jednostce czasu.
Koszt pami ci okre la cen jak nale y ponie za uzyskanie
wysokich parametrów pami ci.
Pobór mocy okre la jakie jest zapotrzebowanie energetyczne
na realizacj funkcji pami ci zwłaszcza przy d eniu do
wzrostu jej pojemno ci.
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
11
Typy pami ci
Pami ci RAM (Random Access Memory)
nazywamy pami półprzewodnikow o dost pie
swobodnym przeznaczon do zapisu i odczytu. RAM
jest pami ci ulotn , co oznacza, e po wył czeniu
zasilania dane s tracone.
Pami ci ROM (Read Only Memory) nazywamy
pami półprzewodnikow o dost pie swobodnym
przeznaczon tylko do odczytu uprzednio
zapisanych danych. Oznacza to, e nie mo na do
niej zapisywa danych w trakcie normalnej pracy w
systemie. ROM jest pami ci nieulotn , co oznacza,
e po wył czeniu zasilania dane nie s tracone.
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
12
4
Dysk twardy
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
13
CD-ROM
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
14
Dyskietka
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
15
5
Układy wej cia-wyj cia
Układem we/wy nazywamy układ elektroniczny po rednicz cy
w wymianie informacji pomi dzy mikroprocesorem i pami ci
systemu z jednej strony a urz dzeniem peryferyjnym
(zewn trznym urz dzeniem współpracuj cym) z drugiej.
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
16
Dane, informacja, wiedza
Dane: surowe fakty o organizacji i jej
działaniach (np. transakcjach)
Informacje: celowo zorganizowane dane
posiadaj ce okre lone znaczenie
Wiedza: informacje nadaj ca si do
wykorzystania.
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
17
Dane, informacja, wiedza
Dane
Fakty, statystyki, opinie, przewidywania zabrane z
ró nych wewn trznych i zewn trznych ródeł
Informacja
Wiedza
Dane interpretowane w kontek cie okre lonego celu
Wiedza jest to zdolno do wykonywania okre lonych
zada w oparciu o posiadan informacj
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
18
6
Dane, informacja, wiedza
Zło ono
semantyczna
M dro
Wiedza
Informacje
Dane
Sygnały
Zaj te zasoby
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
19
System informacyjny
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
20
System informacyjny
System informacyjny:
zestawienie komponentów (ludzi, danych,
procesów, sposobów komunikacji, infrastruktury),
które współdziałaj ze sob w celu zapewnienia
codziennego funkcjonowania organizacji jak
równie wspieraj cy rozwi zywanie problemów
i podejmowanie decyzji przez kadr kierownicz .
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
21
7
System informatyczny
System informacyjny niekoniecznie musi
zawiera elementy infrastruktury IT
System informacyjny mo e si składa z
wi cej ni jednego systemu informatycznego.
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
22
Pocz tki programowania
Programowanie pierwszych komputerów polegało na r cznym
ustawianiu setek przeł czników we wła ciwych poło eniach st d nazwa programowanie zewn trzne. W taki sam sposób
nale ało te wprowadzi dane do programu. Wkrótce ilo
danych wzrosła tak bardzo, e trzeba było poszuka nowej
metody. Tak metod było wprowadzenie czytników
dziurkowanych ta m i kart.
W ród twórców pierwszych elektronicznych maszyn licz cych
na szczególn uwag zasługuje w gierski matematyk John
von Neumann. Przedstawił on koncepcj maszyny
wewn trznie programowalnej, przechowuj cej w pami ci nie
tylko dane, ale i program obliczeniowy.
Okazało si , e potrzebny jest system porozumiewania si z
maszyn
i kodowania wykonywanych przez ni programów. I tak doszło
do powstania pierwszych j zyków programowania.
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
23
Pocz tki programowania c.d.
Z biegiem czasu zmieniała si technologia produkcji komputerów.
Lampy elektronowe zostały zast pione mniejszymi i ta szymi
tranzystorami, które wkrótce zostały wyparte przez układy scalone.
Skonstruowanie w 1971 r. mikroprocesora przyczyniło si do
powstania komputerów opartych na układach scalonych o bardzo
du ej skali integracji.
Równolegle do rozwoju sprz tu rozwijały si techniki
programowania. Motorem post pu była idea całkowitego
wykorzystania mocy procesora i mo liwo ci systemu operacyjnego.
Programowanie pierwszych komputerów odbywało si bezpo rednio
w kodzie binarnym, który mo na przedstawi jako ci g zer i jedynek.
Ka dy typ komputera operował własnym kodem wewn trznym,
dlatego te j zyk pierwszej generacji został nazwany j zykiem
maszynowym - zorientowanym na konkretn maszyn .
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
24
8
Pocz tki programowania c.d.
Poniewa operowanie kodem binarnym było do uci liwe,
przypisano poszczególnym ci gom zerojedynkowym łatwiejsze do
zrozumienia skróty mnemotechniczne:
JMP (skrót od słowa jump), MOV (skrót od słowa move),...
Tak powstał j zyk symboliczny, zwany asemblerem. Jest on uwa any
za j zyk programowania niskiego poziomu, gdy jest bezpo rednio
zwi zany z kodami j zyka maszynowego.
Programowanie w j zyku asemblera było bardzo trudne, wymagało
znajomo ci rejestrów procesora i struktury pami ci. Poza tym było
zwi zane z konkretnym typem procesora. Wkrótce powstały j zyki
wysokiego poziomu. Jednym z pierwszych j zyków tego typu jest
FORTRAN, który powstał w 1957 roku i do dzi jest podstawowym
j zykiem programowania oblicze naukowych. Zalet jest du a
szybko programów oraz rozbudowane biblioteki procedur
numerycznych.
Z czasem rozszerzono mo liwo ci j zyków wysokiego poziomu, takich
jak BASIC, PASCAL i C++ o narz dzia wizualne (Rapid Application
Development), które znacznie ułatwiaj konstruowanie programu.
Wprowadzenie do informatyki...
25
Dr Andrzej Sobczak
Kompilator vs. interpreter
Kompilator - program słu cy do tłumaczenia programu
ródłowego (napisanego w j zyku programowania) na kod
binarny.
Kompilator działa w całym programie i wynikiem jego działania
jest w pełni skompilowany program.
Do j zyków kompilowanych zaliczamy: Pascal, C, czy C++.
Innym sposobem tłumaczenia kodu ródłowego programu jest
jego interpretacja przez program zwany interpreterem.
Interpreter odczytuje kolejne fragmenty tekstu programu i na
bie co przesyła odpowiednie polecenia procesorowi. Dzi ki
temu mo na łatwiej znale bł dy w programie, ale program
działa wolniej. Przykładami j zyków interpretowanych s Basic,
Logo, Perl, PHP i JavaScript.
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
26
Programowanie strukturalne vs. obiektowe
Tradycyjne podej cie do programowania, zwane
programowaniem proceduralnym charakteryzuje si
rozdzieleniem danych od operuj cych na nich
funkcji.
Odizolowanie danych od kodu mo e prowadzi do
przypadkowych zmian danych przez funkcje, które
nie s z nimi logicznie zwi zane. Ponadto
modyfikacja programu napisanego w ten sposób jest
trudna do realizacji, gdy nawet niewielka zmiana
działania programu mo e spowodowa konieczno
wprowadzenia poprawek w wielu miejscach.
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
27
9
Programowanie strukturalne vs. obiektowe
Takich wad pozbawione jest programowanie obiektowe,
b d ce po programowaniu strukturalnym kolejnym etapem w
rozwoju j zyków programowania.
Programowanie obiektowe jest stylem programowania, w
którym do tworzenia programów u ywa si obiektów.
obiekt = dane + metody
Styl taki powstał w wyniku postrzegania rzeczywisto ci jako
zbioru obiektów ró nego typu, które mog wykonywa
okre lone czynno ci, potrafi si ze sob komunikowa i na
siebie wzajemnie oddziaływa .
Obiekty w programie cz sto odzwierciedlaj cechy i
umiej tno ci swoich odpowiedników ze wiata rzeczywistego.
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
28
Struktury danych i algorytmy (powtórzenie)
Struktury danych to narz dzia do reprezentowania informacji która
ma by przetworzona przez program komputerowy, a algorytmy to
przepisy wykonania czynno ci niezb dnych do jej przetworzenia.
Wybór algorytmu do rozwi zania konkretnego problemu
programistycznego pomaga w ustaleniu, jak struktur danych
nale ałoby u y , ale i odwrotnie – wybrana struktura danych ma
ogromny wpływ na szczegóły realizacji i efektywno ci algorytmu.
System mikroprocesorowy (maszyna cyfrowa):
PROGRAM
DANE
MASZYNA
CYFROWA
WYNIKI
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
29
Uwarunkowania budowy
systemów informatycznych
Systemy informatyczne s najcz ciej obiektami o
du ym stopniu zło ono ci.
Podej cie systemowe w projektowaniu
– zaczerpni te z teorii organizacji i zarz dzania
Strukturalizacja systemu, czyli dekompozycja
systemu na mniejsze składniki i przedstawienie go
w postaci struktury hierarchicznie powi zanych
komponentów.
Gł boko dekompozycji powinna zosta dobrana przez
projektanta – zale y m.in. od: rodzaju stosowanych technik
IT, podwykonawców, wielko ci systemu itd.
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
30
10
Budowa systemów informatycznych
Przy rozwi zywaniu prostych zada podej cie „ad
hoc” mo e dawa szybsze rezultaty, Jednak gdy
mamy do czynienia z bardziej zło onymi problemami
efektywniejsze jest podej cie systematyczne.
Najcz ciej budowa systemu jest procesem.
Jest to sko czony ci g kroków (czynno ci) powi zanych ze
sob relacjami, które maj doprowadzi do osi gni cia
zamierzonego celu w postaci systemu spełniaj cego
przyj te wymagania.
W procesie projektowania mo liwe s p tle.
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
31
Jak tworzy si system informatyczny (skrót)
Definicja problemu i specyfikacja:
Analiza wymaga u ytkownika (cz sto nieprecyzyjne i trudne do
zapisania), budowa prostego prototypu lub modelu systemu.
Analiza i projektowanie:
Wyró niamy najwa niejsze komponenty, specyfikujemy
wymagania zwi zane z wydajno ci systemu, szczegółowe
specyfikacje niektórych komponentów.
Implementacja:
Ka dy implementowany komponent poddajemy serii testów.
Instalacja i testowanie przez u ytkowników
Konserwacja
W wielu wypadkach to ponad 50% nakładów poniesionych na
napisanie systemu.
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
32
Definicja problemu i specyfikacja
U wiadomienie i wyartykułowanie potrzeby
posiadania systemu;
Okre lenie ogólnych celów systemu;
Przygotowanie zapytania ofertowego;
Wybranie wykonawcy;
Przygotowanie kontraktu (z opisem zada ,
punktów kontrolnych, nakładami i
harmonogramem);
Negocjowanie i podpisanie kontraktu.
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
33
11
Analiza
Analiza procesów biznesowych;
Identyfikacja procesów zwi zanych z planowanym
systemem;
Okre lenie grup obecnych i przyszłych u ytkowników;
Analiza obecnych i przyszłych potrzeb u ytkowników;
Opracowanie funkcjonalnego modelu systemu i
ogólna specyfikacja systemu.
W ramach analizy procesów biznesowych
niezb dna mo e okaza si poprawa jako ci
samych procesów, jeszcze przed wdro eniem systemu.
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
34
Analityk systemowy
Analityk rozpoznaje problem wewn trz organizacji,
który mo e by rozwi zany za pomoc rodków
technicznych lub organizacyjnych
Jest pomostem mi dzy tymi, którzy potrzebuj
komputeryzacji, a tymi, którzy znaj technologi
Musi zna zarówno technologi , zasady zarz dzania
oraz posiada podstawow wiedz dotycz c
charakteru analizowanych procesów biznesowych
Analityk zgł bia problemy i mo liwo ci organizacji
Przekształca wiedz o potrzebach informacyjnych na
propozycj struktury technicznej potrzebnej do ich
zaspokojenia
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
35
Projektowanie
Opracowanie modeli fizycznych;
Specyfikacja aplikacji (tak e interfejsu
u ytkownika);
Wybór architektury systemu;
Wybór oprogramowania aplikacyjnego
(pakiety, oprogramowanie własne) i
systemowego oraz sprz tu,
Okre lenie zasad alokacji oprogramowania i
aplikacji w zasobach sprz towych.
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
36
12
Implementacja
Wykonanie prototypu
sprawdzenie zało e projektu
sprawdzenie reakcji u ytkowników
Wykonanie systemu
Przygotowanie dokumentacji technicznej
u ytkownika
procedury wdro enia systemu
procedury testowania systemu
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
37
Instalacja, testowanie
Instalacja systemu;
Testowanie poprawno ci funkcjonalnej;
Testowanie parametrów wydajno ciowych;
Optymalizacja, poprawki usuwanie bł dów;
"strojenie" systemu (wydajno
);
Pełna migracja danych (je li potrzebna)
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
38
Jak tworzy si system informatyczny
(podej cie procesowe)
Metody m odelowania i
technologie baz danych
Zbiór przypadków
organizacji
Przypadek
organizacji
B
Analiza zbioru
przypadków organizacji i
m odelowanie system u
inform acyjnego
Model fizyczny
Przypadek
organizacji
A
Model logiczny
Model (procesowy)
system u
inform acyjnego
W dra anie system u
inform atycznego i dostosowanie
organizacji do m odelu
procesowego
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
Projekt system u
inform atycznego
(standaryzacja)
Definicje struktur danych (baz
danych), kodowanie aplikacji
39
13
Metody programistyczne
Projektowanie zst puj ce (top-down
design):
Rozpoczynamy od zdefiniowania problemu który
chcemy rozwi za
Problem dzielimy na główne kroki – podproblemy.
Podproblemy s dzielone na drobniejsze kroki ta
długo, a
rozwi zania drobnych podproblemów staj si proste nazywamy to stopniowym uszczegółowianiem.
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
40
Metody programistyczne c.d.
W idealnej sytuacji podproblemy mog by rozwi zywane
niezale nie, a ich rozwi zania ł czone w celu otrzymania
rozwi zania całego problemu.
W odniesieniu do tworzenia kodu oznacza to, e poszczególne kroki
powinny by kodowane niezale nie, przy czym dane wyj ciowe
jednego kroku s u ywane jako dane wej ciowe do innego.
Zalety:
systematyczna metoda rozwi zywania problemów
rozwi zanie jest modularne, poszczególne kroki mog by uruchamiane,
modyfikowane i ulepszane niezale nie od pozostałych
rozwi zanie składa si z klarownych fragmentów które mo na
niezale nie zrozumie
dobrze zaprojektowane fragmenty mog by ponownie zastosowane w
innych zadaniach
mo na rozpozna wspólne problemy na samym pocz tku i unikn
wielokrotnego ich rozwi zywania
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
41
Metody programistyczne c.d.
Projektowanie wst puj ce (bottom-up design):
Polega na wyj ciu od samego j zyka i wzbogacaniu go
nowymi operacjami, dopóki nie b dzie mo na wyrazi
rozwi zania problemu w rozszerzonym j zyku.
Zazwyczaj programy projektuje si ł cz c
metod wst puj ca i zst puj ca:
Zaczynamy od podzielenia problemu na pod-zadania.
Przekonujemy si , e byłby przydatny okre lony pakiet funkcji.
Rozstrzygamy, jakie funkcje wejd w skład pakietu i rozszerz
j zyk.
Powtarzamy to iteracyjnie, dziel c problemy na prostsze i
wzbogacaj tym samym j zyk.... dopóki rozwi zania wszystkich
problemów składowych nie dadz si zapisa bezpo rednio w
rozszerzonym j zyku.
Wprowadzenie do informatyki...
Dr Andrzej Sobczak
42
14