Podcast
Questions and Answers
Jaki model SDLC wykorzystuje iteracje nazwane spiralami?
Jaki model SDLC wykorzystuje iteracje nazwane spiralami?
Co charakteryzuje V-Model w procesie SDLC?
Co charakteryzuje V-Model w procesie SDLC?
Która z poniższych opcji nie jest celem inżynierii oprogramowania?
Która z poniższych opcji nie jest celem inżynierii oprogramowania?
Która rola funkcyjna jest odpowiedzialna za analizę wymagań biznesowych?
Która rola funkcyjna jest odpowiedzialna za analizę wymagań biznesowych?
Signup and view all the answers
Jaką cechę posiada model Big Bang?
Jaką cechę posiada model Big Bang?
Signup and view all the answers
Co najlepiej opisuje metaforę huśtawki w kontekście inżynierii oprogramowania?
Co najlepiej opisuje metaforę huśtawki w kontekście inżynierii oprogramowania?
Signup and view all the answers
Który z poniższych członków zespołu jest odpowiedzialny za finalizację projektu?
Który z poniższych członków zespołu jest odpowiedzialny za finalizację projektu?
Signup and view all the answers
Jakie są główne przewagi stosowania SDLC?
Jakie są główne przewagi stosowania SDLC?
Signup and view all the answers
Jakie są wymagania dotyczące zaliczenia wykładu i projektu?
Jakie są wymagania dotyczące zaliczenia wykładu i projektu?
Signup and view all the answers
Jakie podejście należy stosować według definicji IEEE w inżynierii oprogramowania?
Jakie podejście należy stosować według definicji IEEE w inżynierii oprogramowania?
Signup and view all the answers
Co jest jednym z powodów, dla których potrzebujemy inżynierii oprogramowania?
Co jest jednym z powodów, dla których potrzebujemy inżynierii oprogramowania?
Signup and view all the answers
Jakie fazy składają się na model spiralny?
Jakie fazy składają się na model spiralny?
Signup and view all the answers
Które z poniższych punktów NIE jest aspektami inżynierii oprogramowania?
Które z poniższych punktów NIE jest aspektami inżynierii oprogramowania?
Signup and view all the answers
Jak jest ustalona skala ocen dla wykładów?
Jak jest ustalona skala ocen dla wykładów?
Signup and view all the answers
Co charakteryzuje model Waterfall w procesie tworzenia oprogramowania?
Co charakteryzuje model Waterfall w procesie tworzenia oprogramowania?
Signup and view all the answers
Jak zdefiniować model Iterative w kontekście SDLC?
Jak zdefiniować model Iterative w kontekście SDLC?
Signup and view all the answers
Jakie są wyniki końcowego testu w wykładzie, a jakie w projekcie?
Jakie są wyniki końcowego testu w wykładzie, a jakie w projekcie?
Signup and view all the answers
Co jest celem stosowania ustandaryzowanej komunikacji w inżynierii oprogramowania?
Co jest celem stosowania ustandaryzowanej komunikacji w inżynierii oprogramowania?
Signup and view all the answers
Jakie podejście zakłada model spiralny do oceny ryzyka?
Jakie podejście zakłada model spiralny do oceny ryzyka?
Signup and view all the answers
Co oznacza podejście skalowane i adaptowalne w inżynierii oprogramowania?
Co oznacza podejście skalowane i adaptowalne w inżynierii oprogramowania?
Signup and view all the answers
Co jest główną cechą modelu Big Bang?
Co jest główną cechą modelu Big Bang?
Signup and view all the answers
Który z modeli zakłada realizację wymagań w przyrostowy sposób?
Który z modeli zakłada realizację wymagań w przyrostowy sposób?
Signup and view all the answers
Jakie podejście przyjmuje model V-Model?
Jakie podejście przyjmuje model V-Model?
Signup and view all the answers
Jakie są główne wyzwania związane z modelem Spiralnym?
Jakie są główne wyzwania związane z modelem Spiralnym?
Signup and view all the answers
Jakie jest główne zadanie etapu inicjacji projektu?
Jakie jest główne zadanie etapu inicjacji projektu?
Signup and view all the answers
Co jest głównym celem etapu planowania w cyklu życia projektu?
Co jest głównym celem etapu planowania w cyklu życia projektu?
Signup and view all the answers
Który z poniższych kroków nie jest częścią etapu wdrożenia projektu?
Który z poniższych kroków nie jest częścią etapu wdrożenia projektu?
Signup and view all the answers
Co obejmuje proces monitorowania i kontrolowania w projekcie?
Co obejmuje proces monitorowania i kontrolowania w projekcie?
Signup and view all the answers
Które z poniższych pojęć odnoszą się do operacyjności oprogramowania?
Które z poniższych pojęć odnoszą się do operacyjności oprogramowania?
Signup and view all the answers
Która cecha jest związana z przejściowością oprogramowania?
Która cecha jest związana z przejściowością oprogramowania?
Signup and view all the answers
W jakim celu tworzy się dokumentację specyfikacji wymagań oprogramowania?
W jakim celu tworzy się dokumentację specyfikacji wymagań oprogramowania?
Signup and view all the answers
Jakie działania są podejmowane podczas etapu utrzymania w projekcie?
Jakie działania są podejmowane podczas etapu utrzymania w projekcie?
Signup and view all the answers
Jakie z poniższych stwierdzeń najlepiej opisuje elastyczność w kontekście oprogramowania?
Jakie z poniższych stwierdzeń najlepiej opisuje elastyczność w kontekście oprogramowania?
Signup and view all the answers
Jakie zagadnienie nie jest związane z najlepszymi praktykami w tworzeniu oprogramowania?
Jakie zagadnienie nie jest związane z najlepszymi praktykami w tworzeniu oprogramowania?
Signup and view all the answers
Które z poniższych pojęć są związane z utrzymaniem oprogramowania?
Które z poniższych pojęć są związane z utrzymaniem oprogramowania?
Signup and view all the answers
Jakie działania są najważniejsze w procesie zbierania wymagań?
Jakie działania są najważniejsze w procesie zbierania wymagań?
Signup and view all the answers
Co oznacza pojęcie 'integralność' w kontekście inżynierii oprogramowania?
Co oznacza pojęcie 'integralność' w kontekście inżynierii oprogramowania?
Signup and view all the answers
Co można określić jako kluczową cechę 'bezpieczeństwa' w oprogramowaniu?
Co można określić jako kluczową cechę 'bezpieczeństwa' w oprogramowaniu?
Signup and view all the answers
Które z poniższych pojęć jest przykładem cechy, która może mieć różną wagę w różnych projektach IT?
Które z poniższych pojęć jest przykładem cechy, która może mieć różną wagę w różnych projektach IT?
Signup and view all the answers
Które z poniższych stwierdzeń najlepiej opisuje pojęcie 'adaptability' (zdolność adaptacji) w kontekście oprogramowania?
Które z poniższych stwierdzeń najlepiej opisuje pojęcie 'adaptability' (zdolność adaptacji) w kontekście oprogramowania?
Signup and view all the answers
Study Notes
Inżynieria Oprogramowania - Notatki ze Wykładu
- Data wykładu: 04.10.2024
- Wykładowca: Dr inż. Katarzyna Wasielewska-Michniewska
- Kontakt: [email protected]
- MS Teams: utworzony zespół, slajdy z wykładów będą udostępniane
- Konsultacje: na MINT - piątki 10:00-18:00
Zasady Zaliczenia
- Wykład: 40 punktów - końcowy test wielokrotnego wyboru
- Projekt: 60 punktów - zasady zaliczenia zostaną przedstawione na zajęciach projektowych
- Minimalny wymagany wynik: 50% z wykładu i projektu
-
Skala ocen:
- 91 i więcej - 5
- 81-90 - 4,5
- 71-80 - 4
- 61-70 - 3,5
- 51-60- 3
- 50 i mniej - 2
Czym jest Inżynieria Oprogramowania?
-
Proces projektowania, rozwijania, testowania i utrzymywania oprogramowania z użyciem zdefiniowanych zasad, metod i procedur
-
Definicja IEEE:
- Systematyczne, zdyscyplinowane i wymierne podejście do tworzenia, obsługi i utrzymania oprogramowania
- Zastosowanie inżynierii w kontekście oprogramowania / podejścia inżynierskiego do oprogramowania
- Badanie podejść w tym kontekście
-
Różnica między inżynierią oprogramowania a rozwojem oprogramowania:
-
inżynieria oprogramowania to szersze podejście, obejmujące cały proces, w tym definicje i metody, a rozwój to skupienie na konkretnych etapach tworzenia. Inżynieria oprogramowania stosuje zasady i metody inżynierskie do rozwoju oprogramowania.
Model Paradigmatów Oprogramowania
- Najbardziej podstawowym standardem jest "programming", które obejmuje tworzenie instrukcji dla komputera, aby wykonał zadanie.
- Kolejnym standardem jest "software design", który opiera się na definiowaniu, sposobie komunikacji oraz architekturze interfejsu, które pozwalają na zbudowanie pełnego i funkcjonalnego software produktu.
- Najbardziej kompleksowym standardem jest "software development", który włącza w siebie wszystkie wcześniej wymienione aspekty, a ponadto skupia się na zarządzaniu cyklem życia produktu oraz komunikacji i współpracy z "interesariuszami".
Dlaczego potrzebujemy Inżynierii Oprogramowania?
- Skomplikowane systemy: integracje, interakcje, modularność, procesy
- Większe zespoły: skomplikowana struktura
- Unikanie chaosu: w placu deweloperskim
- Trudne śledzenie postępu: zakresu prac, oceny ryzyka
- Rotacja deweloperów: praca nad „cudzym” kodem
- Długie cykle życia projektów: zespoły żyją krócej niż projekty
- Potrzeby: standaryzacja komunikacji, procedury, praktyki, skalowane i elastyczne podejście
Czym jest dobre oprogramowanie?
-
Operacyjność:
- Niezawodność, integralność, poprawność, użyteczność, wydajność, funkcjonalność, bezpieczeństwo, bezpieczeństwo
-
Utrzymanie:
- Skalowalność, elastyczność, możliwość testowania, rozszerzalność, modularność
-
Przejściowość:
- Interoperacyjność, możliwość ponownego użycia, przenośność, adaptacyjność
Kto może zyskać na stosowaniu inżynierii oprogramowania?
- różni zainteresowani, w tym osoby zarządzające, projektanci i deweloperzy oprogramowania
Plan wykładów
- Wprowadzenie, zasady
- Cykl życia projektu IT, powiązane procesy i role funkcyjne
- Zbieranie i analiza wymagań
- Narzędzia i techniki do wsparcia analizy systemu: UML, User stories, FURPS, BPMN
- Software Development Frameworks
- Narzędzia i techniki do zarządzania kodem
- Zasady tworzenia dobrego oprogramowania
- Architektury oprogramowania
- Wzorce projektowe
- Zarządzanie jakością oprogramowania
- Testowanie
- Narzędzia – git, gitflow, CI, bugtracking, profiling
- Utrzymanie oprogramowania
Literatura Dodatkowa
- Dostarcza listy materiałów odniesienia dla studentów
Cele
- Poznanie metod i narzędzi
- Rozumienie procesu tworzenia oprogramowania
- Nauki najlepszych praktyk
- Wiedza w razie przyszłych problemów
Cykl Życia Projektu
- Initiating: definiowanie projektu, analiza wykonalności, analiza finansowa, definiowanie zakresu pracy
- Planning: tworzenie planu zarządzania projektem obejmującego wszystkie aspekty realizacji
- Executing: realizacja zadań zgodnie z założeniami i planem
- Monitoring and Controlling: śledzenie postępu, analiza ryzyka, zarządzanie kosztami i czasem
- Closing: ukończenie projektu, ewaluacja, analiza efektywności
Modele SDLC (Software Development Life Cycle)
- Waterfall: kolejne sekwencyjne etapy, wyjścia jednego etapu wejściem na kolejny etapie
- Iterative: realizacja oprogramowania w powtarzalnych cyklach, uwzględnianie kolejnych aktualizacji
- Spiral: iteracyjne etapy z analizą ryzyka i ewaluacją na każdym kolejnym etapie
- V-Model: fazy rozwoju i testowania, dla każdej fazy rozwoju występuje powiązana faza testowania
- Big Bang: minimalne planowanie, wszystkie zasoby skupione na rozwoju oprogramowania
Korzyści SDLC
- Większa widoczność: procesu rozwoju dla wszystkich
- Efektywne szacowanie, planowanie i harmonogramowanie
- Zarządzanie ryzykiem i kosztami
- Systematyczne dostarczanie oprogramowania
- Satysfakcja klientów
Role Funkcyjne
- Analityk biznesowy, Architekt, Deweloper, Tester, Zespół wdrożeniowy, Administrator, Sponsor projektu, Menadżer projektu, Właściciel Produktu, Zespół sprzedaży i marketingu
Gdzie zastosować inżynierię oprogramowania
- w różnych dziedzinach
Metafora huśtawki
- przedstawiająca proces rozwoju oprogramowania z różnych perspektyw
9 ról w zespole Belbina
- opis ról w zespole, pogrupowanych ze względu na ich nastawienie:
- kierunkowane na myślenie, kierunkowane na działanie, kierunkowane na ludzi
Jak używać teorii Belbina
- Zespół składający się z członków o podobnych stylach zachowań i tendencjach może utracić równowagę.
- Warto wykorzystać różnorodne umiejętności i osobowości w zespole.
- Maksymalizacja wydajności zespołów poprzez rozważenie mocnych i słabych stron każdej osoby.
- Rozwijanie i ulepszanie zespołów.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Related Documents
Description
Sprawdź swoją wiedzę o inżynierii oprogramowania na podstawie notatek z wykładu. Zawiera kluczowe informacje dotyczące zasad zaliczenia oraz definicje. Przygotuj się do końcowego testu wielokrotnego wyboru i projektu.