Specyfikacja wymagań aplikacji internetowej

Specyfikacja wymagań aplikacji internetowej

Baza wiedzy

Specyfikacja wymagań aplikacji internetowej

Prowadzisz firmę. potrzebujesz lepiej zarządzać procesami, które w niej zachodzą. Zauważasz, że emaile oraz pliki Excel już Tobie nie wystarczają .Dotychczasowe aplikacje nie spełniają stawianych przed nimi oczekiwań. Wiesz dobrze, że zależy Ci na dostępie do aplikacji z różnych miejsc. Dostępie do aplikacji wykorzystując różne urządzenia.

Masz pomysł, aby stworzyć aplikację internetową.

Aplikację dedykowaną dla Ciebie i Twoich potrzeb.

Zastanawiasz się, jak opisać swoje oczekiwania, jak przygotować specyfikację wymagań aplikacji internetowej, aby otrzymać realną, rzetelną, uczciwą jej wycenę. Każda firma, która tworzy aplikacje internetowe dla firm potrzebuje otrzymać od Ciebie właśnie specyfikację wymagań aplikacji internetowej, opis wymagań biznesowych. Poniżej w kilku paragrafach przedstawiam podstawowe informacje, które powinny być zawarte w opisie tak, aby organizacja tworząca aplikacje internetowe dla firm mogła przygotować wycenę.

Specyfikacja wymagań aplikacji internetowej

Skopiuj i rozwiń jako metoda tworzenia specyfikacji wymagań aplikacji internetowej

Możesz znaleźć aplikację internetową już dostępną na rynku, najczęściej w modelu SaaS. Sprawdzić jej funkcjonalność, opisać oczekiwane zmiany. I to koniec. Już masz swoją specyfikację wymagań aplikacji internetowej.

Nie jest to podejście zgodne z jakąkolwiek literaturą, nie jest to podejście zgodne z jakąkolwiek metodologa, ale często się spotykam z takim właśnie rozwiązaniem. Oczywiście jest to możliwe tylko wtedy, gdy Ty chcesz aby Twoja aplikacja internetowa była podobna do już istniejącej. Stąd nazwa podejścia skopiuj i rozwiń, czyli dostosuj do swoich oczekiwań.

W podejściu skopiuj i rozwiń, to firma tworząca aplikacje internetowe będzie musiała sprawdzić funkcjonalność dostępnej aplikacji SaaS, w oparciu, o którą ma stworzyć dla Ciebie swoją. Jest to najprostsza metoda [może metoda to za duże słowo, sposób] tworzenia specyfikacji aplikacji internetowej.

Wady procesu skopiuj i rozwiń jako sposobu tworzenia specyfikacji wymagań aplikacji internetowej:
  • Możliwość pominięcia z Twojej strony cech, które są mniej istotne, ale przydatne.
  • Czas potrzebny na stworzenie aplikacji jest dłuższy, szczególnie w procesie jej tworzenia. Firma musi zrozumieć logikę działania już działającego rozwiązania nie znając jego opisu.
  • Przerzucenie ryzyka biznesowego na firmę tworzącą aplikacje internetowe, które będzie odzwierciedlone w cenie realizacji zaproponowanej przez twórcę.
  • Możliwość stworzenia tylko aplikacji podobnej do takiej, która już gdzieś funkcjonuje i działa.
  • Możliwa do zastosowania tylko w przypadku prostszych aplikacji.
  • Istnieje duże ryzyko, że aplikacja będzie spełniała oczekiwania i wymagania tylko jednej osoby [tej, która znalazła aplikację w internecie] lub bardzo małego zespołu.
Zalety procesu skopiuj i rozwiń jako sposobu tworzenia specyfikacji wymagań aplikacji internetowej:
  • Nie potrzebujesz posiadać zespołu projektowego w firmie.
  • Nie inwestujesz istotnego czasu i środków w proces przygotowania specyfikacji aplikacji internetowej.
  • Możesz szybciej rozpocząć pracę projektownia aplikacji internetowej.

