Technologia programowania

Wielkość: px
Rozpocząć pokaz od strony:

Download "Technologia programowania"

Transkrypt

1 Technologia programowania Olsztyn Wojciech Sobieski

2 Technologia programowania Technologia programowania - nauka o procesach wytwarzania systemów informatycznych (programów komputerowych).

3 Technologia programowania W zakres technologii programowania wchodzą: sposoby prowadzenia projektów informatycznych, metody analizy i projektowania systemów, techniki planowania, szacowania kosztów, harmonogramowania i monitorowania projektów informatycznych, techniki zwiększania niezawodności oprogramowania, sposoby testowania systemów i szacowania niezawodności, sposoby przygotowania dokumentacji technicznej i użytkowej, procedury kontroli jakości, metody redukcji kosztów konserwacji, techniki pracy zespołowej.

4 Technologia programowania Program komputerowy - ciąg instrukcji do wykonania dla komputera. Można też powiedzieć, że program to algorytm zapisany w języku programowania. Program może występować w dwóch postaciach: jako program wykonywalny (czyli zapisany w języku maszynowym) albo jako kod źródłowy, czyli postać zrozumiała dla programisty.

5 Fazy powstawania programów Fazy powstawania programu komputerowego: 1. Określanie wymagań (specyfikacja), 2. Wybór języka programowania, 3. Tworzenie algorytmu, 4. Projektowanie systemu, 5. Implementacja, 6. Scalanie systemu, 7. Testy końcowe, 8. Tworzenie dokumentacji użytkowej, 9. Konserwacja systemu.

6 Fazy powstawania programów 1. Określanie wymagań służy do sprecyzowania potrzeb. Na tym etapie formułuje się wyobrażenia o programie i jego działaniu oraz precyzuje wymagania. Na podstawie wymagań tworzona jest tzw. specyfikacja projektu, czyli zakres czynności, jaki dany program ma wykonywać. Jeżeli program jest tworzony na zamówienie, należy w pewnym momencie zażądać zamrożenia specyfikacji w przeciwnym razie klient może zażądać zmian (nawet po napisaniu programu), a wykonawca będzie to musiał zrobić nieodpłatnie. Czasami nawet mała zmiana wymagań może w decydujący sposób wpłynąć na sposób realizacji zamówienia, co może nawet doprowadzić do konieczności rozpoczęcia praktycznie od nowa.

7 Fazy powstawania programów Tworzenie wymagań możliwe jest to na kilka sposobów: wywiad strukturalny polega na zadawaniu wcześniej opracowanej listy pytań, wywiad swobodny polega na zadawaniu dowolnych pytań i notowaniu odpowiedzi, ankieta wysyłana do dużej liczby potencjalnych klientów, analiza formularzy i innych dokumentów klienta, analiza cyklu pracy i wykonywanych czynności, analiza scenariuszy używania systemu, konstrukcja prototypu.

8 Fazy powstawania programów Dokumentacja fazy określania wymagań powinna zawierać: wprowadzenie: zakres systemu, cele i konteksty jego używania, opis ewolucji systemu: przewidywane zmiany w systemie, specyfikację wymagań funkcjonalnych: jakie czynności i operacje system powinien wykonywać, specyfikację wymagań niefunkcjonalnych: przy jakich ograniczeniach system powinien powstać i działać. opis modelu systemu lub jego prototypu, opis wymagań sprzętowych, słownik zawierający wyjaśnienia używanych w dokumentacji pojęć fachowych i informatycznych.

9 Fazy powstawania programów Jeżeli program komputerowy powstaje na użytek programisty, faza określania wymagań może zostać skrócona do minimum. Nie powinno się jednak pomijać fazy dokumentacji powinna oba być prowadzona przynajmniej w zakresie podstawowym, umożliwiającym rozwój i modyfikację programu nawet po wielu latach.

10 Fazy powstawania programów 2. Wybór języka programowania zależy głównie od przeznaczenia aplikacji. Przeważnie istnieje przynajmniej kilka języków programowania nadających się budowy systemu spełniającego wymagania. Wybór języka programowania może być dokonany przed lub po stworzeniu algorytmu. W pierwszym przypadku dobór języka może w znaczny sposób wpłynąć na tok rozumowania i zdeterminować budowę algorytmu.

11 Fazy powstawania programów Wybór języka programowania może być: narzucony przez zamawiającego, pozostawiony woli wykonawcy musi on wówczas uwzględnić: dziedzinę aplikacji, doświadczenie zespołu programistów, posiadane narzędzia, dostępność gotowych modułów i bibliotek, potrzeby innych prowadzonych równolegle prac.

12 Fazy powstawania programów 3. Tworzenie algorytmu - jest to jeden z najważniejszych etapów projektowania, wymaga on od programisty (bądź projektanta) starannego przemyślenia i przygotowania. Nie należy przystępować do pisania programu nie mając wyobrażenia o jego budowie. Takie postępowanie wydłuży zapewne czas realizacji projektu, zwiększy prawdopodobieństwo wystąpienia błędów oraz nie daje gwarancji optymalności rozwiązań. Dużych i rozbudowanych programów praktycznie nie da się napisać bez odpowiednich przygotowań. Jeżeli to jest tylko możliwe należy korzystać z istniejących i sprawdzonych algorytmów.

13 Fazy powstawania programów 4. Projektowanie systemu służy do stworzenia szkieletu kodu źródłowego (systemu). Techniki projektowania: projektowanie strukturalne: zorientowane na akcję, zorientowane na dane, projektowanie obiektowe.

14 Fazy powstawania programów Faza projektowania składa się z następujących etapów: projektowanie architektury systemu, organizacja danych i ich nazewnictwa, szczegółowe projektowanie modułów, weryfikacja i testowanie.

15 Fazy powstawania programów 5. Implementacja jest to właściwa faza budowy programu. Małe systemy informatyczne mogą być realizowane przez jednego programistę. Systemy większe wymagają utworzenia zespołu bądź też grupy zespołów programistycznych.

16 Fazy powstawania programów 6. Scalanie systemu w przypadku tworzenia aplikacji przez zespół programistów należy połączyć wszystkie moduły w jedną całość. Rozróżnia się trzy podstawowe techniki integracji systemu informatycznego: metoda zstępująca najpierw integrowane są moduły sterujące, a później moduły wykonawcze, metoda wstępująca najpierw integrowane są moduły wykonawcze a później sterujące, metoda mieszana moduły sterujące integrowane są metodą zstępującą, a wykonawcze wstępującą.

17 Fazy powstawania programów Model Zalety Wady Integracja całości Metoda zstępująca Metoda wstępująca Metoda mieszana - Izolacja błędów. Poważne błędy projektowe są wykrywane bardzo wcześnie. Izolacja błędów. Moduły, które mogą być powtórnie użyte są dobrze przetestowane. Izolacja błędów. Poważne błędy projektowe są wykrywane bardzo wcześnie. Moduły, które mogą być powtórnie użyte są dobrze przetestowane. Brak izolacji błędów. Poważne błędy projektowe wykrywane są bardzo późno. Moduły, które mogą być powtórnie użyte nie są w pełni przetestowane. Poważne błędy projektowe są wykrywane bardzo późno. - Porównanie metod integracji systemu.

