Application Lifecycle Management

Application Lifecycle Management (ALM, zarządzanie cyklem życia aplikacji) – ciągły proces zarządzania życiem wytwarzanego oprogramowania, który można podzielić na trzy zasadnicze fazy:

  1. zarządzanie ((ang.) governance) – celem zarządzania w ALM jest zapewnienie, aby tworzone oprogramowanie zawsze spełniało wymagania biznesowe
  2. rozwijanie ((ang.) development) – podstawowy element cyklu życia aplikacji, w trakcie którego powstaje kod źródłowy oprogramowania
  3. eksploatacja ((ang.) operations)

Fazy te nie są rozłączne i często na siebie nachodzą[1].

Metodyki wytwarzania oprogramowania edytuj

Proces wytwarzania oprogramowania może przebiegać z wykorzystaniem metodyki zwinnej (agile). W tym przypadku powyższe kroki wykonywane są iteracyjnie, za każdym razem zajmując się innym fragmentem całości oprogramowania, aż do osiągnięcia kompletnego rozwiązania.

Narzędzia edytuj

W trakcie wytwarzania oprogramowania zespoły projektowe często wspierają się dodatkowymi narzędziami, które znacząco wspomagają pracę nie tylko programistów, ale też pozostałych członków zespołu: testerów, architektów i project managera. Dobre oprogramowanie pozwala na zautomatyzowanie wielu czynności, daje możliwość zarządzania kodem, zadaniami i ich przydziałem oraz dobrze odzwierciedla metodykę, w ramach której wykonywany jest projekt. Przykładem takiego oprogramowania jest Team Foundation Server, który jest kompatybilny z najbardziej popularnymi narzędziami programistycznymi, w tym Visual Studio i Eclipse.

Dodatkowo narzędzia wspierające proces wytwarzania oprogramowania są bogate w systemy raportowania i komunikacji w zespole. Pozwalają na szybkie zestawianie informacji o testach, błędach, wskaźnikach jakości i inne.

Kolejnym istotnym elementem w ALM jest gromadzenie wymagań dotyczących projektu oraz samo zaplanowanie go. Projekt powinien być jasno zdefiniowany, podzielony na kamienie milowe oraz zadania w ramach każdego z nich. Dobrze zaplanowany projekt zawiera realistyczne ramy czasowe wykonywania poszczególnych zadań, dzięki czemu czas realizacji całego projektu będzie zgodny z zaplanowanym.

Testowanie edytuj

Dodatkowo odpowiednie narzędzia wykorzystywane w procesie mogą wesprzeć testowanie gotowej aplikacji poprzez mechanizmy zgłaszania błędów, komunikacji pomiędzy testerami i programistami, zautomatyzowanie wykonywania testów. Nowoczesne narzędzia dają nawet możliwość testowania interfejsu użytkownika w aplikacji poprzez nagrywanie ekranu i automatyczne raportowanie błędów. Zgłaszane błędy mogą automatycznie być przydzielane do programistów w celu poprawy.

Certyfikacja edytuj

Firma Microsoft oferuje certyfikację w obszarze ALM. Aby uzyskać tytuł Microsoft Certified Solutions Developer: Application Lifecycle Management należy zdać kolejno trzy egzaminy potwierdzające umiejętności: Administering Microsoft Visual Studio Team Foundation Server 2012, Software Testing with Visual Studio 2012, Delivering Continuous Value with Visual Studio 2012 Application Lifecycle Management.

Ponadto na platformie Microsoft Virtual Academy jest dostępny kurs Applying ALM with Visual Studio 2012 Jump Start, w trakcie którego omawiane są wszystkie kryteria wymagane przy zdawaniu ostatniego z wyżej wymienionych egzaminów. Dzięki temu można szybciej przygotować się do jego zdania.

Przypisy edytuj

  1. What is application lifecycle management. [dostęp 2011-10-27]. [zarchiwizowane z tego adresu (2011-10-27)].

Linki zewnętrzne edytuj