Projekt kompetencyjny - Dydaktyka

Transkrypt

Projekt kompetencyjny - Dydaktyka
Projekt kompetencyjny
Opiekun projektu: dr inż. Tomasz Kowalski
Cele i założenia projektu
•
Opracowanie i zaimplementowanie aplikacji opartej na bazie danych.
•
Projekt zespołowy wykonywany w grupach 2-4 osób.
•
Projekt będzie wykonywany zgodnie z założeniami metodologii agile/scrum w
dwutygodniowych sprintach.
Wymagania dotyczące projektu oraz wykorzystanych technologii
Podstawowe założenia projektu dotyczą konieczności wykorzystania bazy danych i jej wybranych
mechanizmów:
• dostosowanie dla różnych ról użytkowników (np. widoki),
• implementacja logiki (np. procedury składowe, wyzwalacze),
• optymalizacja dostępu do danych (np. indeksy).
Aplikacja może mieć charakter standardowy lub webowy. Interfejs graficzny powinien być czytelny
i pozwalać na swobodne korzystanie z systemu zgodnie z jego przeznaczeniem, jednak nie będzie
oceniany pod względem estetycznym (nie jest to celem zajęć).
Aplikacja może być zaimplementowana całkowicie w środowisku bazy danych (np. Oracle APEX).
Można skorzystać z dowolnych innych technologii (np. Java, .NET, php, python) w tym mapowania
ORM (np. HQL).
Kryteria oceny
•
Systematyczność - terminowa realizacja kolejnych sprintów.
•
Jakość - struktury projektu, kodów źródłowych, czytelność.
•
Ogólna zgodność projektu z założeniami.
•
Prezentacja (10-15 minut) dotycząca:
•
•
zaimplementowanego projektu,
•
metodologii i organizacji pracy,
•
wykorzystanych technologii.
Raport końcowy z projektu.
Agile
Podstawowe informacje na temat organizacji pracy w metodyce Agile:
wykład - http://coach.kis.p.lodz.pl/PSOiR-agile.pdf
arkusze - http://coach.kis.p.lodz.pl/agile.pdf
Plan pracy (zjazdy)
I.
Podział na grupy, wybór projektów i ustalenie wymagań:
•
•
wizja systemu, wstępny wybór technologii.
milestone 1: krótki raport podsumowujący.
•
Opracowanie planu pracy i podziału obowiązków:
opracowanie backlogu projektu, zaplanowanie Sprintu 1.
•
•
Sprint 1, np.:
zaprojektowanie struktury bazy danych,
...
II.
III.
IV.
Zaliczenie Sprintu 1, zaplanowanie Sprintu 2
V.
Sprint 2, np.:
podstawowa funkcjonalność aplikacji (np. CRUD),
opracowanie interfejsu użytkownika,
....
•
•
•
VI.
Zaliczenie Sprintu 2, zaplanowanie Sprintu 3
VII.
Sprint 3, np.:
implementacja wybranych funkcji aplikacji (logika),
optymalizacja działania po stronie bazy,
...
•
•
•
VIII.
Zaliczenie Sprintu 3.
IX.
Konsultacje i prezentacje projektów.
X.
Prezentacje projektów, wystawienie ocen.
Propozycje systemów
1. Zwinne zarządzanie projektem:
• user stories, zadania.
• kontrola przebiegu zmian w harmonogramie, aktywność programistów.
2. Zarządzanie stanem magazynu:
• produkty, dostawcy, zamówienia.
• monitorowanie popytu i podaży.
3. Ogłoszenia (kupię, sprzedam, wezmę, oddam):
• kategorie, tagi, klienci.
• liczba ogłoszeń w poszczególnych kategoriach,
4. Serwis randkowy:
• anonse, klienci.
• liczba ogłoszeń dla każdej płci w przedziałach czasowych.
5. Obsługa recenzowania artykułów:
• recenzenci, autorzy i artykuły.
• najczęściej akceptowani bądź odrzucani autorzy (lub odrzucający recenzenci).
6. Obsługa konferencji:
• wydarzenia i wystąpienia.
• liczba uczestników dla wydarzeń, sesji, itp.
7. Katalog filmów:
• aktorzy, ludzie filmu, rankingi.
• najwyżej oceniani aktorzy, reżyserzy, itp.

Podobne dokumenty