18 Fazy powstawania programów 7. Testy końcowe służą do ostatecznego potwierdzenia poprawności systemu. Rozróżnia się następujące etapy testów: testowanie przez Dział Kontroli Jakości, alfa-testy przez wybraną (najczęściej małą) grupę użytkowników, beta-testy przez wybraną (większą) grupę użytkowników, testy akceptacji (na rzeczywistych danych), wykonywane przez odbiorcę.

19 Fazy powstawania programów Kryteria wykonywania testów: użyteczność aplikacji (łatwość użycia, użyteczność oferowanych funkcji, opłacalność), solidność (częstość krytycznych awarii systemu, czas podniesienia systemu po awarii, czas odbudowy systemu po awarii), odporność (na zmieniające się warunki otoczenia, błędne dane, nieoczekiwane reakcje użytkowników), efektywność (szybkość, czas reakcji, zajętość pamięci), poprawność (zgodność ze specyfikacją).

20 Fazy powstawania programów Metody wykonywania testów: test czarnej skrzynki - odbywa się na poziomie interfejsu, test szklanej skrzynki - odbywa się na poziomie kodu źródłowego.

21 Fazy powstawania programów 8. Dokumentacja użytkowa powinna zawierać następujące elementy: opis funkcjonalny opis przeznaczenia oraz głównych możliwości programu, podręcznik użytkownika opis przeznaczony dla typowych użytkowników, powinien zawierać: sposoby uruchamiania oraz kończenia pracy z systemem, sposoby realizacji podstawowych funkcji systemu, metody obsługi błędnych sytuacji, sposoby korzystania z systemu pomocy, kompletny przykład korzystania z systemu.

22 Fazy powstawania programów kompletny opis systemu część przeznaczona dla doświadczonych użytkowników, powinien zawierać: szczegółowy opis wszystkich funkcji systemu, informacje o sposobach wywoływania tych funkcji, opisy formatu danych, opisy błędów, które mogą pojawić się w trakcie pracy z systemem, informacje o wszelkich ograniczeniach dotyczących np. zakresu danych.

23 Fazy powstawania programów opis instalacji przeznaczony dla administratorów systemu. Powinien zawierać opis procedury instalacyjnej i konfiguracji programu, podręcznik administratora systemu zawierający opis możliwości modyfikacji ustawień systemu oraz sposoby udostępniania go użytkownikom końcowych.

24 Fazy powstawania programów Na jakość dokumentacji mają wpływ następujące czynniki: struktura podręcznika, zachowanie standardów, sposób pisania (stosowanie formy aktywnej, poprawność gramatyczna i ortograficzna, krótkie zdania, oszczędność sów, precyzyjna definicja używanych terminów, powtarzanie trudnych opisów, stosowanie tytułów i podtytułów sekcji, wyliczeń i wyróżnień, zrozumiałe odwołania do innych rozdziałów).

25 Fazy powstawania programów 9. Konserwacja systemu zawiera zespół czynności, dokonywanych po stworzeniu aplikacji, obejmujących: poprawianie błędów, udoskonalanie produktu, dostosowywanie do nowych warunków.

26 Fazy powstawania programów Koszty konserwacji są często bardzo duże do 2/3 nakładów finansowych na aplikacje. Wynika to z następujących przyczyn: poprawki mogą być przyczyną nowych błędów, udoskonalenie wymaga przejścia przez wszystkie fazy produkcji i dokonania zmian w specyfikacji, projekcie i dokumentacji, poprawione powinny być wszystkie dokumenty, w których znajdują się informacje dotyczące zmienionych fragmentów produktu.

27 Fazy powstawania programów Zarządzanie fazą konserwacji: raport o błędzie formalna metoda dokumentacji wykrytych przez użytkowników błędów systemu musi zawierać informacje wystarczające do odtworzenia błędu, błędy krytyczne muszą być poprawiane natychmiast, dla pozostałych powinny zostać opisane przyczyny błędu i ewentualne metody ich obejścia, opisane raporty o błędach wraz z datą ich poprawienia powinny być udostępniane wszystkim użytkownikom, błędy niekrytyczne powinny być poprawiane paczkami obniża to koszty testowania i modyfikacji dokumentacji, zmodyfikowany produkt powinien być sprawdzony przez niezależny zespół kontroli.

28 Modele tworzenia programów Zbuduj pierwszą wersję Poprawiaj aż klient będzie zadowolony Model Zbuduj i Poprawiaj Budowanie Konserwacja Użytkowanie Koniec

29 Modele tworzenia programów Określenie wymagań Sprawdzenie Specyfikacja Sprawdzenie Zmiana wymagań Sprawdzenie Projektowanie Sprawdzenie Model kaskadowy Implementacja Sprawdzenie Integracja Sprawdzenie Budowanie Konserwacja Użytkowanie Koniec

30 Modele tworzenia programów Szybki prototyp Sprawdzenie Specyfikacja Sprawdzenie Zmiana wymagań Sprawdzenie Projektowanie Sprawdzenie Implementacja Sprawdzenie Prototypowanie Integracja Sprawdzenie Budowanie Konserwacja Użytkowanie Koniec

31 Modele tworzenia programów Określenie wymagań Sprawdzenie Specyfikacja Sprawdzenie Projekt architektury Sprawdzenie Dla każdej składowej: Realizacja przyrostowa Budowanie Konserwacja zaprojektuj zaimplementuj zintegruj przetestuj dostarcz do klienta Użytkowanie Koniec

32 Modele tworzenia programów Składowa 1 Specyfikacja Składowa 2 Specyfikacja Składowa n Projektowanie Specyfikacja Projektowanie Implementacja Integracja Projektowanie Implementacja Integracja Dostarczenie Klientowi Implementacja Integracja Dostarczenie Klientowi Dostarczenie Klientowi Grupa projektująca Grupa specyfikująca Grupa Implementująca Ryzykowna realizacja przyrostowa

33 Modele tworzenia programów Analiza ryzyka Szybki prototyp Sprawdzenie Analiza ryzyka Zmiana wymagań Sprawdzenie Analiza ryzyka Specyfikacje Sprawdzenie Uproszczony model spiralny Budowanie Konserwacja Analiza ryzyka Projektowanie Sprawdzenie Analiza ryzyka Implementacja Sprawdzenie Analiza ryzyka Integracja Sprawdzenie Użytkowanie Koniec

34 Modele tworzenia programów Konserwacja Użytkowanie - Dalszy rozwój Integracja Implementacja Projektowanie obiektowe Obiektowy model fontanny Analiza obiektowa Określenie wymagań Budowanie Konserwacja

