Inżynieria oprogramowania

Slides:



Advertisements
Podobne prezentacje
Słabe strony administracji publicznej wg Narodowej Strategii Spójności 2007
Advertisements

2.1. MISJA PRZEDSIĘBIORSTWA I JEGO CELE
Projektowanie w cyklu życia oprogramowania
Złożoność procesu konstrukcji oprogramowania wymusza podział na etapy.
Część 2 OiZPI Iteracyjny przyrostowy model cyklu życiowego Rational Unified Process™ w materiałach wykorzystano: K.Subieta: Budowa i integracja systemów.
OiZPI Część 5 narzędzia CASE w materiałach wykorzystano:
Role w zespole projektowym
Projektowanie systemów informatycznych Wykład 1
1 / 47 WARSZAWA 2005 Przemysław Siekierko Stanisław Andraszek Rational Unified Process.
Referat 3. Planowanie zadań i metody ich obrazowania
FIT Środowisko Testów Integracyjnych
Projektowanie Aplikacji Komputerowych
Projektowanie Aplikacji Komputerowych
SYSTEM ZARZĄDZANIA JAKOŚCIĄ
Cykle życia oprogramowania
Jakość systemów informacyjnych (aspekt eksploatacyjny)
Rational Unified Process
Praca Inżynierska „Analiza i projekt aplikacji informatycznej do wspomagania wybranych zadań ośrodków sportowych” Dyplomant: Marcin Iwanicki Promotor:
Analiza i ocena procesów wdrożeniowych systemów klasy MRP/ERP w firmie
1/18 LOGO Profil zespołu. 2/18 O nas Produkcja autorskich rozwiązań informatycznych dla małych i średnich firm w zakresie systemów: Baz danych Aplikacji.
Dalsze elementy metodologii projektowania. Naszym celem jest...
Analiza, projekt i częściowa implementacja systemu obsługi kina
Analiza i projektowanie systemów informacyjnych
Wykład 2 Cykl życia systemu informacyjnego
Wykład 10 Narzędzia CASE.
C.d. wstępu do tematyki RUP
Kompleksowe zarządzanie jakością informacji (TIQM)
Skuteczny i efektywny samorząd terytorialny Warszawa, 8 października 2010 r. Procedura Poświadczania Jakości Zastosowania CAF Po co to nam? Jak to będzie.
Microsoft Solution Framework
Wymiana integracja ? oprogramowania dr Danuta Kajrunajtys.
Plan rozwoju Biblioteki Wyższej Szkoły Humanistyczno-Ekonomicznej w Łodzi Centrum Badań i Rozwoju Kształcenia WSHE.
Moduł: Informatyka w Zarządzaniu
Rational Unified Process Implementacja Aleksandra Reiman, gr. I-52.
Prof. Aleksander Surdej
Program Operacyjny Kapitał Ludzki
Planowanie przepływów materiałów
TESTOWANIE OPROGRAMOWANIA
Cykl tworzenia oprogramowania
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski 1 informatyka +
Komputerowe wspomaganie projektowania
Waterfall model.
Metodologia CASE. Przyczyny użycia narzędzi CASE Główną przesłanką użycia narzędzi CASE jest zwiększenie produktywności i jakości produkowanych systemów.
Walidacja danych alina suchomska.
ŁUKASZ DZWONKOWSKI Modele zwinne i ekstremalne. Podejście tradycyjne
Proces tworzenia oprogramowania Proces tworzenia oprogramowania jest zbiorem czynności i związanych z nimi wyników, które prowadzą do powstania produktu.
Podstawy zarządzania projektami Karta projektu
Business Consulting Services © 2005 IBM Corporation Confidential.
Copyright © Jerzy R. Nawrocki Team Software Process Inżynieria oprogramowania II Wykład.
ZINTEGROWANE SYSTEMY ZARZĄDZANIA
ZINTEGROWANE SYSTEMY ZARZĄDZANIA
Eksploatacja zasobów informatycznych przedsiębiorstwa.
Model kaskadowy jest czytelny, przejrzysty, ale w istocie niepraktyczny Proces projektowania systemu informacyjnego.
Ergonomia procesów informacyjnych
Dane – informacje - wiadomości Kodowanie danych i problem nadmiarowości.
7/1/ Projektowanie Aplikacji Komputerowych Piotr Górczyński Cykl życia systemu.
Eksploatacja zasobów informatycznych przedsiębiorstwa.
Logical Framework Approach Metoda Macierzy Logicznej
Zintegrowany monitoring infrastruktury IT w Budimex
SYRIUSZ – KONFERENCJA PSZ 2011 Dr inż. Jan Gąsienica-Samek Kierownik projektu 1.12 Centrum Rozwoju Zasobów Ludzkich.
Wykład 2 – Zintegrowane systemy informatyczne Michał Wilbrandt.
WYKŁAD dr Krystyna Kmiotek
ANALIZA WARTOŚCI PRZEDSIĘWZIĘĆ PROJEKTOWYCH ZE SZCZEGÓLNYM UWZGLĘDNIENIEM KRYTERIUM ICH EFEKTYWNOŚCI Bartłomiej Czekaj Numer albumu: 1892 Promotor: Prof.
Cykle życia oprogramowania oraz role w zespole projektowym Autor: Sebastian Szałachowski s4104.
T 10. Metodologia Rapid Re - wprowadzenie
„Metodologia Zarządzania Cyklem Projektu (PCM) — klucz do sukcesu
Zarządzanie projektami informatycznymi
IV Konferencja Naukowo-Techniczna "Nowoczesne technologie w projektowaniu, budowie.
IEEE SPMP Autor : Tomasz Czwarno
Zapis prezentacji:

