Subject: Bohema - uwagi dot. przeprowadzonego audytu
From: Michal H Siemaszko <[email-masked]>
To: [email-masked]
Cc: Aleksandra Zdybel <[email-masked]>
Date: Tue, 09 Aug 2011 00:26:54 +0200

Odnośnie audytu, info które przedstawiłem dziś Mariuszowi, przesyłam na 
maila za prośbą Oli.

1. Zakres prac wykonanych

Twierdzili, że wykonali 60% prac, w rzeczywistości jest to mniej niż 10% 
- faktem jest, że to nie do końca ich wina, jako że specyfikacje 
przekazał im p. Damian i wg. tego robili bo myśleli że tak to ma 
wyglądać, co nie zmienia faktu że jest to dopiero mały zalążek tego jak 
ma końcowa wersja serwisu wyglądać.

2. Jakość prac wykonanych

a) kod
- backend / panel administracyjny: zdecydowana większość kodu została 
wygenerowana automatycznie przez Symfony (CRUD, szablony, itd.) - 
praktycznie zero kodu logiki biznesowej (czyli tego co rzeczywiście 
trzeba stworzyć aby zaimplementować funkcjonalność serwisu wg. 
specyfikacji)

- frontend / interfejs użytkownika: większość kodu wygenerowana 
automatycznie, większość widoków są na razie albo makietami albo są 
niekompletnie zaimplementowane

b) baza danych
- do znormalizowania całość praktycznie
- do uzupełnienia o brakujące pola
- indeksy do potworzenia
- dublujące się tabele

c) panel administracyjny

- ogólne uwagi
* nawigacja do poprawy
* tabele nie mają sortowania
* tabele niepotrzebnie pokazują kolumnę z ID
* buttony powinny być zwykłymi buttonami nie obrazkami
* "wyloguj" powinien być linkiem nie buttonem

- lista administratorów
* kolumna z "Md5 pass" jest niepotrzebna
* nazwa administratora powinna być linkiem do edycji danych dla tego 
administratora

- lista miast
* miasta powinny być przypisane do województw (na mapie po stronie 
interfejsu użytkownika, są kontury województw, więc żeby to 
zaimplementować odpowiednio, każde miasto musi być przypisane do 
województwa na etapie dodawania)
* nazwa miasta powinna być linkiem do edycji danych dla danego miasta
* dodatkowa kolumna - szybkie dojście do listy dziewczyn dla danego miasta

- lista dziewczyn
* tabela ma za dużo kolumn - nie wszystkie informacje muszą być widoczne 
w tabeli - wybrane jedynie, reszta po kliknięciu danej dziewczyny
* podgląd zdjęcia dziewczyny powinien być dostępny bezpośrednio z listy
* fotografie powinny być zarządzane bezpośrednio z profilu danej 
dziewczyny (dostęp jako osobny link również może być, ale przede 
wszystkim w tym kontekście - każda fotografia jest przecież przypisana 
do danej dziewczyny)

- fotografie
* zamiast kolumny z nazwą zdjęcia, podgląd zdjęcia dla danej dziewczyny
* fotografie grupowane wg. dziewczyny do której należą
* imię dziewczyny powinno być linkiem do edycji danych tej dziewczyny

- lista użytkowników
* kolumna z "Md5 pass" jest niepotrzebna
* nazwa użytkownika powinna być linkiem do edycji danych dla tego 
użytkownika

- zarządzanie polecanymi
* W OGÓLE NIE DZIAŁA

d) interfejs użytkownika - tu wiadomo co nie działa, czego nie ma - 
szczegółowe uwagi pokrywają się z tymi które znajdują się w dokumentach 
które otrzymałem od Was przy rozpoczęciu projektu

3. Następne kroki

Podstawowe pytanie to, skoro elementy graficzne i kołowrotek/galeria 
zostały im przekazane przez p. Damiana, za co chcą te 6000 PLN? 
Praktycznie cały kod jest wygenerowany (a nie NAPISANY - praktycznie 
BRAK logiki biznesowej), baza danych do znormalizowania (jest źle 
zaprojektowana), a w tym co jest jest straszny bałagan i brak 
dokumentacji.. DODATKOWO, specyfikacja wg. której tworzyli jest tylko 
bardzo ogólnym zarysem, na dodatek niekompletnym.

Moje rozwiązanie "co dalej zrobić z tym fantem", które przedstawiłem 
Mariuszowi, to zaproponować im współpracę dopiero po pomyślnym przejściu 
dwóch etapów:

- etap 1 (czyli sprawdzenie czy oni w ogóle wiedzą co robią):
* niech znormalizują bazę danych (nie mówić konkretnie które tabele - to 
test na ich umiejętności poniekąd)
* niech dopiszą dokumentacje (może być w kodzie) do tego co oni napisali 
(c.d. testu umiejętności)
* niech sami sobie wyznaczą termin do kiedy to dostarczą, między 1 a 5 
dni (test na dotrzymywanie terminów)

- etap 2 (jeśli etap 1 pomyślnie przejdą, jeśli nie przejdą - damy im 
całą listę błędów / niekompletnych rzeczy odkrytych podczas audytu i 
podziękujemy za dalszą współpracę):
* poprawienie błędów wg. listy którą posiadam
* spłacenie pozostałego tzw. długu technicznego: znormalizowanie do 
końca bazy danych, refaktoring kodu

Jeśli obydwa etapy przejdą, wtedy można im zaproponować wynagrodzenie 
max. 3000 PLN za to co wykonali i podpisać umowę o współpracy na dalsze 
tworzenie WYBRANYCH części serwisu.

W między czasie, szukam nowych ludzi. Dziś (tzn. jak wstanę) przygotuję 
i opublikuję ogłoszenie - zdecydowanie potrzebujemy zapasowych ludzi, 
bez względu na to czy Bohema przejdzie te 2 etapy dalej.

Dajcie proszę znać jeśli macie jakieś pytania.

Pozdrawiam,
Michał