
Google Update – May 2020. Summary of updates in times of pandemic
5 czerwca 2020
Jak zoptymalizować Google Moja Firma
19 czerwca 2020
Cykl życia systemu pozwala użytkownikom przekształcić nowo opracowany projekt w projekt operacyjny. Cykl Rozwoju Systemu (SDLC) to wieloetapowy, iteracyjny proces, ustrukturyzowany w metodyczny sposób. Proces ten służy do modelowania lub dostarczania ram dla działań technicznych i nietechnicznych w celu dostarczenia wysokiej jakości systemu, który spełnia lub przewyższa oczekiwania firmy lub zarządza postępem w podejmowaniu decyzji.
\n\n\n\nPorównywalny z Cyklem Życia Projektu, SDLC wykorzystuje podejście systemowe do opisu procesu. Jest często stosowany przy opracowywaniu projektu IT lub podobnego. W rzeczywistości, w wielu przypadkach, SDLC jest uważany za model projektu etapowego, który definiuje ograniczenia organizacyjne, personalne, polityczne i budżetowe dla dużego projektu systemowego. Cykl ma początek i koniec, a metody odpowiednie dla strategii cyklu życia rozwoju systemu zapewniają jasne, odrębne i zdefiniowane fazy pracy w planowaniu, projektowaniu, testowaniu, implementacji i utrzymaniu systemów informatycznych.
\n\n\n\nSDLC podkreśla różne kroki w procesie rozwoju. Wykorzystuje podejście cyklu życia, dzięki któremu użytkownicy mogą zobaczyć i zrozumieć, jakie działania są zaangażowane na danym etapie. Służy również do informowania, że w dowolnym momencie można powtórzyć kroki lub przepisać poprzedni krok, gdy system wymaga modyfikacji lub ulepszenia.
\n\n\n\nHistoria i początki cyklu życia systemu
\n\n\n\nTermin, w pełni zdefiniowany w 1971 roku, pojawił się w latach 60. XX wieku, kiedy komputery zajmowały całe pomieszczenia i istniała pilna potrzeba zdefiniowania procesów i sprzętu skupionego na budowaniu dużych systemów biznesowych. W tamtych czasach zespoły były małe, scentralizowane, a użytkownicy mniej wymagający. Taki scenariusz oznaczał, że nie było realnej potrzeby dopracowywania metodologii, aby sterować cyklem życia rozwoju systemu. Jednak technologia ewoluowała, systemy stawały się coraz bardziej złożone, a użytkownicy przyzwyczaili się do dobrze funkcjonującej technologii. Opracowano modele i ramy, aby prowadzić firmy przez zorganizowany cykl rozwoju systemu. Dziś tradycyjne podejście do rozwoju systemów technologicznych zostało dostosowane do stale zmieniających się, złożonych potrzeb każdej unikalnej organizacji i jej użytkowników.
\n\n\n\nFazy SDLC
\n\n\n\nTradycyjnie cykl życia rozwoju systemu składał się z pięciu etapów, ale od pewnego czasu cykl ten rozrósł się do siedmiu etapów. Zwiększenie liczby kroków pomogło analitykom systemowym zdefiniować jaśniejsze działania w celu osiągnięcia konkretnych celów. Oto wszystkie fazy:
\n\n\n\n1. Planowanie
\n\n\n\nJest to pierwszy krok w procesie rozwoju systemu. Określa, czy nowy system jest potrzebny do osiągnięcia strategicznych celów firmy. Jest to wstępny plan inicjatywy biznesowej firmy w celu pozyskania zasobów do budowy infrastruktury w celu modyfikacji lub ulepszenia usługi. Firma może próbować sprostać lub przewyższyć oczekiwania swoich pracowników lub klientów. Celem tego kroku jest określenie zakresu problemu i identyfikacja rozwiązań. Na tym etapie należy wziąć pod uwagę zasoby, koszty, czas, korzyści i inne.
\n\n\n\n2. Analiza systemowa i wymagania
\n\n\n\nDrugi krok to praca firm nad źródłem problemu lub potrzebą zmiany. W przypadku problemu, proponowane są i analizowane możliwe rozwiązania w celu określenia najlepszego dopasowania do ostatecznych celów projektu. To tutaj zespoły rozważają wymagania funkcjonalne projektu lub rozwiązania. To tutaj odbywa się analiza systemowa lub analiza potrzeb, aby upewnić się, że nowy system może spełnić Twoje wymagania. Analiza systemowa jest kluczowa dla określenia potrzeb firmy, a także sposobu ich zaspokojenia, kto będzie odpowiedzialny za każdy element projektu i jakiego rodzaju harmonogramu należy się spodziewać.
\n\n\n\n3. Projektowanie systemu
\n\n\n\nTrzecia faza obejmuje niezbędne specyfikacje, funkcje i operacje, które pozwolą spełnić wymagania funkcjonalne proponowanego systemu w fazie implementacji. Jest to krok, w którym użytkownicy końcowi omawiają i identyfikują swoje specyficzne potrzeby informacyjne dla proponowanego systemu. W tej fazie uwzględnia się sprzęt lub oprogramowanie, możliwości sieciowe, przetwarzanie i procedury, aby system osiągnął swoje cele.
\n\n\n\n4. Rozwój
\n\n\n\nCzwarta faza to moment, w którym rozpoczyna się prawdziwa praca, gdy deweloperzy są zaangażowani w wykonanie głównych zadań projektu. Praca ta opiera się na wykorzystaniu schematu blokowego w celu zapewnienia właściwej organizacji procesu systemowego. Faza rozwoju oznacza koniec początkowej części procesu. Ponadto faza ta oznacza początek produkcji.
\n\n\n\n5. Integracja i testowanie
\n\n\n\nPiąta faza obejmuje integrację systemu i jego testy, które zazwyczaj są przeprowadzane przez odpowiedniego specjalistę (Quality Assurance). Ma to na celu ustalenie, czy proponowany projekt jest zgodny z początkowym zestawem celów biznesowych. Testy mogą być powtarzane, zwłaszcza w celu sprawdzenia błędów. Testy będą wykonywane, dopóki użytkownik końcowy nie uzna wersji za akceptowalną. Kolejną częścią tego kroku jest weryfikacja i walidacja, aby pomóc zapewnić pomyślne zakończenie programu.
\n\n\n\n6. Wdrożenie
\n\n\n\nSzósta faza następuje, gdy większość kodu programu jest napisana. Ponadto faza ta obejmuje faktyczną instalację nowo opracowanego systemu. Ten krok przenosi projekt do produkcji, pobierając dane i komponenty ze starego systemu i umieszczając je w nowym systemie za pomocą bezpośredniego przełączania. Zarówno analitycy systemowi, jak i użytkownicy końcowi powinni teraz widzieć projekt, w którym wprowadzono zmiany.
\n\n\n\n7. Operacje i utrzymanie
\n\n\n\nSiódmy i ostatni etap obejmuje konserwację i regularne, wymagane aktualizacje. Na tym etapie użytkownicy końcowi mogą, jeśli sobie tego życzą, dostroić system, aby zwiększyć wydajność, dodać nowe funkcje lub spełnić dodatkowe wymagania użytkowników.
\n\n\n\nPo każdej fazie cyklu rozwoju systemu należy ustalić punkt kontrolny lub kamienie milowe w procesie. Punkt odniesienia może obejmować datę rozpoczęcia, datę zakończenia, czas trwania i dane budżetowe. Ten punkt odniesienia pomaga kierownikowi projektu monitorować wydajność.
\n\n\n\nZalety dobrze zdefiniowanego cyklu życia rozwoju systemu
\n\n\n\nWdrożenie cyklu życia rozwoju systemu ma wiele korzyści, w tym możliwość wstępnego planowania i analizowania ustrukturyzowanych etapów i celów. Procesy zorientowane na cel SDLC nie ograniczają się do jednej uniwersalnej metodologii i mogą być dostosowywane do zmieniających się potrzeb. Dobrze zdefiniowany cykl życia systemu powinien:
\n\n\n\n- \n
- Dawać jasny obraz całego projektu, konkretny harmonogram i precyzyjne cele zamknięcia dla każdej fazy. \n
- \n
- Opierać koszty personalne i decyzje na konkretnych informacjach i potrzebach. \n
- \n
- Zapewniać weryfikację celów i wyników, która obejmuje standardy projektowania i rozwoju na każdym etapie projektu. \n
- \n
- Zapewniać kontrolę dla deweloperów dzięki podejściu, które zazwyczaj zaczyna się od analizy kosztów i czasu. \n
- \n
- Poprawiać jakość końcowego systemu poprzez weryfikację na każdym etapie. \n
Zalety dobrze zdefiniowanego cyklu życia rozwoju systemu
\n\n\n\nNiektóre z wad SDLC to:
\n\n\n\n- \n
- Wiele metod jest uważanych za nieelastyczne, a niektóre cierpią z powodu przestarzałych procesów. \n
- \n
- Trudność w reagowaniu na zmieniające się okoliczności w całym cyklu życia. \n
- \n
- Testowanie pod koniec cyklu życia nie jest korzystne dla wszystkich zespołów programistycznych. Wielu woli testować przez cały proces. \n
- \n
- Dokumentacja związana ze strukturalnym podejściem SDLC może być przytłaczająca. \n
Czym jest cykl życia oprogramowania?
\n\n\n\nCykl życia oprogramowania jest kompatybilny z międzynarodowym, który zarysowuje kroki podobne do tradycyjnego cyklu życia systemów, w tym nabywanie oprogramowania, nowe tworzenie oprogramowania, eksploatację, konserwację i usuwanie produktów oprogramowania. Koncentruje się na potrzebie zwiększenia funkcjonalności bezpieczeństwa i ochrony danych.
\n\n\n\nCykl rozwoju oprogramowania to proces, który pozwala uzyskać oprogramowanie najwyższej jakości i najniższym kosztem w możliwie najkrótszym czasie. Zapewnia dobrze ustrukturyzowany przepływ faz, który pomaga organizacji szybko tworzyć wysokiej jakości oprogramowanie, które jest dobrze przetestowane i gotowe do użytku produkcyjnego.
\n\n\n\nPopularne modele to:
\n\n\n\n- \n
- Metoda wodospadowa to ciągła sekwencja działań, która płynie w dół, dokładnie tak jak wskazuje nazwa. Ten tradycyjny proces inżynieryjny, który zamyka każdą fazę po jej zakończeniu, jest często krytykowany za bycie zbyt sztywnym. \n
- \n
- Model V to adaptacja Metody wodospadowej, gdzie testowanie jest integralną częścią zamykania każdej fazy. \n
- \n
- Metoda prototypowa zatwierdza plan budowy wielu metod oprogramowania, które pozwalają na wypróbowanie różnych elementów, zanim zostaną w pełni rozwinięte. \n
- \n
- Rapid Application Development (RAD) to hybryda metody prototypowej, ale działa w taki sposób, aby nie kłaść nacisku na początkowe planowanie na rzecz szybkiego prototypowania i testowania potencjalnych rozwiązań. \n
- \n
- Metoda spiralna zapewnia więcej kroków procesowych, które są graficznie przedstawione w formie spirali i jest ogólnie uznawana za zapewniającą większą elastyczność i możliwość dostosowania procesu. \n
- \n
- Metody Agile to systemy oparte na oprogramowaniu, które zapewniają informacje zwrotne poprzez proces iteracyjny i obejmują Kanban lub Scrum. \n
Jak działa cykl życia oprogramowania?
\n\n\n\nDziała poprzez redukcję kosztów rozwoju oprogramowania przy jednoczesnej poprawie jakości i skróceniu czasu produkcji. Cykl życia oprogramowania osiąga te pozornie rozbieżne cele, postępując zgodnie z planem, który eliminuje typowe pułapki projektów rozwojowych. Plan ten rozpoczyna się od oceny istniejących systemów pod kątem ich niedociągnięć.
\n\n\n\nNastępnie określa wymagania nowego systemu. Następnie tworzy oprogramowanie poprzez etapy analizy, planowania, projektowania, rozwoju, testowania i wdrożenia. Przewidując kosztowne błędy, takie jak brak prośby o opinię od użytkownika końcowego lub klienta, można wyeliminować niepotrzebne poprawki.
\n\n\n\nWażne jest również, aby pamiętać, że należy mocno skoncentrować się na fazie testowania. Cykl życia oprogramowania to powtarzalna metodologia, należy zapewnić jakość kodu w każdym cyklu. Wiele organizacji zazwyczaj poświęca niewiele wysiłku na testowanie, a większy nacisk na testowanie może zaoszczędzić dużo pracy, czasu i pieniędzy. Bądź mądry i pisz odpowiednie rodzaje testów.
\n\n\n\nZnaczenie cyklu życia rozwoju systemu
\n\n\n\nRosnące zainteresowanie bezpieczeństwem systemu na wszystkich poziomach cyklu życia, które obejmuje elementy poufności, dostępności informacji, integralności informacji, ogólnej ochrony systemu i zmniejszania ryzyka. W każdym razie, zarządzanie i regulacje wkroczyły do technologii, a rygorystyczne wymagania dotyczące integralności danych mają wpływ na zespół ds. rozwoju systemów technologicznych.
\n\n\n\nKażda firma będzie miała swoje własne zdefiniowane najlepsze praktyki dla różnych etapów rozwoju. Na przykład, testowanie może obejmować określoną liczbę użytkowników końcowych i scenariuszy użycia, aby odnieść sukces, a konserwacja może obejmować kwartalne obowiązkowe aktualizacje systemu.
\n\n\n\nJeśli firma zdecyduje, że zmiana jest potrzebna w dowolnej fazie cyklu życia systemu, może być konieczne ponowne przejście przez wszystkie powyższe fazy cyklu życia. Podejście cyklu życia każdego projektu jest procesem czasochłonnym. Chociaż niektóre kroki są trudniejsze niż inne, nie można ich pominąć. Może to uniemożliwić funkcjonowanie całego systemu zgodnie z planem.
\n” } }