Inżynieria oprogramowania Bartosz Marcinkowski Michał Kuciapski

System informacyjny System informacyjny: Jest to celowe zestawienie ludzi, danych, procesów, sposobów komunikacji, infrastruktury sieciowej i urządzeń komputerowych, które to elementy współdziałają w celu zapewnienia codziennego funkcjonowania organizacji (transakcyjne przetwarzanie danych) jak również wspierający rozwiązywanie problemów i podejmowanie decyzji przez kadrę kierowniczą (systemy raportowania i wspomagania decyzji) System informacyjny niekoniecznie musi zawierać elementy infrastruktury IT

System informatyczny System informatyczny może być jedną z części składowych systemu informacyjnego oba terminy używane są jako synonimy - niesłusznie System informatyczny to oparte na technologii komputerowej rozwiązanie pojedynczego problemu biznesowego. Może być to aplikacja, rozwiązanie sprzętowe lub (najczęściej) połączenie obu tych składników System informacyjny może się składać z więcej niż jednego systemu informatycznego

Budowa zespołu Projekty informatyczne są realizowane przez zespoły ludzkie W zespołach tych wyróżnić można role formalne oraz nieformalne W efektywnym zespole: Są zapewnione role Każdy zna zarówno rolę swoją, jak i innych Jest przywódca Pułapki w budowie zespołu: Źle określone zadania Zbyt mało pracowników Zbyt niskie kwalifikacje Zła kombinacja styli zachowania

Budowa zespołu – cd Zła kombinacja styli zachowania: Rodzi irytację Prowadzi do różnicy zdań Zwiększa ilość popełnianych błędów W skrajnych przypadkach prowadzi do utraty zdolności do pracy

Role w zespole Role formalne: Role nieformalne: Szef Sekretarka Specjalista Użytkownik Role nieformalne: Kontroler Promotor Supporter Analityk

Role w zespole – cd Promotor Manipulacyjny Bardzo emocjonalny Chce szybkich zmian Globalista Stymuluje Spontaniczny Głośno myśli Manipulacyjny Konkurencyjny Prowokacyjny Głośny Niesystematyczny

Role w zespole – cd Kontroler Niecierpliwy Naturalny przywódca Aktywny i ambitny Niezależny Sprawny Kompetentny Odpowiedzialny Niecierpliwy Niepodtrzymujący Arogancki Żądny władzy Nieinspirujący

Role w zespole – cd Analityk Stabilizujący Koncepcyjny Zbieracz faktów Dobry słuchacz Bardzo systematyczny Można na nim polegać Niekomunikatywny Introwertyczny Trochę nudny Niecierpliwy i wątpiący Unika konfliktów

Metodyka tworzenia SI Główne elementy: Wyróżnia się 3 rodzaje metodyk: Metody i techniki (diagramy, macierze, pseudokod…) Cykl życia systemu Narzędzia CASE Procedury testowania Wyróżnia się 3 rodzaje metodyk: Strukturalne Obiektowe społeczne

Projektowanie Projektowanie systemu informacyjnego jest procesem. Jest to skończony ciąg kroków (czynności) powiązanych ze sobą relacjami, które mają doprowadzić do osiągnięcia zamierzonego celu w postaci systemu spełniającego przyjęte wymagania. W procesie projektowania możliwe są pętle. Sam proces projektowania jest jednym z elementów większego procesu – cyklu życia systemu informacyjnego.

Metodyki projektowania Zstępujące (ang. Top-down) Wstępujące (ang. Bottom-up)

Cykl życia systemu Reprezentuje powtarzającą się w czasie całość działań prowadzonych od ujawnienia potrzeby budowy systemu aż po zakończenie jego użytkowania W cyklu życia obrazowane są kolejne etapy rozwoju i eksploatacji systemu, wraz z ich kontekstem, produktami, wzajemnymi relacjami i zależnościami w czasie Do najbardziej znanych cykli życia systemu należą: Cykl kaskadowy (liniowy, klasyczny) Cykl spiralny Cykl przyrostowy (i podejścia pochodne)

Elementy faz cyklu W każdej fazie określa się: Cele Działania Kolejność realizowanych działań Punkty przeglądu Produkty i dokumentacje

Kaskadowy cykl życia systemu Planowanie Identyfikacja problemu Wizja rozwiązania problemu Ocena możliwych rozwiązań Decyzja na temat podjęcia projektu Czy mamy cokolwiek robić?

