Przedsięwzięcia Informatyczne w Zarządzaniu



Podobne dokumenty
Etapy życia oprogramowania

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

Cykle życia systemu informatycznego

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

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

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

Inżynieria oprogramowania (Software Engineering)

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

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

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

Projektowanie systemów informatycznych. Roman Simiński programowanie.siminskionline.pl. Cykl życia systemu informatycznego

Zasady organizacji projektów informatycznych

Wykład 1 Inżynieria Oprogramowania

Wstęp do zarządzania projektami

PRZEWODNIK PO PRZEDMIOCIE

Wstęp do zarządzania projektami

Programowanie zespołowe

INŻYNIERIA OPROGRAMOWANIA

Procesy wytwarzania oprogramowania Specyfikacja i projektowanie oprogramowania

Waterfall model. (iteracyjny model kaskadowy) Marcin Wilk

Agile Project Management

tel. (+48 81) /22 fax (+48 81) Wykład Ćwiczenia Laboratorium Projekt

KARTA PRZEDMIOTU. 1. Informacje ogólne. 2. Ogólna charakterystyka przedmiotu. Inżynieria oprogramowania, C12

SVN. 10 października Instalacja. Wchodzimy na stronę i pobieramy aplikację. Rysunek 1: Instalacja - krok 1

PRZEWODNIK PO PRZEDMIOCIE

PYTANIA PRÓBNE DO EGZAMINU NA CERTYFIKAT ZAAWANSOWANY REQB KLUCZ ODPOWIEDZI. Część DODATEK

Nazwa przedmiotu: MODELOWANIE I ANALIZA SYSTEMÓW INFORMATYCZNYCH. Modeling and analysis of computer systems Forma studiów: Stacjonarne

Uniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2012/2013

Opis metodyki i procesu produkcji oprogramowania

Egzamin / zaliczenie na ocenę*

MODELE CYKLU śycia OPROGRAMOWANIA

Narzędzia informatyczne wspierające przedsięwzięcia e-commerce

INŻYNIERIA OPROGRAMOWANIA Wykład 6 Organizacja pracy w dziale wytwarzania oprogramowania - przykład studialny

RUP. Rational Unified Process

Informatyka II stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny) kierunkowy (podstawowy / kierunkowy / inny HES)

Wstęp do zarządzania projektami

Projektowanie systemów informatycznych. wykład 6

WPROWADZENIE DO UML-a

Zakres wykładu. Podstawy InŜynierii Oprogramowania

E-1IZ s2. Informatyka II stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

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

Jakość w procesie wytwarzania oprogramowania

Wprowadzenie, podstawowe pojęcia, projekt a produkt Wykład1

Metody wytwarzania oprogramowania. Metody wytwarzania oprogramowania 1/31

Wprowadzenie, podstawowe pojęcia, projekt a produkt Wykład1

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

Zasadnicze czynności w zarządzaniu projektem, fazy cyklu życia systemu informatycznego. Modele cyklu życia - część 1

Ogólne określenie wymagań. Ogólny projekt. Budowa systemu. Ocena systemu. Nie. Tak. System poprawny. Wdrożenie. Określenie.

Narzędzia CASE dla.net. Łukasz Popiel

KOMPUTEROWE WSPOMAGANIE ZARZĄDZANIA

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

KARTA MODUŁU KSZTAŁCENIA

Wykład 3 Wymagania. MIS n Inżynieria oprogramowania Październik Kazimierz Michalik Akademia Górniczo-Hutnicza im. S. Staszica w Krakowie

E-I2SG-2010-s1. Informatyka II stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

STUDIA NIESTACJONARNE I STOPNIA Przedmioty kierunkowe

Cele oraz techniki tworzenia prototypów systemów infromatycznych. Inżynieria Oprogramowania

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

Inżynieria oprogramowania I

Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34

Inżynieria Oprogramowania. Inżynieria Oprogramowania 1/36

PRZEWODNIK PO PRZEDMIOCIE

KARTA PRZEDMIOTU. 1. Informacje ogólne. 2. Ogólna charakterystyka przedmiotu. Projekt zespołowy D1_10

Grupa treści kształcenia, w ramach której przedmiot jest realizowany Przedmiot kierunkowy

