Zamawianie oprogramowania oraz cykl jego życia | Lekcja 3

Kurs_Software_house_ikonaPoniższy artykuł to jedna z części tworzonego na bieżąco kursu, z którego dowiesz się m.in. czego spodziewać się po współpracy z Software Housem, jakimi czynnikami kierować się podczas wyboru konkretnej firmy i jak zamawiać oprogramowanie.

Pozostałe lekcje znajdziesz tutaj: Co trzeba wiedzieć o współpracy z Software Housem?

W jaki sposób zamawiać w Software House’ie? Czym jest cykl życia oprogramowania? Na te pytania, ale nie tylko postaramy się odpowiedzieć w poniższym tekście.

Zamawianie oprogramowania – na czym musisz się skupić?

Jak zamawiać oprogramowanie?

Jak powszechnie wiadomo, wysokiej jakości dedykowane oprogramowanie nie należy do tanich. Wynika to z ogromu pracy i szczegółów, na jakie trzeba zwrócić uwagę, żeby stworzyć oprogramowanie spełniające wymagania klienta.

Aby stworzyć takie oprogramowanie, konieczne jest  również dobre przygotowanie się klienta do złożenia zamówienia. Przygotowanie to polega w dużej mierze na szczegółowym opisie zamawianego produktu i równie szczegółowej weryfikacji swojego pomysłu.

#1

Dobry opis zamawianego produktu

Pierwszym krokiem, który musisz wykonać, żeby Twoja wizja stała się rzeczywistością jest jej opisanie. Bez opisu Twojego pomysłu, żadna firma nie podejmie się szacowania kosztów wykonania aplikacji, a tym bardziej wykonania jej. Krótko mówiąc – bez dobrego opisu strony, aplikacji, czy innego rodzaju oprogramowania daleko nie zajedziesz…

Dlaczego potrzebujesz dobrego opisu Twojej wizji?

Dzięki dokładnemu opisowi unikniesz przynajmniej kilku problemów.

W momencie rozpoczęcia współpracy stajecie się jednym zespołem razem z producentem oprogramowania. Dlatego ważne jest, żeby cały zespół dobrze się rozumiał i miał te same cele biznesowe. Dobry opis pozwoli wszystkim członkom zespołu zrozumieć, do czego powinni dążyć.

Co więcej, dzięki dokładnemu opisowi firma, do której się zgłosisz, będzie miała możliwość dokładniejszego wycenienia Twojego projektu. Pomoże Ci to w większym stopniu kontrolować wydatki w projekcie.

Nie mniej ważnym aspektem jest też możliwość dokładniejszego opracowania harmonogramu prac. Dzięki temu unikniesz zmian terminów związanych z tym, że w ostatniej chwili okazało się, że aplikacja potrzebuje jeszcze jednej funkcjonalności.

Dobry opis projektu – czyli jaki?

Dobry opis aplikacji pozwala wyznaczać priorytety.

Dobry opis powinien być przede wszystkim dość krótki, konkretny i dokładny. Zawrzyj w nim parę słów o Tobie i Twojej firmie. Dzięki temu będzie wiadomo, w jakiej branży działacie i co w projekcie będzie najistotniejsze.

Napisz krótki opis – najlepiej jedno zdanie – problemu, który rozwiąże aplikacja lub co umożliwi. Będzie to najważniejszy cel projektu, który, w sytuacjach kryzysowych (i nie tylko) pozwoli wybrać dobrą drogę.

Opisz cele biznesowe – to również pozwoli skuteczniej realizować projekt i ustalać priorytety. Do opisu dołącz również spis funkcjonalności aplikacji. To pozwoli oszacować rozmiar projektu i jego dokładny zakres – unikniesz sytuacji w której, po podpisaniu umowy, okaże się, że w wybranej przez Ciebie firmie nie ma kompetencji do wykonania funkcjonalności.

