Specyfikacje funkcjonalne

Przygotowanie specyfikacji funkcjonalnej to bardzo ważny element realizacji projektów informatycznych oraz dokumentacji SIWZ. Pozwala zaoszczędzić czas, obniżyć koszty wdrożenia i zminimalizować jego ryzyko. Wiemy, jak profesjonalnie przygotować dobrą specyfikację funkcjonalną. Zapraszamy do skorzystania z usług naszej firmy.

Czy zdają sobie Państwo sprawę, jakie są najczęstsze powody upadku projektów tworzenia systemów informatycznych? Badania przeprowadzone przez Standish Group jednoznacznie pokazują, że błędy popełnione na samym początku cyklu tworzenia oprogramowania, serwisów www czy portali często są powodem upadku informatycznych projektów.


Przyczyny niepowodzeń projektów informatycznych.


Brak wkładu użytkowników związany jest z niewłaściwym rozpoznaniem dziedziny problemu, którą ma pokryć system. Po co tworzyć stronę, portal czy system informatyczny, jeśli użytkownicy nie będą z niego korzystać lub będą korzystać z niechęcią?

Dlaczego ponad połowa projektów informatycznych kończy się częściowym lub pełnym niepowodzeniem (przekroczeniem zasobów, czasu, budżetu)?

Dlaczego mimo poniesienia sporych kosztów finansowych i czasowych na zarządzanie projektem, jego implementację, testowanie i wdrożenie, a także marketing i reklamę wytworzony produkt nie spełnia oczekiwań?


Mały błąd na początku wielkim jest na końcu
Arystoteles


Stosunek kosztów do naprawy. Specyfikacja wymagań, projektowanie, 

kodowanie, testy jednostkowe, testy akceptacyjne, utrzymanie i 

konserwacja


Okazuje się, że wymagania bardzo często nie są właściwie zbierane, analizowane i przedstawiane. Koszt naprawy błędu na etapie tworzenia specyfikacji potrafi być nawet kilkaset razy tańszy do usunięcia niż na etapie utrzymania i konserwacji systemu.

Często osoby znające swoją branżę, chcące stworzyć system informatyczny lub mające pomysł na biznes w Internecie sami spisują swoje oczekiwania wobec produktu. Sprawia to, że wymagania te są często:

  • Niepełne. Klient: "Po zalogowaniu, użytkownikowi ma się wyświetlić dedykowany panel z możliwością zmiany parametrów konta, edycji swojego koszyka oraz historią zakupów". Analityk Bluebell: Co w wypadku jeśli nie uda się prawidłowo zalogować? Jak system ma się zachować przy próbie trzykrotnego błędnego logowania? Jak ma wyglądać mechanizm odzyskiwania hasła? Itd.
  • Niejasne. Klient chcący zbudować system wewnętrznego obiegu dokumentów w firmie wytwarzającej maszyny rolnicze posługuje się terminologią branżową: "Proszę mi zrobić system, który automatycznie będzie dobierał tolerancje oraz chropowatość dla zadanych gatunków stali oraz odpowiednio dobierał profile teowników. Zintegrujmy to z InterCadem". Dobrze: tylko co programista ma właściwie zrobić?...
  • Niekompletne. Przykład: w briefach często zostaje opisana strona główna portali, brakuje szczegółowego opisu architektury informacji i dostępnych funkcjonalności na poszczególnych podstronach oraz w systemie CMS.
  • Nieprecyzyjne, wieloznaczne. Klient: "Proszę mi zrobić sekcje newsów, galerie, panel logowania dla userów". Pytania naszego analityka: Gdzie umieścić te newsy na stronie? Ile powinno się ich wyświetlać w boxie? Czy powinna istnieć możliwość ustawiania ich w dowolnej kolejności, czy powinny wyświetlać się chronologicznie? Jaka jest przeciętna długość nagłówka newsa? Czy nagłówki newsów na stronie głównej mają być tożsame z nagłówkami artykułów czy też można je dowolnie ustawiać (np. pod kątem reklamy/tekstów sponsorowanych)? Itd.

Czym jest specyfikacja wymagań funkcjonalnych?

Mówiąc krótko - jest to dokument odpowiadający w sposób pełny i kompleksowy na następujące pytania:

  • Jaki zestaw usług i funkcjonalności ma oferować system, portal lub strona?
  • Jaka jest charakterystyka i specyfika każdej z usług i funkcjonalności?
  • Jak system ma reagować na określone dane wejściowe oraz zachowania użytkowników?
  • Jak ma się zachowywać w określonych sytuacjach?
  • Czego nie powinien robić?

Jak się tworzy specyfikację funkcjonalną?