PROJEKT Z BAZ DANYCH

Tematy seminariów wg Roger S. Pressman, Praktyczne podejście do oprogramowania, WNT, Zofia Kruczkiewicz

KARTA PRZEDMIOTU. Projekt zespołowy D1_10

Rozpoczęcie, inicjacja (ang. inception

Zarządzanie projektami. Wykład 2 Zarządzanie projektem

ŚCIEŻKA KRYTYCZNA. W ścieżkach krytycznych kolejne zadanie nie może się rozpocząć, dopóki poprzednie się nie zakończy.

Tematy seminariów wg Roger S. Pressman, Praktyczne podejście do oprogramowania, WNT, Zofia Kruczkiewicz

Zarządzanie i realizacja projektów systemu Microsoft SharePoint 2010

Zarządzanie ryzykiem w projektach informatycznych. Marcin Krysiński marcin@krysinski.eu

KARTA PRZEDMIOTU. 1) Nazwa przedmiotu: INŻYNIERIA SYSTEMÓW I ANALIZA SYSTEMOWA. 2) Kod przedmiotu: ROZ-L3-20

Inżynieria Oprogramowania. Robert Szmurło

PRZEWODNIK PO PRZEDMIOCIE

STUDIA STACJONARNE I STOPNIA Przedmioty kierunkowe

Inżynieria Oprogramowania w Praktyce

Zakład Języków Programowania Instytut Informatyki Uniwersytet Wrocławski

ZASADY TWORZENIA OPROGRAMOWANIA

MSF. Microsoft Solution Framework

Modelowanie jako sposób opisu rzeczywistości. Katedra Mikroelektroniki i Technik Informatycznych Politechnika Łódzka

Wytwarzanie oprogramowania

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

Inżynieria oprogramowania - opis przedmiotu

PROJEKT ZARZĄDZANIE PROJEKT. Przedsięwzięcie powtarzalne, kilkurazowe = PROCES

PRZEWODNIK PO PRZEDMIOCIE

Harmonogramowanie projektów Wprowadzenie

Transformacja wiedzy w budowie i eksploatacji maszyn

INKS105 ( INK9117 ) Podstawy inżynierii oprogramowania

Logistyka I stopień Ogólnoakademicki. Niestacjonarne. Zarządzanie logistyczne Katedra Inżynierii Produkcji Dr Sławomir Luściński

Organizacja procesu projektowania, rozwoju i serwisowania systemu wspomagającego zarzadzanie uczelnią

PRZEWODNIK PO PRZEDMIOCIE

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

Certified IT Manager Training (CITM ) Dni: 3. Opis:

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

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

Podstawy zarządzania projektami

Projekt Kompetencyjny - założenia

KARTA PRZEDMIOTU. Systemy czasu rzeczywistego: D1_9

Zastosowanie symulacji Monte Carlo do zarządzania ryzykiem przedsięwzięcia z wykorzystaniem metod sieciowych PERT i CPM

Transkrypt:

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., Inżynieria oprogramowania, Helion, 1997 3. Pressman R.S., Praktyczne podejście do inżynierii oprogramowania, WNT, W-wa, 2004 4. Cadle J, Yestes D., Zarządzanie procesem tworzenia systemów informacyjnych, WNT, W-wa, 2004 5. Phillips J. Zarządzanie projektami IT, HELION, Gliwice, 2005 6. Kompendium wiedzy o zarządzaniu projektami, PMBOK Guide, 2000 Edition przekład, MT&DC, W-wa, 2003 GHJ 2

LITERATURA 1. Barker R., Longman C., CASE*Method: Modelowanie funkcji i procesów, WNT, W-wa, 1996 2. Barker R., CASE*Method: Modelowanie związków encji, WNT, W-wa, 1996 3. Rodgers U., Oracle przewodnik projektanta baz danych, WNT, 1995 4. Wrycza S., Analiza i projektowanie systemów informatycznych zarządzania, PWN, W-wa, 1999 GHJ 3

Zagadnienia Modele cyklu życia Metody i narzędzia zarządzania projektem programistycznym Mierzenie oprogramowania Metoda FP zastosowanie Modele i metody szacowania Metody zapewniania jakości oprogramowania Narzędzia CASE Wybrane elementy projektowania systemu informatycznego GHJ 4

