Inżynieria oprogramowania, Jak wykonać, Narzędzia

Hierarchiczne podejście do rozwiązywania zadań


Każdy z nas ma czasem natłok zadań.

Prezentuje rozwiązanie z przykładowym projektem. Ustalam najlepsze rozwiązanie na podstawie pytań a następnie tworzę hierarchię zadań.

How to write a chrome plugin?

Praktyczny przykład tworzenia pierwszej wtyczki do przeglądarki Chrome

Przykład z życia programisty

Cel

Szybsze tworzenie nowych Task-ów w Gitlab-ie

Obecna sytuacja

Obecnie tworzę zadania i rozwiązania wykorzystując bezpośrednio aplikację webową GITLAB.

Przykład rozwiązania

Wtyczna chrome zintegrowana z API Gitlab.

Chciałbym aby wszystkie działania w kontekscie tworzenia lub rozwiązywania zadań odbywały się półautomatycznie za pomocą narzędzi zaimplementowanych w przeglądarce.

Aplikacja jest uruchamiana w przeglądarce, dlatego można określić w niej czy dane zadanie jest już wykonane poprawnie.

Myślę o pluginie do Przeglądarki Chrome, gdzie każdy tester mógłby oznaczyć określone zadanie jako wykonane, a każdy BUG od razu wprowadzić do programu GitLab klikając: wykonaj screenschoot i opisz problem.

Wówczas podczas odwiedzin strony, możliwe by było pokazanie na każdej stronie innych ticketów.

 

Przykład hierarchizacjifull day

W zależności od możliwości: czasu i wiedzy rozwiązanie problemu może być różnie zhierarchizowane.

W mojej sytuacji, nigdy wcześniej nie tworzyłem rozszerzenia dla przeglądarki Chrome.

Dlatego postanowiłem najpierw przyjrzeć się otwarto-źródłowym kodom wtyczek do przeglądarki Chrome, by w ogóle mieć pewność, że rozumiem to co tam jest napisane i będę wiedział czy to zajmie określony przeze mnie czas: 1 dzień.

 

Jak się robi wtyczki w przeglądarce Chrome?

  1. Znalazłem tutotrial do tworzenia wtyczek
  2. Spróbowałem wykonać prostą wtyczkę robiącą cokolwiek.

Jak się łączy z Gitlabem z wtyczki Chrome?

  1. Zapoznałem się z wtyczką do integracji z GitLab
  2. Zaimplementowałem integracja z API GitLAB w mojej wtyczce
  3. Połączenie się z API poprzez pobranie konfiguracji dla konta, klucz prywatny z gitlab
  4. Czytanie listy obecnych zadań
  5. Dodawanie zadań w oparciu o tytuł i opis
  6. Znalezienie sposobu na odczatenie linku otwartej wlasnie strony
  7. Dodawanie zadan do projektu powiazanego z otwarta strona

Jak wykonać zrzuty ekranu?

  1. Zapoznałem się z wtyczką do tworzenia zrzutów ekranu
  2. Tworzenie screenschoot
  3. Dodawanie zadań z załącznikami.

 

Jak opisać funkcjonalność wtyczki i stworzyć możliwość zgłaszania Bug-ów?

  1. Stworzenie strony internetowej projektu na githubie jako open source-owy projekt
  2. Stworzenie WIKI z opisem instalacji

Jak monetyzować projekt?

  1. Znalezienie form platnosci w tego typu projektach
  2. Powiazanie wtyczki z Donate dla paypal, etc

Podsumowanie hierarchizacji

Jak widać, zadania zostały kolejno zgrupowane poprzez zadanie pytania i następnie zdefiniowanie drogi do odnalezienia odpowiedzi.

Pytania są istotną częscią, gdyż pozwalają na dowolność, nie musimy z góry określać rozwiązania, najlepiej gdy ma się możliwość zadania tego pytania na zewnątrz a następnie zadecydowanie w oparciu o odpowiedzi włąsnego najprostszego dojścia do rozwiązania problemu.

Przy okazji hierarchizacji można wyciągnąć dodatkowe wnioski i wiedzę, oraz określić naszą kompetencję, ewentualnie delegować część zadania, która jest zbyt rozbudowana.

W przyszlosci bedzie dostepny portal:

bug tracker

One Day Run

Dla tych ktorzy szukaja wsparcia przy tworzeniu jednodniowych projektow, gdzie miedzy innymi bedzie mozliwosc wykorzystania roznych metod zarzadzania i tworzeniem zadan oraz monitorowaniem realizacji.

 

Tom
Tagi: , , , ,