Projektowanie i wdrożenia procesów rozwoju oprogramowania
Cele
- Przekształcenie procesów nieformalnych w powtarzalne procesy inżynierskie
- Standaryzacja na każdym etapie cyklu życia tworzonych rozwiązań
- Kształt procesów dostosowany do charakteru typowych projektów
- Procesy uwzględniające istniejącą kulturę pracy i ograniczenia zasobowe
- Łatwe utrzymanie rozwiązań, nawet po bardzo wielu cyklach zmian i poprawek
- Możliwość rzetelnej oceny terminów wykonania kolejnych etapów prac
- Sprawnie działająca pętla zwrotna między testerami i programistami
- Znacząca lub całkowita automatyzacja procesów testowania
Realizacja
Na podstawie rozmów z pracownikami działu rozwoju oprogramowania, analizy dokumentacji i przeglądu istniejącego środowiska oceniamy istniejący stan faktyczny procesów produkcji oprogramowania. Następnie, wspólnie z Klientem,
ustalamy listę priorytetów, na podstawie której proponujemy ogólny zarys procesów sformalizowanych i potencjalne priorytety ich wdrażania. Po ostatecznym zatwierdzeniu listy przygotowujemy projekty procedur szczegółowych
wraz z propozycjami sprawdzonych narzędzi (komercyjnych i open source), dzięki którym stosowanie procedur w codziennej praktyce będzie pochłaniać niewiele czasu.
Usługi obejmują zwykle wdrożenie i konfigurację w/w narzędzi w środowisku produkcyjnym, a także szkolenia i warsztaty, dzięki którym deweloperzy są w stanie w pełni wykorzystać ich możliwości.
Projektowane przez nas procesy uwzględniają m.in.:
- Wykorzystanie preferowanych przez Klienta frameworków
- Wykorzystanie stosowanych przez Klienta metodyk projektowych
- Wykorzystanie preferowanych przez Klienta rozwiązań do zarządzania kodem, dokumentacją itd.
Rezultaty
- Obiektywny pomiar i kontrola postępu prac na każdym etapie procesu produkcji
- Realistyczne zarządzanie dostępnymi zasobami wewnętrznymi i zewnętrznymi
- Redukcja ogólnej liczby błędów i eliminacja powtarzających się błędów (regresja)
- Mniejsza liczba nieplanowanych przestojów środowiska produkcyjnego
- Mniejsze obciążenie zespołu utrzymaniem i rozwojem architektury rozwiązań
- Większa liczba dostarczanych funkcji biznesowych w jednostce czasu