Inżynieria oprogramowania [IEEE] Dziedzina wiedzy zajmująca się badaniem i opracowywaniem metod. Zastosowanie systematycznego, zdyscyplinowanego, poddającego się ocenie ilościowej podejścia do wytwarzania, stosowania, i pielęgnacji oprogramowania. GHJ 5

Warstwy inżynierii oprogramowania Zapewnianie jakości Proces wytwórczy Metody Narzędzia GHJ 6

Proces wytwórczy Proces tworzenia oprogramowania schemat wykonywania zadań koniecznych do wytworzenia dobrego oprogramowania Model procesu wytwórczego oprogramowania model cyklu życia GHJ 7

Cykl życia procesu wytwórczego oprogramowania Podstawowe fazy cyklu życia definiowanie wymagań projektowanie budowa wdrożenie Rodzaje modeli cyklu życia sekwencyjne iteracyjne GHJ 8

Cykl życia projektu i produktu Cykl życia projektu zbiór etapów projektu przeprowadzanych w określonym porządku, od pomysłu na projekt aż do jego zakończenia Cykl życia produktu zbiór etapów produktu przeprowadzanych w określonym porządku, od pomysłu na produkt do jego wykonania wraz z jego eksploatacją, aż do jej zaniechania GHJ 9

Model kaskady Analiza i definiowanie wymagań Projektowanie systemu i oprogramowania Programowanie i testowanie jednostek Integracja i testowanie systemu Instalacja i pielęgnacja systemu GHJ 10

Zalety i wady modelu kaskadowego Podejście sekwencyjne Ułatwia śledzenie i kontrolę postępów Zapewnia komplet dokumentów Ogniskuje uwagę na produktach pośrednich Odpowiedni dla krótko trwających procesów Brak weryfikacji między etapami Założenie o wykonaniu poprawnej specyfikacji na początku prac Duży odstęp czasu od zakończenia specyfikacji do wdrożenia GHJ 11

Zmodyfikowany model kaskadowy Analiza i definiowanie wymagań/ Zatwierdzenie Projektowanie systemu i oprogramowania/ Weryfikacja Kodowanie/ Testowanie jednostek Integracja / Testowanie i Weryfikacja Wdrożenie/ Testowanie Działanie i pielęgnacja/ Ponowne zatwierdzenie GHJ 12

Model V Specyfikacja Test akceptacji Projekt systemu Projekt podsystemu Projekt modułu Integracja i walidacja systemu Integracja i weryfikacja podsystemu Testowanie modułu Kodowanie, wstępne testowanie modułu GHJ 13

Zalety i wady modelu V Sprzężenie procesów weryfikacji i walidacji z etapami podstawowymi Sekwencyjne etapy, których rozpoczęcie zależy od zakończenia poprzedniego GHJ 14

Podejście prototypowania Prototyp jest częściową implementacją systemu, wyrażoną logicznie lub fizycznie, prezentowany za pomocą zewnętrznego interfejsu Może składać się z ekranów, raportów i menu prawdziwego systemu, faktycznie nie wykonuje wszystkich funkcji systemu GHJ 15

Zalety i wady prototypowania Na etapie analizy pozwala na ustalenie prawdziwych potrzeb klienta, wspomaga weryfikację specyfikacji wymagań, Na etapie projektowania wspomaga podjęcie decyzji projektowych Trudności w zastosowaniu do dużych systemów (małe systemy lub na poziomie podsystemów) Trudności w określeniu liczby iteracji Niebezpieczeństwo pozostawienia tymczasowych rozwiązań GHJ 16

Model prototypowania Lista zmian Lista zmian Lista zmian Zmiana prototypu przegląd przez użytkownika Prototyp wymagań Prototyp projektu Prototyp systemu Testowanie Wymagania systemu Często niekompletne I nieformalne Wykonany system GHJ 17