Proces realizacji podejścia skopiuj i rozwiń polega na zastosowaniu Agile jako metodyki tworzenia aplikacji. W kolejnych, częstych interakcjach Ty i twórca aplikacji internetowej będziecie pracować wspólnie w całym procesie aby powstało rozwiązanie spełniające Twoje oczekiwania.

 

 

Specyfikacja wymagań aplikacji internetowej

Innym podejściem jest stworzenie specyfikacji aplikacji internetowej, technicznych wymagań aplikacji internetowej. Specyfikacja wymagań może być podstawą pracy zespołu projektowego, który będzie w jednym dokumencie gromadził informacje pozyskane z różnych departamentów. Takie podejście pozawala stworzyć jeden spójny dokument, właśnie specyfikację wymagań aplikacji internetowej, zawierający uwagi, oczekiwania i sugestie różnych stron, użytkowników, sponsorów, właścicieli.

Podstawowe dane dotyczące specyfikacji wymagań aplikacji internetowej dotyczą określenia:

  • celu,
  • ram projektu,
  • głównych założeń oraz
  • interesantów.

Stworzenie specyfikacji wymagań aplikacji internetowej przez własny zespół pracowników ma swoje zalety, wile różnych zalet, poza czysto finansowymi. W procesie tworzenia specyfikacji wymagań zaangażowanych jest kilka osób, które pełnią różne role:

  • Analityk biznesowy –przekłada wymagania biznesowe aplikacji na wymagania zrozumiałe dla programistów, tworzy diagramy UML, opisuje szczegółowo formatki, moduły, obiekty oraz połączenia między aplikacją a innymi systemami informatycznymi. Określa ‘co’ ma być wykonane.
  • Architekt – proponuje architekturę aplikacji oraz sposób wdrożenia jej w firmie. Określa ‘jak’ ma być wykonana aplikacja internetowa. Tą pracę może wykonać pracownik firmy lub firma zewnętrza.
  • Programista – tworzy kod aplikacji. ale to już ma wykonać firma tworząca aplikacje internetowe.

Muszę podkreślić, że nie istnieje jeden dokument, standard używany przez wszystkie firmy i określający specyfikację wymagań aplikacji internetowej. Tak jak jest wiele, różnych firm, tak samo jest wiele wzorców dokumentów. Zadaniem specyfikacji wymagań aplikacji internetowej jest zgromadzenie w jednym dokumencie wszystkich funkcji, które ma ona posiadać.

Specyfikacja wymagań aplikacji internetowej, jako dokument tworzony jest w trakcie wielu spotkań, przez wiele dni i grono wielu osób. Nie ma takiej możliwości, że powstanie w czasie jednego spotkania. Specyfikacja wymagań aplikacji internetowej to dokument obszerny. W proces tworzenia zaangażowanych jest wiele, różnych osób, których w różnym zakresie będzie dotyczyła aplikacja.

Specyfikację wymagań aplikacji internetowej można podzielić na dwa obszary
  • Wymagania funkcjonalne aplikacji internetowej
  • Wymagania niefunkcjonalne aplikacji internetowej
Wszystkie wymagania zarówno niefunkcjonalne jak i funkcjonalne powinny być zgodne z cechami, które składają się na angielskie słowo SMART:
  • Simple & Specific – proste- krótkie, opisane prostym językiem, jednoznaczne.
  • Measureable - mierzalne – wymaganie musi być możliwe do zmierzenia i porównania z założoną wartością w celu określenie czy jest spełnione i w jakim stopniu.
  • Achievable - osiągalne – wymaganie musi być możliwe do spełnienia, realne przy wykorzystaniu zakładanych środków i w zakładanym czasie.
  • Relevant - istotne –wymaganie ma związek z aplikacją w jednoznaczny sposób aby całość działała.
  • Traceable - możliwe do śledzenia – wymaganie można w łatwy sposób zlokalizować w materiałach przygotowanych przez firmę.
Każde wymaganie powinno zawierać cztery elementy:
  • Identyfikator – unikalny dla każdego wymagania numer.
  • Opis – definicja wymagania zawarta w jednym zdaniu.
  • Kategoria / podkategoria – typ wymagania
  • Priorytet – istotność wymagania w skali trzystopniowej istotny, przeciętny, nieistotny.