Warty stworzenia jest również model biznesowy – wystarczy prosty Business Model Canvas. Kształt modelu wpływa na ostateczny kształt aplikacji dlatego powinien być gotowy zanim zaczniemy prace nad aplikacją.

Na co zwrócić uwagę podczas tworzenia opisu?

Praca zespołowa
Opisywanie aplikacji może odbywać się w zespole.

Podczas tworzenia opisu zwróć uwagę na kilka kwestii:

  1. Nie skupiaj się na formie – opis nie musi być ani idealny językowo, ani bezbłędny technicznie. Wystarczy, żeby był precyzyjny (opisywał efekt działania aplikacji) i konkretny.

  2. Korzystaj z pomocy innych – Twój opis będzie lepiej przemyślany jeśli wykorzystasz pomoc zespołu.

  3. Nie bój się o kradzież pomysłu – to Twoja wizja i bez Ciebie taka aplikacja nie powstanie. Jeśli mimo to obawiasz się o swój pomysł – zapytaj o NDA. Nie powinno być problemu z podpisaniem takiej umowy.

  4. Nie bój się korzystać z gotowych rozwiązań – jeśli znajdziesz np. szablon opisu funkcjonalności – wykorzystaj go. Dzięki temu szybciej prześlesz pomysł do wybranych software house’ów.

Przykład dobrego opisu projektu

Nazywam się Anna Kowalska, jestem Menadżerem Innowacji w firmie XYZ, która zajmuje się miejskim transportem publicznym. Chcemy stworzyć aplikację mobilną, która umożliwi naszym klientom korzystanie z karty miejskiej i biletów w smartfonie. Naszym celem jest zwiększenie przychodów ze sprzedaży biletów.

FUNKCJONALNOŚCI:

  • Użytkownik będzie mógł kupić bilet okresowy i jednoprzejazdowy w aplikacji.
  • Pod koniec ważności biletu, Użytkownik dostanie powiadomienia – 7,3 i 1 dzień przed wygaśnięciem biletu oraz w momencie wygaśnięcia.
  • Aplikacja wykryje, kiedy Użytkownik jest w pojeździe komunikacji miejskiej i przypomni Użytkownikowi o zakupie biletu jeśli ten go nie ma.
  • Użytkownik będzie mógł ustawić automatyczną płatność za bilet okresowy poprzez dodanie karty kredytowej.
  • Aplikacja będzie miała tryb kontroli biletów, w którym kontroler będzie mógł zeskanować kod QR z ekranu telefonu.
#2

Weryfikacja swojego pomysłu

Świetnie opisałeś swój pomysł. Wybrałeś odpowiednią firmę, która zajęła się stworzeniem apki. Współpraca z zespołem programistów przebiegła bezproblemowo. Aplikacja spełnia wszystkie Twoje oczekiwania. Udostępniasz aplikację do pobrania… i nic. Nikt nie korzysta z Twojego rozwiązania. Dlaczego tak się dzieje i co warto zrobić, żeby uniknąć takiej sytuacji? Zweryfikować pomysł zanim zainwestujesz pieniądze i czas.

Weryfikowanie pomysłu na aplikację

Weryfikacja może uchronić Cię przed stratami.

Weryfikacja pomysłu może uchronić Cię przed spędzeniem długich miesięcy i wydaniem dziesiątek, a nawet setek, tysięcy złotych na stworzenie dla przykładu aplikacji mobilnej, której ostatecznie nikt nie kupi. Celem weryfikacji jest szybkie i tanie znalezienie odpowiedzi na pytania istotne dla Twojego pomysłu.

Takimi pytaniami są:

  • Czy Twoja aplikacja rozwiąże problem, który ma rozwiązywać?
  • Czy istnieje już rozwiązanie, które rozwiązuje ten sam problem?
  • Czy ludzie mają problem, który chcesz rozwiązać? 
  • Jak obecnie ludzie rozwiązują ten problem?