Realizujemy ją w ścisłej współpracy z klientem na każdym etapie jej tworzenia. Wykorzystujemy tutaj szereg specyficznych narzędzi, m.in.:

  • spotkania połączone z wywiadami,
  • burze mózgów,
  • ankiety indywidualne i grupowe,
  • badania fokusowe,
  • tworzenie prototypów.

Budowę specyfikacji dzielimy na dwa zasadnicze etapy:

  • dziedzina problemu, wizja produktu,
  • produkt - system/strona/portal.

Zaczynamy od ogólnej wizji strony lub systemu. Chcemy poznać Państwa dziedzinę biznesową, terminologię, charakterystykę klientów i/lub użytkowników. Na tym etapie jesteśmy aktywnymi słuchaczami. Zbieramy przekazywane nam informacje, pytamy, wyjaśniamy niejasności, ustalamy cele i priorytety. Rozmawiamy o potrzebach. Jest to jedna z najistotniejszych części naszej współpracy - uzyskanie odpowiedzi na zasadnicze pytania: Jak? Gdzie? Kiedy? Co? Dlaczego? W jakim celu? Całą zdobytą w ten sposób wiedzę dokumentujemy, celem późniejszego rozwinięcia w specyfikacji.


Specyfikacje funkcjonalne - zbieranie wymagań

Drugim etapem tworzenia specyfikacji funkcjonalnej jest właściwy opis produktu, tj. systemu, strony czy portalu. Przystępujemy do niego mając zbudowaną wizję, określone cele i priorytety. Opis produktu ma w zależności od specyfiki i stopnia złożoności projektu charakter nieformalny, półformalny lub formalny. Oznacza to, iż elastycznie dopasowujemy narzędzia przedstawiania wymagań do Państwa potrzeb. Na tym etapie to my jesteśmy stroną aktywną - w trakcie specyfikowania na bieżąco kontaktujemy się z Państwem celem doprecyzowania funkcjonalności i potrzeb, a także określenia Państwa preferencji. W zależności od metodologii prowadzenia projektu możemy na bieżąco oddawać ustalone wcześniej części specyfikacji lub finalnie cały dokument. Dzięki temu mogą Państwo elastycznie zaplanować kolejne zadania oraz skupić się na innych działaniach.

Oddanie przygotowanego przez nas dokumentu nie oznacza końca współpracy. Wręcz przeciwnie - rozpoczyna się etap weryfikacji, komentowania, odpowiedzi na pytania. Przez oddanie specyfikacji funkcjonalnej lub jej części rozumiemy sytuację, w której nie wnoszą Państwo żadnych uwag i w pełni akceptują dokument. Uważamy, iż tylko takie postępowanie gwarantuje dobrą współpracę, której efektem jest spójny, kompletny i ścisły dokument specyfikacyjny.

Co znajduje się w specyfikacji funkcjonalnej systemu, portalu, serwisu www tworzonej przez Bluebell?

Przy tworzeniu specyfikacji systemowych nie obwiązują normy, schematy czy algorytmy postępowania. Każdy dokument jest inny, ponieważ każdy produkt, tj. portal, strona czy system informatyczny ma swoją specyfikę.

Wiemy o tym i każdorazowo dostosowujemy narzędzia inżynierii wymagań do Państwa potrzeb oraz wymagań stawianych projektowi. Każdorazowo przedstawiamy Państwu możliwe rozwiązania wraz z ich wadami i zaletami. Wybieramy wspólnie najlepsze rozwiązanie lub połączenie rozwiązań.

Najczęściej używanymi przez nas narzędziami służącymi do zbierania i dokumentacji wymagań są:

  • Język naturalny - używany w sytuacjach, gdy wymagania są jednoznaczne i oczywiste.

    Przykład:
    Specyfikacje 

funkcjonalne, specyfikacje wymagań: język nieformalny używany w 

specyfikacjach wymagań

  • Przypadki użycia - szczegółowy opis akcji i interakcji systemu i użytkowników.

    Przykład:
    Specyfikacje funkcjonalne, specyfikacje wymagań: przypadki użycia 

używane w specyfikacjach wymagań


  • Diagramy języka UML - Diagramy czynności, interakcji, stanów, przypadków użycia.

    Przykład:
    Specyfikacje 

funkcjonalne, specyfikacje wymagań: język UML używany w specyfikacjach 

wymagań


  • Pseudokod - Wykorzystywany przy bardziej skomplikowanych algorytmach, akcjach wielowątkowych.

    Przykład:
    Specyfikacje 

funkcjonalne, specyfikacje wymagań: pseudokod używany w specyfikacjach 

wymagań


  • Makiety interfejsów - obrazują udostępnione funkcjonalności, nie są bezpośrednio związane z projektem graficznym (layoutem) stron/interfejsów. Zajmujemy się profesjonalnym tworzeniem makiet oraz prototypów.

    Przykład:
    Specyfikacje 

funkcjonalne, specyfikacje wymagań: makiety interfejsu używane w 

