System wspierający obsługę przedmiotów projektowych autorzy: Robert Pająk Piotr Zastawnik promotor: dr inż. Dariusz Rafał Augustyn
Plan prezentacji Temat Projektowanie Narzędzia Implementacja Podsumowanie
Temat Czyli co mamy zrobić
Wymagania funkcjonalne Definiowanie użytkowników w określonych rolach Zakładanie tematów projektów Wystawienie tematów Import danych o studentach z pliku Tworzenie sekcji Przypisywanie sekcji do wystawionych tematów Ewidencja obecności System powiadamiania mailowego Wystawienie ocen cząstkowych i końcowych Publikacje wiadomości wewnętrznych Raporty i zestawienia w tym generacja protokołu końcowego Program administratora użytkowników i uprawnień
Wymagania niefunkcjonalne Aplikacja desktopowa Technologia .NET Visual Studio SQL Server Szyfrowanie haseł Kontekstowy system pomocy Dokumentacja
Projektowanie Czyli jak to zrobić
Główne przypadki użycia
Schemat dziedzinowy
Schemat bazy danych
Narzędzia Czyli czego użyjemy do realizacji
Narzędzia Assembla, TortoiseSVN, Skype - Praca w zespole MS SQL Server 2008 - SZBD Visual Studio 2008 - IDE DevExpress WinForms - Kontrolki LINQ to SQL - DataAccess HTML Help Workshop - Help StyleCop, FxCop, Unit Testing Framework - Jakość kodu Doxygen - Dokumentacja Enterprise Architect - CASE
Praca w zespole Assembla – repozytorium SVN, project tracking TortoiseSVN – klient SVN Skype - komunikator
System zarządzania bazami danych MS SQL Server 2008 SP2
Zintegrowane Środowisko Programistyczne Visual Studio 2008 SP1
Kontrolki WinForms DevExpress v2009 vol 1.5
Dostęp do bazy danych LINQ to SQL using (DC_PrzedmiotyProjektoweDataContext dc = new DC_PrzedmiotyProjektoweDataContext()) { var temat = (from t in dc.Tematy where t.id_tematu == vrpIdTematu select t).SingleOrDefault(); if (temat != null) Identyfikator = temat.id_tematu; IdAutora = (int)temat.id_autora; IdPrzedmiotu = temat.id_przedmiotu; Opis = temat.opis; Technologia = temat.technologia; Nazwa = temat.nazwa; StanTematu = (Stan)Enum.Parse(typeof(Stan), temat.stan, true); vrcZalacznik = new Cl_ZalacznikTematu(Identyfikator); }
Pomoc kontekstowa HTML Help Workshop 1.32
Jakość kodu StyleCop 4.3.3.0 NArrange 0.2.9 FxCop 1.36 Unit Testing Framework
Dokumentacja Komentarze XML Doxygen
Narzędzie CASE Enterprise Architect 7.5
Implementacja - DEMO Czyli realizacja
Podsumowanie
Podsumowanie Projektowanie Wzorce projektowe Jakość Narzędzia programistyczne Praca w zespole GUI = ocena użytkownika