Nazwa przedmiotu:
Projektowanie oprogramowania
Koordynator przedmiotu:
dr inż. Michał Śmiałek, michal.smialek@ee.pw.edu.pl, +48222345387
Status przedmiotu:
Obowiązkowy
Poziom kształcenia:
Studia I stopnia
Program:
Informatyka
Grupa przedmiotów:
Wspólne
Kod przedmiotu:
Semestr nominalny:
7 / rok ak. 2011/2012
Liczba punktów ECTS:
5
Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
Liczba punktów ECTS na zajęciach wymagających bezpośredniego udziału nauczycieli akademickich:
Język prowadzenia zajęć:
polski
Liczba punktów ECTS, którą student uzyskuje w ramach zajęć o charakterze praktycznym:
Formy zajęć i ich wymiar w semestrze:
  • Wykład30h
  • Ćwiczenia0h
  • Laboratorium0h
  • Projekt30h
  • Lekcje komputerowe0h
Wymagania wstępne:
Podstawy inżynierii oprogramowania, Modelowanie oprog. w języku UML, Inżynieria wymagań oprog.
Limit liczby studentów:
Cel przedmiotu:
Treści kształcenia:
Wykład 1. Od wymagań do architektury. Co to jest architektura oprogramowania? Architektury komponentowe. Architektury w cyklu iteracyjnym. Architektury dla systemów rozproszonych. Architektura realizująca wymagania oprogramowania. 2. Statyczne modele architektoniczne. Komponenty i diagramy komponentów. Komponenty i architektury warstwowe. Diagramy montażowe. Mapowanie wymagań na statyczne modele architektoniczne. 3. Dynamiczne modele architektoniczne. Dynamika działania komponentów. Diagramy sekwencji na poziomie architektonicznym. Linie życia i komunikaty. Mapowanie wymagań na dynamiczne modele architektoniczne. 4. Techniki modelowania architektonicznego. Architektura a technologie programistyczne. Strategie dla szkieletów architektonicznych. Strategie modelowania dynamiki systemu. 5. Od architektury do projektu szczegółowego. Jak zaprojektować i zaimplementować szczegóły architektoniczne? Realizacja interfejsów. Projekt szczegółowy w cyklu iteracyjnym. Organizowanie modeli dla programistów. 6. Statyczne modele projektowe. Semantyka projektowych diagramów klas. Interfejsy, klasy, atrybuty, operacje. Relacje między klasami. Diagramy klas a kod. 7. Dynamiczne modele projektowe. Diagramy sekwencji na poziomie szczegółowego projektu. Impelementacja dynamiki działania interfejsów. Diagramy sekwencji a kod. 8. Techniki modelowania dla projektu szczegółowego. Projekt Stworzenie pełnego modelu architektonicznego oraz projektu szczegółowego. Na projekt składają się: realizacja przypadków użycia, realizacja słownika w strukturze systemu, realizacja interfejsów, projekt struktury komponentów. Projekt wykonywany jest w zespołach po ok. 3 osoby. Każdy zespół tworzy projekt niedużego systemu oprogramowania (ok. 15-20 przypadków użycia).
Metody oceny:
brak
Egzamin:
Literatura:
1. Michał Śmiałek – Zrozumieć UML 2.0. Metody modelowania obiektowego, Helion, 2005; 2. Ian Sommerville – Inżynieria oprogramowania, WNT, 2003; 3. Roger S. Pressman – Praktyczne podejście do inżynierii oprogramowania, WNT, 2004
Witryna www przedmiotu:
Uwagi:

Efekty uczenia się