35 Modele tworzenia programów Model Zbuduj i poprawiaj Model kaskadowy Prototypowanie Realizacja przyrostowa Model spiralny Modele obiektowe Zalety Nadaje się dla małych programów, które nie wymagają konserwacji. Systematyczne podejście i sterowanie dokumentami. Zapewnia, że produkt będzie spełniał oczekiwania zamawiającego. Szybki zwrot inwestycji i łatwość konserwacji. Zawiera wszystkie cechy powyższych modeli. Pozwalają na integrację w fazach. Pozwalają na równoległość faz. Wady Nie nadaje się dla nietrywialnych programów. Dostarczony produkt może nie spełniać oczekiwań zamawiającego. Koszt budowy prototypu. Wymaga otwartej architektury. Grożba degradacji do modelu Zbuduj i Poprawiaj Tylko dla bardzo dużych projektów. Potrzebna wiedza o analizie ryzyka. - Porównanie modeli tworzenia oprogramowania.

36 Struktury zespołów Rys. Ścieżki komunikacji pomiędzy trzema informatykami.

37 Struktury zespołów Rys. Ścieżki komunikacji pomiędzy sześcioma informatykami.

38 Struktury zespołów Sekretarz zespołu Główny programista Zastępca GP Programista Programista Programista Rys. Klasyczny zespół głównego programisty.

39 Struktury zespołów Manager zespołu Lider zespołu Programista Programista Programista Rys. Współczesny zespół programistyczny.

40 Struktury zespołów Kierownik projektu Lider zespołu Lider zespołu Lider zespołu Programiści Programiści Programiści Rys. Struktura zarządzania technicznego w dużym projekcie.

41 Struktury zespołów Kierownik projektu Lider zespołu Lider zespołu Lider zespołu Programiści Programiści Programiści Rys. Podejmowanie decyzji w dużym projekcie.

42 Modele tworzenia programów Model Zalety Wady Zespół demokratyczny Wysokiej jakości kod jako efekt pozytywnego nastawienia do szukania błędów. Skuteczny w trudnych problemach. Trudno rozszerzalny. Klasyczny zespół głównego programisty - Niepraktyczny. Współczesny zespół głównego programisty Brak w strukturze wysoko kwalifikowanego głównego programisty. Można go zdecentralizować. Problemy z podziałem zadań pomiędzy lidera a managera zespołu. Porównanie różnych sposobów organizacji zespołu programistycznego.

43 Rodzaje programowania Programowanie (ang. programming) - czynności związane z wpisywaniem poleceń języka programowania przez programistów celem tworzenia oprogramowania komputerowego.

44 Rodzaje programowania Programowanie proceduralne styl programowania, w którym kod źródłowy podzielony jest na fragmenty wykonujące ściśle określone operacje. Procedury nie powinny korzystać ze zmiennych globalnych (w miarę możliwości) lecz pobierać i przekazywać wszystkie dane (czy też wskaźniki do nich) jako parametry wywołania.

45 Rodzaje programowania Programowanie strukturalne metoda programowania, w której kod źródłowy podzielony jest na niewielkie moduły - procedury, bądź funkcje - komunikujące się ze sobą jedynie poprzez odpowiednie interfejsy. Interfejs (interface) część danego obiektu widoczna na zewnątrz dla innych obiektów. Jego zadaniem jest umożliwienie współpracy z tym obiektem np. komunikacja z nim, czy wykorzystanie jego innych właściwości umieszczonych wewnątrz. Do najpopularniejszych języków strukturalnych zalicza się Pascal, C, Modula-2.

46 Rodzaje programowania Programowanie modularne (modular programming) - paradygmat programowania zalecający stosowanie modułów, jako nadrzędnych w stosunku do procedur, bloków tworzących program. Moduł w pojęciu programowania modularnego grupuje funkcjonalnie związane ze sobą dane i procedury i jest reprezentacją obiektu występującego w programie w jednym egzemplarzu.

47 Rodzaje programowania Programowanie imperatywne technika programowania, w której program składa się ze zmiennych oraz modyfikujących je operacji, z jawnie określonym przepływem sterowania. Programista używający języka imperatywnego osiąga zamierzony efekt przez manipulowanie wartościami zmiennych. Przykładami języków imperatywnych są Fortran, Pascal i C. Największą zaletą jest bliskość takiej reprezentacji do tego co rzeczywiście wykonywane jest przez komputer.

48 Rodzaje programowania Programowanie obiektowe (object-oriented programming) jest to metodologia tworzenia programów komputerowych, która definiuje programy za pomocą obiektów - elementów łączących stan (czyli dane) i zachowanie (czyli procedury, tu: metody). Obiektowy program komputerowy wyrażony jest jako zbiór takich obiektów, komunikujących się pomiędzy sobą w celu wykonywania zadań. Podejście to różni się od tradycyjnego programowania proceduralnego, gdzie dane i procedury nie są ze sobą bezpośrednio związane. Programowanie obiektowe ma ułatwić pisanie, konserwację i wielokrotne użycie programów lub ich fragmentów. Popularnymi językami obiektowymi są: C++, Java, Smalltalk, Object Pascal, Beta, Theta, CLOS, Eiffel, Ada98, Python i in. Od lat osiemdziesiątych języki obiektowe uważa się za szczytowe osiągnięcie inżynierii oprogramowania.

49 Rodzaje programowania Programowanie funkcjonalne (functional programming) - koncepcja programowania bez używania przypisań; w programowaniu funkcjonalnym obliczenie tej samej procedury z tymi samymi parametrami powoduje zawsze powstanie tego samego wyniku, procedury w programowaniu funkcjonalnym mogą zatem być rozważane jako funkcje w rozumieniu matematycznym.

50 Rodzaje programowania Programowanie RAD (Rapid Application Development) - termin komercyjny ( błyskawiczne opracowywanie aplikacji ) określający możliwości pakietu oprogramowania działającego w graficznym środowisku okienkowym, służącego do zestawiania aplikacji, w szczególności ich interfejsów, z modułów wybieranych z bibliotek udostępnianych w postaci drzew tematycznych. W zależności od wybranego elementu pakiet RAD wytwarza fragmenty kodu (np. w języku C++) wraz z odpowiednimi wywołaniami. Szczegóły odbiegające od standardu uzupełnia ręcznie programista. Aplikacje wytworzone w środowiskach RAD są z reguły słabo przenośne i zajmują dużo pamięci, jednak możliwość automatycznego oprogramowania ich najżmudniejszych elementów (interfejs graficzny) oraz ułatwiony kontakt ze standardowymi bazami danych powoduje, że programowanie RAD staje się coraz popularniejsze.