Planowanie Należy odpowiedzieć sobie na pytania: W jaki sposób system przyczyni się do rozwiązania problemu? Jakie konkretne efekty biznesowe osiągną udziałowcy systemu po zrealizowaniu celu? Czy cel jest uzasadniony ekonomicznie? Czy cel jest osiągalny w kontekście istniejących ograniczeń (budżet, zasoby, technologia, uwarunkowania o charakterze organizacyjnym na etapie użytkowania, prawo) Jaki konkretnie miałby być zakres systemu? Jakie jest ryzyko podjęcia się tego projektu?

Planowanie – cd Zakres Jakość Koszt Zasoby

Planowanie – cd Informatyzacja hotelu: przykład Cele: Poprawa obsługi gości Obniżenie kosztów własnych hotelu Efekty biznesowe: Przechwycenie klientów od konkurencji Mniejsze koszty własne Przyjęte kryteria: Zwiększenie liczby gości o 10% w pierwszym roku użytkowania systemu Wskaźnik (kosztyWłasne / gość) w pierwszym roku powinien spaść o 20% ceteris paribus (z pominięciem takich czynników jak spadek zatrudnienia czy fluktuacje płac)

Kaskadowy cykl życia systemu – cd Planowanie Analiza Szczegółowe badanie dziedziny przedmiotowej Wyszukanie potencjalnych usprawnień Identyfikacja podstawowych problemów na styku przyszły system – organizacja Identyfikacja i dokładna specyfikacja wymagań Co my tak naprawdę mamy zrobić?

Kaskadowy cykl życia systemu – cd Planowanie Analiza Projektowanie Stworzenie kompletnej dokumentacji systemu Weryfikacja stworzonego modelu pod kątem zgodności z wymaganiami i dziedziną przedmiotową Jak dokładnie ma to działać?

Kaskadowy cykl życia systemu – cd Planowanie Analiza Projektowanie Implementacja Kodowanie Testowanie na niskim poziomie (moduły) Gdzie zamawiać pizzę dla programistów?

Kaskadowy cykl życia systemu – cd Planowanie Analiza Projektowanie Implementacja Testowanie integracyjne Weryfikacja Walidacja Testy akceptacyjne Cośmy tak naprawdę stworzyli? Testowanie i walidacja

Testowanie i walidacja Weryfikacja Czy rezultat danego etapu jest zgodny z tym, co stworzyliśmy wcześniej? Czy jesteśmy konsekwentni? Walidacja Czy to, co robimy, jest tym, o co nam chodziło? Czy idziemy we właściwym kierunku?

Kaskadowy cykl życia systemu – cd Planowanie Analiza Projektowanie Implementacja Testowanie i walidacja Użytkowanie i adaptacja

Użytkowanie i adaptacja Przygotowanie środowiska Instalacja systemu Przeniesienie danych Szkolenia Udostępnienie manuala Audyt Konserwacja (diagnostyka, drobne błędy) Adaptacja (np. prawo) Ulepszanie (nowe wymagania, lifting)

Zalety Kompletny Sprawdzony w praktyce Strukturyzowalny (wsparcie narzędzi) Pozwala na łatwą dekompozycję pracy Brak nadmiarowości (koszty!)

Wady Wszystkie wymagania muszą być znane na początku Brak sprzężenia zwrotnego wymagania – efekty (bardzo późna walidacja) Duża bezwładność (technologia) Olbrzymie koszty usuwania błędów popełnionych na wczesnych etapach oraz korekty wymagań Problemy z alokacją zasobów i znużeniem zespołu

Spiralny cykl życia systemu

Zalety Bardzo elastyczny (zmiany otoczenia, alokacja zasobów, niestabilność wymagań) Nieustanna walidacja Niskie ryzyko niepowodzenia (zakres, jakość)

Wady Długotrwałe dochodzenie do rozwiązania docelowego Dodatkowe koszty tworzenia kolejnych prototypów Kłopoty z zarządzaniem Presja na zmniejszenie jakości

Podejście przyrostowe Stopniowo realizowane w całości kolejne usługi systemu Funkcje te są na bieżąco walidowane przez użytkowników Po każdym przyroście można zakończyć budowę systemu (ucierpi zakres, nie jakość) Wymagania mogą być tylko częściowo zidentyfikowane Klient szybko otrzymuje jakiś rezultat Niestety czasochłonny Kłopoty z dekompozycją usług

Podejście przyrostowe – cd

Narzędzia CASE Computer-Aided Software Engineering Różna funkcjonalność: Edycja diagramów Sprawdzanie formalnej poprawności diagramów Sprawdzanie spójności modelu Generowanie kodu strukturalnego Inżynieria zwrotna Round-Trip Engineering Wyróżniające się narzędzia: IBM Rational Software Architect (kontynuacja rodziny Rational Rose) Sparx Systems Enterprise Architect Poseidon for UML

Dziękuję za uwagę