specyfikacjach wymagań
Bezpośrednie korzyści

Bezpośrednią korzyścią tworzenia specyfikacji funkcjonalnej jest OSZCZĘDNOŚĆ. Oszczędzają Państwo:

Specyfikacje funkcjonalne, korzyści: specyfikacje funkcjonalne 

oszczędzają czasCzas - prawidłowe stworzenie pełnej specyfikacji jest zajęciem czasochłonnym. Wymaga skupienia się na tym zadaniu i oderwaniu od innych obowiązków. Powierzenie tych zadań zewnętrznemu partnerowi, firmie, która specjalizuje się w takim obszarze, pozwala zaoszczędzić wiele czasu.
Specjaliści zatrudnieni w Państwa firmie skupiają się na powierzonych im obowiązkach i realizują bieżące zadania. Etap projektowania i planowania systemu kończy się szybciej, dzięki czemu wcześniej zostanie dostarczony gotowy system, z którego Państwa firma czerpać będzie korzyści.

Specyfikacje funkcjonalne, korzyści: specyfikacje funkcjonalne 

redukują kosztyPieniądze - wydanie określonej kwoty na specyfikację należy rozpatrywać w kategoriach dobrej inwestycji i właściwej praktyki biznesowej, przynoszącej wymierne oszczędności. Należy sobie zadać dwa pytania: co zyskam mając specyfikację funkcjonalną oraz ile stracę nie mając go? Posiadając pełną i poprawną specyfikację mogą zwrócić się Państwo do szeregu firm programistycznych z prośbą o rzetelną wycenę budowy rozwiązania. Na tej podstawie mogą Państwo wybrać najlepszego wykonawcę produktu. W umowie zawartej z nim, mogą się Państwo powołać na specyfikację funkcjonalną, co sprawi, iż kontrahent stworzy produkt dokładnie wg Państwa wymagań i prawidłowo określi czas potrzebny na jego wdrożenie. Dzięki temu unikniecie Państwo częstych niedomówień i rozbieżności w kontaktach z firmami informatycznymi, a także ograniczone zostanie ryzyko opóźnień w realizacji projektu i podwyższenia jego kosztów.

Powierzając nam tworzenie specyfikacji systemowej podejmują Państwo decyzję mającą bezpośredni wpływ na WYSOKĄ JAKOŚĆ produktu. Naszym zdaniem integralną częścią analiz biznesowych i specyfikacji funkcjonalnych jest również konsulting. Wprowadzamy świeży i innowacyjny punkt widzenia na Państwa produkt. Doradzamy, sugerujemy możliwości, wyjaśniamy wady i zalety określonych rozwiązań, rozmawiamy, konsultujemy. Stanowi to niepodważalną wartość dodaną naszej usługi.

Nasi specjaliści mają szeroką wiedzę i doświadczenie w realizacji takich usług. Brali udział w dużych, złożonych projektach, przygotowując dokumentację m.in. dla takich firm jak: Trade Media East (międzynarodowy projekt: stworzenie portalu rekrutacyjnego Job.ru), Wp.pl, Interia.pl, LexisNexis Polska, Grupa Maspex Wadowice. Bardziej szczegółowe informacje na temat doświadczenia niektórych z naszych specjalistów znajduje się na stronie: Doświadczenie zespołu.

Posiadamy rozległe doświadczenie w realizacji projektów informatycznych, dzięki któremu dobrze znamy każdy etap tworzenia rozwiązań informatycznych, począwszy od fazy zbierania założeń i przygotowywania specyfikacji funkcjonalnej, przez etap technicznego projektowania systemu, realizowania prac programistycznych, aż po testy i wdrożenie gotowego rozwiązania. Tę gruntowną wiedzę i doświadczenie wykorzystujemy w trakcie przygotowywania specyfikacji funkcjonalnej. Znając całą specyfikę realizacji systemów informatycznych przygotowujemy dokumentację w taki sposób, aby cały projekt przebiegł sprawnie i wszystkie zaangażowane w nim osoby dobrze znały cele wdrożenia i jego zakres.

Zapraszamy do kontaktu z naszą firmą i skorzystania z naszych usług w zakresie tworzenia specyfikacji funkcjonalnych. Zapewniamy fachowe podejście, terminowość i wysoką jakość prac. Specyfikacje tworzone przez nasz zespół to profesjonalne dokumenty, dzięki którym jasno wytyczone zostaną cele i założenia wdrożenia, a ryzyko i koszt przedsięwzięć informatycznych zostaną obniżone.

Bluebell. Specyfikacje funkcjonalne. Profesjonalnie.



Copyrights: Bluebell  ul. Józefa 42/4, 31-056 Kraków, biuro@blue-bell.pl
Szybki kontakt do Bluebell: (+48) 783 33 20 77