Szacowanie nakładów na projekt informatyczny
Analiza wymagań dla projektu informatycznego
Określić założenia i wymagania
Program powinien być oparty na bazie danych umiejscowionej na serwerze (Windows lub Linux).
Instalacja oraz aktualizacje programu powinny odbywać się automatyczne, np. przed
uruchomieniem program powinien sprawdzać nr wersji zapisanej w bazie. Jeśli wersja zapisana w bazie danych byłaby większa program powinien uruchamiać się z instalatora nowej wersji, który powinien być umiejscowiony na serwerze.
Program powinien mieć moduł importujący oraz eksportujący dane z/do pliku tekstowego oddzielonego średnikami.
Każdy użytkownik powinien mieć swój login i hasło oraz rodzaj uprawnienia np. do modyfikacji lub przeglądania lub wszystkie.
Dostęp do danych teleadresowych oraz obsługa interfejsu powinna być intuicyjny oraz
umożliwiać wyszukiwanie zarówno proste, jaki zaawansowane bez możliwości logowania się do programu.
Wyszukiwanie proste powinno przeszukiwać wszystkie pola w książce adresowej.
(np. wpisanie frazy - „kow”, powinno odnaleźć rekordy np.: Jak Kowalski lub Kowalstwo…, Mirosław Skowroński). (Podobnie jak wyszukiwarka www.google.pl)
Program powinien posiadać możliwość logowania celem dodawania, modyfikowania, usuwania wprowadzonych danych. Aby można było przeglądać wszystkie dane, należy zalogować się do programu.
Każdy użytkownik powinien mieć swój login i hasło oraz rodzaj uprawnienia np. (użytkownik dodający i modyfikujący dane teleadresowe, administrator dodający użytkowników).
Administrator powinien mieć możliwość dodawania, modyfikowania oraz usuwania
użytkowników oraz branż.
h) W bazie danych powinny być przynajmniej 3 tabele: dane teleadresowe, użytkownicy,
słownik, branże.
1) Tabela dane teleadresowe:
- Nazwa Firmy lub Imię i Nazwisko;
- Branża (słownik z wcześniej zdefiniowanymi, branżami. Np. budownictwo,
handel), pole powiązane ze słownikiem;
- Adres: ulica, nr domu, nr mieszkania;
- Adres: kod pocztowy, Miejscowość;
- telefon1;
- telefon2;
- telefon komórkowy;
- fax;
- e-mail;
- strona WWW;
Dane w tabeli dostępne po zalogowaniu:
- imię i nazwisko właściciela;
- telefon;
- telefon komórkowy;
- e-mail;
- login użytkownika dodającego/modyfikującego;
- data modyfikacji;
2) Tabela branże:
- Nazwa skrócona;
- Pełna nazwa branży;
3) Tabela użytkownicy:
- Nr kadrowy;
- Login;
- Hasło;
- Imię pracownika;
- Nazwisko pracownika;
- Wydział;
Określić ilość występowania i złożoność dla:
wejść (liczba elementów danych, liczba niezbędnych zbiorów, klasyfikacja)
Interfejs użytkownika
1. Okno główne (po uruchomieniu)
- panel „logowanie”
- panel „aktualizuj” (dodatkowo, gdyby coś nie działało z aktualizacją automatyczną)
2. Okno „Wyszukiwanie zaawansowane”
- przycisk „zamknij okno” (1, 0, proste)
//reszta pól jest częścią zapytania więc je pomijamy
3. Okno „Przeglądanie danych” (dane wyświetlane w tabeli)
- przycisk „zamknij okno” (raz było więc nie zliczamy)
- przycisk „dalej” (1, 4, średnie)
- przycisk „wstecz” (1, 4, średnie)
- przycisk „początek” (1, 4, średnie)
- przycisk „koniec” (1, 4, średnie)
4. Okno „Dodawanie danych”
- przycisk „dodaj” (20, 1, średnie)
- przycisk „reset” (1, 0, proste)
5. Okno „Modyfikuj dane” (dane wyświetlane są w tabeli)
- przycisk „zamknij okno” (raz było więc nie zliczamy)
- przycisk „usuń” (1, 1, proste)
- przycisk „edytuj” (przy każdym wierszu) (1, 1, proste)
Po kliknięciu przycisku „edytuj” dane w danym wierszu zamieniają się na pola tekstowe, które wypełniają się aktualnymi wartościami:
- pole „Nazwa Firmy lub Imię i Nazwisko” (1, 0, proste);
- pole „Branża” (słownik z wcześniej zdefiniowanymi, branżami. Np. budownictwo,
handel), pole powiązane ze słownikiem(1, 0, proste);
(login - efekt zapytania i data wstawiane są za pomocą osobnych funkcji)
- przycisk „zatwierdź” (20, 1, średnie)
6. Okno „Administracja”
- zakładka „Import/Eksport danych”
Sekcja „Import”
-- przycisk „browse” (1, 0, proste)
-- przycisk „importuj” (1, 6, średnie)
Sekcja „Export”
-- checkboxlist „nazwa tabeli” (1, 6, średnie)
- zakładka „Zarządzanie danymi” (dodawanie, usuwanie)
Analogicznie jak w oknie „Modyfikuj dane” więc nie zliczamy
- zakładka „Branże” (dane wyświetlane w tabeli)
Wyświetlanie danych za pomocą zapytania
-- przycisk „dodaj” (1, 1, proste)
Po wciśnięciu przycisku dodaj dodaje się nowy wiersz z polami testowymi:
--- przycisk „dodaj branże” (2, 1, proste)
-- przycisk „edytuj” (1, 1, proste)
Po wciśnięciu przycisku edytuj pola w rekordzie zamieniają się w pola testowe wypełnione aktualnymi danymi:
--- przycisk „edytuj branże” (2, 1, proste)
-- przycisk „usuń” ” (1, 1, proste)
- zakładka „Użytkownicy” (dane wyświetlane w tabeli)
Wyświetlanie danych za pomocą zapytania
-- przycisk „dodaj” (1, 1, proste)
Po wciśnięciu przycisku dodaj dodaje się nowy wiersz z polami testowymi:
--- przycisk „dodaj użytkownika” (7, 1, proste)
-- przycisk „edytuj” (1, 1, proste)
Po wciśnięciu przycisku edytuj pola w rekordzie zamieniają się w pola testowe wypełnione aktualnymi danymi:
--- przycisk „edytuj użytkownika” (7, 1, proste)
-- przycisk „usuń” (1, 1, proste)
- przycisk „zamknij okno” (raz było więc nie zliczam)
7. Okno „Użytkownicy” - użytkownicy z uprawnieniami mogą modyfikować dane
użytkowników książki telefonicznej
- przycisk „zamknij okno” (raz było więc nie zliczamy)
- zarządzanie (dodawanie, usuwanie, modyfikacja) - analogicznie jak u
administratora, więc nie zliczam
8. Menu systemowe (1, 0, proste)
Dane zewnętrzne
1. Wersja na serwerze (1, 0, proste)
2. Link do pliku z aktualizacją (1, 0, proste)
Dane sterujące
1. Wersja programu - aktualna (1, 0, proste)
2. Uprawnienia użytkowników niezalogowanych/użytkowników
zalogowanych(przeglądanie danych; przeglądanie, usuwanie i modyfikacja danych;
przeglądanie, usuwanie i modyfikacja danych, zarządzanie
użytkownikami)/administratora (1, 1, proste)
3. Ścieżka do BD w sieci. (1, 0, proste)
wyjść (liczba elementów danych, liczba niezbędnych zbiorów, klasyfikacja)
Interfejs użytkownika
1. Okno główne (po uruchomieniu)
- panel „logowanie”
-- wskaźnik logowania pracy systemu (1, 1, proste)
-- komunikat informujący o zalogowaniu bądź niezalogowaniu (1, 1, proste)
- panel „aktualizuj” (dodatkowo, gdyby coś nie działało z aktualizacją automatyczną)
-- komunikat potwierdzający aktualizację (1, 0, proste)
2. Okno „Wyszukiwanie zaawansowane”
-- komunikat mówiący o nie znalezieniu wyników (1, 1, proste)
3. Okno „Przeglądanie danych”
4. Okno „Dodawanie danych”
-- funkcja podająca aktualną datę (1, 0, proste)
-- komunikat potwierdzający dodanie danych lub wyświetlający błąd (1, 1,
proste)
5. Okno „Modyfikuj dane”
-- funkcja podająca aktualną datę modyfikacji (raz już była, więc nie liczę)
-- komunikat potwierdzający modyfikację danych lub wyświetlający błąd (1,
1, proste)
-- komunikat potwierdzający usunięcie danych lub wyświetlający błąd (1, 1,
proste)
6. Okno „Administracja”
- zakładka „Import/Eksport danych”
-- przycisk „Exportuj” (1, 2, proste)
-- komunikat potwierdzający import bądź wyświetlający błąd (1, 1, proste)
-- komunikat potwierdzający export bądź wyświetlający błąd(1, 1, proste)
- zakładka „Zarządzanie danymi” (dodawanie, usuwanie)
-- komunikat potwierdzające - nie zliczam, bo są analogiczne jak w oknach
„Dodawanie danych” i „Modyfikuj dane”
- zakładka „Branże”
-- komunikat potwierdzający dodanie branży lub wyświetlający błąd (1, 1,
proste)
-- komunikat potwierdzający modyfikację branży lub wyświetlający błąd (1,
1, proste)
-- komunikat potwierdzający usunięcie branży lub wyświetlający błąd (1, 1,
proste)
- zakładka „Użytkownicy”
-- komunikat potwierdzający dodanie użytkownika lub wyświetlający błąd(1,
1, proste)
-- komunikat potwierdzający modyfikację użytkownika lub wyświetlający
błąd(1, 1, proste)
-- komunikat potwierdzający usunięcie użytkownika lub wyświetlający błąd
7. Okno „Użytkownicy” - użytkownicy z uprawnieniami mogą modyfikować dane
użytkowników książki
- komunikaty analogiczne jak w zakładce „Użytkownicy” w opcjach administratora,
więc nie zliczam.
zapytań bezpośrednich (liczba elementów danych, liczba niezbędnych zbiorów,
klasyfikacja + rodzaj zapytania dla zapytań złożonych)
Interfejs użytkownika
1. Okno główne (po uruchomieniu)
- panel „wyszukiwanie proste”
-- funkcja wyszukująca (2, 1, proste)
- panel wyświetlające dane książki telefonicznej
-- funkcja wyświetlająca dane książki telefonicznej (20, 3, złożone)
- panel „logowanie”
-- funkcja logująca - sprawdzenie czy użytkownik istnieje w BD (3, 1, proste)
(logowanie odbywa się przez zapytanie stąd ta kwalifikacja)
2. Okno „Wyszukiwanie zaawansowane”
-- funkcja wyszukująca na podstawie zadanych parametrów (15, 1, proste)
3. Okno „Przeglądanie danych”
-- funkcja wyświetlająca dane (21, 4, średnie)
4. Okno „Dodawanie danych”
5. Okno „Modyfikuj dane”
-- funkcja wyświetlająca dane (ponieważ już była wyżej - nie liczę jej)
6. Okno „Administracja”
- zakładka „Import/Eksport danych”
- zakładka „Zarządzanie danymi” (dodawanie, usuwanie, export)
-- funkcja wyświetlająca dane (ponieważ już była wyżej - nie liczę jej)
- zakładka „Branże”
-- funkcja wyświetlająca branże (3, 1, proste)
- zakładka „Użytkownicy”
-- funkcja wyświetlająca użytkowników (8, 1, proste)
7. Okno „Użytkownicy” - użytkownicy z uprawnieniami mogą modyfikować dane
użytkowników książki
-- funkcja wyświetlająca użytkowników (ponieważ już była wyżej - nie liczę jej)
zbiorów (liczba elementów danych, liczba logicznych formatów danych, klasyfikacja)
- baza danych składająca się z 6 tabel
-- branze (6, 4, proste)
-- kraje (2, 2, proste)
-- uzytkownik (11, 5, proste )
-- numery (1, 1, proste)
-- wydzialy (2, 2, proste)
-- kontrahent (24, 6, złożone)
- plik konfiguracyjny (2, 1, proste)
Interfejsów
- eksport danych do pliku (24, 6, złożone)
- import danych z pliku (24, 6, złożone)
Metodą punktów funkcyjnych obliczyć nieoszacowane FP, oszacowane FP, nakład na projekt w [O-M]
Termin wykonania 19 kwietnia 2014