Podejście iteracyjne Wymagania i projekt są modyfikowane poprzez serie iteracji prowadzących do otrzymania systemu satysfakcjonującego rozwijające się potrzeby klienta Spotkania sprzężenia zwrotnego i zasada wzajemnego uczenia się Umożliwia większe zrozumienie definicji wymagań przez klienta Umożliwia rozpoczęcie tworzenia dla podzbioru wymagań - analiza każdego produktu pośredniego GHJ 18

Model ewolucyjny Równoległe działania Specyfikacja Pierwsza wersja Ogólny zarys Tworzenie Pośrednie wersje Testowanie Wersja końcowa GHJ 19

Cechy modelu ewolucyjnego powtarzalność części procesu uwzględnienie częstych zmian wymagań ewolucyjna natura oprogramowania umożliwia zrozumienie trudnych szczegółów wymagań umożliwia wydanie ograniczonej wersji produktu w przypadku presji czasu GHJ 20

Określenie celów, alternatyw, ograniczeń Kumulacja kosztów Wzrost przez kroki Analiza ryzyka Szacowanie alternatyw, identyfikacja, redukcja ryzyka Analiza ryzyka Przegląd części Planowanie następnej fazy/ iteracji Plan cyklu życia Plan wykonania Plan testowania integracji A R Analiza ryzyka P1 Koncepcja działania Zatwierdzenie wymagań Zatwierdzenie i weryfikacja projektu P2 Test akceptacji Implementacja P3 Dobry prototyp Symulacje Modele Porównania Wymagania Projekt programu Integracja i testowanie Szczegółowy projekt Kod Testowanie jednostek P1,2,3 - prototypy Tworzenie, weryfikacja produktu następnego poziomu GHJ 21

Zalety i wady modelu spiralnego Proces iteracyjny Każde okrążenie dotyczy jednego elementu produktu duże projekty Umożliwia zmiany w rozwoju produktu zarządzanie zmianami Konieczność zarządzania ryzykiem Wczesna eliminacja błędów Umożliwia wykorzystanie podejścia prototypowania Powtórne wykorzystanie wcześniej wykonanych części Każdy cykl zakończony przeglądem wykonanym przez kluczowych członków zespołu Wymaga dużej wiedzy i doświadczenia od kierownika procesu Trudności w opracowaniu i kontroli kontraktu GHJ 22

Składanie z powtarzalnych komponentów Technika zakłada istnienie gotowych części systemu, nazywanych komponentami Wykorzystanie podobieństwa tworzonego oprogramowanie do posiadanych komponentów Możliwość zastosowania na etapie analizy i projektowania (narzędzia CASE), a szczególnie implementacji Zmniejszenie w znacznym stopniu ryzyka Zapewnienie standardów Redukcja nakładów, skrócenie procesu wytwórczego Konieczność rozwiązywania problemów integracji GHJ 23

Komponent jednostka programistyczna wykonywalna, która jest niezależnie produkowana sprzedawana rozbudowywana posiadająca określone interfejsy i jawne zależności kontekstowe odpowiada klasie lub zbiorowi kilku klas w programowaniu obiektowym GHJ 24

Fazy etapu tworzenia w modelu komponentowym Identyfikacja odpowiednich komponentów Konstrukcja n-tej iteracji systemu Sprawdzanie dostępności komponentów Dodanie nowych komponentów do biblioteki Wybór dostępnych komponentów Wytworzenie niedostępnych komponentów GHJ 25

Język formalny symbol obiekt abstrakcyjny, np. litera, cyfra, znak graficzny łańcuch (słowo) skończony ciąg symboli alfabet skończony zbiór symboli ( ) język (formalny) - zbiór łańcuchów złożonych z symboli jakiegoś jednego alfabetu ( *) Przykład jeżeli = {a}, to * = {ε, a, aa, aaa,...}, gdzie ε słowo puste GHJ 26

Formalna transformacja Wykonanie specyfikacji wymagań systemu w języku formalnym Automatyczne przekształcenie formalnej specyfikacji do postaci pseudokodu, a następnie kodu programu w określonym języku programowania Poszczególne etapy cyklu życia są realizowane w sposób indywidualny, zależny od złożoności obliczeniowej problemu Formalna specyfikacja wymagań Postać pośrednia Postać pośrednia Kod GHJ 27