51 Rodzaje programowania Programowanie zdarzeniowe (sterowane zdarzeniami) jest to metoda programowania według którego program jest cały czas bombardowany zdarzeniami (events), na które musi odpowiedzieć. Przepływ kontroli w takim programie jest całkowicie niemożliwy do przewidzenia z góry. Programowanie zdarzeniowe jest dominującym typem programowania GUI - zdarzenia to naciśnięcia myszy, klawiszy, żądania odświeżenia przez system okienkowy, różne zdarzenia sieciowe i inne. W programowaniu zdarzeniowym ważne jest żeby nie obsługiwać zbyt długo danego zdarzenia, bo blokuje się w ten sposób obsługę innych. Można to osiągnąć za pomocą asynchronicznego I/O, wielowątkowości, rozbijania zdarzenia na pod-zdarzenia i wielu innych mechanizmów.

52 Rodzaje programowania Programowanie liniowe (w ujęciu matematycznym) - maksymalizacja lub minimalizacja funkcji wielu zmiennych, gdy zmienne te, lub niektóre z nich, podlegają liniowym warunkom ograniczającym w postaci równań lub nierówności. Nazwa "programowanie" wskazuje w tym kontekście na schemat działań.

53 Rodzaje programowania Programowanie nieliniowe (w ujęciu matematycznym) - metody rozwiązywania problemów opisywanych przez równania różniczkowe nie dające się sprowadzić do równań liniowych (programowanie liniowe).

54 Rodzaje programowania Programowanie dynamiczne - metoda zapewniająca wybór ciągu zgodnych rozwiązań optymalnych w wielostopniowych problemach decyzyjnych. W istocie jest to proces sekwencyjnego podejmowania decyzji.

55 Rodzaje programowania Programowanie w logice (logic programming) - kierunek rozwojowy języków programowania, korzystający istotnie z doświadczeń i osiągnięć logiki matematycznej. Instrukcje języków programowania w logice przyjmują postaci wzorów logicznych (predykatów). Programowanie w logice znajduje zastosowanie przy budowaniu inteligentnych baz wiedzy, systemów ekspertowych, w eksperymentach ze sztuczną inteligencją.

56 Rodzaje programowania Programowanie współbieżne (concurrent programming) - programowanie procesów współbieżnych realizowane za pomocą specjalnie zaprojektowanych języków programowania (np. Linda), języków odpowiednio dostosowanych (np. Concurrent Pascal) lub przy użyciu bibliotek synchronizacji procesów i wątków.

57 Rodzaje programowania Programowanie z użyciem obiektów (object-based programming) - paradygmat programowania dopuszczający możliwość tworzenia typów zdefiniowanych przez użytkownika i posługiwania się w programach danymi nowo zdefiniowanych typów. Programowanie z użyciem obiektów jest zalecane tam, gdzie programowanie proceduralne lub modularne okazują się niewystarczające z uwagi na potrzebę użycia nowych typów danych i liczne ich reprezentacje (obiekty), natomiast programowanie obiektowe jest niepotrzebne z powodu prostych właściwości przedmiotu programowania.

58 Rodzaje programowania Programowanie wstępujące - w programowaniu strukturalnym rozwiązywanie problemu za pomocą wydzielonych prostszych zadań. Programowanie zstępujące - w programowaniu strukturalnym rozwiązywanie problemu w jednym ogólnym, dobrze przemyślanym planie.

59 Dziękuję za uwagę Olsztyn Wojciech Sobieski

Podział algorytmów ze względu na obszar zastosowań. algorytmy numeryczne (matematyczne) wykonują obliczenia arytmetyczne, algorytmy przeszukujące

Podział algorytmów ze względu na obszar zastosowań. algorytmy numeryczne (matematyczne) wykonują obliczenia arytmetyczne, algorytmy przeszukujące Podział algorytmów ze względu na obszar zastosowań. algorytmy numeryczne (matematyczne) wykonują obliczenia arytmetyczne, algorytmy przeszukujące badają zbiór w celu wyszukania wyróżnionego elementu, algorytmy

Bardziej szczegółowo

Język programowania. Andrzej Bobyk http://www.alfabeta.lublin.pl. www.alfabeta.lublin.pl/jp/

Język programowania. Andrzej Bobyk http://www.alfabeta.lublin.pl. www.alfabeta.lublin.pl/jp/ Język programowania Andrzej Bobyk http://www.alfabeta.lublin.pl www.alfabeta.lublin.pl/jp/ Literatura K. Reisdorph: Delphi 6 dla każdego. Helion, Gliwice 2001 A. Grażyński, Z. Zarzycki: Delphi 7 dla każdego.

Bardziej szczegółowo

Zasady organizacji projektów informatycznych

Zasady 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ółowo

Etapy życia oprogramowania

Etapy ż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ółowo

Etapy życia oprogramowania. Modele cyklu życia projektu. Etapy życia oprogramowania. Etapy życia oprogramowania

Etapy ż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ółowo

Programowanie zespołowe

Programowanie 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ółowo

Podział algorytmów ze względu na obszar zastosowań. algorytmy numeryczne (matematyczne) wykonują obliczenia arytmetyczne, algorytmy przeszukujące

Podział algorytmów ze względu na obszar zastosowań. algorytmy numeryczne (matematyczne) wykonują obliczenia arytmetyczne, algorytmy przeszukujące Podział algorytmów ze względu na obszar zastosowań. algorytmy numeryczne (matematyczne) wykonują obliczenia arytmetyczne, algorytmy przeszukujące badają zbiór w celu wyszukania wyróżnionego elementu, algorytmy

Bardziej szczegółowo

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32

Analiza 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ółowo

Faza Określania Wymagań

Faza Określania Wymagań Faza Określania Wymagań Celem tej fazy jest dokładne określenie wymagań klienta wobec tworzonego systemu. W tej fazie dokonywana jest zamiana celów klienta na konkretne wymagania zapewniające osiągnięcie

Bardziej szczegółowo

