Inżynieria oprogramowania (Software Engineering)



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

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

Etapy życia oprogramowania

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

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

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ą?

Inżynieria oprogramowania (Software Engineering)

Przedsięwzięcia Informatyczne w Zarządzaniu

Cykle życia systemu informatycznego

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

Opis metodyki i procesu produkcji oprogramowania

Zakres wykładu. Podstawy InŜynierii Oprogramowania

Inżynieria Programowania - Wstęp

Inżynieria oprogramowania I

Projektowanie systemów informatycznych. wykład 6

Inżynieria Programowania - Wstęp

Zasady organizacji projektów informatycznych

Waterfall model. (iteracyjny model kaskadowy) Marcin Wilk

Inżynieria oprogramowania (Software Engineering) Wykład 1

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

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

Inżynieria oprogramowania

Inżynieria Programowania - Wstęp. Plan wykładu. Bibliografia. Motto. Notatki. Notatki. Notatki. Notatki. Arkadiusz Chrobot. Kielce, 4 kwietnia 2013

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

RUP. Rational Unified Process

Agile Project Management

WPROWADZENIE DO UML-a

Programowanie zespołowe

Wytwarzanie oprogramowania

Egzamin / zaliczenie na ocenę*

SYSTEMY INFORMATYCZNE ćwiczenia praktyczne

PRZEWODNIK PO PRZEDMIOCIE

Wstęp. Kryzys rozwoju oprogramowania. Efekty. Przyczyny

PRZEWODNIK PO PRZEDMIOCIE

Podstawy programowania III WYKŁAD 4

Rok akademicki: 2012/2013 Kod: IET SW-s Punkty ECTS: 3. Kierunek: Elektronika i Telekomunikacja Specjalność: Systemy wbudowane

E-ID1S-08-s5. Informatyka. I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

Podstawy modelowania programów Kod przedmiotu

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

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

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

Wykład 1 Inżynieria Oprogramowania

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

Procesy wytwarzania oprogramowania Specyfikacja i projektowanie oprogramowania

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

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

Testowanie oprogramowania

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

GUI - projektowanie interfejsów

Rok akademicki: 2014/2015 Kod: IEL s Punkty ECTS: 5. Poziom studiów: Studia I stopnia Forma i tryb studiów: -

ZASADY TWORZENIA OPROGRAMOWANIA

MODELE CYKLU śycia OPROGRAMOWANIA

Narzędzia CASE dla.net. Łukasz Popiel

Inżynieria Programowania - Wstęp. Plan wykładu. Bibliografia (część, reszta na stronie) Motto. Notatki. Notatki. Notatki. Notatki.

Analiza i projektowanie obiektowe w UML Kod przedmiotu

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

Techniki CAx. dr inż. Michał Michna. Politechnika Gdańska

Testy poziom po poziomie

Modelowanie i analiza systemów informatycznych

Wykład 2. MIS n Inżynieria oprogramowania Marzec Kazimierz Michalik Akademia Górniczo-Hutnicza im. S. Staszica w Krakowie

INŻYNIERIA OPROGRAMOWANIA

Rozpoczęcie, inicjacja (ang. inception

Szkolenie: ISTQB Model-Based Tester

Laboratorium 5 - Projektowanie programów zorientowanych obiektowo. Indywidualny projekt programistyczny

Wykład 4. Projektowanie. MIS n Inżynieria oprogramowania Październik 2014

Metodyka projektowania komputerowych systemów sterowania

PRZEWODNIK PO PRZEDMIOCIE

Systemy Czasu Rzeczywistego (SCR)

1. WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI

E-1IZ3-06-s6. Inżynieria Programowania. Informatyka. I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

Karta opisu przedmiotu Zaawansowane techniki analizy systemowej oparte o modelowanie warsztaty

wbudowane October 7, 2015 KSEM WETI PG Komputery przemysłowe i systemy wbudowane Oprogramowanie systemów wbudowanych - wydajność Wydajność

Pytania z przedmiotów kierunkowych

Metody wytwarzania oprogramowania. Metody wytwarzania oprogramowania 1/31

Analityk i współczesna analiza

Główne założenia XP. Prostota (Simplicity) Komunikacja (Communication) Sprzężenie zwrotne (Feedback) Odwaga (Agressiveness)

Inżynieria Oprogramowania w Praktyce

REQB POZIOM PODSTAWOWY PRZYKŁADOWY EGZAMIN

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

Inżynieria oprogramowania

STUDIA STACJONARNE I STOPNIA Przedmioty kierunkowe

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

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

Konfiguracja modelowania w procesie wytwarzania oprogramowania

Szczególne problemy projektowania aplikacji internetowych. Jarosław Kuchta Projektowanie Aplikacji Internetowych

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

12) Wadą modelu kaskadowego jest: Zagadnienia obowiązujące na egzaminie z inżynierii oprogramowania: 13) Wadą modelu opartego na prototypowaniu jest:

Faza analizy (modelowania) Faza projektowania

Wszystkie problemy leżą w testach. ForProgress spółka z ograniczoną odpowiedzialnością sp.k.

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

Zagadnienia. Inżynieria Oprogramowania

INŻYNIERIA OPROGRAMOWANIA Metodyki zarządzania projektem - porównanie

IO - inżynieria oprogramowania. dr inż. M. Żabińska, zabinska@agh.edu.pl

Dr Katarzyna Grzesiak-Koped

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

Strategia testów mająca doprowadzić do osiągnięcia pożądanych celów

Rational Unified Process. Dokładny opis metodyki i procesu produkcji oprogramowania

INŻYNIERIA OPROGRAMOWANIA LAB 1

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

Transkrypt:

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 Dobre procesy zmniejszają ryzyko

Zarządzanie ryzykiem Co może pójść źle w projekcie oprogramowania? W jaki sposób można ograniczyć ryzyko?

Uproszczony proces produkcji oprogramowania Studium wykonalności i planowanie Wymagania Projektowanie Implementacja Obsługa i konserwacja

Definicja wymagań Model kaskadowy-wodospadu (Waterfall Model) Projektowanie oprogramowania Programowanie i testowanie jednostkowe Integracja i testowanie systemu Obsługa i konserwacja

Analiza wymagań i definicja (Requirements Analysis and Definition) Systemowe usługi, ograniczenia i cele są ustalane w drodze konsultacji z użytkownikami systemu. Następnie są one określane w sposób zrozumiały przez użytkowników i pracowników rozwoju (deweloperów). Faza ta może być podzielona na: Studium wykonalności (oddzielne przedsięwzięcie?) Analiza wymagań Definicja wymagań Specyfikację wymagań

Projektowanie oprogramowania (System and Software Design) Projekt systemu: Rozdziela wymagania do systemów sprzętowych lub softwarowych. Ustanawia ogólną architekturę systemu. Projekt oprogramowania: Reprezentuje funkcje systemowe oprogramowania w formie, którą można przekształcić w jeden lub więcej programów wykonywalnych. Zunifikowany Język Modelowania (Unified Modeling Language, UML)

Programowanie i testowanie jednostkowe (Programming and Unit Testing) Projekt oprogramowania realizowany jest jako zestaw programów lub jednostek (pisanych indywidualnie, nabytych z zewnątrz lub zmodyfikowanych.) Poszczególne elementy są testowane zgodnie ze specyfikacjami.

Integracja i testowanie systemu (Integration and System Testing) Poszczególne jednostki programu są: Integrowane i testowane jako kompletny system Sprawdzane pod kątem określonych wymogów Dostarczane do klienta

Obsługa i konserwacja (Operation and Maintenance) Obsługa: System jest wprowadzany do praktycznego użycia. Konserwacja: Błędy i problemy zostają zidentyfikowane i naprawione. Ewolucja: system jest rozwijany w czasie: ze zmianą wymagań, aby dodać nowe funkcje, by dostosować do środowiska technicznego. Wycofywanie (Phase out): System zostaje wycofany z eksploatacji.

Rola modelu kaskadowego Zalety: Widoczność procesu Zależność od jednostek Kontrola jakości Kontrola kosztów Wady: Każdy etap procesu ujawnia nowe zrozumienie poprzednich etapów, a ono wymaga zmiany wcześniejszych etapów.

Requirements Definition Sprzężenie zwrotne w modelu System and Software design kaskadowym Programming and Unit Testing Integration and System Testing Operation and Maintenance

Ewolucyjny rozwój oprogramowania Koncepcja: początkowa realizacja przeznaczona jest dla komentarza użytkownika, następne będą dopracowywane aż system stanie się kompletny. Vaporware (oprogramowanie które zostało rozreklamowane, ale nie zostało ukończone), interfejs makiety Porzucane składniki oprogramowania Moduły-atrapy Szybkie prototypowanie Kolejne udoskonalenie

Idea iteracyjnego udoskonalania (Iterative Refinement) Ewaluacja Wymagania Implementacja (prototypowanie) Projektowanie

Proces iteracyjnego udoskonalania Opis schematyczny systemu Aktywności konkurencyjne Wymagania Projektowanie Implementacja Oprogramowanie Wersja początkowa Wersje porednie Wersja finalna

Uwagi nt. procesów wytwarzania oprogramowania Zrealizowane projekty powinny wyglądać jak wykonane w modelu kaskadowym, ale proces rozwoju zawsze będzie częściowo ewolucyjny. Ryzyko przedsięwzięcia jest obniżane przez: Prototypowanie elementów kluczowych Podział na etapy Postępowanie zgodnie z przyjętym procesem tworzenia oprogramowania Wykorzystanie komponentów wielokrotnego użytku