Pokój Wspomnień®

Co to takiego Pokój Wspomnień®?

Pokój Wspomnień® – to interaktywna księga gości to taka oficjalna definicja. A w praktyce? Według mnie to zdecydowanie więcej niż znana wszystkim z wesel fotobudka. Korzystając z Pokoju Wspomnień® możemy poza zarejestrowaniem obrazu zarejestrować emocje. Szczęście, radość, wzruszenie a także wiele innych emocji wszystko w jednym pokoju. Pokój Wspomnień® jest wspaniałą alternatywą dla fotobudek. Dzięki Pokojowi Wspomnień® państwo młodzi mogą stworzyć niezapomnianą pamiątkę dla siebie ale też dla gości weselnych. Sprawdź film zamieszczony poniżej, żeby dowiedzieć się więcej od samego właściciela Pokoju Wspomnień® – Pawła.

Analiza projektu

Założenia

Głównym celem projektu było stworzenie aplikacji, dzięki której, oprócz robienia zdjęć, będzie możliwe nagrywanie krótkich klipów wideo, z których po sesji będzie montowany film.

Sama aplikacja ma przy tym działać bardzo stabilnie – to kolejny kluczowy aspekt tego projektu. Nie może dojść do sytuacji, w której aplikacja w trakcie nagrania przestaje działać, lub same nagrania nie są zapisywane.

Kolejnym ważnym elementem był wygląd aplikacji – miała być intuicyjna, czytelna, działająca płynnie i dostępna w kilku językach, ponieważ na weselach wśród gości mogą być osoby nie znające języka polskiego.

Technologia

Pokój Wspomnień® to zdecydowanie najbardziej wymagający projekt, jaki miałem możliwości realizować. Bardzo istotną decyzję jaką musiałem podjąć to wybór technologii. W związku z moim doświadczeniem zdecydowałem się na platformę WPF, wykorzystując bardzo popularny wzorzec architektoniczny – MVVM. Dzięki czemu mogłem rozdzielić warstwę prezentacji – czyli to co użytkownicy widzą, od warstwy logiki biznesowej – czyli wszelkie operacje dziejące się „pod spodem” aplikacji.

Warstwa hardware była już ustalona z góry – aplikacja powinna działać na ekranach dotykowych, a samo nagrywanie ma się odbywać za pomocą aparatu fotograficznego. Sam model aparatu jakim miałby być robione nagrania należał do mnie, gdyż jak się okazało, nie wszystkie aparaty obsługują komunikację z komputerem.

Realizacja projektu

Realizacja projektu rozpoczęła się zaraz po dokonaniu analizy projektu. Wiedząc jak aplikacja ma działać oraz na jakim sprzęcie mogłem rozpocząć kolejny etap czyli właściwą realizację. Poniżej przedstawiam, kolejne aspekty składające się na samą realizację prac. Wybór odpowiedniej metodyki pracy, komunikacja oraz zarządzanie projektem a także testy aplikacji. Oczywiście wpływ na końcowy efekt miało mnóstwo czynników, ale te trzy elementy były najbardziej kluczowe dla zrealizowania projektu.

Metodyka pracy

Ustaliłem z Pawłem warunki współpracy na co kilku tygodniowe wydania aplikacji. Scrumem bym tego nie nazwał, ale samo wykorzystanie podejścia sprintu była wystarczająca. Początkowo sama aplikacja skupiała się na wykonywaniu samego nagrywania wideo i robieniu zdjęć. Każdy osiągnięty etap był prezentowany Pawłowi, po to aby bieżąco weryfikować, czy założenia zostają osiągane. Jednak jak to w każdym projekcie, założenia się zmieniały w trakcie tworzenia oprogramowania – ale dzięki temu pojawiały się nowe możliwości na rozwój i wprowadzanie nowych ulepszeń do aplikacji, których mogłyby się nie pojawić, gdyby nie co kilkutygodniowe prezentacje. Dzięki takiej metodyce pracy mogliśmy bieżąco zmieniać działania aplikacji, nawet między kolejnymi weselami, przykładowo okazywało się, że czas jaki został ustalony w początkowych założeniach jest zbyt krótki, podczas samej prezentacji zostało to odkryte, więc można było to szybko zmienić.

Testy

Testy, czyli najważniejsza kwestia w każdym projekcie. Jak wyglądało to w Pokój Wspomnień®? Testy orgaznizowane były, przez Pawła po każdym cyklu wydawania oprogramowania, ja zabierałem się za dalsze prace a Paweł za testowanie tego co do tej pory powstało, pod względem funkcjonalnym jak i pod względem użyteczności dla osób, które z tej aplikacji mają w przyszłości korzystać. Pracowaliśmy nad tym, aby aplikacja była doskonale stabilna – nawet czasem kosztem wymyślnych animacji. Sprawdzane były podstawowe funkcjonalności aplikacji, ale również warunki brzegowe, czyli co się stanie gdy… Dzięki takiemu podejściu np. wykryliśmy problem z wpadaniem podłączonego aparatu w stan uśpienia przy dłuższych przerwach, które podczas działania w rzeczywistych warunkach wesela mogą się zdarzyć.

Komunikacja i zarządzanie

Prace nad projektem trwają już od 3 lat! To szmat czasu w takiej branży jaką jest świat IT. Przez ten czas próbowaliśmy różnych narzędzi, które ułatwiły by przepływ informacji w projekcie. Zadania jakie Paweł zgłaszał zapisywałem na tablicy w Trello. Tam też prowadziłem analizę niektórych zadań i rozbijałem je na mniejsze elementy. Ważną kwestią było również wycenianie zadań – do tego służył nam zwykły arkusz Excela. Sama komunikacja odbywała się zwykłą drogą mailową lub poprzez Messengera, głównie chodziło o szybkość i wygodę komunikacji. Nie wchodziliśmy w próbowanie różnego typu komunikatorów, typu Slack, czy Teamsy, ponieważ to mogłoby utrudnić i spowolnić komunikację – wymagało to instalacji dodatkowego oprogramowania. Standardowe narzędzia czyli mail i Messenger w zupełności wystarczyły. Obecnie prowadzenie projektu zostało przeniesione z Trello na coraz bardziej popularnego i bardzo wygodnego ClickUp’a.

Największe wyzwanie

Bardzo ważnym elementem całego projektu jest komunikacja aplikacji z zewnętrznym urządzeniem. To właśnie było największe wyzwanie. Nie miałem dotychczas doświadczenia w pracy z takim urządzeniem, nie miałem też do dyspozycji żadnej dokumentacji technicznej. Wszystko odbywało się na początku metodą prób i błędów. Krok po kroku przechodziłem do momentu, w którym aplikacja w zadowalający sposób zaczęła się komunikować z urządzeniem. Dużo trudu kosztowało mnie zdobywanie informacji, czerpanie z przykładowych implementacji znalezionych wśród repozytoriów na githubie.

Więcej informacji o Pokoju Wspomnień®

Poniżej podaję linki do strony internetowej Pokoju Wspomnień® oraz do social mediów. Zachęcam do zapoznania się z ofertą i obserwowania profili w mediach społecznościowych, bo dużo się tam dzieje.