MODELE CYKLU ŻYCIA OPROGRAMOWANIA (1) Model kaskadowy (często stosowany w praktyce do projektów o niewielkiej złożonoś

MODELE 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ółowo

Programowanie obiektowe - 1.

Programowanie obiektowe - 1. Programowanie obiektowe - 1 Mariusz.Masewicz@cs.put.poznan.pl Programowanie obiektowe Programowanie obiektowe (ang. object-oriented programming) to metodologia tworzenia programów komputerowych, która

Bardziej szczegółowo

Co to jest jest oprogramowanie? 8. Co to jest inżynieria oprogramowania? 9. Jaka jest różnica pomiędzy inżynierią oprogramowania a informatyką?

Co 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ółowo

Wykład Ćwiczenia Laboratorium Projekt Seminarium

Wykład Ćwiczenia Laboratorium Projekt Seminarium WYDZIAŁ ELEKTRONIKI KARTA PRZEDMIOTU Nazwa w języku polskim Języki programowania Nazwa w języku angielskim Programming languages Kierunek studiów (jeśli dotyczy): Informatyka - INF Specjalność (jeśli dotyczy):

Bardziej szczegółowo

Podstawy Programowania Obiektowego

Podstawy Programowania Obiektowego Podstawy Programowania Obiektowego Wprowadzenie do programowania obiektowego. Pojęcie struktury i klasy. Spotkanie 03 Dr inż. Dariusz JĘDRZEJCZYK Tematyka wykładu Idea programowania obiektowego Definicja

Bardziej szczegółowo

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki Dariusz Brzeziński Politechnika Poznańska, Instytut Informatyki Object-oriented programming Najpopularniejszy obecnie styl (paradygmat) programowania Rozwinięcie koncepcji programowania strukturalnego

Bardziej szczegółowo

Wprowadzenie do metodologii modelowania systemów informacyjnych. Strategia (1) Strategia (2) Etapy Ŝycia systemu informacyjnego

Wprowadzenie 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ółowo

Wykład V. Rzut okiem na języki programowania. Studia Podyplomowe INFORMATYKA Podstawy Informatyki

Wykład V. Rzut okiem na języki programowania. Studia Podyplomowe INFORMATYKA Podstawy Informatyki Studia Podyplomowe INFORMATYKA Podstawy Informatyki Wykład V Rzut okiem na języki programowania 1 Kompilacja vs. interpretacja KOMPILACJA Proces, który przetwarza program zapisany w języku programowania,

Bardziej szczegółowo

Cykle życia systemu informatycznego

Cykle ż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ółowo

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Program, to lista poleceń zapisana w jednym języku programowania zgodnie z obowiązującymi w nim zasadami. Celem programu jest przetwarzanie

Bardziej szczegółowo

Technika mikroprocesorowa. Struktura programu użytkownika w systemie mikroprocesorowym

Technika mikroprocesorowa. Struktura programu użytkownika w systemie mikroprocesorowym Struktura programu użytkownika w systemie mikroprocesorowym start inicjalizacja niekończaca się pętla zadania niekrytyczne czasowo przerwania zadania krytyczne czasowo 1 Znaczenie problematyki programowania

Bardziej szczegółowo

Wykład 1 Inżynieria Oprogramowania

Wykł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ółowo

Projektowanie oprogramowania. Wykład Weryfikacja i Zatwierdzanie Inżynieria Oprogramowania Kazimierz Michalik

Projektowanie 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ółowo

Projekt dotyczy stworzenia zintegrowanego, modularnego systemu informatycznego wspomagającego zarządzanie pracownikami i projektami w firmie

Projekt dotyczy stworzenia zintegrowanego, modularnego systemu informatycznego wspomagającego zarządzanie pracownikami i projektami w firmie Projekt dotyczy stworzenia zintegrowanego, modularnego systemu informatycznego wspomagającego zarządzanie pracownikami i projektami w firmie informatycznej. Zadaniem systemu jest rejestracja i przechowywanie

Bardziej szczegółowo

Metodyka projektowania komputerowych systemów sterowania

Metodyka projektowania komputerowych systemów sterowania Metodyka projektowania komputerowych systemów sterowania Andrzej URBANIAK Metodyka projektowania KSS (1) 1 Projektowanie KSS Analiza wymagań Opracowanie sprzętu Projektowanie systemu Opracowanie oprogramowania

Bardziej szczegółowo

Modelowanie i Programowanie Obiektowe

Modelowanie i Programowanie Obiektowe Modelowanie i Programowanie Obiektowe Wykład I: Wstęp 20 październik 2012 Programowanie obiektowe Metodyka wytwarzania oprogramowania Metodyka Metodyka ustandaryzowane dla wybranego obszaru podejście do

Bardziej szczegółowo

Kod doskonały : jak tworzyć oprogramowanie pozbawione błędów / Steve McConnell. Gliwice, cop Spis treści. Wstęp 15.

Kod doskonały : jak tworzyć oprogramowanie pozbawione błędów / Steve McConnell. Gliwice, cop Spis treści. Wstęp 15. Kod doskonały : jak tworzyć oprogramowanie pozbawione błędów / Steve McConnell. Gliwice, cop. 2017 Spis treści Wstęp 15 Podziękowania 23 Listy kontrolne 25 Tabele 27 Rysunki 29 Część I Proces budowy oprogramowania

Bardziej szczegółowo

INFORMATYKA Pytania ogólne na egzamin dyplomowy

INFORMATYKA Pytania ogólne na egzamin dyplomowy INFORMATYKA Pytania ogólne na egzamin dyplomowy 1. Wyjaśnić pojęcia problem, algorytm. 2. Podać definicję złożoności czasowej. 3. Podać definicję złożoności pamięciowej. 4. Typy danych w języku C. 5. Instrukcja

Bardziej szczegółowo

Biorąc udział w projekcie, możesz wybrać jedną z 8 bezpłatnych ścieżek egzaminacyjnych:

Biorąc udział w projekcie, możesz wybrać jedną z 8 bezpłatnych ścieżek egzaminacyjnych: Egzaminy na plus Stres na minus! Zdawaj bezpłatne egzaminy Microsoft, Linux, C++ z nami i zadbaj o swoją karierę. Oferujemy Ci pierwsze certyfikaty zawodowe w Twojej przyszłej karierze, które idealnie

Bardziej szczegółowo

WPROWADZENIE DO UML-a

WPROWADZENIE DO UML-a WPROWADZENIE DO UML-a Maciej Patan Instytut Sterowania i Systemów Informatycznych Dlaczego modelujemy... tworzenie metodologii rozwiązywania problemów, eksploracja różnorakich rozwiązań na drodze eksperymentalnej,

Bardziej szczegółowo

In ż ynieria oprogramowania wykład II Modele i fazy cyklu życia oprogramowania

In ż 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ółowo

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki Dariusz Brzeziński Politechnika Poznańska, Instytut Informatyki Język programowania prosty bezpieczny zorientowany obiektowo wielowątkowy rozproszony przenaszalny interpretowany dynamiczny wydajny Platforma

Bardziej szczegółowo

INŻYNIERIA OPROGRAMOWANIA

INŻYNIERIA OPROGRAMOWANIA INSTYTUT INFORMATYKI STOSOWANEJ 2013 INŻYNIERIA OPROGRAMOWANIA Inżynieria Oprogramowania Proces ukierunkowany na wytworzenie oprogramowania Jak? Kto? Kiedy? Co? W jaki sposób? Metodyka Zespół Narzędzia

Bardziej szczegółowo

Technologie informacyjne - wykład 12 -

Technologie informacyjne - wykład 12 - Zakład Fizyki Budowli i Komputerowych Metod Projektowania Instytut Budownictwa Wydział Budownictwa Lądowego i Wodnego Politechnika Wrocławska Technologie informacyjne - wykład 12 - Prowadzący: Dmochowski

Bardziej szczegółowo

Podstawy programowania

Podstawy 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ółowo

Teraz bajty. Informatyka dla szkół ponadpodstawowych. Zakres rozszerzony. Część 1.

Teraz 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ółowo

Jarosław Kuchta Dokumentacja i Jakość Oprogramowania. Wymagania jakości w Agile Programming

Jarosław Kuchta Dokumentacja i Jakość Oprogramowania. Wymagania jakości w Agile Programming Jarosław Kuchta Wymagania jakości w Agile Programming Wady klasycznych metod zapewnienia jakości Duży narzut na dokumentowanie Późne uzyskiwanie konkretnych rezultatów Trudność w odpowiednio wczesnym definiowaniu

Bardziej szczegółowo

Testowanie oprogramowania. Piotr Ciskowski

Testowanie oprogramowania. Piotr Ciskowski Testowanie oprogramowania Piotr Ciskowski TESTOWANIE testowanie o proces eksperymentalnego badania programu lub jego komponentu o próbne wykonanie w znanych warunkach o rejestrowanie wyników o ocena właściwości

Bardziej szczegółowo

Testowanie i walidacja oprogramowania

Testowanie i walidacja oprogramowania i walidacja oprogramowania Inżynieria oprogramowania, sem.5 cz. 3 Rok akademicki 2010/2011 Dr inż. Wojciech Koziński Zarządzanie testami Cykl życia testów (proces) Planowanie Wykonanie Ocena Dokumentacja

Bardziej szczegółowo

INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE

INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE Studia podyplomowe dla nauczycieli INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE Przedmiot JĘZYKI PROGRAMOWANIA DEFINICJE I PODSTAWOWE POJĘCIA Autor mgr Sławomir Ciernicki 1/7 Aby

Bardziej szczegółowo

Historia modeli programowania

Historia modeli programowania Języki Programowania na Platformie.NET http://kaims.eti.pg.edu.pl/ goluch/ goluch@eti.pg.edu.pl Maszyny z wbudowanym oprogramowaniem Maszyny z wbudowanym oprogramowaniem automatyczne rozwiązywanie problemu

Bardziej szczegółowo

Zagadnienia egzaminacyjne INFORMATYKA. Stacjonarne. I-go stopnia. (INT) Inżynieria internetowa STOPIEŃ STUDIÓW TYP STUDIÓW SPECJALNOŚĆ

Zagadnienia 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ółowo

REFERAT PRACY DYPLOMOWEJ

REFERAT 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ółowo

Rok szkolny 2015/16 Sylwester Gieszczyk. Wymagania edukacyjne w technikum. ADMINISTROWANIE BAZAMI DANYCH kl. 4c

Rok szkolny 2015/16 Sylwester Gieszczyk. Wymagania edukacyjne w technikum. ADMINISTROWANIE BAZAMI DANYCH kl. 4c Wymagania edukacyjne w technikum ADMINISTROWANIE BAZAMI DANYCH kl. 4c Lp. 1 2 4 5 Temat Zasady dotyczące zarządzania projektem podczas prac związanych z tworzeniem bazy oraz cykl życiowy bazy Modele tworzenia

Bardziej szczegółowo

Efekty kształcenia dla kierunku studiów INFORMATYKA, Absolwent studiów I stopnia kierunku Informatyka WIEDZA

Efekty kształcenia dla kierunku studiów INFORMATYKA, Absolwent studiów I stopnia kierunku Informatyka WIEDZA Symbol Efekty kształcenia dla kierunku studiów INFORMATYKA, specjalność: 1) Sieciowe systemy informatyczne. 2) Bazy danych Absolwent studiów I stopnia kierunku Informatyka WIEDZA Ma wiedzę z matematyki