Gdzie szukać odpowiedzi na pytania?

media społecznościowe
Media społecznościowe to dobre miejsce do znalezienia potencjalnych klientów

Aby dowiedzieć się, czy Twoja aplikacja ma sens, musisz zapytać o to potencjalnych użytkowników. Szukaj ich w grupach gromadzących ludzi zainteresowanych danym tematem w mediach społecznościowych, na ulicy – jeśli problem, który chcesz rozwiązać jest powszechny, na wydarzeniach branżowych i konferencjach – jeśli problem dotyczy wąskiej grupy profesjonalistów, a także we własnej firmie jeśli będzie to rozwiązanie wewnętrzne.

Starannie dobieraj osoby, z którymi będziesz rozmawiał – w tej fazie powinno Ci zależeć na jakości odpowiedzi, które uzyskasz. Jeśli Twoim docelowym klientem jest student – nie trać czasu na rozmowę z osobą 35+.

Unikaj także weryfikowania pomysłów na swojej rodzinie i znajomych – bardzo często nie powiedzą Ci, że coś jest bez sensu, bo nie będą chcieli sprawić Ci przykrości.

Jak zweryfikować swój pomysł?

Podczas rozmowy skup się na perspektywie użytkownika. Postaraj się pytać o jego doświadczenia i wrażenia. Dowiedz się, kiedy dotyka go problem oraz co zrobił, żeby go rozwiązać. Obserwuj reakcje Twojego rozmówcy – szukaj oznak zainteresowania lub znudzenia tematem. Nawet jeśli zbacza z tematu rozmowy, nie koryguj go – zależy Ci na rozwiązaniu jego problemu i musisz poznać ten problem z jego perspektywy jak najlepiej.

O swoim pomyśle wspomnij dopiero na sam koniec rozmowy – zależy Ci na niezaburzonej perspektywie użytkownika. Dobrą praktyką jest zapisanie osób, z którymi rozmawiasz na listę mailingową – ich perspektywa pomoże Ci rozwijać aplikację i decydować o kierunku jej rozwoju – będziesz mógł kontaktować się z nimi później.

Czego unikać podczas weryfikacji?

rozmowa z klientem
Słuchaj swoich potencjalnych klientów.

Podczas rozmowy z potencjalnym użytkownikiem staraj się unikać kilku podstawowych błędów:

Po pierwsze – najprawdopodobniej znajdą się pytania, które boisz się zadać. Zazwyczaj będą to pytania, które mogą zburzyć całą Twoją wizję – to właśnie te pytania powinieneś zadać – nie możesz ich unikać. W najgorszym wypadku nie zmarnujesz czasu i pieniędzy, w najlepszym – okaże się, że Twój pomysł jest bardzo dobry.

Po drugie – podczas rozmowy z potencjalnym użytkownikiem unikaj pytań, które narzucają odpowiedź. Twoim zadaniem jest poznać prawdziwe zdanie klienta – to, którym będzie się kierował przy ewentualnym zakupie – a nie wymusić na nim wygodną dla Ciebie odpowiedź.

Po trzecie – unikaj cherry pickingu. To błąd, który polega na ignorowaniu argumentów “przeciw” i wyszukiwaniu tylko tych “za”. Staraj się nie ignorować źródeł, które nie pasują do Twojej wizji i patrzeć krytycznie na te, które ją potwierdzają.

Weryfikacja pomysłu – podsumowanie

Po serii rozmów z przyszłymi użytkownikami będziesz w stanie stwierdzić czy, i w jakim stopniu Twoja wizja pokrywa się z ich oczekiwaniami. Dowiesz się, które funkcjonalności są niezbędne, które można dodać dopiero na dalszym etapie rozwoju aplikacji, a które są całkowicie zbędne. Po weryfikacji będziesz mógł skorygować opis  i model biznesowy swojego pomysłu – najlepiej zanim wyślesz go do wyceny.

