Project Panelist

Project Panelist

Sposób na usprawnienie przebiegu paneli dyskusyjnych, konferencji, wykładów, warsztatów, transmisji na żywo i sesji Q&A

Iwo Bujkiewicz
Damian Korzekwa
Dawid Lempart
Bartosz Rodziewicz

Potrzebna funkcjonalność

  • Wybór nazwy użytkownika
  • Zakładanie i dołączanie do askroomów
  • Przeglądanie i dodawanie pytań
  • Edycja i usuwanie pytań
  • Ocenianie pytań, sortowanie
  • Oznaczanie aktualnego pytania
    oraz pytań z odpowiedziami
  • Zarządzanie stanem askroomu
  • Udostępnianie askroomów
  • Uwierzytelnianie na podstawie urządzenia
  • Opcjonalna rejestracja konta użytkownika
    i uwierzytelnianie za pomocą usług firm trzecich

Analiza wymagań

Obsługa kont użytkownika

  • Konto pełne
  • Konto ograniczone

 

  • Uwierzytelnianie na podstawie urządzenia
  • Rejestracja i logowanie do konta pełnego
  • Uwierzytelnianie za pomocą usług firm trzecich

Tworzenie i zarządzanie askroomem

  • Nadawanie i zmiana nazwy
  • Wybór początkowego stanu, zmiana stanu
  • Uruchomienie trybu prezentacji
    • Wybieranie pytania do wyświetlenia
    • Wyświetlanie aktualnego pytania
    • Oznaczanie pytań, na które odpowiedź
      została udzielona

Dołączanie do askroomów

  • Dołączanie przez URI
  • Dołączanie przez zeskanowanie kodu QR
  • Dołączanie przez ręczne wpisanie ID askroomu

Korzystanie z askroomu

  • Przeglądanie i sortowanie listy pytań
  • Ocenianie pytań
  • Dodawanie pytań
  • Edycja i usuwanie własnych pytań
  • Udostępnianie askroomu

Obsługa ekranem dotykowym

Aplikacja mobilna, z uwagi na swoją naturę, musi umożliwiać dostęp do całej swojej funkcjonalności za pośrednictwem ekranu dotykowego, bez konieczności podłączania dodatkowych urządzeń wskazujących.

Intuicyjność obsługi

Użytkownicy prawdopodobnie zobaczą aplikację po raz pierwszy w trakcie panelu dyskusyjnego. Będą zatem mieli bardzo ograniczony czas na naukę obsługi aplikacji.

 

Aplikacja powinna być zbudowana tak, aby intuicja wypracowana podczas korzystania z innych aplikacji pomogła użytkownikom szybko zaznajomić się z jej obsługą.

Możliwe przyszłe wymagania

  • Askroomy publiczne i prywatne
  • Przeglądanie askroomów, historia
  • Bezpośrednie zapraszanie użytkowników do askroomów
  • Moderacja askroomu
  • Podział pytań na kategorie
  • Nowy typ askroomu: kolejka

Studium wykonalności

Wykonalność techniczna

  • Scentralizowana usługa internetowa
    w architekturze klient-serwer
    • Klient: aplikacja mobilna na system Android 4.4+
      • Android SDK
    • Serwer: REST API + baza danych
      • Framework Django
      • PostgreSQL
  • Niskobudżetowy hosting chmurowy
  • Dystrybucja aplikacji mobilnej docelowo przez Play Store

Wykonalność ekonomiczna

  • Używamy darmowych narzędzi i technologii
  • Brak kosztów utrzymania na start
  • Wraz ze wzrostem popularności rosną koszty,
    ale także potencjalne zyski
    • Sprawdzony sposób na dochód z aplikacji:
      dodawanie nowych funkcji
      dostępnych za niewielką opłatą

Wykonalność organizacyjna

  • Mały zespół - 4 osoby
  • Bardzo ograniczone zasoby czasowe
  • Brak doświadczenia
  • Trudna do przewidzenia kreatywność użytkowników

 

  • Ograniczony zakres projektu
  • Dostarczamy wcześnie, aby zebrać opinie
    i zbudować bazę użytkowników, zanim rozbudujemy

Wykonalność prawna

  • Potencjalne przechowywanie adresów email użytkowników wymaga dostosowania się do przepisów prawa kraju,
    w którym usługa zostanie wdrożona, a także jasnego określenia polityki prywatności

Założenia projektowe

  • Kompatybilność z systemem Android 4.4+
  • Material Design
  • Relacyjna baza danych na silniku PostgreSQL
  • Język Python i framework Django dla serwera
  • Uwierzytelnianie z użyciem tokenów

 

  • Git SCM + GitHub
  • Organizacja pracy oparta o kanban

Przydział zadań

Iwo Bujkiewicz [Lider]

  • Konfiguracja i utrzymanie środowiska testowego i wdrożeniowego
  • Nadzór i integracja kodu źródłowego
  • Backend development

Damian Korzekwa

  • Projekt i wdrożenie bazy danych
  • Backend development

Dawid Lempart

  • Frontend development
    • UI design
    • Programowanie części wizualnej aplikacji mobilnej

Bartosz Rodziewicz

  • Frontend development
    • Programowanie logiki aplikacji mobilnej

Project Panelist

Project Panelist ZPI-stage1

By Bartosz “Bāto-chan” Rodziewicz