Bardziej szczegółowo

Czym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa

Czym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa 1 Java Wprowadzenie 2 Czym jest Java? Język programowania prosty zorientowany obiektowo rozproszony interpretowany wydajny Platforma bezpieczny wielowątkowy przenaszalny dynamiczny Rozumiana jako środowisko

Bardziej szczegółowo

Efekt kształcenia. Ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną w zakresie algorytmów i ich złożoności obliczeniowej.

Efekt kształcenia. Ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną w zakresie algorytmów i ich złożoności obliczeniowej. Efekty dla studiów pierwszego stopnia profil ogólnoakademicki na kierunku Informatyka w języku polskim i w języku angielskim (Computer Science) na Wydziale Matematyki i Nauk Informacyjnych, gdzie: * Odniesienie-

Bardziej szczegółowo

<Nazwa firmy> <Nazwa projektu> Specyfikacja dodatkowa. Wersja <1.0>

<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ółowo

Przedsięwzięcia Informatyczne w Zarządzaniu

Przedsięwzięcia Informatyczne w Zarządzaniu Przedsięwzięcia Informatyczne w Zarządzaniu 2005/06 dr inż. Grażyna Hołodnik-Janczura GHJ 1 LITERATURA 1. Praca zbiorowa p.r. Górski J., Inżynieria oprogramowania, MIKOM, W-wa, 2000 2. Jaszkiewicz A.,

Bardziej szczegółowo

Inżynieria Programowania - Projektowanie architektoniczne

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ółowo

Wykład 7. Projektowanie kodu oprogramowania

Wykł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ółowo

Egzamin / zaliczenie na ocenę*

Egzamin / 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ółowo

Dokument Detaliczny Projektu

Dokument 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ółowo

Programowanie współbieżne Wykład 8 Podstawy programowania obiektowego. Iwona Kochaoska

Programowanie współbieżne Wykład 8 Podstawy programowania obiektowego. Iwona Kochaoska Programowanie współbieżne Wykład 8 Podstawy programowania obiektowego Iwona Kochaoska Programowanie Obiektowe Programowanie obiektowe (ang. object-oriented programming) - metodyka tworzenia programów komputerowych,

Bardziej szczegółowo

Web frameworks do budowy aplikacji zgodnych z J2EE

Web frameworks do budowy aplikacji zgodnych z J2EE Web frameworks do budowy aplikacji zgodnych z J2EE Jacek Panachida promotor: dr Dariusz Król Przypomnienie Celem pracy jest porównanie wybranych szkieletów programistycznych o otwartym kodzie źródłowym

Bardziej szczegółowo

Testowanie oprogramowania

Testowanie oprogramowania Testowanie oprogramowania 1/17 Testowanie oprogramowania Wykład 01 dr inż. Grzegorz Michalski 13 października 2015 Testowanie oprogramowania 2/17 Dane kontaktowe: Kontakt dr inż. Grzegorz Michalski pokój

Bardziej szczegółowo

Wykład 8. Testowanie w JEE 5.0 (1) Autor: Zofia Kruczkiewicz. Zofia Kruczkiewicz

Wykład 8. Testowanie w JEE 5.0 (1) Autor: Zofia Kruczkiewicz. Zofia Kruczkiewicz Wykład 8 Testowanie w JEE 5.0 (1) Autor: 1. Rola testowania w tworzeniu oprogramowania Kluczową rolę w powstawaniu oprogramowania stanowi proces usuwania błędów w kolejnych fazach rozwoju oprogramowania