Wymagania aplikacji internetowej oraz wymagania funkcjonalne aplikacji internetowej są opisane w oddzielnych artykułach. Szukaj artykułów o tytułach:

  • Wymagania niefunkcjonalne aplikacji internetowej
  • Wymagania funkcjonalne aplikacji internetowej
Jak pisać dobre wymagania aplikacji internetowej

Punkty zawierające informacje, jak pisać wymagania aplikacji internetowej. W taki sposób, aby związane to było z efektywną pracą. W taki sposób, aby powstała i była rozwijana aplikacja internetowa.

Wymagania aplikacji internetowej, główne repozytorium
  • Wymagania aplikacji internetowej muszą być zapisywane w jednym, centralnym repozytorium. Repozytorium, do którego wszyscy, którzy tego potrzebują posiadają dostęp. Repozytorium, w którym przechowywane są wszystkie informacje, o kolejnych wersjach wymagań. Repozytorium aplikacji internetowej, które jest odpowiednio zabezpieczone oraz tworzone kopie bezpieczeństwa.
Wymagania aplikacji internetowej, możliwe do weryfikacji
  • Wszystkie wymagania aplikacji zaczynają się zdaniem:
    Aplikacja internetowa powinna, lub
    Chciałbym, aby aplikacja internetowa, lub można skrócić do
    Aplikacja, mając w domyśle pozostałe wyrazy frazy.
    Aplikacja internetowa powinna wymagać podanie loginu oraz hasła.
    Innymi słowy każdy powinien mieć możliwość weryfikacji wymagania, czy aplikacja internetowa spełnia czy też nie spełnia określone kryterium poprzez proste tak lub nie. Każde wymaganie zawiera tylko jeden cel, jedną wartość, którą można jednoznacznie zmierzyć.
Wymagania aplikacji internetowej, unikalny identyfikator
  • Każde wymaganie posiada unikalny identyfikator, który jednoznacznie identyfikuje zgłoszenie. Sam numer identyfikacyjny nie powinien zawierać znaczenia związanego z zagadnieniem, którego dotyczy. Może zawierać zarówno liczby jak i znaki alfabetu. Identyfikator wymagania aplikacji internetowej służy do monitorowania realizacji projektu. Zamiast pisać nazwę i całe zdanie wymagania wystarczy podać jego alfanumeryczny numer.
Wymagania aplikacji internetowej, spis treści
  • Wszystkie wymagania są ustrukturalizowane w hierarchiczną, logiczną zestawienie. Zestawienie pozwala grupować wymagania zawierające poszczególne obszary np. bezpieczeństwo, panel użytkownika, produkty.
Wymagania aplikacji internetowej, priorytety
  • Każde wymaganie posiada określony priorytet. Priorytet określa, jak istotne jest określone wymaganie dla zleceniodawcy. Najprostszymi priorytetami są: muszę posiadać, mogę, lub określenie ich w skali od jeden do pięć. Określenie priorytetu wymagania bardzo pomocne jest w sytuacji konfliktu wymagań. W której dwa, różne wymagania są sprzeczne, a dotyczą tego samego zagadnienia.
Wymagania aplikacji internetowej, właściciel
  • Każde wymaganie posiada właściciela, który jest stworzył. Dla kogo, to wymaganie jest istotne. W każdej sytuacji każdy może skontaktować się z właścicielem wymagania poprzez repozytorium. W taki sposób, że pytania i odpowiedzi właściciela uszczegóławiające wymagane są z nim połączone i zapisane. Zapisywanie uwag do wymagań jest bardzo istotne. Szczególnie w sytuacji, w której jest ich bardzo dużo, a tworzenie aplikacji internetowych rozłożone jest w długim okresie czasu.
