Aplikacja wykonana na potrzeby przedmiotu Programowanie profesjonalnej aplikacji mobilnej lub webowej w Wyższej Szkole Ekonomii i Informatyki w Krakowie.
By możliwe było uruchomienie aplikacji konieczne jest:
-
zainstalowanie oprogramowania Visual Studio 2019 (wystarczy wersja community),
-
zainstalowanie Visual Studio 2019 SDK .NET 5.0,
-
zainstalowanie .NET 5 Runtime,
-
zainstalowanie MsSQL Server,
-
sklonowanie repozytorium:
git clone https://github.com/FilipKotelon/cookify.git
-
wpisanie w konsoli narzędzia NuGet Package Manager (po otworzeniu Visual Studio otworzyć ją można klikając Tools -> NuGet Package Manager -> Package Manager Console) polecenia, które utworzy bazę danych:
update-database
-
domyślna nazwa serwera bazy danych to
localhost
, a nazwa samej bazy danych toCookify-database
. Obie można zmienić edytującDefaultConnection
w pllikuappsettings.json
znajdującym się wewnątrz projektu Cookify.
Aplikację uruchomić można za pośrednictwem Visual Studio.
Jeśli Visual Studio nie jest zainstalowane, aplikację uruchomić można bezpośrednio z lini poleceń z poziomu głównego katalogu projektu po uprzednim utworzeniu bazy danych:
-
utworzenie bazy danych:
dotnet ef update-database --project ./Cookify.DataAccess/Cookify.DataAccess.csproj
-
uruchomienie aplikacji:
dotnet run --project ./Cookify.Web/Cookify.Web.csproj
S - (Strengths) – mocne strony: wszystko to co stanowi atut, przewagę, zaletę:
- zgrany zespół,
- doświadczenie jak i pasja do gotowania i pieczenia,
- znajomość technologii pozwalających na zbudowanie prostej i eleganckiej aplikacji,
- zapotrzebowanie na pomysły na posiłki,
- możliwość interakcji z użytkownikami poprzez potencjalne publikowanie dobrze skonstruowanych przepisów.
W - (Weaknesses) – słabe strony: wszystko to co stanowi słabość, barierę, wadę:
- Wąska grupa docelowa odbiorców
- Ograniczone możliwości rozwoju aplikacji
- Duża konkurencja w postaci podobnych aplikacji
- Konieczna weryfikacja przepisów dodanych przez użytkowników
- Konieczność posiadania rozbudowanej bazy przepisów na start
O - (Opportunities) – szanse: wszystko to co stwarza szansę korzystnej zmiany:
- portal dotyczący konkretnej tematyki i związany tylko i wyłącznie z nią (gotowanie, przepisy, porady kulinarne),
- jedna duża baza przepisów i produktów dostępna dla każdego,
- zgromadzenie w jednym miejscu pasjonatów gotowania zarówno tych początkujących, jak i bardziej doświadczonych,
- szansa na stworzenie czegoś na wzór portalu społecznościowego pozwalającego użytkownikom na dzielenie się wszelkiego rodzaju treściami dotyczącymi tematyki kulinarnej.
T - (Threats) – zagrożenia: wszystko to co stwarza niebezpieczeństwo zmiany niekorzystnej:
- istnienie podobnych aplikacji bądź też stron o podobnej tematyce,
- możliwość pojawienia się podobnych aplikacji bądź też stron o podobnej tematyce,
- konkurencja kopiująca pomysły,
- zmiana potrzeb potencjalnych odbiorców aplikacji,
- nowe prawa i regulacje,
- SPAM oraz niechciane reklamy,
- aktualizacja software’u przeglądarki.
Opis wizji projektu:
- Cookify to aplikacja przeznaczona dla fanów gotowania i pieczenia. Będzie pozwalać użytkownikom na odkrywanie nowych przepisów, dzielenie się własnymi wykonaniami potraw ze strony, a nawet wysyłanie własnych pomysłów z szansą na ich publikację w naszej aplikacji.
Cel strategiczny projektu:
- celem strategicznym jest dostarczenie jak najlepszego środowiska dla pasjonatów gotowania i stworzenie społeczności. Aplikacja ma podpowiedzieć pomysł, pokazać jakie składniki są potrzebne, przeprowadzić w sposób zrozumiały przez proces przygotowania posiłku oraz dać możliwość wyrażenia opinii o nim.
Cele projektu:
- zbudowanie witryny internetowej z przejrzystym i prostym interfejsem,
- zapewnienie dużej i różnorodnej bazy przepisów,
- zapewnienie możliwości wymiany opinii na temat dań, sposobów gotowania użytkownikom między sobą, żeby budować dużą społeczność pasjonatów gotowania.
Zakres projektu:
- opracowanie aplikacji webowej,
- kampania reklamowa w mediach masowych.
Etapy projektu:
- opracowanie koncepcji, zatrudnienie niezbędnych osób (2 miesiące),
- opracowanie aplikacji webowej umożliwiającej dzielenie się przepisami (6 miesięcy),
- testy przygotowanego rozwiązania (1 miesiąc),
- publikacja, działania reklamowe,
- rozbudowa funkcjonalności.
- istnieje spora ilość portali dla miłośników gotowania (gotujmy.pl, mediaknorr.pl, przepisy.pl by wymienić kilka),
- portale te jednak są wykonane w mizerny sposób, w czym upatrujemy swojej szansy,
- dla wielu osób pierwszym krokiem przed wykonaniem przepisu jest wyszukanie go w internecie. Przy odpowiednim pozycjonowaniu strony istnieje szansa, że użytkownik wejdzie na naszą aplikacje jako pierwszą,
- wieczny popyt. Ludzie muszą jeść, a czasem najdzie ich ochota na zrobienie czegoś samemu.
- istniejące aplikacje realizujące podobne założenia,
- powstawanie aplikacji o podobnej tematyce,
- konkurencja kopiująca pomysły,
- nowe prawa i regulacje,
- aktualizacje software`ów przeglądarkowych.
- stworzenie projektu graficznego aplikacji,
- wybranie technologii najlepszych do wdrożenia strony internetowej,
- ustalenie struktury bazy danych,
- rozdzielenie zadań odnośnie kodowania wśród członków projektu,
- stworzenie struktury bazy danych,
- kodowanie frontu strony internetowej,
- testowanie strony,
- wybranie platformy do wypuszczenia strony internetowej,
- wypuszczenie aplikacji.
- jako użytkownik aplikacji chcę mieć kilka możliwości wyszukiwania przepisów, żeby znaleźć jak najbardziej odpowiedni,
- jako użytkownik aplikacji chcę mieć dużą bazę przepisów, żeby mieć duży wybór,
- jako użytkownik aplikacji chcę mieć możliwość zapisu ulubionych przepisów, żebym mógł je szybko i łatwo znaleźć,
- jako użytkownik aplikacji chcę mieć możliwość wyrażenia opinii, żeby ocenić dany przepis,
- jako użytkownik aplikacji chcę mieć możliwość planowania posiłków, żeby na tej podstawie generowała się lista potrzebnych składników,
- jako administrator aplikacji chcę mieć możliwość weryfikacji przepisów dodanych przez użytkownika, żeby mieć pewność, że są odpowiedniej jakości,
- jako użytkownik aplikacji chcę mieć możliwość podzielenia się własnymi przepisami, żeby inni użytkownicy mogli je wypróbować,
- jako użytkownik aplikacji chcę prosty i przejrzysty interfejs, żeby obsługa była szybka i intuicyjna,
- jako administrator aplikacji chcę mieć rozwiązanie premiujące dodawanie nowych przepisów przez użytkowników, żeby ich zachęcić do rozbudowywania bazy przepisów,
- jako użytkownik aplikacji chcę mieć możliwość zapisu przepisu w aplikacji, żeby mieć możliwość dostępu offline.