Bardziej szczegółowo

Podstawy programowania

Podstawy programowania Podstawy programowania Elementy algorytmiki C w środowisku.e (C#) dr inż. Grzegorz Zych Copernicanum, pok. 3 lub 206a 1 Minimum programowe reści kształcenia: Pojęcie algorytmu. Podstawowe konstrukcje programistyczne.

Bardziej szczegółowo

Delphi podstawy programowania. Środowisko Delphi

Delphi podstawy programowania. Środowisko Delphi Delphi podstawy programowania Środowisko Delphi Olsztyn 2004 Delphi Programowanie obiektowe - (object-oriented programming) jest to metodologia tworzeniu programów komputerowych definiująca je jako zbiór

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: Kierunek: Informatyka Rodzaj przedmiotu: obowiązkowy w ramach specjalności: Programowanie aplikacji internetowych Rodzaj zajęć: laboratorium PRZEWODNIK PO PRZEDMIOCIE I KARTA PRZEDMIOTU

Bardziej szczegółowo

AUREA BPM HP Software. TECNA Sp. z o.o. Strona 1 z 7

AUREA BPM HP Software. TECNA Sp. z o.o. Strona 1 z 7 AUREA BPM HP Software TECNA Sp. z o.o. Strona 1 z 7 HP APPLICATION LIFECYCLE MANAGEMENT Oprogramowanie Application Lifecycle Management (ALM, Zarządzanie Cyklem życia aplikacji) wspomaga utrzymanie kontroli

Bardziej szczegółowo

Pytania z przedmiotów kierunkowych

Pytania 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ółowo

SVN. 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ę. 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ółowo

Zaawansowane programowanie w języku C++

Zaawansowane programowanie w języku C++ Kod szkolenia: Tytuł szkolenia: C/ADV Zaawansowane programowanie w języku C++ Dni: 3 Opis: Uczestnicy szkolenia zapoznają się z metodami wytwarzania oprogramowania z użyciem zaawansowanych mechanizmów

Bardziej szczegółowo

Wytwórstwo oprogramowania. michał możdżonek

Wytwó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ółowo

INŻYNIERIA OPROGRAMOWANIA TESTOWANIE INTEGRACYJNE

INŻ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ółowo

Programowanie. programowania. Klasa 3 Lekcja 9 PASCAL & C++

Programowanie. programowania. Klasa 3 Lekcja 9 PASCAL & C++ Programowanie Wstęp p do programowania Klasa 3 Lekcja 9 PASCAL & C++ Język programowania Do przedstawiania algorytmów w postaci programów służą języki programowania. Tylko algorytm zapisany w postaci programu

Bardziej szczegółowo

Projektowanie Graficznych Interfejsów Użytkownika Robert Szmurło

Projektowanie Graficznych Interfejsów Użytkownika Robert Szmurło Projektowanie Graficznych Interfejsów Użytkownika Robert Szmurło LATO 2007 Projektowanie Graficznych Interfejsów Użytkownika 1 UCD - User Centered Design 1) User Centered Design Projekt Skoncentrowany

Bardziej szczegółowo

Feature Driven Development

Feature Driven Development Feature Driven Development lekka metodyka tworzenia oprogramowania Kasprzyk Andrzej IS II Wstęp Feature Driven Development (FDD) to metodyka tworzenia oprogramowania, która wspomaga zarządzanie fazami

Bardziej szczegółowo

Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych

Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych PAŃSTWOWA WYŻSZA SZKOŁA ZAWODOWA W ELBLĄGU INSTYTUT INFORMATYKI STOSOWANEJ Sprawozdanie z Seminarium Dyplomowego Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych

Bardziej szczegółowo

Iteracyjno-rozwojowy proces tworzenia oprogramowania Wykład 3 część 1

Iteracyjno-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ółowo

ALGORYTMY I PROGRAMY

ALGORYTMY I PROGRAMY ALGORYTMY I PROGRAMY Program to ciąg instrukcji, zapisanych w języku zrozumiałym dla komputera. Ten ciąg instrukcji realizuje jakiś algorytm. Algorytm jest opisem krok po kroku jak rozwiązać problem, czy

Bardziej szczegółowo

Szybkie prototypowanie w projektowaniu mechatronicznym

Szybkie 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ółowo

Programowanie sterowników przemysłowych / Jerzy Kasprzyk. wyd. 2 1 dodr. (PWN). Warszawa, Spis treści

Programowanie sterowników przemysłowych / Jerzy Kasprzyk. wyd. 2 1 dodr. (PWN). Warszawa, Spis treści Programowanie sterowników przemysłowych / Jerzy Kasprzyk. wyd. 2 1 dodr. (PWN). Warszawa, 2017 Spis treści Przedmowa 11 ROZDZIAŁ 1 Wstęp 13 1.1. Rys historyczny 14 1.2. Norma IEC 61131 19 1.2.1. Cele i

Bardziej szczegółowo

Zapisywanie algorytmów w języku programowania

Zapisywanie algorytmów w języku programowania Temat C5 Zapisywanie algorytmów w języku programowania Cele edukacyjne Zrozumienie, na czym polega programowanie. Poznanie sposobu zapisu algorytmu w postaci programu komputerowego. Zrozumienie, na czym

Bardziej szczegółowo

PROGRAM PRAKTYKI ZAWODOWEJ. Technikum Zawód: technik informatyk

PROGRAM 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ółowo

OfficeObjects e-forms

OfficeObjects e-forms OfficeObjects e-forms Rodan Development Sp. z o.o. 02-820 Warszawa, ul. Wyczółki 89, tel.: (+48-22) 643 92 08, fax: (+48-22) 643 92 10, http://www.rodan.pl Spis treści Wstęp... 3 Łatwość tworzenia i publikacji

Bardziej szczegółowo

Wprowadzenie do programowania aplikacji mobilnych

Wprowadzenie do programowania aplikacji mobilnych Wprowadzenie do programowania aplikacji mobilnych dr Przemysław Juszczuk dr Przemysław Juszczuk Trochę historii Idea wzorców projektowych wywodzi się jeszcze z wczesnych lat osiemdziesiątych ubiegłego

Bardziej szczegółowo

Zagadnienia egzaminacyjne INFORMATYKA. stacjonarne. I-go stopnia. (INT) Inżynieria internetowa STOPIEŃ STUDIÓW TYP STUDIÓW SPECJALNOŚĆ

Zagadnienia 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ółowo

Podstawy programowania wykład

Podstawy programowania wykład Podstawy programowania wykład WYDZIAŁ ELEKTRONIKI i INFORMATYKI dr inż. Robert Arsoba Politechnika Koszalińska Wydział Elektroniki i Informatyki POLITECHNIKA KOSZALIŃSKA 2009/2010 1 Materiały do wykładu

Bardziej szczegółowo

biegle i poprawnie posługuje się terminologią informatyczną,