Pamiętaj, że weryfikowanie pomysłu jest procesem ciągłym – staraj się weryfikować makiety, projekt graficzny i kolejne wersje aplikacji. Pozwoli Ci to na bieżąco śledzić postępy prac oraz korygować kierunek rozwoju aplikacji.

Cykl życia oprogramowania

Zamawianie oprogramowania - schemat
Schemat przedstawiający proces zamawiania oprogramowania w Software House'ie.

Jesteśmy już przygotowani do złożenia zamówienia. Możemy więc przejść do tego jak powinien wyglądać cały proces tworzenia zamówionego oprogramowania. 

Cykl życia oprogramowania jest procesem używanym do strukturyzacji rozwoju dowolnego systemu oprogramowania, od inicjacji do wdrożenia.                                    

Wzrost zapotrzebowania na oprogramowanie, które skutecznie zaspokaja potrzeby klientów, ale przy niższych kosztach i szybszej dostawie, wywiera ogromną presję na nowoczesnych organizacjach. Aby pozostać konkurencyjnym, na rynku IT nasza firma musi przede wszystkim prawidłowo rozwijać swoje oprogramowanie i każde zlecenie dopasować do odpowiedniej metodologii, w której obszarze będziemy się poruszać.

Bez spełnienia tych warunków, może nastąpić spadek wydajności, co ostatecznie doprowadzi do niepowodzenia całego biznesu.

#1

Planowanie

Cykl zamawiania oprogramowania - plan

Pierwszym etapem tworzenia nowego oprogramowania będzie zebranie wszystkich istotnych informacji od zainteresowanych stron i przeanalizowanie ich w celu określenia, co będzie możliwe do zrealizowania.

Obejmuje to zebranie wymagań, ustalenie kim jest użytkownik końcowy i uzgodnienie celu oraz cech produktu. Podczas tej fazy, zespół będzie również omawiał możliwości i ryzyko związane z realizacją projektu. To dlatego pomoc w Testowaniu Oprogramowania odnosi się do tej fazy jako zarówno zbierania wymagań jak i analizy.

#2

Projektowanie

Cykl zamawiania oprogramowania - projekt

Po tym jak zespół uzgodni szeroki zestaw wymagań i celów dla produktu, następnym krokiem będzie stworzenie specyfikacji projektu. Powinna ona odpowiadać na pytanie: “Jak to zbudujemy?“.

Napisane dokumentacji, w której to będzie znajdować się nasz cały produkt, zaczynając od Architektury, a kończąc na funkcjonalności danego oprogramowania. Ważne, aby ta dokumentacja była napisana w sposób jak najbardziej szczegółowy, ułatwi ona prowadzenie projektu w kolejnych fazach.

Dla zespołu produktowego faza ta obejmowałaby określenie kolejności priorytetowej proponowanych prac, zbudowanie mapy drogowej produktu i uzyskanie na nią zgody interesariuszy. Pomoże to wszystkim, zarówno zespołom programistycznym, jak i produktowym, uzyskać jaśniejszy obraz tego, do czego dążą.

#3

Kodowanie

Jest to etap, w którym zespół inżynierów faktycznie koduje produkt.

Na tym etapie zespół programistów przekłada wysokopoziomowy przegląd przedstawiony w mapie drogowej na taktyczny zestaw zadań, terminów i harmonogramów codziennej pracy.

#4

Testowanie

Cykl zamawiania oprogramowania - testowanie

Po tym jak zespół ukończy wersję oprogramowania, wypuszcza ją do środowiska testowego.

Tutaj, zespół QA i programiści przetestują wszystkie obszary aplikacji, aby wykryć wszelkie wady, błędy i inne problemy.

#5

Wdrożenie

Na tym etapie zespół jest pewny, że usunął wszystkie usterki i że oprogramowanie zostało zbudowane zgodnie z ustalonymi celami i specyfikacjami.

