Algorytmizacja . proces budowy konkretnego algorytmu.
Algorytm . zbiór określonych reguł postępowania, które stosowane w ustalonym porządku prowadzą do
rozwiązania określonego zadania. Niewątpliwą cechą algorytmu jest możliwość wykorzystania tegoż samego
tworu myślowego do rozwiązywania podobnych, względnie bliskoznacznych zadań. Wychodząc z tego
założenia możemy stwierdzić, że jest to sformalizowany sposób prezentacji lub zapisu działań, jakie należy
podjąć dla osiągnięcia określonego celu.
Z pojęciem algorytmu związane są ściśle trzy podstawowe zasady:
1. Liczba operacji w każdym algorytmie musi być wielkością skończoną (policzalną)
Skończona liczba operacji jaką musi charakteryzować się każdy algorytm związana jest z tym, że w trakcie
realizacji zadania przy jego użyciu musi nastąpić pomyślne sfinalizowanie po wykonaniu odpowiedniej
liczby czynności. Liczba ta będzie różna w zależności od stopnia złożoności algorytmizowanego procesu.
2. Każda operacja musi być zrozumiała i wykonalna dla realizatora algorytmu.
Zrozumiałość i wykonywalność operacji wiąże się z wykonawcą zadania przedstawionego w formie
algorytmu. Najważniejsze jest rozpoznanie potencjalnych możliwości wszystkich przyszłych wykonawców,
gdyż każdy z nich posiada ograniczony, skończony zasób elementarnych operacji, które są dla niego
zrozumiałe i wykonywalne.
Zasada ta dotyczy głównie zespołów projektowych, wykonujących określone zadania, określone projekty.
3. Istotna jest w algorytmie kolejność wykonywania poszczególnych operacji.
Kolejność wykonywanych operacji w algorytmie wynika z jego istoty. Podyktowane jest to logiką
odwzorowywanego procesu.
Tworzone algorytmy mogą mieć różny stopień złożoności. Dużym udogodnieniem w budowie algorytmów a
zwłaszcza w programowaniu, jest możliwość wykorzystania gotowych, istniejących rozwiązań, stworzonych
wcześniej i zeskładowanych w .bazach wiedzy.. W takim przypadku budowanie algorytmu sprowadza się do
pobrania odpowiednich .kostek. i podaniu reguł ich wzajemnego połączenia.
Ze względu na konstrukcję algorytmy można podzielić na cztery rodzaje:
1. Algorytmy proste
To takie algorytmy, w których poszczególne instrukcje realizowane są w sposób sekwencyjny (jedna po
drugiej) i każda z tychże instrukcji wykonywana jest dokładnie jeden raz.
Przykładem takiego algorytmu jest dodawanie dwóch liczb naturalnych:
1. Pobrać liczbę A
2. Pobrać liczbę B
3. Dodać do liczby A liczbę B
4. Zachować wynik w liczbie C
5. Wyprowadzić wartość liczby C na urządzenie wejścia/wyjścia
2. Algorytmy złożone (rozgałęzione)
To algorytmy dopuszczające alternatywność rozwiązań danego zagadnienia w zależności od spełnienia
określonego warunku.
Przykładem takiego algorytmu jest podzielenie dwóch liczb naturalnych:
1. Pobierz liczbę A (dzielną)
2. Pobierz liczbę B (dzielnik)
3. Sprawdź czy liczba B nie jest zerem
4. Jeżeli liczba B jest zerem, wyprowadzamy na urządzenie wejścia/wyjścia błąd
5. Jeżeli liczba B nie jest zerem, dzielimy liczbę A przez liczbę B
6. Zachować wynik w liczbie C
7. Wyprowadzić wartość liczby C na urządzenie wejścia/wyjścia
3. Algorytmy cykliczne/rekurencyjne
To takie algorytmy, w których może następować wielokrotna realizacja tych samych sekwencji operacji.
Przykładem takiego algorytmu jest wielokrotne dodawanie kolejnych dwóch liczb ze zbioru liczb
naturalnych o parzystej liczbie elementów:
1. Ustawienie indeksu (modyfikatora) na 1
2. Ustawienie wartości kolejnego indeksu na 2
3. Pobranie pierwszej liczby z n-elementowego wektora A
4. Pobranie liczby .m. z liczby n-elementowego
5, Dodanie liczby .m. do liczby .n.
3
6. Wydrukowanie wyniku
7. Sprawdzenie czy wartość indeksu .m. nie jest równa ilości elementów ze zbioru .n.. Jeżeli tak .
kończymy obliczenia. Jeżeli zaś nie, to dodajemy do indeksów .m. i .n. wartość równą dwa i wracamy do
punktu 3
4. Algorytmy mieszane
To takie algorytmy, w których może wystąpić alternatywność dróg rozwiązań danego zadania jak i
wielokrotne powtórzenie danej sekwencji.
Przykładem takiego algorytmu może być wielokrotne dzielenie dwóch liczb ze zbioru n o nieparzystej ilości
liczb. Zadanie domowe: napisać ten algorytm!
Na każdą operację składa się określona liczba operacji. Natomiast każda operacja jest złożona z dwóch części:
operacyjnej i argumentowej. W części argumentowej są podane parametry, na których wykonywana jest dana
operacja. W części operacyjnej dla każdej operacji są zdefiniowane czynności jakie należy wykonać podczas jej
realizacji. Przy budowie algorytmu należy więc pamiętać o tym, aby każdy z elementów był zdefiniowany, tzn.
posiadał odpowiednią wartość.
W algorytmach stosowanych w informatyce wyróżnia się trzy podstawowe rodzaje operacji:
1. Operacje arytmetyczne
Są to wszystkie operacje, w których są wykonane wszelkie działania arytmetyczne. W ich skład wchodzą
nie tylko cztery podstawowe działania, ale również wszystkie funkcje matematyczne zdefiniowane w danym
języku.
2. Operacje logiczne (algebra Boole.a)
Są to wszystkie operacje obejmujące działania z zakresu logiki, takie jak np. porównywanie dwóch
wartości, stwierdzenie stanu prawda/fałsz. Inne operacje znane z algebry boole.owskiej
3. Operacje sterujące
Są to wszystkie operacje umożliwiające poruszanie się po różnych częściach algorytmu, przeznaczonych do
realizacji pewnych funkcji. Głównymi operacjami tego typu są wszelkiego rodzaju nakazy skoków.
Procesy tworzenia algorytmów w zasadzie nie są znormalizowane. Realizuje się je na podstawie metod
wybranych przez ich twórcę samodzielnie w odniesieniu do przez niego zdefiniowanych potrzeb. Pomimo tego
sklasyfikowano osiem etapów przez które bezwzględnie przechodzi każdy algorytm:
1. Określenie pożądanego stanu wyjściowego (np. chcemy rozwiązać równanie kwadratowe)
Polega na ścisłym skonkretyzowaniu potrzeb użytkownika danego algorytmu oraz na określeniu możliwości
i uwarunkowań realizacyjnych.
Jeżeli chcemy coś osiągnąć, to trzeba się najpierw zapytać, czy w ramach środków które mamy jesteśmy w
stanie to osiągnąć?
2. Określenie oczekiwanego stanu wejściowego
Służy analizie określonych danych oraz środków za pomocą których można realizować określone
przedsięwzięcie. Jest to czynność wtórna w porównaniu z określeniem stany wyjściowego.
Trzeba mierzyć siły i zamiary.
3. Ustalenie dziedziny dopuszczalnych operacji (np. zgodnie z wiedzą z danego zakresu wiemy że zbiór
liczb rzeczywistych nie dzielimy przez zero)
Polega na określeniu wszystkich czynności, które jest w stanie wykonać realizator algorytmu.
Jeżeli przyjmiemy, że będzie to system komputerowy, to trzeba zdefiniować czy posiadany przez nas sprzęt
i oprogramowanie są wystarczające do realizacji wszystkich operacji.
Chcąc zagrać z mistrzem świata w szachy nie wystarczy zwykły pecet
4. Określenie celów pośrednich niezbędnych do realizacji celu głównego
Za cele pośrednie należy uznać zbiór pożądanych sytuacji, które stanowią warunek konieczny osiągnięcia
celu głównego algorytmu.
5. Budowa procedur realizujących cele pośrednie.
Polega na tworzeniu ciągłych instrukcji zapisanych w języku zrozumiałym dla ich realizatora, po których to
realizator będzie mógł spokojnie się poruszać tak, aby w efekcie osiągnąć zamierzony cel.
6. Powiązanie tych procedur w jedną całość.
Polega na dopasowaniu odpowiednich parametrów tak, aby osiągnąć zamierzony efekt synergiczny.
7. Prezentacja algorytmu za pomocą wybranego narzędzia prezentacji algorytmów.
Polega na pokazaniu algorytmu w postaci wynikowej. Najczęściej realizuje się to w postaci schematu
blokowego.
8. Weryfikacja algorytmu (czy aby cele założone na początku nam się ziściły?)
Ma odpowiedzieć na pytanie czy punkt pierwszy postępowania został osiągnięty. Jeżeli został osiągnięty
pracę uznajemy za zakończoną, jeżeli nie to wracamy do punktu 1.
4
Wykład z dnia 28.10.2001
Do budowy dowolnego algorytmu używa się najczęściej czterech podstawowych elementów:
1. Strzałka – wskazuje powiązanie pomiędzy poszczególnymi elementami schematu (widoczne na rysunku 1)
2. Operand (prostokąt graficznie rzecz biorąc), do którego są wpisywane wszystkie operacje za wyjątkiem
instrukcji wyboru. Do operandu może wchodzić jedna i wychodzić również jedna strzałka. Jeżeli ze
schematu wynika, że do danej instrukcji powinno wejść więcej strzałek należy dokonać rozbicia operandu
do danej instrukcji tak, aby powstał ciąg taki jak na rysunku 1
3. Predykat . symbolem jego jest romb, do którego wpisywane są wyłącznie instrukcje wyboru. Przedstawia
to rysunek 2
4. Etykieta . symbolem jest owal, służący do oznaczania początku lub końca sekwencji schematu. Dla
etykiety charakterystyczne jest to, że dochodzi, względnie odchodzi od niej tylko jedna strzałka. Istnieją
również etykiety wewnątrz schematu, które stosuje się wówczas, gdy zapis graficzny nie mieście się na
kartce papieru. Przedstawia to rysunek 3
Każda działalność w szczególności gospodarcza, podejmowana na wolnym rynku stwarza potrzebę ciągłego
dostarczania rzetelnej, terminowej, aktualnej informacji. Aby temu sprostać organizacja musi poddać się analizie
pod kątem właściwego jej konstrukcji systemu informacyjnego. Rzeczową implikacją tegoż systemu
informacyjnego jest system informatyczny. System informatyczny jest implementowany od nowa lub też
stanowi pewną modyfikację już istniejącego. Ogólnie rzecz biorąc fazy tworzenia systemu informatycznego
możemy przedstawić następująco:
5
Tworzenie systemu
1. Definiowanie problemu (prostokąt tworzenie systemu)
Stanowi pierwszą (wstępną) fazę tworzenia systemu. W czasie jej realizacji następuje określenie zadania
jakie stoi przed projektantem. Zarazem w tej fazie zawartym jest zbiór wymagań (życzeń) w stosunku do
nowo tworzonego systemu. Obejmuje on określenie obszaru działania systemu, definicję obszaru
funkcjonalnego, ogólnej konfiguracji sprzętowej, oraz metod form i zasad współpracy użytkowników z
systemem. Na tym etapie ponadto należy określić pracochłonność całego przedsięwzięcia, oraz przybliżone
koszty jego realizacji. Na tym etapie należy również zweryfikować siły wytwórcze tego systemu (kadrę
informatyczną), jak i również ocenić stopień modyfikacji podmiotu, dla którego system powstaje w aspekcie
niezbędnych zmian towarzyszącym wdrożeniom.
2. Modelowanie systemu
Modelowanie systemu informatycznego najogólniej wiąże się z poznaniem i analizą systemu
informacyjnego użytkownika. Przez system informatyczny należy rozumieć skomputeryzowaną wersję
systemu informacyjnego. Sama faza modelowania musi być rozpatrzowna w 4 zasadniczych aspektach:
1. Struktura funkcjonalna . zbiór współzależności jakie występują pomiędzy celami, funkcjami i
zadaniami przed nią postawionymi
2. Struktura informacyjna . zbiór zasobów informacyjnych występujących w różnych postaciach
wzajemnie ze sobą powiązanych. Stopień spójności danych wejściowych, ich kompletność oraz
poprawność mają zasadniczy wpływ na jakość danych wyprowadzanych z systemu
3. Struktura techniczna
Strukturę techniczną systemu tworzą zastosowane środki techniczne wraz z oprogramowaniem.
Identyfikacja i analiza tej struktury w powiązaniu z wynikami analiz poprzednich struktur umożliwia
ustalenie struktury technicznej dostosowanej do zadań określonych w strukturze funkcjonalnej i
uwzględnionych w strukturze informacyjnej
4. Struktura przestrzenna
Strukturę przestrzenną należy rozumieć jako zbiór miejsc środowiska, w którym rozmieszczone będą
elementy systemu zdefiniowane w poprzednich strukturach. Model systemu należy traktować więc jako
umowny, sformalizowany, dostosowany do stanu wiedzy i wymagań obraz tworzonego systemu
informatycznego.
Za podstawowe należy uznać cztery zasadnicze cechy modelu:
1. Merytoryczna kompletność
2. Model musi być logicznie niesprzeczny
3. Jednolitość opisów tematycznie wyodrębnionych
4. Wymagalność kolejnych etapów budowy
3. Rzeczywiste projektowanie (napisanie w konkretnym języku)
Model systemu jest absolutnie podstawą podjęcia procesu projektowania. Podetapami etapu projektowania
zazwyczaj są:
1. Opracowanie koncepcji systemu
Koncepcja systemu zawiera dodatkowo warunki organizacyjno-techniczne systemu i harmonogram
prac nad budową systemu.
2. Opracowanie projektu wstępnego
Projektowanie wstępne ma miejsce w przypadku opracowywania dużych systemów i stanowi
uszczegółowienie koncepcji. Dotyczy to zakresu struktur systemu technologii przetwarzania zbiorów i
baz danych, elementów wejścia i wyjścia systemu oraz konfiguracji sprzętowej. Na prace realizacyjne
w tej fazie składać się będą:
1. Programowanie
2. Weryfikacja
3. Wdrażanie systemu
3. Opracowanie projektu technicznego
Projekt wstępny stanowi podstawę opracowania projektu technicznego. W przypadku
nieskomplikowanych systemów projektowanie wstępne jest pomijane. W projektowaniu technicznym
możemy wyróżnić zasadnicze dwie fazy projektowania. Dotyczą one przede wszystkim:
1. Projektowanie zasobów informacyjnych
W obszarze zasobów informacyjnych należy zaprojektować:
1. Wejście systemu tj. określić zakres i postać informacji wprowadzanych do systemu oraz
poznać sposób ich wprowadzania.
2. Określić zbiory lub bazy danych wraz z ich strukturą fizyczną i logiczną.
3. Określić wyjście z systemu czyli zakres i postać informacji stanowiących wyniki
przetwarzania oraz podać sposoby ich wyprowadzania.
6
2. Projektowania procesów przetwarzania
W obszarze procesów przetwarzania przedmiotem dla projektowania są:
1. Procesy podstawowe odpowiadające procesom realizacji użytkowych funkcji,
2. Procesy pomocnicze, których podstawowym zadaniem jest uzyskanie poprawnego poziomu i
skuteczności realizacji procesów podstawowych.
3. Komunikacja użytkownika z systemem dotycząca metod, technik i sposobów wprowadzania
danych .do. i .z. systemu (formatki, okna, listy wyboru, komunikaty itd. itd.)
4. Realizacja systemu
Składa się ona z trzech zasadniczych etapów:
1. Programowanie systemu
Proces programowania obejmuje następujące fazy
1. Wyspecyfikowanie niezbędnego oprogramowania oraz analizę wymagań jakościowych, które
powinno spełniać oprogramowanie realizujące dany system.
2. Zaprojektowanie struktury oprogramowania systemu
3. Kodowanie modułów programowych przy zastosowaniu konkretnych języków programowania
4. Testowanie stworzonego oprogramowania
Etap testowania jest najbardziej czasochłonnym elementem realizacji systemu
2. Weryfikacja systemu
Weryfikację należy rozumieć jako specyficzną kontrolę realizowanego produktu, polegającą na
porównaniu systemu z założeniami zdefiniowanymi w modelu. Weryfikacja jest niezwykle ważnym
elementem procesu realizacji systemu, niestety jednak bardzo często błędnie przeprowadzana.
Rodzaje weryfikacji:
1. Weryfikacja pozorna . często bywa dziełem przypadku a nie planowych działań weryfikacyjnych
2. Weryfikacja rzeczywista (planowa)
W prawidłowo zorganizowanym procesie tworzenia systemu, po ukończeniu oprogramowania powinna
nastąpić weryfikacja finalna. Przedmiotem weryfikacji finalnej są poprawności spójność systemu, oraz
jego poprawność technologiczna.
Weryfikacji powinny być poddawane zarówno systemy opracowywane na indywidualne zamówienie
jak i systemy .powielarne..
Oprócz czasochłonnej weryfikacji finalnej, twórcy oprogramowania stosują tzw. weryfikację kroczącą,
wymaga ona jednak bieżącego śledzenia realizowanych prac. To z kolei pociąga za sobą konieczność
szczegółowego i czasowego dokumentowania prac projektowych.
Ze względu na odmienność stosowanych metod można wyróżnić następujące weryfikacje:
– weryfikacja funkcjonalna
Weryfikacja w zakresie funkcjonalnym jest realizowana przez kompleksowe testowanie systemu z
wykorzystaniem odpowiednio przygotowanych danych testowych.
Podstawą weryfikacji funkcjonalnej systemu jest dokumentacja użytkowa systemu.
Opis systemu, dokumentacji i faktyczna jego postać programowa muszą być identyczne.
Przedmiotem dla testowania powinny być:
1. Potencjalne możliwości realizacji przez system określonych funkcji zdefiniowanych w
systemie
2. Oczekiwana realizacja danej funkcji (badanie sposobu realizacji funkcji)
3. Poprawność realizacji algorytmów obliczeniowych
4. Określona reakcja systemu na próby wprowadzenia działań niezgodnych z przyjętymi
wcześniej założeniami
– weryfikacja technologiczna
Wymaga testowania w warunkach szczególnych, odbiegających od przyjętych w fazie projektu
założeń
Weryfikacja technologiczna powinna badać następujące obszary:
1. Ochrona danych pod kontem nieuprawnionego dostępu (ingerencji z zewnątrz) jak i też
zabezpieczenie przed utratą danych (zbiorów).
2. Analiza niezawodności tzn. zachowania się sprzętu w trakcie awarii.
3. Zgodność systemu z innymi wersjami, najczęściej poprzednimi i innymi produktami.
4. Efektywność . czas przetwarzania, czas dostępu do danych, czas realizacji zadań
kompleksowych.
5. Badanie reakcji systemu na przeciążenia (zbyt duże zbiory, zbyt duża ilość użytkowników
itp.)
6. Ergonomiczność rozwiązań.
7. Elegancja i estetyka komunikacji z użytkownikiem.
7
Prawidłowo zorganizowana weryfikacja wymaga następujących działań:
1. Ustalenie harmonogramu weryfikacji.
2. Przygotowanie zbiorów testowych.
3. Powołanie zespołu weryfikującego (najlepiej gdy będą to specjaliści, ale spoza grona
realizującego system).
4. Faktyczna realizacja weryfikacji.
5. Sformułowanie wniosków płynących z tej weryfikacji.
6. Ustalenie sposobu dalszego postępowania z systemem.
Praktyka jednak podpowiada aby obydwie te funkcje połączyć w jedną całość, z uwagi na to, że często
uchybienia technologiczne powodują nieprawidłowości funkcjonalne i vice versa.
Wnioski po weryfikacji systemu:
1. Wskazanie elementów, które wymagają korekty, zaproponowanie sposobu korekty.
2. Pozostawienie systemu bez zmian, wskazanie obszarów z ograniczeniami funkcjonalnymi i
technicznymi
3. Uznanie pełnej sprawności systemu, ogłoszenie jego poprawności.
Podstawą weryfikacji systemu informatycznego jest dokumentacja użytkowa lub eksploatacyjna. Jej
tworzenie rozpoczyna się w etapie realizacji systemu tuż po programowaniu, ale jest wynikiem
przemyśleń i ustaleń przyjętych w trakcie prac projektowych, szczególnie dotyczących procesów
podstawowych. Dokumentacja użytkowa obejmuje wszystkie sfery elementów systemu. Zawiera też
instrukcje związane z administrowaniem systemu a dotyczące:
1. Sposobu wypełniania dokumentów źródłowych.
2. Kontroli wstępnej wypełniania dokumentów źródłowych.
3. Sposobu przenoszenia informacji z dokumentów do postaci elektronicznej.
4. Tworzenia głównych zbiorów systemu.
5. Metody i terminy dystrybucji wyników przetwarzania do odbiorcy.
6. Inne sprawy związane z wykorzystaniem wyników.
Ponadto powinna zawierać:
1. Kompletny wykaz symboli i oznaczeń używanych w dokumentacji.
2. Wzory dokumentów zasilających system.
3. Wzory rekordów opisujące strukturę logiczną i fizyczną danych.
4. Informacje o zasadach przechowywania, zabezpieczania, kopiowania oraz kasowania zbiorów.
5. Instrukcje działania w sytuacjach awaryjnych.
6. Harmonogram dotyczący eksploatacji poszczególnych modułów.
3. Wdrażanie systemu
Wdrożenie ma na celu:
1. Dokonanie prac adaptacyjnych w obiekcie, w którym system będzie eksploatowany.
Adaptacja ma na celu dokonanie zmian bezpośrednio w systemie zarządzania. Może zaingerować i
modyfikować cały system adaptacyjny. Zmiany w metodach i technikach przetwarzania danych.
Zmiany w systemie informatycznym implikują:
1. Opracowanie i wprowadzanie do użytkowania bazy indeksowej oraz dokumentów źródłowych.
2. Przeprowadzenie koniecznych zmian dotyczących organizacji systemu informacyjnego.
Przygotowanie bazy indeksowej polega na opracowaniu nowych symboli kodowych lub na jej
weryfikacji. Zależy to od ustaleń zawartych w dokumentacji projektu systemu.
Dla przygotowania bazy indeksowej należy:
1. Jednoznacznie przyporządkować obiektom kodowania dane im symbole.
2. Należy opracować i udostępnić katalog kompletnego zestawu aktualnych kodów.
3. Wprowadzić nowe kody na odpowiednie urządzenia ewidencyjne.
Po zmianie w systemie informacyjnym etap wdrażania wymaga zmian organizacji strukturalnej
zarządzania:
1. Struktury organizacyjnej (scalanie i podział).
2. Zarządzania (redukcja, zmiany zasad podporządkowania).
3. Charakteru i metod pracy poszczególnych komórek organizacyjnych.
W przypadku finalnego wdrażania produktów możemy spodziewać się trudności związanych z tzw.
barierą społeczną ze strony przyszłych użytkowników systemu.
Wynika to z :
1. Poczucia zagrożenia pozycji i prestiżu.
8
2. Z niedoinformowania określonych jednostek administracyjnych.
3. Sprzeciwu wobec zmian w zakresie pracy.
4. Obawy przed zmianą zadań statutowych obiektu na skutek powstania czasowych zaburzeń w
systemie zarządzania
Istnieje również bariera organizacyjna: polega ona na znacznym zmniejszeniu skuteczności i
sprawności działania obiektu w okresie wdrażania. Pojawia się ona, gdy liczba zmian
organizacyjnych jest niezwykle trudna do wykonania w określonym czasie. Powinna trwać tyle,
aby w efekcie zadziałało i nie trwało zbyt długo.
W przypadku bariery psychospołecznej należy:
1. Dążyć do uaktywnienia zainteresowanych pracowników w pracach związanych z systemem (w
Japonii w latach 60-tych pracownicy najniższych szczebli mieli możliwość wypowiedzieć się
w temacie usprawnień w tym co oni robili).
2. Wyjaśnić przyczyny i cele zmian wywołanych wprowadzeniem systemu.
3. Przedstawić należy personelowi, w szczególności zaś kierownikom, skutki zamierzonych
zmian.
4. Starać się usuwać klimat niepewności i zagrożenia przez szczere wobec pracowników
określenie ich sytuacji po zmianach.
5. Zapoznać pracowników ze zmianami zasad, metod i technik pracy wynikającymi z
wprowadzenia systemu informatycznego.
Na tym etapie istnieje jeszcze jeden problem, mianowicie dobór kadry. Musi to być wybór
świadomy, nie może być wynikiem jakiejś łapanki. Możemy go realizować co najmniej na dwa
sposoby:
1. Przez system szkoleń
1.1. Bezpośrednie . na podstawie kadry którą już mamy
1.2. Pośrednie . dotyczą przeważnie szkoleń zorganizowanych, pracownicy są oddelegowani z
ramienia firmy gdzie poznają podstawy/tajniki systemu. Takie szkolenie może być poza firmą
lub w firmie (oddelegowany pracownik firmy wdrażającej)
2. Ściąganie pracowników z firm konkurencyjnych.
W zależności od udziału pracownika w procesie przetwarzania danych szkolenie powinno
dotyczyć:
1. Sposobu przygotowania, kontroli i kompletowania danych do przetwarzania.
2. Sposobu użytkowania tego systemu, który w konsekwencji oznacza zapoznanie tego
użytkownika z dokumentacją eksploatacyjną oraz z dokumentacją zasilającą dany system w
zakresie funkcji użytkowych.
Przygotowanie bazy technicznej stanowi nieodzowny etap w całym procesie wprowadzania
zintegrowanego systemu i należy na tym etapie zwrócić szczególną uwagę na:
1. Dobór odpowiedniego systemu komputerowego, tzn. środki techniczne oraz oprogramowanie.
2. Zakup tego sprzętu.
3. Prace realizacyjne obejmujące złożenie i realizację zamówień na dostawę wyposażenia
specjalistycznego oraz materiały eksploatacyjne.
4. Przygotować pomieszczenia dla sprzętu komputerowego.
5. Instalacja i rozruch obejmująca założenie odpowiedniej sieci dla łączności Intranetu i
transmisji danych, oraz instalacja, montaż i uruchomienie całego systemu komputerowego.
Jeżeli niezbędnym wyposażeniem technicznym ma być specjalistyczny sprzęt komputerowy,
problem staje się złożony. Pomijając wyższe koszty zakupu sprzętu możemy napotkać barierę
zakupu stosownego sprzętu (wyposażenia), oprogramowania.
Istnieją 2 metody pozyskania takiego oprogramowania:
1. opracowanie indywidualnego systemu informatycznego na potrzeby danej instytucji
2. zakupienie gotowego systemu od wyspecjalizowanej firmy
W przypadku wyboru drugiej ścieżki (gotowca), praca na tym etapie powinna zawierać zagadnienia
związane z :
1. trybem zakupu tego systemu
2. jakościowe własności nabywanego systemu
Na jakiej platformie chodzi, jak i ile są przetwarzane dane, wszystko co jest preferowane przez
ten system
3. obsługą klienta nabywającego system
Serwis posprzedażny – jest on w większości przypadków na nienależytym poziomie
2. Ostateczną weryfikację w warunkach użytkownika.
9
3. Wprowadzenie systemu do użytkowania.
Po zakończeniu etapu tworzenia systemu informatycznego zaczyna się zasadniczy okres
eksploatacji systemu. Studium eksploatacji to współbieżna realizacja procesu użytkowania systemu
oraz procesu jego obsługi. Aby zapewnić maksymalnie niezakłócony przebieg użytkowania
systemu konieczne jest racjonalne zorganizowanie procesu jego obsługi. Jednym z podstawowych
zadań w tym przypadku jest stała obserwacja systemu podczas wykonywania zadań użytkowych. Z
tej obserwacji powinno wynikać:
a) czy system jest sprawny, skuteczny i ekonomiczny
b) co i jak można usprawnić w systemie
c) czy dokonanie odpowiednich zmian będzie opłacalne
W razie stwierdzenia opłacalności dokonania odpowiednich zmian przechodzi się do tzw.
doskonalenia. Z tym pojęciem są związane trzy główne rodzaje działań:
a) usuwanie błędów w systemie
b) dostosowanie funkcjonalności systemu do zmieniających się warunków działania systemu
(firma może się rozwijać – musi nastąpić adaptacja systemu)
c) rozwój systemu – zakłada podejście bardziej koncepcyjne np.: chcemy dodać nową funkcję,
którą nasza firma jeszcze długo, długo nie będzie posiadać
Doskonalenie, usuwanie błędów systemu, dokonujemy rozwoju.
1. Pierwszy rodzaj działań obejmuje usuwanie błędów operatorskich i systemowych
2. Dopasowanie formatu danych w danych wejściowych i zbiorach, następuje dopasowanie funkcjonalności
systemu, dopasowanie nowych wersji systemu (upgrade), komunikacja z użytkownikiem
3. Rozwój systemu obejmuje działania związane z doskonaleniem w zakresie dołączania nowych funkcji,
obejmuje działania optymalizacyjne oraz zmiany dokumentacji systemu.
Wynika stąd, że sprawne i efektowne używanie systemu jest uwarunkowane jakością procesów jego obsługiwania,
procesy te są zatem istotną częścią eksploatacji.
Złożoność systemu informatycznego powoduje, że nie zbędne staje się wyodrębnienie elementów stanowiących
przedmiotów procesów użytkowania i obsługiwania, są to:
1. Środki techniczne występujące nie jednokrotnie w postaci bardzo złożonych konfiguracji
2. Oprogramowanie systemowe, narzędziowe i użytkowe
3. Zbiory danych lub baza danych tworzone i utrzymywane w systemie, do zbiorów musi być dołączona
4. Zbiór algorytmów i metod stosowanych w systemie
5. Komputerowe nośniki informacji
Wymienione elementy współistnieją i współdziałają w całym procesie eksploatacji systemu. Z punktu widzenia
użytkowana eksploatacja systemu jest sprawna i racjonalna wtedy gdy podczas jego działania są wykonywane
zadania użytkowe przy możliwe najniższych kosztach oraz przy zachowaniu wymaganych parametrów
eksploatacji, te parametry to:
1. Czas realizacji zadań przez użytkownika
2. Czas uzyskiwania wymaganych informacji wynikowych
3. Wiarygodność informacji uzyskanych
4. Użytkownik musi mieć świadomość że jego dane są bezpieczne, poziom ochrony danych
5. Stopień wykorzystania zasobów sprzętowych i software.owych
Tryb zakupu systemów informatycznych można określić wskazując zasady i warunki prawidłowo zrealizowanej
transakcji. Można zaliczyć do nich:
a) wykonanie specyfikacji funkcjonalnej i użytkowej systemu zakupionego
b) należy rozpoznać rynek pod kątem danego oprogramowania (konkurencja – negocjacje z wszystkimi)
c) przeprowadzenie analizy merytoryczno – kosztowej przed podjęciem decyzji o zakupie konkretnego oprogramowania
Do obowiązków trybu zakupu należą:
a) zapewnienie właściwych warunków dla obsługi serwisowej przed i po sprzedaży; Fakty negatywnie wpływające na
jakość wykonanego zintegrowanego systemu:
– użytkownik do końca nie wie jaki system jest mu potrzebny
– użytkownik kupuje system, a po pewnym czasie stwierdza, że na rynku może nabyć inny, tańszy znacznie
bardziej odpowiadający jego wymaganiom
– koszty kupowanego pakietu czy systemu należy zawsze odnieść do jego zdolności funkcjonalnych i
użytkowych
– umowa zakupu musi precyzyjnie określać tryb załatwiania reklamacji jakościowych dotyczących systemu.
Tryb ten musi uwzględniać indywidualizm klienta i w żadnym wypadku nie może powodować przestoju w
jego normalnej pracy
b) kolejna grupa działań przygotowawczych w zakresie oddania systemu klientowi etap przygotowania do eksploatacji.
Zalicza się do niego następujące etapy:
– założenie i weryfikacja baz danych
– przeprowadzenie próbnego rozruchu
– przyjęcie ustaleń normalizujących bieżącą eksploatację systemu związanych z serwisowaniem systemu
10
– przyjęcie i zatwierdzenie harmonogramu archiwizacji baz danych (co jaki czas ma ona następować;
poinformowanie klienta o nośnikach systemu i innych; określenie regulaminu korzystania z wersji
zapasowych)
Za atrybuty dobrze zaprojektowanego systemu informatycznego można uznać:
1. Funkcjonalność
Funkcjonalność określająca elastyczność merytoryczną jest cechą zapewniającą możliwość względnie szybkiej
weryfikacji systemowej, praktyka wskazuje ze w trakcie bieżącej eksploatacji systemu prędzej czy później zaistnieją
potrzeby zmiany modyfikacji niektórych funkcji systemowych. W dłuższych okresach czasu występują tendencje do
rozszerzania funkcjonalności systemu. System zatem powinien być zbudowany w ten sposób aby w trakcie jego
eksploatacji dać możliwość weryfikacji systemowych. Wymagany stopień eksploatacji merytorycznej uzyskuje się przez
odpowiednie zaprojektowanie procesów podstawowych.
2. Niezawodność
Niezawodność systemu jest rozumiana jako właściwość umożliwiająca wykonywanie żądanych funkcji przy utrzymaniu
określonych parametrów eksploatacyjnych , wartości tych parametrów wynikają ze stawianych przez system zadań oraz
ze wszystkich obiektywnie istniejących warunków organizacyjnych, w ten sposób zdefiniowaną niezawodność możemy
interpretować jako niezawodność techniczna, oprogramowania oraz układu człowiek-komputer. W razie nie
wystarczającej niezawodności procesu obsługi systemu, system powinien zapewnić uzyskanie pożądanego jej poziomu
po przez stosowanie technik redundacyjnych (nadmiarowość – polegają na tworzeniu rezerw technicznych,
funkcjonalnych i czasowych) .
Rezerwa techniczna polega na wprowadzeniu do systemu dodatkowych środków technicznych które zwiększają
parametry techniczne sprzętu, środki te w razie awarii powinny przejąć istotnie funkcje uszkodzonych urządzeń.
Rezerwa funkcjonalne polega na wprowadzeniu do systemu pewnych środków (soft) które są przeznaczony do
odpowiednich zadań.
Rezerwy czasowe tworzone są po przez odpowiednie planowanie zdolności środków technicznych, programowych,
kadrowych itd., uwzględniając rezerwy na wykonanie poszczególnych prac.
3. Diagnostyczność
Diagnostyczność to innymi słowy łatwość i krótki czas ustalania przyczyn uszkodzeń systemu (zlokalizowanie błędu i
konkretne usuwanie)
4. Trwałość systemu
Trwałość sytemu (dyskutowany problem, system ma być trwały i nadal konkurencyjny dla innych systemów. Potrzeby
się zmieniają i takie tam, Psor powiedział że to jest nie istotny punkt wiec nie wywodzę się)
Zachowanie na przyzwoitym poziomie w/w atrybutów umożliwia uzyskanie tzw. Elastyczności eksploatacyjnej.
Na organizację eksploatacji wpływa szereg czynników z których najistotniejszym jest klasa systemu informatycznego. Z
punktu widzenia eksploatacji klasę systemu określa zbiór cech:
1. Zakres systemu wskazujący na to czy mamy do czynienia z systemem cząstkowym czy dziedzinowym czy
kompleksowym.
2. Poziom ewolucyjny systemu( czy jest to system ewidencyjny czy doradczy itd.)
3. Przyjęta technologia przetwarzania danych i sposób komunikowania się użytkownika z systemem( systemy wsadowe i
kompensacyjne)
4. Zasoby informacyjne systemu (sposób zgromadzenie danych, rozproszone czy skupiona)
5. Zasoby techniczne systemu (czy duży komputer czy mikrokomputer czy sieciowy)
Klasa systemu informatycznego wpływa w sposób decydujący na strukturę kadr eksploatujących system stanowiący
szczególnie istotny element organizacji procesu eksploatacji systemu informatycznego.