IIS7.SE.4_Procesy_wytwarzania_oprogramowania_lab

Politechnika Lubelska

  • Wydział Elektrotechniki i Informatyki

  • Kierunek Studiów: Informatyka

  • Materiały do zajęć laboratoryjnych

  • Procesy wytwarzania oprogramowania

  • Autor: Dr inż. Piotr Kopniak

  • Lublin 2022

Informacja o przedmiocie

Cele przedmiotu:

  • Zapoznanie studentów z:

    • Koncepcją rozproszonego systemu kontroli wersji.

    • Wybranymi metodykami testowania oprogramowania.

    • Koncepcją refaktoryzacji kodu.

    • Typowymi dobrymi praktykami programistycznymi.

    • Narzędziami wspomagającymi.

  • Nabycie umiejętności tworzenia poprawnego i dobrego kodu.

  • Wersjonowanie kodu.

Efekty kształcenia:

  • Umiejętność analizowania, udoskonalania i testowania kodu.

  • Wersjonowanie kodu z użyciem rozproszonego systemu kontroli wersji.

  • Współpraca w zespole programistycznym.

Literatura:

  • Podstawowa:

    1. Gajda W., Git – Rozproszony system kontroli wersji, Helion, 2013.

    2. Woźniak D., TDD – Techniki programowania sterowanego testami, Helion, 2018.

  • Uzupełniająca:

    1. Piękny kod. Tajemnice mistrzów programowania, Red. Oram A., Wilson G., Helion, 2008.

    2. Pańczyk B., Badurowicz M., Programowanie obiektowe: język C#, Politechnika Lubelska, Lublin, 2013.

Metody i kryteria oceny:

  • Oceny cząstkowe:

    • Przygotowanie merytoryczne.

    • Realizacja tematów na poziomie podstawowym i zaawansowanym.

    • Obecność na zajęciach.

    • Realizacja projektu.

  • Ocena końcowa - zaliczenie przedmiotu na podstawie ocen cząstkowych.

Plan zajęć laboratoryjnych:

  • Lab1: Wprowadzenie do rozproszonych systemów kontroli wersji.

  • Lab2: Obsługa zdalnych repozytoriów i rozwiązywanie konfliktów.

  • Lab3: Reguły SOLID w tworzeniu oprogramowania.

  • Lab4: Analiza i refaktoryzacja kodu oprogramowania.

  • Lab5: Tworzenie testów jednostkowych.

  • Lab6: Tworzenie testów integracyjnych.

  • Lab7: Tworzenie testów funkcjonalności.

  • Lab8: Praktyczne wykorzystanie metody Test-Driven Development.

  • Lab9-14: Projekt - rozwiązanie problemów integracyjnych, praca nad projektami i prezentacja.

Wprowadzenie do zajęć

Laboratoria Procesów wytwarzania oprogramowania:

  • Wprowadzenie do dobrych praktyk wytwarzania oprogramowania w zespołach programistycznych.

  • Narzędzia do zarządzania kodem - GIT.

  • Metody pisania „czystego” kodu - reguły SOLID.

  • Praca nad projektem zespołowym - ocena końcowa na podstawie obecności, ocen z laboratoriów i projektu.

Metodyka Pracy w podziale na laboratoria

  • Każde laboratorium składa się z:

    1. Teoretycznego wprowadzenia.

    2. Zadań podstawowych i zaawansowanych.

Przykłady i narzędzia

  • Użycie systemu GIT do kontroli wersji.

  • Przykłady wykorzystania metodologii TDD w praktyce.

Opis zadań

  • Przygotowanie aplikacji w oparciu o GIT oraz ujęcie procesu wytwarzania oprogramowania.

  • Realizacja praktycznych zadań z użyciem narzędzi takich jak GitLab, JUnit, i Docker.

Podsumowanie

  • Praktyczne umiejętności w zakresie kontroli wersji, refaktoryzacji, testowania oraz współpracy w grupie.

  • Weryfikacja umiejętności poprzez realizację projektów i obecność na zajęciach.