Wymagania aplikacji internetowej, cykl życia
  • Każde wymaganie posiada atrybut określający cykl życia. Atrybut określa, na jakim etapie realizacji się znajduje wymaganie. Atrybuty są określone według nomenklatury ustalonej pomiędzy zamawiającym, a wykonawcą. Nomenklatura atrybutów cyklu życia wymagania może zawierać określenia: nowe, sprawdzane, zaakceptowane, programowanie, do sprawdzenia, gotowe do wdrożenia na wersję produkcyjną. Atrybuty wymagania aplikacji internetowej są zgodne z etapami wdrażania zmian w niej.
Wymagania aplikacji internetowej, osoba odpowiedzialna
  • Tak samo jak każde wymaganie musi posiadać swój unikalny numer, tak samo każde wymaganie musi posiadać właściciela. Osobę, która jest odpowiedzialna za jego realizację w danej chwili. Nie w ogóle, ale w określonym momencie. Osoba odpowiedzialna jest blisko związana z cyklem życia wymagania. Jeżeli wymaganie na określonym etapie cyklu życia jest przypisane do cyklu życia ‘programowanie’, to znaczy, że osobą za nie odpowiedzialną jest programista. I dalej idąc, w sytuacji, w której wymaganie znajduje się na etapie ‘testowane’, oznacza to, że osobą za niego odpowiedzialna jest osoba pełniąca funkcję testera.
Wymagania aplikacji internetowej, wersja
  • Każde wymaganie posiada wersję, której dotyczy. Jest to związane z wersjonowanie aplikacji internetowej. Zarządzanie wersjami aplikacji zależne jest od wielu czynników, przede wszystkim zakresu i szybkości wprowadzanych zmian.
Wymagania aplikacji internetowej, zależności
  • Wszystkie wymagania posiadają zależności od innych wymagań. Wymagania są łączone ze sobą w ramach ich logicznej całości. Zależności są kluczowe w sytuacji, w której aplikacja internetowa posiada skomplikowaną strukturę, zawiera wiele, różnych wymagań, które ulegają zmianom.

Wymagania aplikacji internetowej są istotne, z uwagi na fakt efektywnego zarządzania procesem jej tworzenia. Bez zarzadzania wymaganiami nie stworzysz dobrej aplikacji internetowej.

Wymagania biznesowe aplikacji vs. wymagania funkcjonalne aplikacji

Wymagania są głównym elementem każdej aplikacji dedykowanej. Wymagania pomagają określić cele oraz zakres pracy, który musi być wykonany. Dostarczają obiektywnych mierników, które pozwalają określić, czy projekt zakończył się sukcesem czy też nie. Wymagania funkcjonalne aplikacji są definiowane po wymaganiach biznesowych.

Podobieństwa i różnice pomiędzy wymaganiami biznesowymi i wymaganiami funkcjonalnymi aplikacji internetowych

Wymagania biznesowe oraz funkcjonale są integralną częścią każdego projektu aplikacji internetowej. Oba dotyczą pojedynczego projektu. Oba wymagania dotyczą spełnienia przez aplikację wspólnych celów. Z tym, że wymagania funkcjonale są dużo bardziej precyzyjne niż wymagania biznesowe. Wymagania biznesowe opisują dlaczego określony cel jest warty nakładów, aby aplikacja miała go spełniać. Określają wizję aplikacji w przyszłości. Wymagania funkcjonalne określają dokładnie, w jaki sposób określony cel zostanie osiągnięty.

Zespół projektowy co jakiś czas weryfikuje wymagania funkcjonalne w odniesieniu do wymagań biznesowych. Celem weryfikacji wymagań funkcjonalnych jest utrzymanie na drodze zmierzającej do osiągniecia przez aplikację wymagań biznesowych.

Inne wymagania aplikacji internetowych

Poza wymaganiami biznesowymi oraz wymaganiami funkcjonalnymi wiele aplikacji internetowych posiada dodatkowe wymagania. Zawierają one potrzeby techniczne, transformacyjne. Techniczne wymagania określają działania, jakie firma musi spełnić aby aplikacja funkcjonował sprawnie w procesie jej użytkowania. Wymagania transformacyjne dotyczą potrzeb, jakie muszą być spełnione aby użytkownicy mogli z niej korzystać np. szkolenia.

 

Powiązane artykuły