Inżynieria oprogramowania
|
|
- Maja Marciniak
- 8 lat temu
- Przeglądów:
Transkrypt
1 Inżynieria oprogramowania część VIII Prototypowanie oprogramowania Prototypowanie oprogramowania Zawartość: Prototypowanie w procesie tworzenia oprogramowania Metody błyskawicznego prototypowania Prototypowanie interfejsu użytkownika Ian Sommerville Inżynieria oprogramowania Slajd nr 2 1
2 Prototypowanie oprogramowania Prototyp oprogramowania pomaga w dwóch czynnościach inżynierii wymagań: Określenie wymagań. Prototypy systemu umożliwiają użytkownikom eksperymentowanie, w celu sprawdzenia czy system pomaga im w pracy. Dzięki temu użytkownicy wpadają na nowe pomysły itp. Zatwierdzanie wymagań. Prototyp może ujawnić błędy i pominięcia w zaproponowanych wymaganiach. Inne cele: Szkolenia użytkowników Testowanie systemu Ian Sommerville Inżynieria oprogramowania Slajd nr 3 Prototypowanie oprogramowania Ian Sommerville Inżynieria oprogramowania Slajd nr 4 2
3 Prototypowanie oprogramowania Prototypowanie Prototypowanie ewolucyjne zaczyna się od zbudowania prostego systemu spełniającego wymagania użytkowników. Jest on następnie modyfikowany w marę poznawania wymagań. Ostatecznie staje się systemem, którego oczekiwano. Prototypowanie z porzuceniem służy do udoskonalania i wyjaśnienia specyfikacji. Po napisaniu specyfikacji prototyp jest porzucany. Cele Celem prototypowania ewolucyjnego jest dostarczenie użytkownikowi działającego systemu. Celem prototypowania z porzuceniem jest zatwierdzenie i dostarczenie wymagań. Ian Sommerville Inżynieria oprogramowania Slajd nr 5 Prototypowanie oprogramowania Ian Sommerville Inżynieria oprogramowania Slajd nr 6 3
4 Prototypowanie ewolucyjne Zalety prototypowania ewolucyjnego Przyspieszone dostarczenie systemu. Włączenie użytkownika w budowę systemu Wspólne cechy błyskawicznych metod tworzenia oprogramowania: Przeplatanie procesu specyfikowania, projektowania i implementowania System budowany jest w postaci ciągu przyrostów Stosuje się narzędzia CASE i języki 4GL Interakcyjna metoda budowy interfejsów. Ian Sommerville Inżynieria oprogramowania Slajd nr 7 Prototypowanie ewolucyjne Problemy z prototypowaniem ewolucyjnym Kłopoty z zarządzaniem. prototypy ewoluują tak szybko że nie nadąża się z dokumentacją. Kłopoty z pielęgnacją. Ustawiczne zmiany powodują uszkodzenia struktury prototypowanego systemu. Kłopoty z umową. Zwykły model umowy klienta z wytwórcą oprogramowania oparty jest na specyfikacji systemu. Klienci nie znają zakresu prac. Dostawcy nie chcą się zgodzić na stałą cenę. Ian Sommerville Inżynieria oprogramowania Slajd nr 8 4
5 Prototypowanie ewolucyjne Ian Sommerville Inżynieria oprogramowania Slajd nr 9 Przyrostowy proces tworzenia Tworzenie przyrostowe likwiduje pewne niedogodności charakterystyczne dla prototypowania ewolucyjnego Tworzenie przyrostowe jest łatwiejsze w zarządzaniu, ponieważ przestrzega się w nim standardów budowy oprogramowania. Ian Sommerville Inżynieria oprogramowania Slajd nr 10 5
6 Przyrostowy proces tworzenia Ian Sommerville Inżynieria oprogramowania Slajd nr 11 Prototypowanie z porzuceniem Najczęściej stosowany przy budowie systemów sprzętowych. Posługując się komponentami z półki sprawdzamy projekt przed podjęciem decyzji o kosztownych zakupach. Przy budowie oprogramowania prototyp nie służy do oceny projektu ale pomaga w opracowaniu wymagań. Prototyp najczęściej tworzymy przy pomocy innych narzędzi niż projekt. W prototypie porzucanym można pominąć kryteria efektywności i jakości na rzecz szybkiego rezultatu Ian Sommerville Inżynieria oprogramowania Slajd nr 12 6
7 Prototypowanie z porzuceniem Ian Sommerville Inżynieria oprogramowania Slajd nr 13 Metody błyskawicznego prototypowania Tworzenie za pomocą dynamicznych języków wysokiego poziomu Języki programowania bazy danych Scalanie komponentów i programów użytkowych Ian Sommerville Inżynieria oprogramowania Slajd nr 14 7
8 Języki programowania bazy danych Języki 4-tej generacji 4GL (Narzędzia) Języki zapytań do bazy danych Generator interfejsów Arkusz kalkulacyjny Generator raportów Ian Sommerville Inżynieria oprogramowania Slajd nr 15 Języki programowania bazy danych Ian Sommerville Inżynieria oprogramowania Slajd nr 16 8
9 Scalanie komponentów i programów użytkowych Ian Sommerville Inżynieria oprogramowania Slajd nr 17 Prototypowanie interfejsu użytkownika Generatory interfejsów Prototyp HTML owy lub PHP Ian Sommerville Inżynieria oprogramowania Slajd nr 18 9
10 Inżynieria oprogramowania część IX Projektowanie architektoniczne Projektowanie architektoniczne Zawartość: Strukturalizacja systemu Modele sterowania Rozkład na moduły Architektury charakterystyczne dla różnych dziedzin Ian Sommerville Inżynieria oprogramowania Slajd nr 20 10
11 Projektowanie architektoniczne Wielkie systemy są zwykle podzielone na podsystemy, które oferują pewien zbiór powiązanych z sobą interfejsów. W początkowej fazie procesu projektowania identyfikuje się podsystemy, ustala się zrąb sterowania oraz komunikacji pomiędzy podsystemami. Faza ta jest nazywana projektowaniem architektonicznym. Produktem tej fazy jest opis architektury oprogramowania. Przypomnimy jak wygląda model procesu projektowania Ian Sommerville Inżynieria oprogramowania Slajd nr 21 Projektowanie architektoniczne Specyfikacja wymagań Czynności projektowe Projektowanie architektury Specyfikowanie abstrakcyjne Projektowanie interfejsów Projektowanie komponentów Projektowanie struktur danych Projektowanie algorytmów Architektura systemu Specyfikacja oprogramowania Specyfikacja interfejsów Specyfikacja komponentów Specyfikacja struktur danych Specyfikacja algorytmów Produkty projektowania Ian Sommerville Inżynieria oprogramowania Slajd nr 22 11
12 Projektowanie architektoniczne Czynności procesu projektowania: Projektowanie architektury. Identyfikuje i dokumentuje podsystemy tworzące system oraz związki między nimi. Specyfikowanie abstrakcyjne. Opracowuje się abstrakcyjną specyfikację usług i ograniczeń każdego podsystemu. Projektowanie interfejsów. Projektuje się i dokumentuje interfejsy każdego podsystemu z innymi podsystemami. Specyfikacja musi być jednoznaczna ponieważ umożliwia korzystanie z podsystemów bez znajomości ich działania. Projektowanie komponentów. Przypisuje się usługi do różnych komponentów i projektuje interfejsy tych komponentów. Ian Sommerville Inżynieria oprogramowania Slajd nr 23 Projektowanie architektoniczne Czynności procesu projektowania: Projektowanie struktur danych. Szczegółowo specyfikuje się i projektuje struktury danych użyte w implementacji systemu. Projektowanie algorytmów. Szczegółowo specyfikuje się i projektuje algorytmy służące do realizacji usług. Ian Sommerville Inżynieria oprogramowania Slajd nr 24 12
13 Projektowanie architektoniczne Model architektoniczny jest punktem początkowym do specyfikowania rozmaitych części systemu. Proces projektowania architektonicznego polega na ustaleniu podstawowego zrębu systemu. Obejmuje identyfikację najważniejszych komponentów systemu i komunikację między nimi. Ian Sommerville Inżynieria oprogramowania Slajd nr 25 Projektowanie architektoniczne Zalety jawnego projektowania i dokumentowania architektury oprogramowania: Komunikacja z uczestnikami. Architektura jest prezentacją systemu na wysokim poziomie, która może służyć za podstawę dyskusji w gronie różnych uczestników. Analiza systemu. Ujawnienie architektury systemu we wczesnej fazie budowania systemu daje możliwość przeprowadzenia analizy systemu. Decyzje projektowania architektonicznego mają znaczący wpływ na to, czy system spełni krytyczne wymagania dotyczące efektywności, niezawodności zdatności do pielęgnacji, czy nie Ian Sommerville Inżynieria oprogramowania Slajd nr 26 13
14 Projektowanie architektoniczne Zalety jawnego projektowania i dokumentowania architektury oprogramowania c.d.: Użycie wielokrotne w wielkiej skali. Architektura systemu jest zwartym i łatwym do opanowania opisem organizacji systemu i współpracy jego komponentów. Architekturę można przekazać innym systemom, które mają podobne wymagania. Pomaga to w użyciu wielokrotnym oprogramowania. Ian Sommerville Inżynieria oprogramowania Slajd nr 27 Projektowanie architektoniczne Wspólne czynności dla wszystkich procesów projektowania architektonicznego: Strukturalizacja systemu. System jest dzielony na kilka podstawowych podsystemów. Podsystem jest niezależną jednostką oprogramowania. Identyfikuje się komunikację między podsystemami. Modelowanie sterowania. Określa się ogólny model związków sterowania między częściami systemu. Podział na moduły. Każdy zidentyfikowany podsystem jest dzielony na moduły. Architekt musi wskazać typy modułów i ich połączenia. Ian Sommerville Inżynieria oprogramowania Slajd nr 28 14
15 Projektowanie architektoniczne Rozróżnienie między podsystemami i modułami: Podsystem jest systemem na swoich własnych prawach; jego usługi nie zależą od usług oferowanych przez inne podsystemy. Podsystemy składają się z modułów i mają interfejsy używane do komunikacji z innymi podsystemami. Moduł jest zwykle komponentem systemu, który oferuje co najmniej jedną usługę innym modułom. Nie traktujemy go jako oddzielnego podsystemu. Moduły są zbudowane z kilku innych, prostszych komponentów systemu. Ian Sommerville Inżynieria oprogramowania Slajd nr 29 Projektowanie architektoniczne Wynikiem procesu projektowania architektonicznego jest dokumentacja projektu architektonicznego, składająca się z graficznych przedstawień modelu systemu oraz tekstu opisowego. Dokumentacja ta powinna zawierać opis systemu jako struktury złożonej z podsystemów i każdego podsystemu jako struktury złożonej z modułów. Modele graficzne mogą przedstawiać różne perspektywy systemu. Ian Sommerville Inżynieria oprogramowania Slajd nr 30 15
16 Projektowanie architektoniczne Zakres modelu architektonicznego: Statyczny model strukturalny obejmuje komponenty lub podsystemy, które można zbudować jako niezależne jednostki. Model dynamiczny procesu, w którym przedstawia się podział systemu na procesy wg. czasu wykonania. Najczęściej różni się od modelu statycznego. Model interfejsów, w którym definiuje się usługi oferowane przez każdy podsystem za pośrednictwem jego interfejsu publicznego. Model związków, który obejmuje związki takie jak przepływ danych między podsystemami. Ian Sommerville Inżynieria oprogramowania Slajd nr 31 Projektowanie architektoniczne Architektura systemu ma wpływ na efektywność, niezawodność, łatwość pielęgnacji,.... Wybrany dla danego zastosowania styl i struktura mogą więc zależeć od wymagań niefunkcjonalnych systemu: Efektywność. Jeśli efektywność jest krytycznym wymaganiem to prawdopodobnie należy tak zaprojektować architekturę, aby umieścić krytyczne operacje w niewielkiej liczbie podsystemów komunikujących się między sobą w niewielkim stopniu. Oznacza to użycie komponentów gruboziarnistych co umożliwia zmniejszenie komunikacji między nimi. Zabezpieczenie. Jeśli zabezpieczenie jest krytycznym wymaganiem to należy zastosować architekturę warstwową i najbardziej krytyczne zasoby zabezpieczyć w najniższych warstwach. Ian Sommerville Inżynieria oprogramowania Slajd nr 32 16
17 Projektowanie architektoniczne Architektura systemu c.d.: Bezpieczeństwo. Jeśli bezpieczeństwo jest krytycznym wymaganiem, to należy tak zaprojektować architekturę aby operacje dotyczące bezpieczeństwa znalazły się w jednym podsystemie lub w niewielkiej ich liczbie. Zmniejszy to koszty i kłopoty związane z zatwierdzeniem bezpieczeństwa. Dostępność. Jeśli dostępność jest krytycznym wymaganiem, to w architekturze należy uwzględnić komponenty nadmiarowe, tak aby można było podmieniać i modyfikować komponenty bez zatrzymania systemu. Zdolność do pielęgnacji. Jeśli zdolność do pielęgnacji jest krytycznym wymaganiem to architektura powinna się składać z drobnoziarnistych samodzielnych komponentów, które można łatwo zmieniać. Niestety między architekturami często występują konflikty. Ian Sommerville Inżynieria oprogramowania Slajd nr 33 Strukturalizacja systemu. Pierwsza faza projektowania architektonicznego polega na podziale systemu na zbiór oddziałujących ze sobą podsystemów. Projekt architektoniczny przedstawia się za pomocą diagramu blokowego, na którym każdy prostokąt oznacza podsystem. Ian Sommerville Inżynieria oprogramowania Slajd nr 34 17
18 System sterowania robotem pakującym przedmioty System wizyjny System identyfikacji przedmiotów Sterownik ramienia Sterownik chwytacza System wyboru opakowania System pakujący Sterownik taśmociągu Ian Sommerville Inżynieria oprogramowania Slajd nr 35 Model repozytorium Aby efektywnie współpracować, podsystemy wchodzące w skład systemu muszą wymieniać między sobą informacje: Wszystkie współdzielone dane znajdują się w jednej bazie danych Każdy podsystem prowadzi swoją bazę danych. Dane są przekazywane innym podsystemom przez wysyłanie komunikatów Ian Sommerville Inżynieria oprogramowania Slajd nr 36 18
19 Architektura zintegrowanego zestawu narzędzi CASE Edytor projektów Generator kodu Translator projektów Repozytorium przedsięwzięcia Edytor programów Analizator projektów Generator raportów Ian Sommerville Inżynieria oprogramowania Slajd nr 37 Model repozytorium Wady i zalety współdzielonego repozytorium: Efektywny sposób współdziałania dużych ilości danych. Nie ma potrzeby jawnej transmisji z jednego podsystemu do drugiego. Twórcy podsystemów muszą uzgodnić model danych repozytorium. Prowadzi to do kompromisów między specyficznymi potrzebami każdego narzędzia. Integracja może być trudna Podsystemu produkujące dane nie muszą zajmować się sposobem użycia tych danych przez inne podsystemy. Ewolucja może być trudna, ponieważ duże ilości informacji powstają zgodnie z ustalonym modelem danych Łatwość tworzenia kopii zapasowych, sterowanie zabezpieczeniami i dostępem przy pomocy menedżera repozytorium Ian Sommerville Inżynieria oprogramowania Slajd nr 38 19
20 Model repozytorium Wady i zalety współdzielonego repozytorium c.d.: Różne podsystemy mogą mieć odmienne wymagania stawiane zabezpieczeniom oraz inne strategie odtwarzania z kopii zapasowych Model współdzielenia jest widoczny przez schemat repozytorium. Integracja nowych narzędzi jest bardzo łatwa o ile jest zgodna z przyjętym modelem danych Proces rozproszenia repozytorium po kilku narzędziach może być trudny Ian Sommerville Inżynieria oprogramowania Slajd nr 39 Model klient-serwer Architektoniczny model klient-serwer jest modelem rozproszonym systemu w którym dane i przetwarzanie jest rozproszone między zbiór procesorów. Główne komponenty systemu: Zbiór samodzielnych procesorów oferujących usługi innym podsystemom. Przykładami są systemy realizujące usługi drukowania, serwery plików, serwery kompilujące. Zbiór klientów, którzy korzystają z usług oferowanych przez serwery. Zwykle same w sobie są podsystemami. Może być kilka współbieżnie działających programów klient. Sieć dająca klientowi dostęp do serwerów Ian Sommerville Inżynieria oprogramowania Slajd nr 40 20
21 Biblioteka filmów i zdjęć Klient 1 Klient 2 Klient 3 Klient 4 Sieć ethernet Serwer katalogu Serwer filmów Serwer zdjęć Serwer hiper-txt Katalog Katalog Katalog Katalog Ian Sommerville Inżynieria oprogramowania Slajd nr 41 Model maszyny abstrakcyjnej Model maszyny abstrakcyjnej (zwany czasami modelem warstwowym) opisuje sprzęganie podsystemów. Układa system w ciąg warstw, z których każda oferuje pewne usługi. Każda warstwa, jest maszyną abstrakcyjną, której język maszynowy ( usługi oferowane przez tę warstwę ) służy do implementacji następnego poziomu maszyny abstrakcyjnej. Implementowanie języka często polega na kompilowaniu opisu na tzw. język maszyny idealnej a następnie na kod maszynowy. Podejście warstwowe ułatwia podejście przyrostowe Wadą jest wolny dostęp do warstw wewnętrznych i zmniejszenie przez to wydajności. Ian Sommerville Inżynieria oprogramowania Slajd nr 42 21
22 Model maszyny abstrakcyjnej zarządzania wersjami Zarządzanie wersjami Zarządzanie obiektami System bazy danych System operacyjny Ian Sommerville Inżynieria oprogramowania Slajd nr 43 Modele sterowania Modele do strukturalizacji opisują podział systemu na moduły. Aby podsystemy pracowały jako jeden system system, należy nimi sterować, tak aby ich usługi były dostarczane we właściwe miejsce i we właściwym czasie. Modele strukturalne nie obejmują informacji o sterowaniu. Modele sterowania na poziomie architektonicznym opisują przepływy sterowania między podsystemami. Ian Sommerville Inżynieria oprogramowania Slajd nr 44 22
23 Modele sterowania Możemy wyróżnić dwa ogólne podejścia do sterowania: Sterowanie scentralizowane. Jeden podsystem jest całościowo odpowiedzialny za sterowanie; to on uruchamia i zatrzymuje inne podsystemy. Może przekazać sterowanie innemu podsystemowi, ale będzie oczekiwał zwrotu odpowiedzialności za sterowanie. Sterowanie zdarzeniowe. Informacja o sterowaniu nie jest wbudowana w podsystem, ale każdy system może może reagować na zdarzenia zachodzące na zewnątrz. Te zdarzenia mogą występować w innych podsystemach lub w otoczeniu systemu. Wszystkie powyższe modele struktury mogą być zorganizowane za pomocą sterowania scentralizowanego jak i zdarzeniowego. Ian Sommerville Inżynieria oprogramowania Slajd nr 45 Sterowanie scentralizowane W modelu scentralizowanym jeden z podsystemów jest wybrany do roli sterownika systemu i odpowiada za działanie innych podsystemów. Modele te dzielimy na dwie klasy w zależności od tego czy systemy są sekwencyjne czy współbieżne. Model call-return. Jest to dobrze znany model podprogramów, w którym sterowanie zaczyna się na wierzchołku hierarchii podprogramów i przez wywołania podprogramów przechodzi do niższych poziomów drzewa. Model ten można zastosować jedynie do systemów sekwencyjnych. Model przedstawiony na następnym slajdzie nie jest modelem strukturalnym. Podprogram 1.1 nie musi być częścią składową programu 1. Ian Sommerville Inżynieria oprogramowania Slajd nr 46 23
24 Model call-return Ian Sommerville Inżynieria oprogramowania Slajd nr 47 Model menedżera Model scentralizowany c.d.: Model menedżera. Stosowany jedynie do systemów współbieżnych. Jeden z komponentów systemu jest wybierany do roli menedżera systemu i steruje rozpoczynaniem, zatrzymywaniem i koordynacją innych procesów. Proces jest podsystemem lub modułem, który może działać równolegle z innymi procesami. Model często używany do systemów real time (czasu rzeczywistego). Ian Sommerville Inżynieria oprogramowania Slajd nr 48 24
25 Model sterowania dla systemów Real-time Ian Sommerville Inżynieria oprogramowania Slajd nr 49 Systemy sterowane zdarzeniami Istnieje wiele rodzajów oprogramowań sterowanych zdarzeniami. Zdarzenia w tych modelach najczęściej przychodzą z zewnątrz. Zdarzenie nie oznacza po prostu binarnego sygnału. Może to być sygnał przyjmujący pewien zakres wartości. Różnica między zdarzeniem i zwykłymi danymi wejściowymi polega na tym, że proces obsługujący zdarzenie nie decyduje o czasie jego zajścia. Ian Sommerville Inżynieria oprogramowania Slajd nr 50 25
26 Systemy sterowane zdarzeniami Omówimy dwa modele sterowania zdarzeniowego: Modele rozgłaszania. W takich modelach zdarzenie jest w zasadzie ogłoszeniem dla wszystkich podsystemów. Każdy podsystem, który może obsłużyć to zdarzenie reaguje na nie. Modele z przerwaniami. Są używane najczęściej w systemach czasu rzeczywistego, gdzie zewnętrzne przerwania są wykrywane przez obsługę przerwań. Następnie są przekazywane do innego komponentu, który je przetworzy Ian Sommerville Inżynieria oprogramowania Slajd nr 51 Model sterowania z rozgłaszaniem Podsystem 1 Podsystem 2 Podsystem 3 Podsystem 4 Procedura obsługi zdarzeń i komunikatów Ian Sommerville Inżynieria oprogramowania Slajd nr 52 26
27 Model sterowania z przerwaniami Ian Sommerville Inżynieria oprogramowania Slajd nr 53 Rozkład na moduły Po zaprojektowaniu architektury strukturalnej następnym procesem projektowania architektonicznego jest podział podsystemów na moduły. Na tym poziomie można zastosować modele omówione na początku dzisiejszego wykładu. Ponieważ komponenty modułów są mniejsze niż podsystemy możemy zastosować inne modele dla podzielonego systemu: Model obiektowy. System jest dzielony na zbiór porozumiewających się obiektów. Model przepływu danych. System jest dzielony na moduły funkcjonalne, które pobierają dane wejściowe i przetwarzają je na dane wyjściowe. Model ten bywa nazywany modelem potokowy. Ian Sommerville Inżynieria oprogramowania Slajd nr 54 27
28 Modele obiektowe Model obiektowy architektury systemu dzieli się na zbiór luźno uzależnionych od siebie obiektów z dobrze zdefiniowanymi interfejsami. Obiekty korzystają z usług oferowanych przez inne obiekty. Na następnym slajdzie pokazano przykład architektonicznego modelu obiektowego dla systemu fakturowania. System wystawia klientom faktury, przyjmuje zapłaty, drukuje pokwitowania płatności i upomnienia o niezapłaconych fakturach. Ian Sommerville Inżynieria oprogramowania Slajd nr 55 Model obiektowy w systemie fakturowania Ian Sommerville Inżynieria oprogramowania Slajd nr 56 28
29 Model przepływu danych W modelu przepływu danych przekształcenia funkcyjne przetwarzają dane wejściowe na dane wyjściowe. Dane przepływają od do drugiego procesu i są przekształcane w miarę swej wędrówki przez cały ciąg. Każdy krok przetwarzania jest implementowany jako przekształcenie. Dane wejściowe przepływają przez te przekształcenia do chwili wytworzenia z nich danych wyjściowych. Przekształcenia mogą działać sekwencyjnie lub równolegle. Przekształcenie może przetwarzać dane jedna po drugiej lub w postaci wsadu. Ian Sommerville Inżynieria oprogramowania Slajd nr 57 Model przepływu danych Ian Sommerville Inżynieria oprogramowania Slajd nr 58 29
30 Model przepływu danych system fakturowania Ian Sommerville Inżynieria oprogramowania Slajd nr 59 Model przepływu danych system fakturowania Zalety modelu przepływu danych: Umożliwia użycie wielokrotne przekształceń Jest intuicyjna dla wielu ludzi, którzy myślą o swojej pracy w kategorii przetwarzania wejścia i wyjścia. Ewolucja systemu polegająca na dodawaniu nowych przekształceń jest bardzo łatwa. Ta architektura jest łatwa do zaimplementowania zarówno jako system sekwencyjny jak i współbieżny. Ian Sommerville Inżynieria oprogramowania Slajd nr 60 30
31 Architektury charakterystyczne dla różnych dziedzin Istnieją dwa rodzaje modeli architektonicznych charakterystyczna dla dziedziny: Modele ogólne, które są abstrakcjami systemów takich jak: modele architektoniczne, systemy gromadzenia danych, systemy monitorowania, itd. Modele odniesienia, które są jeszcze bardziej abstrakcyjne i opisują większe klasy systemów. Ian Sommerville Inżynieria oprogramowania Slajd nr 61 Modele ogólne Najbardziej znanym przykładem architektonicznego modelu ogólnego jest model kompilatora. Moduły kompilatora: Analizator leksykalny, który pobiera symbole języka wejściowego i przekształca je w postać wewnętrzną. Tabela symboli budowana przez analizator leksykalny przechowuje informację o nazwach i typach użytych w programie. Analizator składniowy, który sprawdza składnie kompilowanego języka. Korzysta z definicji gramatyki i buduje drzewo składni. Drzewo składni, które wewnętrzną strukturą danych reprezentującą kompilowany program. Analizator znaczeniowy, który korzystając z informacji drzewa składni i tabeli symboli sprawdza znaczeniową poprawność programu wejściowego Generator kodu, który przechodzi drzewo składni i generuje kod maszynowy. Ian Sommerville Inżynieria oprogramowania Slajd nr 62 31
32 Model przepływu danych kompilatora Tabela symboli Analiza leksykalna Analiza składniowa Analiza znaczeniowa Generowanie kodu Ian Sommerville Inżynieria oprogramowania Slajd nr 63 Model repozytorium systemu przetwarzania języka Analizator leksykalny Analizator składniowy Analizator znaczeniowy Generator prezentacji Drzewo składni abstrakcyjnej Definicja gramatyki Optymalizator Edytor Tabela symboli Definicja wyniku Generator kodu Ian Sommerville Inżynieria oprogramowania Slajd nr 64 32
33 Modele odniesienia Ogólne modele architektoniczne odzwierciedlają architekturę istniejących systemów. Modele odniesienia są natomiast wynikami badań dziedziny zastosowania. Reprezentują wyidealizowane architektury obejmujące wszystkie udogodnienia jakie system potencjalnie może oferować. Architektury odniesienia mogą służyć jako podstawa implementacji systemu. Taki był motyw powstania modelu referencyjnego OSI (Zimmerman, 1980) do komunikacji systemów otwartych. Ten model był z założenia standardem. System zgodny z tym modelem powinien móc się skontaktować z innymi zgodnymi systemami. Model OSI jest siedmiowarstwowym modelem komunikacji systemów otwartych. Ian Sommerville Inżynieria oprogramowania Slajd nr 65 Architektura modelu OSI Aplikacja Ian Sommerville Inżynieria oprogramowania Slajd nr 66 33
Inżynieria Programowania - Projektowanie architektoniczne
Inżynieria Programowania - Projektowanie architektoniczne Katedra Informatyki, Politechnika Świętokrzyska w Kielcach Kielce, 22 października 2016 1 2 3 4 5 Architektury charakterystyczne dla różnych dziedzin
Bardziej szczegółowoProjektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34
Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34 Projektowanie oprogramowania cd. 2/34 Modelowanie CRC Modelowanie CRC (class-responsibility-collaborator) Metoda identyfikowania poszczególnych
Bardziej szczegółowoCo to jest jest oprogramowanie? 8. Co to jest inżynieria oprogramowania? 9. Jaka jest różnica pomiędzy inżynierią oprogramowania a informatyką?
ROZDZIAŁ1 Podstawy inżynierii oprogramowania: - Cele 2 - Zawartość 3 - Inżynieria oprogramowania 4 - Koszty oprogramowania 5 - FAQ o inżynierii oprogramowania: Co to jest jest oprogramowanie? 8 Co to jest
Bardziej szczegółowoAnaliza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32
Analiza i projektowanie oprogramowania Analiza i projektowanie oprogramowania 1/32 Analiza i projektowanie oprogramowania 2/32 Cel analizy Celem fazy określania wymagań jest udzielenie odpowiedzi na pytanie:
Bardziej szczegółowoWykład 3 Wymagania. MIS n Inżynieria oprogramowania Październik Kazimierz Michalik Akademia Górniczo-Hutnicza im. S. Staszica w Krakowie
Wykład 3 MIS-1-505-n Inżynieria Październik 2014 Kazimierz Michalik Akademia Górniczo-Hutnicza im. S. Staszica w Krakowie 3.1 Agenda 1 2 3 4 5 3.2 Czynności w czasie produkcji. Inżynieria stara się zidentyfikować
Bardziej szczegółowoArchitektura Systemu. Architektura systemu umożliwia kontrolowanie iteracyjnego i przyrostowego procesu tworzenia systemu.
Architektura Systemu Architektura systemu umożliwia kontrolowanie iteracyjnego i przyrostowego procesu tworzenia systemu. Architektura jest zbiorem decyzji dotyczących: organizacji systemu komputerowego,
Bardziej szczegółowoWykład 1 Inżynieria Oprogramowania
Wykład 1 Inżynieria Oprogramowania Wstęp do inżynierii oprogramowania. Cykle rozwoju oprogramowaniaiteracyjno-rozwojowy cykl oprogramowania Autor: Zofia Kruczkiewicz System Informacyjny =Techniczny SI
Bardziej szczegółowoWykład 4. Projektowanie. MIS n Inżynieria oprogramowania Październik 2014
Wykład 4 MIS-1-505-n Inżynieria oprogramowania Październik 2014 Metody Kazimierz Michalik Akademia Górniczo-Hutnicza im. S. Staszica w Krakowie 4.1 Agenda 1 2 3 Metody Metody 4 5 4.2 Implementacja Metody
Bardziej szczegółowoProjektowanie oprogramowania. Wykład Weryfikacja i Zatwierdzanie Inżynieria Oprogramowania Kazimierz Michalik
Projektowanie oprogramowania Wykład Weryfikacja i Zatwierdzanie Inżynieria Oprogramowania Kazimierz Michalik Agenda Weryfikacja i zatwierdzanie Testowanie oprogramowania Zarządzanie Zarządzanie personelem
Bardziej szczegółowoWprowadzenie do metodologii modelowania systemów informacyjnych. Strategia (1) Strategia (2) Etapy Ŝycia systemu informacyjnego
Etapy Ŝycia systemu informacyjnego Wprowadzenie do metodologii modelowania systemów informacyjnych 1. Strategia 2. Analiza 3. Projektowanie 4. Implementowanie, testowanie i dokumentowanie 5. WdroŜenie
Bardziej szczegółowoPROGRAM PRAKTYKI ZAWODOWEJ. Technikum Zawód: technik informatyk
PROGRAM PRAKTYKI ZAWODOWEJ Technikum Zawód: technik informatyk 351203 Lp. Temat 1 Zajęcia wprowadzające. Zapoznanie z zakładem, regulaminem pracy, przepisami BHP oraz instruktaż bhp. 2 Montaż i eksploatacja
Bardziej szczegółowoInżynieria Programowania Inżynieria wymagań. Plan wykładu. Motto. Wstęp. Notatki. Notatki. Notatki. Notatki. Arkadiusz Chrobot
Inżynieria Programowania Inżynieria Arkadiusz Chrobot Katedra Informatyki, Politechnika Świętokrzyska w Kielcach Kielce, 20 października 2015 Plan wykładu 1. Wstęp 2. Studium wykonywalności 3. Określanie
Bardziej szczegółowoEtapy życia oprogramowania
Modele cyklu życia projektu informatycznego Organizacja i Zarządzanie Projektem Informatycznym Jarosław Francik marzec 23 w prezentacji wykorzystano również materiały przygotowane przez Michała Kolano
Bardziej szczegółowoEtapy życia oprogramowania. Modele cyklu życia projektu. Etapy życia oprogramowania. Etapy życia oprogramowania
Etapy życia oprogramowania Modele cyklu życia projektu informatycznego Organizacja i Zarządzanie Projektem Informatycznym Jarosław Francik marzec 23 Określenie wymagań Testowanie Pielęgnacja Faza strategiczna
Bardziej szczegółowoproblem w określonym kontekście siły istotę jego rozwiązania
Wzorzec projektowy Christopher Alexander: Wzorzec to sprawdzona koncepcja, która opisuje problem powtarzający się wielokrotnie w określonym kontekście, działające na niego siły, oraz podaje istotę jego
Bardziej szczegółowoInżynieria oprogramowania
Inżynieria oprogramowania (IO) Wykłady: mgr inż. Sławomir Wróblewski Godziny przyjęć: wtorki 10-11, środy 15-16 pokój nr 19 (6 piętro) Katedra Mikroelektroniki i Technik informatycznych Politechniki Łódzkiej,
Bardziej szczegółowoCykle życia systemu informatycznego
Cykle życia systemu informatycznego Cykl życia systemu informatycznego - obejmuję on okres od zgłoszenia przez użytkownika potrzeby istnienia systemu aż do wycofania go z eksploatacji. Składa się z etapów
Bardziej szczegółowoWytwórstwo oprogramowania. michał możdżonek
Wytwórstwo oprogramowania michał możdżonek 01.2008 Plan wykładu 1. Proces tworzenie oprogramowania 2. Zarządzanie projektami 3. Wymagania 4. Projektowanie 5. Testowanie 6. Szacowanie złożoności i kosztu
Bardziej szczegółowoWykorzystanie standardów serii ISO 19100 oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych
Wykorzystanie standardów serii ISO 19100 oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych dr inż. Adam Iwaniak Infrastruktura Danych Przestrzennych w Polsce i Europie Seminarium, AR Wrocław
Bardziej szczegółowoStruktura systemu operacyjnego. Opracował: mgr Marek Kwiatkowski
Struktura systemu operacyjnego Schemat budowy systemu operacyjnego model warstwowy Schemat budowy systemu operacyjnego części składowe Większość systemów operacyjnych opiera się o koncepcję jądra, która
Bardziej szczegółowopoziom: Core wersja: 2.6 moduł: B : Wytwarzanie SYLLABUS
poziom: Core wersja: 2.6 moduł: B : Wytwarzanie SYLLABUS Niniejszy dokument jest syllabusem obowiązującym dla certyfikatu EUCIP ver. 2.6. Prezentuje obszary wiedzy, których znajomość jest niezbędna do
Bardziej szczegółowoSYSTEMY OPERACYJNE: STRUKTURY I FUNKCJE (opracowano na podstawie skryptu PP: Królikowski Z., Sajkowski M. 1992: Użytkowanie systemu operacyjnego UNIX)
(opracowano na podstawie skryptu PP: Królikowski Z., Sajkowski M. 1992: Użytkowanie systemu operacyjnego UNIX) W informatyce występują ściśle obok siebie dwa pojęcia: sprzęt (ang. hardware) i oprogramowanie
Bardziej szczegółowoSVN. 10 października 2011. Instalacja. Wchodzimy na stronę http://tortoisesvn.tigris.org/ i pobieramy aplikację. Rysunek 1: Instalacja - krok 1
SVN 10 października 2011 Instalacja Wchodzimy na stronę http://tortoisesvn.tigris.org/ i pobieramy aplikację uruchamiany ponownie komputer Rysunek 1: Instalacja - krok 1 Rysunek 2: Instalacja - krok 2
Bardziej szczegółowoNIFIED M L ODELLING ANGUAGE. Diagramy czynności
U M L NIFIED ODELLING ANGUAGE Diagramy czynności 1 Czym jest diagram czynności? Jeden z pięciu rodzajów diagramów UML służących do modelowania dynamicznych aspektów systemu. Przedstawia przepływ sterowania
Bardziej szczegółowoSystemy GIS Systemy baz danych
Systemy GIS Systemy baz danych Wykład nr 5 System baz danych Skomputeryzowany system przechowywania danych/informacji zorganizowanych w pliki Użytkownik ma do dyspozycji narzędzia do wykonywania różnych
Bardziej szczegółowoZagadnienia (1/3) Data-flow diagramy przepływów danych ERD diagramy związków encji Diagramy obiektowe w UML (ang. Unified Modeling Language)
Zagadnienia (1/3) Rola modelu systemu w procesie analizy wymagań (inżynierii wymagań) Prezentacja różnego rodzaju informacji o systemie w zależności od rodzaju modelu. Budowanie pełnego obrazu systemu
Bardziej szczegółowoEgzamin / zaliczenie na ocenę*
WYDZIAŁ PODSTAWOWYCH PROBLEMÓW TECHNIKI Zał. nr 4 do ZW33/01 KARTA PRZEDMIOTU Nazwa w języku polskim : INŻYNIERIA OPROGRAMOWANIA Nazwa w języku angielskim: SOFTWARE ENGINEERING Kierunek studiów (jeśli
Bardziej szczegółowoIteracyjno-rozwojowy proces tworzenia oprogramowania Wykład 3 część 1
Iteracyjno-rozwojowy proces tworzenia oprogramowania Wykład 3 część 1 Zofia Kruczkiewicz 1 Zunifikowany iteracyjno- przyrostowy proces tworzenia oprogramowania kiedy? Przepływ działań Modelowanie przedsiębiorstwa
Bardziej szczegółowoPROJEKTOWANIE. kodowanie implementacja. PROJEKT most pomiędzy specyfikowaniem a kodowaniem
PROJEKTOWANIE określenie wymagań specyfikowanie projektowanie kodowanie implementacja testowanie produkt konserwacja Faza strategiczna Analiza Dokumentacja Instalacja PROJEKT most pomiędzy specyfikowaniem
Bardziej szczegółowoInżynieria oprogramowania (Software Engineering)
Inżynieria oprogramowania (Software Engineering) Wykład 2 Proces produkcji oprogramowania Proces produkcji oprogramowania (Software Process) Podstawowe założenia: Dobre procesy prowadzą do dobrego oprogramowania
Bardziej szczegółowoMetody Kompilacji Wykład 1 Wstęp
Metody Kompilacji Wykład 1 Wstęp Literatura: Alfred V. Aho, Ravi Sethi, Jeffrey D. Ullman: Compilers: Princiles, Techniques, and Tools. Addison-Wesley 1986, ISBN 0-201-10088-6 Literatura: Alfred V. Aho,
Bardziej szczegółowoProgramowanie zespołowe
Programowanie zespołowe Laboratorium 4 - modele tworzenia oprogramowania, manifest Agile i wstęp do Scruma mgr inż. Krzysztof Szwarc krzysztof@szwarc.net.pl Sosnowiec, 14 marca 2017 1 / 21 mgr inż. Krzysztof
Bardziej szczegółowoWstęp do zarządzania projektami
Wstęp do zarządzania projektami Definicja projektu Projekt to tymczasowe przedsięwzięcie podejmowane w celu wytworzenia unikalnego wyrobu, dostarczenia unikalnej usługi lub uzyskania unikalnego rezultatu.
Bardziej szczegółowoBazy danych 2. Wykład 1
Bazy danych 2 Wykład 1 Sprawy organizacyjne Materiały i listy zadań zamieszczane będą na stronie www.math.uni.opole.pl/~ajasi E-mail: standardowy ajasi@math.uni.opole.pl Sprawy organizacyjne Program wykładu
Bardziej szczegółowoZarządzanie i realizacja projektów systemu Microsoft SharePoint 2010
Zarządzanie i realizacja projektów systemu Microsoft SharePoint 2010 Geoff Evelyn Przekład: Natalia Chounlamany APN Promise Warszawa 2011 Spis treści Podziękowania......................................................
Bardziej szczegółowoZasady organizacji projektów informatycznych
Zasady organizacji projektów informatycznych Systemy informatyczne w zarządzaniu dr hab. inż. Joanna Józefowska, prof. PP Plan Definicja projektu informatycznego Fazy realizacji projektów informatycznych
Bardziej szczegółowoMonitorowanie i zarządzanie urządzeniami sieciowymi przy pomocy narzędzi Net-SNMP
Uniwersytet Mikołaja Kopernika w Toruniu Wydział Matematyki i Informatyki Wydział Fizyki, Astronomii i Informatyki Stosowanej Szymon Klimuk Nr albumu: 187408 Praca magisterska na kierunku Informatyka Monitorowanie
Bardziej szczegółowoInżynieria Programowania Zarządzanie projektem
Inżynieria Programowania Zarządzanie projektem Katedra Informatyki, Politechnika Świętokrzyska w Kielcach Kielce, 12 października 2015 Plan wykładu 1 2 3 4 5 Plan wykładu 1 2 3 4 5 Plan wykładu 1 2 3 4
Bardziej szczegółowoMODELE CYKLU ŻYCIA OPROGRAMOWANIA (1) Model kaskadowy (często stosowany w praktyce do projektów o niewielkiej złożonoś
OPROGRAMOWANIA (1) Model kaskadowy (często stosowany w praktyce do projektów o niewielkiej złożonoś (często stosowany w praktyce do projektów o niewielkiej złożoności) wymagania specyfikowanie kodowanie
Bardziej szczegółowoDiagramu Związków Encji - CELE. Diagram Związków Encji - CHARAKTERYSTYKA. Diagram Związków Encji - Podstawowe bloki składowe i reguły konstrukcji
Diagramy związków encji (ERD) 1 Projektowanie bazy danych za pomocą narzędzi CASE Materiał pochodzi ze strony : http://jjakiela.prz.edu.pl/labs.htm Diagramu Związków Encji - CELE Zrozumienie struktury
Bardziej szczegółowoPodstawy programowania III WYKŁAD 4
Podstawy programowania III WYKŁAD 4 Jan Kazimirski 1 Podstawy UML-a 2 UML UML Unified Modeling Language formalny język modelowania systemu informatycznego. Aktualna wersja 2.3 Stosuje paradygmat obiektowy.
Bardziej szczegółowoZagadnienia egzaminacyjne INFORMATYKA. stacjonarne. I-go stopnia. (INT) Inżynieria internetowa STOPIEŃ STUDIÓW TYP STUDIÓW SPECJALNOŚĆ
(INT) Inżynieria internetowa 1.Tryby komunikacji między procesami w standardzie Message Passing Interface. 2. HTML DOM i XHTML cel i charakterystyka. 3. Asynchroniczna komunikacja serwerem HTTP w technologii
Bardziej szczegółowoInżynieria oprogramowania. Wykład 7 Inżynieria wymagań: punkty widzenia, scenariusze, przypadki użycia
Inżynieria oprogramowania Wykład 7 Inżynieria wymagań: punkty widzenia, scenariusze, przypadki użycia Punkt widzenia (Point of View) Systemy oprogramowania mają zwykle kilku różnych użytkowników. Wielu
Bardziej szczegółowoWstęp do zarządzania projektami
Wstęp do zarządzania projektami Definicja projektu Projekt to tymczasowe przedsięwzięcie podejmowane w celu wytworzenia unikalnego wyrobu, dostarczenia unikalnej usługi lub uzyskania unikalnego rezultatu.
Bardziej szczegółowoBaza danych to zbiór wzajemnie powiązanych ze sobą i zintegrowanych danych z pewnej dziedziny.
PI-14 01/12 Baza danych to zbiór wzajemnie powiązanych ze sobą i zintegrowanych danych z pewnej dziedziny.! Likwidacja lub znaczne ograniczenie redundancji (powtarzania się) danych! Integracja danych!
Bardziej szczegółowoKomputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl
Komputerowe Systemy Przemysłowe: Modelowanie - UML Arkadiusz Banasik arkadiusz.banasik@polsl.pl Plan prezentacji Wprowadzenie UML Diagram przypadków użycia Diagram klas Podsumowanie Wprowadzenie Języki
Bardziej szczegółowoDLA SEKTORA INFORMATYCZNEGO W POLSCE
DLA SEKTORA INFORMATYCZNEGO W POLSCE SRK IT obejmuje kompetencje najważniejsze i specyficzne dla samego IT są: programowanie i zarządzanie systemami informatycznymi. Z rozwiązań IT korzysta się w każdej
Bardziej szczegółowoSpis treści. Dzień 1. I Konfiguracja sterownika (wersja 1410) II Edycja programu (wersja 1406) III Środowisko TIA Portal (wersja 1410)
Spis treści Dzień 1 I Konfiguracja sterownika (wersja 1410) I-3 Zadanie Tworzenie konfiguracji sprzętowej I-4 Co jest potrzebne by zacząć? I-5 TIA Portal ekran startowy I-6 Tworzenie nowego projektu I-7
Bardziej szczegółowoProgramowanie współbieżne i rozproszone
Programowanie współbieżne i rozproszone WYKŁAD 11 dr inż. CORBA CORBA (Common Object Request Broker Architecture) standard programowania rozproszonego zaproponowany przez OMG (Object Management Group)
Bardziej szczegółowoInżynieria Programowania - Projektowanie architektoniczne. Plan wykładu. Motto. Wstęp. Notatki. Notatki. Notatki. Notatki.
Inżynieria Programowania - Projektowanie architektoniczne Arkadiusz Chrobot Katedra Informatyki, Politechnika Świętokrzyska w Kielcach Kielce, 30 marca 2013 Plan wykładu 1. Wstęp 2. Strukturalizacja systemu
Bardziej szczegółowoUsługa: Testowanie wydajności oprogramowania
Usługa: Testowanie wydajności oprogramowania testerzy.pl przeprowadzają kompleksowe testowanie wydajności różnych systemów informatycznych. Testowanie wydajności to próba obciążenia serwera, bazy danych
Bardziej szczegółowo<Nazwa firmy> <Nazwa projektu> Specyfikacja dodatkowa. Wersja <1.0>
Wersja [Uwaga: Niniejszy wzór dostarczony jest w celu użytkowania z Unified Process for EDUcation. Tekst zawarty w nawiasach kwadratowych i napisany błękitną kursywą
Bardziej szczegółowoInżynieria Programowania Zarządzanie projektem. Plan wykładu. Motto. Motto 2. Notatki. Notatki. Notatki. Notatki.
Inżynieria Programowania Zarządzanie projektem Arkadiusz Chrobot Katedra Informatyki, Politechnika Świętokrzyska w Kielcach Kielce, 3 października 2013 Plan wykładu 1. Wstęp 2. Czynności zarządzania 3.
Bardziej szczegółowoWykład 7. Projektowanie kodu oprogramowania
Wykład 7 Projektowanie kodu oprogramowania Treść wykładu cykl życiowy oprogramowania zagadnienia inżynierii oprogramowania tworzenie oprogramowania z gotowych elementów tworzenie niezawodnego oprogramowania
Bardziej szczegółowoZagadnienia egzaminacyjne INFORMATYKA. Stacjonarne. I-go stopnia. (INT) Inżynieria internetowa STOPIEŃ STUDIÓW TYP STUDIÓW SPECJALNOŚĆ
(INT) Inżynieria internetowa 1. Tryby komunikacji między procesami w standardzie Message Passing Interface 2. HTML DOM i XHTML cel i charakterystyka 3. Asynchroniczna komunikacja serwerem HTTP w technologii
Bardziej szczegółowoWiększe możliwości dzięki LabVIEW 2009: programowanie równoległe, technologie bezprzewodowe i funkcje matematyczne w systemach czasu rzeczywistego
Większe możliwości dzięki LabVIEW 2009: programowanie równoległe, technologie bezprzewodowe i funkcje matematyczne w systemach czasu rzeczywistego Dziś bardziej niż kiedykolwiek narzędzia używane przez
Bardziej szczegółowoGenerated by Foxit PDF Creator Foxit Software http://www.foxitsoftware.com For evaluation only. System Szablonów
System Szablonów System szablonów System szablonów to biblioteka, która pozwala oddzielić warstwę prezentacji od warstwy logicznej. Aplikacja WWW najpierw pobiera wszystkie dane, przetwarza je i umieszcza
Bardziej szczegółowoInżynieria Oprogramowania. Inżynieria Oprogramowania 1/36
Inżynieria Oprogramowania Inżynieria Oprogramowania 1/36 Inżynieria Oprogramowania 2/36 Literatura 1. Gamma E. i in.: Wzorce projektowe, WNT, Warszawa 2005 2. Jaszkiewicz A.: Inżynieria oprogramowania,
Bardziej szczegółowoPROLOG WSTĘP DO INFORMATYKI. Akademia Górniczo-Hutnicza. Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej.
Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej WSTĘP DO INFORMATYKI Adrian Horzyk PROLOG www.agh.edu.pl Pewnego dnia przyszedł na świat komputer Komputery
Bardziej szczegółowoInżynieria Programowania Inżynieria wymagań
Katedra Informatyki, Politechnika Świętokrzyska w Kielcach Kielce, 11 marca 2017 Plan wykładu 1 2 3 Określanie i analizowanie wymagań 4 5 Plan wykładu 1 2 3 Określanie i analizowanie wymagań 4 5 Plan wykładu
Bardziej szczegółowoPytania z przedmiotów kierunkowych
Pytania na egzamin dyplomowy z przedmiotów realizowanych przez pracowników IIwZ studia stacjonarne I stopnia Zarządzanie i Inżynieria Produkcji Pytania z przedmiotów kierunkowych 1. Co to jest algorytm?
Bardziej szczegółowoOpis Architektury Systemu Galileo
Opis Architektury Systemu Galileo Sławomir Pawlewicz Alan Pilawa Joanna Sobczyk Marek Sobierajski 5 czerwca 2006 1 Spis treści 1 Wprowadzenie 5 1.1 Cel.......................................... 5 1.2 Zakres........................................
Bardziej szczegółowo4. Procesy pojęcia podstawowe
4. Procesy pojęcia podstawowe 4.1 Czym jest proces? Proces jest czymś innym niż program. Program jest zapisem algorytmu wraz ze strukturami danych na których algorytm ten operuje. Algorytm zapisany bywa
Bardziej szczegółowoInżynieria wymagań. Wykład 2 Proces pisania przypadków użycia. Część 6 Wskazówki i sugestie
Inżynieria wymagań Wykład 2 Proces pisania przypadków użycia Część 6 Wskazówki i sugestie Opracowane w oparciu o materiały IBM (kurs REQ570: Writing Good Use Cases) Wyzwania podczas pisania przypadków
Bardziej szczegółowoTechnik informatyk Symbol 351203
Technik informatyk Symbol 351203 Kwalifikacje: E.12. - Montaż i eksploatacja komputerów osobistych oraz urządzeń peryferyjnych. E.13. - Projektowanie lokalnych sieci komputerowych i administrowanie sieciami.
Bardziej szczegółowoWykład I. Wprowadzenie do baz danych
Wykład I Wprowadzenie do baz danych Trochę historii Pierwsze znane użycie terminu baza danych miało miejsce w listopadzie w 1963 roku. W latach sześcdziesątych XX wieku został opracowany przez Charles
Bardziej szczegółowoWprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera
Dariusz Wawrzyniak Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działania systemu operacyjnego (2) Definicja systemu operacyjnego (1) Miejsce,
Bardziej szczegółowoProblemy niezawodnego przetwarzania w systemach zorientowanych na usługi
Problemy niezawodnego przetwarzania w systemach zorientowanych na usługi Jerzy Brzeziński, Anna Kobusińska, Dariusz Wawrzyniak Instytut Informatyki Politechnika Poznańska Plan prezentacji 1 Architektura
Bardziej szczegółowoInżynieria wymagań. Inżynieria wymagań 1/1
Inżynieria wymagań Inżynieria wymagań 1/1 Inżynieria wymagań 2/1 Wymagania stawiane oprogramowaniu Opisy usług i ograniczeń są wymaganiami stawianymi systemowi. Proces wynajdowania, analizowania, dokumentowania
Bardziej szczegółowoWprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera
Dariusz Wawrzyniak Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działania systemu operacyjnego (2) Miejsce, rola i zadania systemu operacyjnego
Bardziej szczegółowoRozkład materiału do nauczania informatyki w liceum ogólnokształcącym Wersja I
Zespół TI Instytut Informatyki Uniwersytet Wrocławski ti@ii.uni.wroc.pl http://www.wsip.com.pl/serwisy/ti/ Rozkład materiału do nauczania informatyki w liceum ogólnokształcącym Wersja I Rozkład zgodny
Bardziej szczegółowoSpecyfikowanie wymagań przypadki użycia
Specyfikowanie wymagań przypadki użycia Prowadzący Dr inż. Zofia 1 La1 La2 Forma zajęć - laboratorium Wprowadzenie do laboratorium. Zasady obowiązujące na zajęciach. Wprowadzenie do narzędzi wykorzystywanych
Bardziej szczegółowoPLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ),
PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ), Program 351203 Opracowanie: Grzegorz Majda Tematyka zajęć 2. Przygotowanie środowiska pracy
Bardziej szczegółowoSystemy operacyjne. Wprowadzenie. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak
Wprowadzenie Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działania systemu operacyjnego
Bardziej szczegółowoAnaliza i projektowanie obiektowe 2016/2017. Wykład 10: Tworzenie projektowego diagramu klas
Analiza i projektowanie obiektowe 2016/2017 Wykład 10: Tworzenie projektowego diagramu klas Jacek Marciniak Wydział Matematyki i Informatyki Uniwersytet im. Adama Mickiewicza 1 Plan wykładu 1. Projektowy
Bardziej szczegółowoRozkład materiału do nauczania informatyki w liceum ogólnokształcącym Wersja II
Zespół TI Instytut Informatyki Uniwersytet Wrocławski ti@ii.uni.wroc.pl http://www.wsip.com.pl/serwisy/ti/ Rozkład materiału do nauczania informatyki w liceum ogólnokształcącym Wersja II Rozkład wymagający
Bardziej szczegółowoZdalne monitorowanie i zarządzanie urządzeniami sieciowymi
Uniwersytet Mikołaja Kopernika w Toruniu Wydział Matematyki i Informatyki Wydział Fizyki, Astronomii i Infomatyki Stosowanej Piotr Benetkiewicz Nr albumu: 168455 Praca magisterska na kierunku Informatyka
Bardziej szczegółowoZARZĄDZANIE PROCESAMI I PROJEKTAMI. Zakres projektu. dr inż. ADAM KOLIŃSKI ZARZĄDZANIE PROCESAMI I PROJEKTAMI. Zakres projektu. dr inż.
1 ZARZĄDZANIE PROCESAMI I PROJEKTAMI 2 ZAKRES PROJEKTU 1. Ogólna specyfika procesów zachodzących w przedsiębiorstwie 2. Opracowanie ogólnego schematu procesów zachodzących w przedsiębiorstwie za pomocą
Bardziej szczegółowo4. Procesy pojęcia podstawowe
4. Procesy pojęcia podstawowe 4.1 Czym jest proces? Proces jest czymś innym niż program. Program jest zapisem algorytmu wraz ze strukturami danych na których algorytm ten operuje. Algorytm zapisany bywa
Bardziej szczegółowoPodstawy programowania
Podstawy programowania Część pierwsza Od języka symbolicznego do języka wysokiego poziomu Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót
Bardziej szczegółowoTeraz bajty. Informatyka dla szkół ponadpodstawowych. Zakres rozszerzony. Część 1.
Teraz bajty. Informatyka dla szkół ponadpodstawowych. Zakres rozszerzony. Część 1. Grażyna Koba MIGRA 2019 Spis treści (propozycja na 2*32 = 64 godziny lekcyjne) Moduł A. Wokół komputera i sieci komputerowych
Bardziej szczegółowoWstęp. Podstawy inżynierii oprogramowania. Slajdy na podstawie podręcznika: Iana Sommerville a Inżynieria oprogramowania
Wstęp Podstawy inżynierii oprogramowania Slajdy na podstawie podręcznika: Iana Sommerville a Inżynieria oprogramowania Slajd 1 Inżynieria oprogramowania Gospodarki wszystkich rozwiniętych krajów zależą
Bardziej szczegółowoTechnik informatyk. 3) efekty kształcenia właściwe dla kwalifikacji wyodrębnionych w zawodzie technik informatyk
Technik informatyk Technik informatyk potwierdzając kwalifikacje wchodzące w skład tego zawodu, uzyskuje wiedzę i umiejętności niezbędne do pracy w trzech obszarach branży informatycznej. E12 - montaż
Bardziej szczegółowoProcesowa specyfikacja systemów IT
Procesowa specyfikacja systemów IT BOC Group BOC Information Technologies Consulting Sp. z o.o. e-mail: boc@boc-pl.com Tel.: (+48 22) 628 00 15, 696 69 26 Fax: (+48 22) 621 66 88 BOC Management Office
Bardziej szczegółowoWymagania klienta mogą być opisane na różnych poziomach abstrakcji: Podział wymagań: Wymagania funkcjonalne Wymagania niefunkcjonalne
Definiowanie wymagań Wymagania klienta mogą być opisane na różnych poziomach abstrakcji: 1. Definicja wymagań jest zapisana w języku naturalnym jako rezultat rozmów z przedstawiciela klienta 2. Specyfikacja
Bardziej szczegółowoInżynieria Programowania Testowanie oprogramowania
Inżynieria Programowania Testowanie oprogramowania Katedra Informatyki, Politechnika Świętokrzyska w Kielcach Kielce, 15 stycznia 2011 Plan wykładu 1 2 3 4 5 Plan wykładu 1 2 3 4 5 Plan wykładu 1 2 3 4
Bardziej szczegółowoSzybkie prototypowanie w projektowaniu mechatronicznym
Szybkie prototypowanie w projektowaniu mechatronicznym Systemy wbudowane (Embedded Systems) Systemy wbudowane (ang. Embedded Systems) są to dedykowane architektury komputerowe, które są integralną częścią
Bardziej szczegółowoPodyplomowe Studium Informatyki w Bizniesie Wydział Matematyki i Informatyki, Uniwersytet Łódzki specjalność: Tworzenie aplikacji w środowisku Oracle
Podyplomowe Studium Informatyki w Bizniesie Wydział Matematyki i Informatyki, Uniwersytet Łódzki specjalność: Tworzenie aplikacji w środowisku Oracle EFEKTY KSZTAŁCENIA Wiedza Absolwent tej specjalności
Bardziej szczegółowoPRZEWODNIK PO PRZEDMIOCIE
Nazwa przedmiotu: Podstawy Informatyki Basic Informatics Kierunek: Zarządzanie i Inżynieria Produkcji Rodzaj przedmiotu: ogólny Poziom studiów: studia I stopnia forma studiów: studia stacjonarne Rodzaj
Bardziej szczegółowoIn ż ynieria oprogramowania wykład II Modele i fazy cyklu życia oprogramowania
In ż ynieria oprogramowania wykład II Modele i fazy cyklu życia oprogramowania prowadzący: dr inż. Krzysztof Bartecki www.k.bartecki.po.opole.pl Proces tworzenia oprogramowania jest zbiorem czynności i
Bardziej szczegółowoSCENARIUSZ LEKCJI. Streszczenie. Czas realizacji. Podstawa programowa
Autorzy scenariusza: SCENARIUSZ LEKCJI OPRACOWANY W RAMACH PROJEKTU: INFORMATYKA MÓJ SPOSÓB NA POZNANIE I OPISANIE ŚWIATA. PROGRAM NAUCZANIA INFORMATYKI Z ELEMENTAMI PRZEDMIOTÓW MATEMATYCZNO-PRZYRODNICZYCH
Bardziej szczegółowoINŻYNIERIA OPROGRAMOWANIA TESTOWANIE INTEGRACYJNE
INŻYNIERIA OPROGRAMOWANIA TESTOWANIE INTEGRACYJNE Definicja ITQB Testowanie integracyjne (integration testing) wykonywane w celu wykrycia defektów w interfejsach i interakcjach pomiędzy modułami lub systemami
Bardziej szczegółowokoniec punkt zatrzymania przepływów sterowania na diagramie czynności
Diagramy czynności opisują dynamikę systemu, graficzne przedstawienie uszeregowania działań obrazuje strumień wykonywanych czynności z ich pomocą modeluje się: - scenariusze przypadków użycia, - procesy
Bardziej szczegółowoDokument Detaliczny Projektu
Dokument Detaliczny Projektu Dla Biblioteki miejskiej Wersja 1.0 Streszczenie Niniejszy dokument detaliczny projektu(ddp) przedstawia szczegóły pracy zespołu projektowego, nad stworzeniem aplikacji bazodanowej
Bardziej szczegółowoProgramowanie niskopoziomowe. dr inż. Paweł Pełczyński ppelczynski@swspiz.pl
Programowanie niskopoziomowe dr inż. Paweł Pełczyński ppelczynski@swspiz.pl 1 Literatura Randall Hyde: Asembler. Sztuka programowania, Helion, 2004. Eugeniusz Wróbel: Praktyczny kurs asemblera, Helion,
Bardziej szczegółowoMechatronika i inteligentne systemy produkcyjne. Modelowanie systemów mechatronicznych Platformy przetwarzania danych
Mechatronika i inteligentne systemy produkcyjne Modelowanie systemów mechatronicznych Platformy przetwarzania danych 1 Sterowanie procesem oparte na jego modelu u 1 (t) System rzeczywisty x(t) y(t) Tworzenie
Bardziej szczegółowoREFERAT PRACY DYPLOMOWEJ
REFERAT PRACY DYPLOMOWEJ Temat pracy: Projekt i implementacja środowiska do automatyzacji przeprowadzania testów aplikacji internetowych w oparciu o metodykę Behavior Driven Development. Autor: Stepowany
Bardziej szczegółowoOPROGRAMOWANIE WSPOMAGAJĄCE ZARZĄDZANIE PROJEKTAMI. PLANOWANIE ZADAŃ I HARMONOGRAMÓW. WYKRESY GANTTA
OPROGRAMOWANIE WSPOMAGAJĄCE ZARZĄDZANIE PROJEKTAMI. PLANOWANIE ZADAŃ I HARMONOGRAMÓW. WYKRESY GANTTA Projekt to metoda na osiągnięcie celów organizacyjnych. Jest to zbiór powiązanych ze sobą, zmierzających
Bardziej szczegółowo