biegle i poprawnie posługuje się terminologią informatyczną, INFORMATYKA KLASA 1 1. Wymagania na poszczególne oceny: 1) ocenę celującą otrzymuje uczeń, który: samodzielnie wykonuje na komputerze wszystkie zadania z lekcji, wykazuje inicjatywę rozwiązywania konkretnych

Bardziej szczegółowo

Inżynieria oprogramowania (Software Engineering)

Inż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ółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: Kierunek: Informatyka Rodzaj przedmiotu: moduł specjalności obowiązkowy: Inżynieria oprogramowania Rodzaj zajęć: laboratorium PROJEKT ZESPOŁOWY DYPLOMOWY IO Team Project SE Forma studiów:

Bardziej szczegółowo

PRZEDMIOTOWY SYSTEM OCENIANIA. z przedmiotu. Programowanie strukturalne i obiektowe. dla technikum informatycznego

PRZEDMIOTOWY SYSTEM OCENIANIA. z przedmiotu. Programowanie strukturalne i obiektowe. dla technikum informatycznego PRZEDMIOTOWY SYSTEM OCENIANIA z przedmiotu Programowanie strukturalne i obiektowe dla technikum informatycznego Zespół Szkół Ogólnokształcących i Technicznych w Słupsku Krzysztof Smoliński 1. Uczniowie

Bardziej szczegółowo

ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia

ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia ZP/ITS/11/2012 Załącznik nr 1a do SIWZ ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia Przedmiotem zamówienia jest: Przygotowanie zajęć dydaktycznych w postaci kursów e-learningowych przeznaczonych

Bardziej szczegółowo

Obliczenia równoległe i rozproszone. Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz

Obliczenia równoległe i rozproszone. Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz Obliczenia równoległe i rozproszone Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz 15 czerwca 2001 Spis treści Przedmowa............................................

Bardziej szczegółowo

Uniwersytet Śląski w Katowicach str. 1 Wydział Informatyki i Nauki o Materiałach

Uniwersytet Śląski w Katowicach str. 1 Wydział Informatyki i Nauki o Materiałach Uniwersytet Śląski w Katowicach str. 1 Efekty dla: nazwa kierunku poziom profil Informatyka inżynierska pierwszy ogólnoakademicki Kod efektu (kierunek) K_1_A_I_W01 K_1_A_I_W02 K_1_A_I_W03 K_1_A_I_W04 K_1_A_I_W05

Bardziej szczegółowo

Języki i metodyka programowania

Języki i metodyka programowania Języki i metodyka programowania www.ee.pw.edu.pl/~slawinsm Dr inż. Maciej Sławiński M.Slawinski@ee.pw.edu.pl GE518l Konsultacje: śr. 13 00-13 45 SK201/GE518l pt. 10 15-11 00 GE518l/SK201 Algorytmika Literatura

Bardziej szczegółowo

Projektowanie oprogramowania

Projektowanie oprogramowania Wrocław, 27.09.2010 1. Warunki wstępne Projektowanie oprogramowania Warunkiem uczestnictwa w zajęciach jest zaliczenie przedmiotu: Podstawy inżynierii oprogramowania (ćwiczenia) Zajęcia składają się z

Bardziej szczegółowo

Maciej Oleksy Zenon Matuszyk

Maciej Oleksy Zenon Matuszyk Maciej Oleksy Zenon Matuszyk Jest to proces związany z wytwarzaniem oprogramowania. Jest on jednym z procesów kontroli jakości oprogramowania. Weryfikacja oprogramowania - testowanie zgodności systemu

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: Kierunek: Inżynieria Biomedyczna Rodzaj przedmiotu: obowiązkowy moduł specjalności informatyka medyczna Rodzaj zajęć: wykład, laboratorium PROGRAMOWANIE INTERNETOWE Internet Programming

Bardziej szczegółowo

PROJEKTOWANIE. kodowanie implementacja. PROJEKT most pomiędzy specyfikowaniem a kodowaniem

PROJEKTOWANIE. 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ółowo

Algorytm. Krótka historia algorytmów

Algorytm. Krótka historia algorytmów Algorytm znaczenie cybernetyczne Jest to dokładny przepis wykonania w określonym porządku skończonej liczby operacji, pozwalający na rozwiązanie zbliżonych do siebie klas problemów. znaczenie matematyczne

Bardziej szczegółowo

Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34

Projektowanie 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ółowo

Usługa: Audyt kodu źródłowego

Usługa: Audyt kodu źródłowego Usługa: Audyt kodu źródłowego Audyt kodu źródłowego jest kompleksową usługą, której głównym celem jest weryfikacja jakości analizowanego kodu, jego skalowalności, łatwości utrzymania, poprawności i stabilności

Bardziej szczegółowo

Definicje. Algorytm to:

Definicje. Algorytm to: Algorytmy Definicje Algorytm to: skończony ciąg operacji na obiektach, ze ściśle ustalonym porządkiem wykonania, dający możliwość realizacji zadania określonej klasy pewien ciąg czynności, który prowadzi

Bardziej szczegółowo

Plan testów do Internetowego Serwisu Oferowania i Wyszukiwania Usług Transportowych

Plan testów do Internetowego Serwisu Oferowania i Wyszukiwania Usług Transportowych Plan testów do Internetowego Serwisu Oferowania i Wyszukiwania Usług Transportowych Michał Lewowski, Piotr Skowron, Michał Matczuk, Piotr Wygocki 5 czerwca 2006 1 Spis treści 1 Wprowadzenie 3 1.1 Cel..........................................

Bardziej szczegółowo

5 Moduył do wyboru II *[zobacz opis poniżej] 4 Projektowanie i konfiguracja sieci komputerowych Z

5 Moduył do wyboru II *[zobacz opis poniżej] 4 Projektowanie i konfiguracja sieci komputerowych Z 1. Nazwa kierunku informatyka 2. Cykl rozpoczęcia 2016/2017L 3. Poziom kształcenia studia drugiego stopnia 4. Profil kształcenia ogólnoakademicki 5. Forma prowadzenia studiów stacjonarna Specjalizacja:

Bardziej szczegółowo

Inżynieria Programowania Zarządzanie projektem

Inż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ółowo

Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1

Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1 Podstawy programowania. Wykład Funkcje Krzysztof Banaś Podstawy programowania 1 Programowanie proceduralne Pojęcie procedury (funkcji) programowanie proceduralne realizacja określonego zadania specyfikacja

Bardziej szczegółowo

Błędy procesu tworzenia oprogramowania (Badania firmy Rational Software Corporation)

Błędy procesu tworzenia oprogramowania (Badania firmy Rational Software Corporation) Błędy procesu tworzenia oprogramowania (Badania firmy Rational Software Corporation) Zarządzanie wymaganiami Ad hoc (najczęściej brak zarządzania nimi) Niejednoznaczna, nieprecyzyjna komunikacja Architektura

Bardziej szczegółowo