Zalety i wady formalnej transformacji Wysoka niezawodność pod warunkiem bezbłędnej specyfikacji Przeniesienie trudności programowania na etap specyfikacji wymagań Prawdopodobna mała efektywność uzyskanego kodu Brak uniwersalnych języków formalnej specyfikacji GHJ 28

RAD ang. Rapid Application Development szybkie wytworzenie kompletnego produktu podejście liniowe z iteracją, możliwość wykorzystania prototypowania wprowadzenie do zarządzania projektem powiązania kwalifikacji i motywacji zespołu z celami uzyskiwanymi w określonym czasie GHJ 29

Zespół 1 Modelowanie działalności Zespół 3 Zespół 2 Modelowanie działalności Modelowanie danych Modelowanie działalności Modelowanie danych Modelowanie procesów Modelowanie danych Modelowanie procesów Generowanie aplikacji 60 90 dni Modelowanie procesów Generowanie aplikacji Model RAD Generowanie aplikacji Testowanie i wdrożenie Testowanie i wdrożenie Testowanie i wdrożenie GHJ 30

Zastosowanie i wymagania RAD Zastosowanie szybko zmieniające się wymagania ograniczony czas wykonania do wybranych części aplikacji Nie stosować do przedsięwzięć związanych z dużym ryzykiem, z wymaganiem wysokiej efektywności Wymagania modułowość systemu zastosowanie narzędzi CASE, gotowych komponentów wielokrotnego użycia zwiększenie produktywności zespołu wysoka jakość zasobów duże zaangażowanie użytkownika w przeglądy GHJ 31

Wstępna koncepcja Przykładowy model V Pielęgnowanie Rozpoczęcie przedsięwzięcia Specyfikacja wymagań Ewolucja Faza wynikowa produktu Szczegółowa specyfikacja wymagań Specyfikacja Projektowanie architektury o. Przetestowany system łącznie z akceptacją i przekazaniem Sprawdzony system Scalanie i testowanie Testowanie akceptacyjne Projekt Przetestowane oprogramowanie Scalone oprogramowanie Kontrola jakości Szczegółowe projektowanie Scalanie i testowanie oprogramowania Kontrola jakości Projekt modułu Działające moduły Kodowanie i testowanie GHJ jednostek 32

Relacje cykli życia Cykl życia organizacji Planowanie kierunków Identyfikacja potrzeb Koncepcja projektu Realizacja Serwisowanie produktu Wycofanie Cykl życia produktu Studium wykonalności Wytwarzanie Eksploatacja Wycofanie Cykl życia projektu Inicjacja Planowanie Wdrożenie Zamknięcie GHJ 33

Podział projektu na etapy Podział cyklu życia projektu na etapy ze względu na usprawnienie zarządzania Każdy etap wyznaczony przez ukończenie jednego lub kilku produktów pośrednich Produkt pośredni wymierny, konkretny i sprawdzalny rezultat lub przedmiot, np.. studium wykonalności, dokumentacja techniczna, prototyp Produkt pośredni i etapy tworzą logiczną sekwencję prowadzącą do produktu końcowego GHJ 34

Wybór modelu cyklu życia projektu I. Rozpoznanie istniejących modeli II. III. IV. Przegląd i analiza rodzaju prac: tworzenie, rozwijanie, pielęgnacja, Wybór modelu według listy kryteriów Dostosowanie modelu cyklu życia projektu do indywidualnych potrzeb GHJ 35

Kryteria wyboru modelu ryzyko czas na wykonanie niezawodność klarowność wymagań technologia, rozmiar i złożoność interfejs użytkownika priorytety użytkownika spodziewany czas życia systemu potencjalna równoległość interfejsy z istniejącymi lub nowymi systemami GHJ 36

Dostosowanie modelu cyklu życia projektu do indywidualnych potrzeb Przegląd modelu ze względu na zgodność ze standardami obowiązującymi w organizacji (ISO, IEEE, SEI) Identyfikacja faz i zadań Zapewnienie produktów technicznych i zarządczych Określenie szablonów i zawartości dokumentów Określenie punktów przeglądu, inspekcji, weryfikacji, walidacji i kamieni milowych Oszacowanie efektywności ramowego szkicu modelu i jego poprawa GHJ 37