Teraz nadszedł czas, aby wypuścić oprogramowanie do środowiska produkcyjnego. Oznacza to, że produkt będzie ogólnie dostępny dla klientów, którzy będą mogli go kupić i używać.

#6

Utrzymanie

Cykl zamawiania oprogramowania - utrzymanie

Skoro oprogramowanie jest już dostępne i używane przez klientów, zespół programistów powinien skupić się na jego utrzymaniu.

Programiści będą musieli być gotowi do odpowiedzi na prośby o ulepszenia, poprawki przysłowiowych bugów (bo i takie się zdarzają) i nowe funkcje. Prośby te będą pochodzić z wielu źródeł – od sprzedawców, kierownictwa, klientów – ale to zespół zarządzania produktem określi, które z tych inicjatyw trafią do produktu.

Wszystkie kroki prowadzą do pomysłu oraz pomyślnego dostarczenia.

Prawidłowe zdefiniowanie zakres pracy projektowych ma kluczowe znaczenie w przebiegu projektu, ponieważ programiści powinni zrozumieć, co mają zbudować i stworzyć jasny plan, jak to zrobić.

Zaniedbanie potrzeb klientów, interesariuszy lub użytkowników może skutkować niepowodzeniem projektu.

Interakcja z klientem na wszystkich wymienionych poziomach, połączona z odpowiednią metodologią wdrażania oprogramowania jest dla nas kluczowa.

Przekłada się to na możliwość dostarczenia odpowiedniego rozwiązania dla naszego klienta, a co za tym idzie spełnienia oczekiwań i zadowolenia zarówno strony zamawiającej jak i wykonującej.

Satysfakcja klienta

Jakub Putyło

Business Development Manager / Concise Software

"Dzięki doskonałym umiejętnościom firma Dogtronic zbudowała odzwierciedlającą wymagania klienta aplikację."
Michał Martynowski

CEO / Motyw Studio

"Zrealizowaliśmy razem dziesiątki projektów. Jakość i doradztwo zawsze na najwyższym poziomie."
kamila_sarzynska
Kamila Sarzyńska

Specjalista ds. Marketingu / Perła Browary Lubelskie S.A

„Zawsze służyli fachową radą, a słowo „nie da rady” dla Nich nie istniało. Jednym słowem polecam."

W naszej firmie dbamy o interesy i dobro klienta. Dążymy do tego, aby osoba lub firma, która zleca nam dany projekt była przede wszystkim zadowolona z naszej pracy i dumna z projektu lub rozwiązania, które dostarczymy.

Ludzie są bardziej skłonni ufać osobom, które znają, taka jest ludzka natura. Dotyczy to również osób, z którymi woleliby robić interesy.

Często spotykamy się z sytuacjami, w których realizowaliśmy projekt dla klienta X, a kolejny klient Y był znajomym klienta X. Jest to dla nas jak pięciogwiazdkowa recenzja, ponieważ widzimy, że osoby te doceniają naszą pracę.

Bardzo ważne jest, aby klient wiedział, czego od nas oczekuje, abyśmy mogli dopasowywać wymagania oraz zmiany wprowadzane do konkretnych projektów.

2. Jak wybraćSoftware House?
4.1. Tworzenie aplikacjina Android

Szukasz Software House’u, który pomoże Ci rozwinąć nowy produkt? A może chcesz poprawić komunikację w swojej firmie? Nie trafiliśmy? W takim razie sam sprawdź jak i w czym możemy Ci pomóc →

Udostępnij
Marek Golan

Założyciel Dogtronica. Specjalista IT z kilkunastoletnim stażem. Miłośnik elektroniki oraz technologii blockchain. Pamięta czasy IE6 jakby to było wczoraj :)

Zostaw komentarz:

Witryna jest chroniona przez reCAPTCHA i Google Politykę Prywatności oraz obowiązują Warunki Korzystania z Usługi.