Tester.pl - Numer 9

37

description

 

Transcript of Tester.pl - Numer 9

Page 1: Tester.pl - Numer 9
Page 2: Tester.pl - Numer 9

TESTER.PL

Strona 2 z 37

Od redaktora Minął kolejny rok, pracowita jesień i połowa bardzo nietypowej, ciepłej „jesieniozimy”.

Wszystko to wpłynęło na opóźnienie prac związanych z tym numerem. A tak naprawdę to dwie

sprawy:

1. Konferencja SJSI – będzie czy nie w tym roku?

2. Rozpoczęcie przez Komisję Egzaminacyjną SJSI egzaminów w zakresie

„Certyfikowany tester – poziom podstawowy”

Pierwsza sprawa jest – wg stanu na dzień dzisiejszy – ciągle otwarta. Drugą moŜemy

uznać za zakończony sukcesem projekt, trwający prawie cztery lata (od prac związanych z

polską wersja słownika poprzez tłumaczenie sylabusa do prac akredytacyjnych). W następnych

numerach spróbujemy tą sprawą zająć się dokładniej.

Zgodnie z rozpoczętym w poprzednim numerze cyklem zamieszczamy w tym numerze

sprawozdanie z dwóch konferencji, które odbyły się jesienią: CMMI – Dlaczego powinno Cię to

obchodzić - zapraszaliśmy na nią w poprzednim numerze oraz z TESTWAREZ.

W numerze dwie ciekawe pozycje:

� Kamila Dec pisze z intrygującym tytułem Wystarczająco dobry jest lepszy o Good

Enough Quality

� Joanna Droździel przedstawia typowe sytuacje przy Zarządzaniu incydentem

i problemem

Prócz tego Joanna Nowakowska przedstawia, co działo się na sesji ISTQB w grudniu

w ParyŜu.

Równocześnie zamieszczamy zaproszenia na trzy ciekawe konferencje organizowane

w naszej części Europy:

1. Software & Systems Quality Conferences 2007 w Dusseldorfie (www.sqs-

conferences.com/de)

2. CONQUEST 2007 w sierpniu w Poczdamie (poniŜej znajdziecie CfP na tą

konferencję)

3. Quality Assurance Management and Technologies QAMT w końcu września w

Kijowie (http://www.qamt.net).

Równocześnie chciałbym – kolejny raz - gorąco zachęcić wszystkich czytelników tego

periodyku do aktywnej współpracy. Cały czas czekamy na Państwa uwagi, artykuły, felietony –

wszystko, co Was interesuje, co chcielibyście przeczytać, czego się dowiedzieć. JeŜeli tylko

będziemy mogli, postaramy się zrealizować Państwa postulaty.

Z ostatniej chwili:

Page 3: Tester.pl - Numer 9

TESTER.PL

Strona 3 z 37

zapraszamy teŜ na Test Management Summit – Warsaw w Warszawie, 25 marca 2007.

Program wygląda bardzo ciekawie. Więcej szczegółów na stronie:

http://www.bbjtest.com/tms/index.html#programme

Page 4: Tester.pl - Numer 9

TESTER.PL

Strona 4 z 37

CONQUEST 2007 – This year with EuroSPI 2

September 26–28, 2007, Potsdam, Germany

Call for Papers

The Call for Papers of the CONQUEST and EuroSPI2 are out now. Both take place as partner conferences from September 26th to 28th, 2007 in Potsdam (near the German capital Berlin).

The main topic of the 10th Conference on Quality Engineering in Software Technology, CONQUEST, is going to be “business processes engineering (BPE)”. The European Systems & Software Process Improvement and Innovation, EuroSPI2, is going to put emphasis on “Success Factors with SPI in a Global Competitive Environment - New Research, Methods and Experiences”.

Submission Details

Contributions may cover any quality related aspect of software engineering, but should be classified by choosing the topics below, which characterize the contribution best:

Page 5: Tester.pl - Numer 9

TESTER.PL

Strona 5 z 37

Business processes engineering (BPE), Model driven engineering (MDE), Requirements engineering (RE), Verification and validation (V&V), Testing, Metrics and measurements of system quality and of development processes, Analytical models of software engineering, Project management (PM), Configuration management (CM), IT security

Contributions related to industrial experiences are particularly welcomed. Proposals should be submitted electronically to the Program Committee by March 30, 2007.

Since 1997, CONQUEST has been the platform for software professionals bringing together the software engineering community to discuss software quality aspects, to see how quality engineering methods and techniques are used in both industrial and research environments, to see the latest tools, to share experiences on projects and representative case studies, and to hear about future directions.

CONQUEST 2007 will feature tutorials and presentations of invited speakers and from members of the quality and software engineering community. It provides a full picture of software quality in theory and practice. This year special emphasis is given to business process engineering (BPE) – how domain specific business processes can be modelled and engineered, how high-quality IT infrastructure can be developed for specific business processes, how the business processes are continuously evolved and improved. Papers on the overall quality of business processes are appreciated in particular.

Page 6: Tester.pl - Numer 9

TESTER.PL

Strona 6 z 37

Please find more information about both Call for Papers at the following websites: www.conquest-conference.org and http://2007.eurospi.net/

Page 7: Tester.pl - Numer 9

TESTER.PL

Strona 7 z 37

Wystarczaj ąco dobry jest lepszy

Kamila Dec

WINUEL SA

Absolwentka Wydziału Elektrycznego Politechniki Poznańskiej, kierunek Informatyka. Obecnie jest pracownikiem firmy WINUEL SA. Jako analityk – konsultant uczestniczyła w wielu przedsięwzięciach zarządzając nimi, pełniąc rolę analityka, projektanta, biorąc udział w testowaniu funkcjonalnym dostarczanych rozwiązań, wdraŜaniu ich oraz szkoleniach uŜytkowników końcowych. W 2003 roku zdobyła ISEB Software Testing Foundation Certificate. Interesuje się analizą biznesową, testowaniem oraz projektowaniem interakcji.

Page 8: Tester.pl - Numer 9

TESTER.PL

Strona 8 z 37

Wystarczaj ąco dobry jest lepszy

Kamila Dec

WINUEL SA

Doskonałości teŜ przyda się umiar. Tadeusz Kotarbiński

Wprowadzenie Zainspirowana sformułowaniem „Good Enough Quality”, pochodzącym z Rational Unified

Process (RUP), chciałabym poświęcić kilka chwil zarówno pojęciu „Quality”, jak i „Good Enough”,

z naciskiem na to drugie.

Kiedy nasz produkt jest juŜ „wystarczająco dobry”, aby przekazać go klientowi? I jakie

ryzyko niesie ze sobą zgoda na zastąpienie „po prostu dobry” przez „wystarczająco dobry”?

W praktyce na pierwsze pytanie najczęściej odpowiada za nas rzeczywistość, dyktowana

zobowiązaniami kontraktowymi, terminami i prawami rynku. Wydanie oprogramowania rzadko

kiedy jednak oznacza koniec jego rozwoju (a nie jest tak, jeśli produkt, zamiast do archiwum,

trafia do rąk klienta), więc świadomość ryzyka, która jest pierwszym krokiem do zaradzenia mu,

jest w tej sytuacji praktycznie konieczna.

W literaturze i Internecie moŜna przeczytać o wielu metrykach i bazujących na nich

metodach, które słuŜą róŜnym celom, np. pozwalają oszacować pracochłonność przedsięwzięcia,

a przez to czas i koszt jego realizacji (np. model COCOMO, ang. COnstructive COst MOdel,

metoda punktów funkcyjnych, itd.). W niniejszym artykule chciałabym jednak skupić się tylko na

tych metrykach i metodach1, które prowadzą do osiągnięcia następującego celu – pozwalają

uzyskać odpowiedź na pytanie czy nasz produkt jest „wystarczająco dobry”, a więc na

metrykach jakości oprogramowania i metodach szacowania liczby ukrytych błędów. NaleŜy

zwrócić uwagę, Ŝe na tę odpowiedź składają się dwa elementy:

� ocena jakości procesu testowania – poniewaŜ to proces testowania dostarcza

nam danych do oceny jakości oprogramowania, musimy mieć pewność, Ŝe dane

te są wiarygodne, a proces skuteczny;

1 Muszę tu jednocześnie zaznaczyć, Ŝe są to tylko wybrane metryki i metody.

Page 9: Tester.pl - Numer 9

TESTER.PL

Strona 9 z 37

� ocena jakości produktu, jakim jest oprogramowanie (na podstawie wiarygodnych

wyników dostarczonych przez proces testowania).

Do doskonałości brakowało jej tego, Ŝe nie miała wad. Karl Klaus

W poszukiwaniu jakości Według autorów [2] pojęcie „jakość” jest synonimem relacji pomiędzy człowiekiem

a rzeczą. Nawet, jeśli produkt pozostaje niezmienny, ludzie i otoczenie się zmieniają, zmienia się

więc postrzeganie jakości. Dodatkowo sprawę komplikuje fakt, Ŝe definicja jakości zaleŜy

w duŜym stopniu od dziedziny problemu; co innego oznacza to pojęcie dla NASA, a zupełnie co

innego oznacza ono w kontekście oprogramowania do zastosowań medycznych, gier

komputerowych czy oprogramowania sklepu internetowego.

Podobno pojęcie „jakość” po raz pierwszy zdefiniował Platon jako „pewien stopień

doskonałości”. I ta definicja jest chyba najlepsza na potrzeby niniejszego artykułu.

Encyklopedia Wikipedia podaje równieŜ inną ciekawą definicję:

„Właściwość jednostki odnosząca się do jej zdolności zaspokojenia wymagań

jakościowych”, przy czym przez „wymagania jakościowe” rozumiem tu:

� Funkcjonalność – zdolność systemu (przy załoŜonych warunkach uŜytkowania) do

realizacji funkcji, które odpowiadają stwierdzonym i przewidywanym potrzebom

uŜytkownika.

� Niezawodność – zdolność systemu (przy załoŜonych warunkach uŜytkowania) do

utrzymania określonego poziomu bezawaryjności (odporność systemu na awarie).

� Efektywność – zdolność systemu (przy załoŜonych warunkach uŜytkowania) do

osiągania efektów odpowiednich do stopnia zuŜycia zasobów.

� UŜyteczność – łatwość zrozumienia, nauki i uŜytkowania systemu oraz

zapewnienie satysfakcji uŜytkownika (przy załoŜonych warunkach uŜytkowania).

� Przenośność – zdolność systemu do przenoszenia pomiędzy środowiskami.

� Pielęgnowalność – zdolność systemu do modyfikacji.

Definicja jakości według normy ISO 9000 brzmi następująco:

„Ogół cech i właściwości wyrobu lub usługi, które decydują o zdolności wyrobu lub usługi

do zaspokojenia stwierdzonych lub przewidywanych potrzeb uŜytkownika produktu”.

Przytaczam ją tutaj, ze względu na pewien dodatkowy aspekt, nie uwzględniony

w pozostałych definicjach: „zdolność do zaspokojenia przewidywanych potrzeb”. Wrócę do tego

problemu w dalszej części artykułu.

Page 10: Tester.pl - Numer 9

TESTER.PL

Strona 10 z 37

Doskonałość absolutna, w czymkolwiek by się przejawiała, jest symptomem śmierci. Antoine de Saint-Exupery

Produkt „wystarczająco dobry” PoniŜej omówiłam wybrane metryki jakości oprogramowania, biorąc pod uwagę zarówno

aspekt jakości procesu testowania produktu, jak i jakość samego produktu. Co prawda decyzja

dotycząca tego czy produkt jest „wystarczająco dobry”, a więc czy moŜna juŜ zakończyć

testowanie i przekazać go klientowi, jest podejmowana na podstawie róŜnych kryteriów

(i w dodatku z róŜną wagą dla kaŜdego z nich), mimo to przy kaŜdej metryce pokusiłam się

o określenie jej potencjalnego wpływu na tę decyzję.

Jakość procesu testowania

Pokrycie wymagań Metryka pokrycia wymagań pozwala stwierdzić jaka część wymagań została

przetestowana lub przeszła testy z wynikiem pozytywnym. WyraŜona jest następującym

wzorem:

Pokrycie wymagań = Liczba wymagań (P, I, W, S) / Liczba wymagań (A, T)

Metrykę tę moŜna wykorzystywać na róŜnych etapach procesu testowania, do oceny

pokrycia wymagań przez planowane (P), zaimplementowane (I) lub wykonane (W) zadania

testowe. Badając ocenę jakości produktu moŜna równieŜ w oparciu o tę metrykę szacować

odsetek wymagań, które przeszły testy z wynikiem pozytywnym (S), przy czym liczbę tych

wymagań moŜna zarówno odnosić do liczby wszystkich wymagań (A), jak i do liczby wymagań

przetestowanych (T).

W naszym przypadku (do oceny jakości procesu testowania) metryka pokrycia wymagań

jest interesująca jako współczynnik mówiący o tym, ile wymagań zostało faktycznie

przetestowanych, czyli:

Pokrycie wymagań = Liczba wymagań przetestowanych / Liczba wszystkich wymagań

Jak wspomniałam wcześniej, norma ISO mówi o zdolności wyrobu lub usługi do

zaspokojenia stwierdzonych lub przewidywanych potrzeb uŜytkownika produktu. Tak naprawdę

nigdy nie mamy pewności czy uŜytkownik wyartykułował wszystkie swoje wymagania odnośnie

produktu, czy Specyfikacja Wymagań jest kompletna, czy nie pominięto w niej Ŝadnych sytuacji

wyjątkowych lub odwołań do standardów, które oprogramowanie musi spełniać. W związku

z tym, przez „Liczbę wszystkich wymagań” w powyŜszym wzorze, naleŜy rozumieć nie tylko

wymagania udokumentowane, ale równieŜ wymagania przewidywane.

Page 11: Tester.pl - Numer 9

TESTER.PL

Strona 11 z 37

Dobrze zdefiniowany zbiór wymagań charakteryzuje się między innymi tym, Ŝe

wymagania są w nim ułoŜone według waŜności. Z punktu widzenia osoby podejmującej decyzję

o zakończeniu procesu testowania idealna jest sytuacja, gdy pokrycie wymagań wynosi 100%,

jednak w praktyce współczynnik ten moŜe mieć niŜsze wartości (choćby dlatego, Ŝe nie zawsze

testowanie wszystkich wymagań jest „opłacalne”). W takich przypadkach przydatna moŜe

okazać się informacja o pokryciu wymagań według ich wagi. Zupełnie czymś innym jest fakt

przetestowania 70% wymagań, z czego wszystkich krytycznych i waŜnych, a tylko części

uŜytecznych, niŜ sytuacja przetestowania 90% wymagań, z czego wszystkich uŜytecznych

i waŜnych, a tylko części krytycznych. Z mojego punktu widzenia korzystniejsza moŜe okazać się

sytuacja pierwsza.

Pokrycie kodu Metryka pokrycia kodu pozwala stwierdzić jaka część kodu źródłowego została wykonana

podczas testów. WyraŜona jest następującym wzorem:

Pokrycie kodu = Liczba wykonanych jednostek kodu / Liczba wszystkich jednostek kodu,

gdzie „liczba jednostek kodu” moŜe być rozumiana jako:

� liczba linii kodu (LOC – ang. lines of code),

� liczba ścieŜek (instrukcja if then else stanowi dwie moŜliwe ścieŜki do przejścia –

jedną przy spełnionym warunku i drugą, gdy warunek nie jest spełniony), itp.

Kod źródłowy naleŜy traktować jako dokumentację wyobraŜenia programisty

o wymaganiach wobec oprogramowania. Na wyobraŜenie to składa się to czego klient naprawdę

oczekuje po przejściu przez filtr wyobraŜeń analityka, projektanta i w efekcie – samego

programisty. Co więcej – kod źródłowy moŜe być obarczony dodatkowo takimi uchybieniami jak

– implementacja funkcji, których klient nie potrzebuje oraz brak funkcji wymaganych. Stąd

informacja o pokryciu kodu, choć uŜyteczna w róŜnych zastosowaniach, niewiele wnosi przy

próbie odpowiedzi na pytanie czy nasz produkt jest „wystarczająco dobry”. Nawet jeśli będziemy

wiedzieli, Ŝe przetestowano cały kod i co więcej – nie znaleziono w nim Ŝadnego błędu, nie

będziemy wiedzieli zbyt duŜo o zdolności produktu do zaspokojenia stwierdzonych lub

przewidywanych potrzeb jego uŜytkownika.

Efektywność usuwania błędów Efektywność usuwania błędów (ang. Defect Removal Effectiveness) jest wyraŜona

następującym wzorem (przytaczam jedną z kilku interpretacji tej metryki):

DRE = Liczba błędów znalezionych w czasie testów/ Liczba wszystkich znalezionych błędów,

Page 12: Tester.pl - Numer 9

TESTER.PL

Strona 12 z 37

gdzie Liczba wszystkich znalezionych błędów jest to suma liczby błędów znalezionych

w czasie testów i liczby błędów znalezionych po testach (w szczególności – przez klienta, po

wydaniu oprogramowania, w danym okresie2).

Aby przybliŜyć zastosowanie tej metryki, posłuŜę się przykładem (po modyfikacjach)

z opracowania [3]:

Faza, w której popełniono błąd

Faza, w której wykryto błąd Analiza Projekt Kodowanie RAZEM

Analiza 10 - - 10

Projekt 3 18 - 21

Kodowanie 0 4 26 30

Błędy wykryte po wdroŜeniu oprogramowania (przez klienta i

wewnętrznie) 1 2 7 10

RAZEM 14 24 33 71

Efektywność dla fazy analizy = 10/ 14 = 71%

Efektywność dla fazy projektowania = 21/ (14 + 24 - 10) = 75%

Efektywność dla fazy kodowania = 30/ (14 + 24 + 33 – 10 – 21) = 75%

Efektywność całkowita = (10 + 21 + 30)/ (14 + 24 + 33) = 86%

Metryka ta mówi o tym jak efektywny jest nasz proces testowania i jak skuteczny

w wykrywaniu/ usuwaniu błędów. Do oszacowania efektywności całkowitej niezbędna jest

jednak informacja o liczbie błędów wykrytych po wdroŜeniu oprogramowania, czego w naszej

sytuacji jeszcze nie wiemy. Podstawą w tym przypadku są więc dane historyczne. Jeśli je

posiadamy, wiemy jak kształtowały się współczynniki efektywności w innych przedsięwzięciach

(np. przy produkcji poprzedniej wersji tego samego oprogramowania) dla zespołu testerów

o takich samych lub podobnych kompetencjach i przy takim samym lub podobnym przebiegu

procesu testowania. W takich warunkach moŜna załoŜyć, Ŝe efektywność usuwania błędów

kształtuje się na podobnym poziomie.

Dla modelu CMM określono wartości DRE osiągane przez organizację na kaŜdym z pięciu

poziomów dojrzałości. Przytaczam je tutaj za [1]:

Poziom dojrzałości według CMM Defect Removal Effectiveness

Poziom 5 95%

Poziom 4 93%

Poziom 3 91%

2 Autor ksiąŜki „Metrics and Models in Software Quality Engineering”, Stephen H. Kan twierdzi, Ŝe znaczna większość błędów zostaje wykryta w ciągu dwóch lat od wydania oprogramowania. Najczęściej przyjmuje się jednak okres sześciu miesięcy.

Page 13: Tester.pl - Numer 9

TESTER.PL

Strona 13 z 37

Poziom dojrzałości według CMM Defect Removal Effectiveness

Poziom 2 89%

Poziom 1 85%

Jakoś produktu

Metryka częstości błędów Metryka częstości błędów (ang. Defect Density) jest wyraŜona następującym wzorem:

DD = Liczba znanych błędów/ Rozmiar kodu, gdzie Rozmiar kodu jest to „liczba okazji do popełnienia błędów” [1] wyraŜona jako

liczba KLOC (ang. 1000 Lines of Code) lub liczba punktów funkcyjnych.

Istnieje wiele róŜnych definicji LOC. Linią kodu w tym znaczeniu moŜe być kaŜda fizyczna

linia kodu, kaŜda wykonywalna linia kodu, z uwzględnieniem komentarzy lub bez,

z uwzględnieniem definicji danych lub bez, itd. W wielu przypadkach jest to wartość, którą

trudno zmierzyć, i która zaleŜy od uŜytej technologii (potrzeba więcej linii kodu w asemblerze niŜ

w C#, aby zaimplementować tę samą funkcjonalność). Z powodu róŜnic w interpretacji metryki

LOC i trudnościach w oszacowaniu jej wartości wielu autorów sugeruje metrykę punktów

funkcyjnych.3

Metryka częstości błędów ma kilka zastosowań. MoŜe być między innymi

wykorzystywana do porównywania jakości róŜnych komponentów, co pozwoli zidentyfikować te

o większym współczynniku błędów i w porę podjąć działania zaradcze. MoŜe równieŜ, co jest

najbardziej interesujące z naszego punktu widzenia, być stosowana do oceny czy produkt jest

wystarczająco dobry, przy czym w tym przypadku konieczne jest posiadanie danych

historycznych, a im więcej ich jest, tym lepiej. Steve McConnell w swoim artykule [4] omawia

następujący przykład (podaję go po drobnych modyfikacjach):

Liczba znanych błędów KLOC Przed

wdroŜeniem Po wdroŜeniu

DD

Wydanie 1 100 650 50 7,0

Wydanie 2 50 400 75 9,5

Wydanie 3 100 600 X

ZałóŜmy, Ŝe musimy podjąć decyzję o tym czy jesteśmy gotowi do trzeciego wydania.

Biorąc pod uwagę współczynniki DD dla poprzednich dwóch wydań, moŜemy się spodziewać

(pod warunkiem, Ŝe nie dokonaliśmy jakichś rewolucyjnych zmian w naszym procesie produkcji),

3 Swoją drogą, oszacowanie liczby punktów funkcyjnych równieŜ jest zadaniem nietrywialnym i często wymaga zaangaŜowania eksperta.

Page 14: Tester.pl - Numer 9

TESTER.PL

Strona 14 z 37

Ŝe dla tego wydania osiągniemy równieŜ od 7 do 10 błędów/ KLOC. ZałóŜmy, Ŝe jako kryterium

przyjęliśmy usunięcie 95% błędów przed publikacją oprogramowania.

Dla współczynnika DD = 7,0 mamy:

(600 + X) / 100 = 7,0

X = 100

Łączna liczba błędów wynosi 600 + 100, co oznacza, Ŝe aby spełnić nasze kryterium

(95%), musimy wykryć 665 błędów przed publikacją oprogramowania (w takim razie pozostało

jeszcze 65).

Dla współczynnika DD = 10,0 mamy natomiast:

(600 + X) / 100 = 10,0

X = 400

Łączna liczba błędów wynosi 600 + 400, co oznacza, Ŝe aby spełnić nasze kryterium

(95%), musimy wykryć 950 błędów przed publikacją oprogramowania (pozostało jeszcze 350 –

duŜo pracy przed nami).

Niezawodność oprogramowania - średni czas międzyawaryjny Zanim omówię tę metrykę, zdefiniuję dwa podstawowe pojęcia, którymi będę się

posługiwać: błąd i awaria4. Awaria to nieoczekiwane zachowanie systemu, które wystąpiło

w czasie jego pracy i zostało zauwaŜone przez uŜytkowników. Błąd to pomyłka prowadząca do

niepoprawnego zapisu w kodzie źródłowym. Nie kaŜdy błąd musi skutkować awarią

oprogramowania, ponadto jeden błąd moŜe powodować kilka róŜnych awarii. W duŜym stopniu

zaleŜy to od profilu uŜycia systemu – jeśli błąd występuje w funkcji częściej uŜywanej przez

uŜytkowników, istnieje większe prawdopodobieństwo, Ŝe się objawi w postaci awarii.

Średni czas międzyawaryjny (ang. Mean Time Between Failures) oznacza czas

pomiędzy awariami mierzony w określonych jednostkach (najczęściej godzinach, ale równieŜ

dniach, miesiącach lub latach).

MoŜna więc przyjąć, Ŝe nasze oprogramowanie jest „wystarczająco dobre”, gdy

współczynnik MTBF osiągnie w testach (pod warunkiem ich prowadzenia w odpowiedni sposób)

poŜądaną wartość.

Autor ksiąŜki [1], Stephen H. Kan twierdzi, Ŝe, dla systemów, które nie mają typowego

profilu uŜycia, metryka ta jest trudna do implementacji i moŜe nie być reprezentatywna. Poza

tym, gromadzenie danych o czasie pomiędzy wystąpieniem awarii jest bardzo kosztowne

i wymaga metod statystycznych. Dlatego teŜ metryka ta jest bardzo rzadko stosowana do oceny

4 W literaturze róŜne pojęcia mają te same definicje. Przyjęłam więc dwa z nich, dla porządku.

Page 15: Tester.pl - Numer 9

TESTER.PL

Strona 15 z 37

jakości (niezawodności) oprogramowania komercyjnego (częściej jednak do oceny

oprogramowania o krytycznym znaczeniu dla bezpieczeństwa).

Inne techniki szacowania liczby ukrytych błędów We wspomnianym juŜ przeze mnie artykule [4] jego autor, Steve McConnell, omawia

jeszcze dwie ciekawe techniki, o których chciałabym napisać kilka słów:

1. Defect Pooling Wszystkie błędy znalezione podczas testów naleŜy podzielić na dwa zbiory, A i B.

Kryterium podziału jest dowolne, przy czym kaŜdy z tych zbiorów powinien obejmować cały

zakres funkcjonalny testowanego produktu. Autor proponuje, aby do jednego zbioru przypisać

np. wszystkie błędy znalezione w poniedziałki, środy i weekendy, a do drugiego – błędy

znalezione w pozostałe dni. MoŜna równieŜ dokonać podziału według testerów – błędy

znalezione przez jedną połowę zespołu testującego przypisać do jednego zbioru, a błędy drugiej

połowy – do drugiego. W omawianej technice istotna jest:

� liczba błędów w zbiorze A (we wzorze oznaczona symbolem A),

� liczba błędów w zbiorze B (we wzorze oznaczona symbolem B),

� liczba błędów w części wspólnej zbioru A i B (we wzorze oznaczona symbolem

A&B).

Liczba wszystkich błędów (znalezionych i pozostających do znalezienia) jest szacowana

z następującego wzoru:

Całkowita liczba błędów = (A * B)/ A&B Przy stałej liczbie błędów w zbiorze A i B, im mniejsza będzie część wspólna tych

zbiorów, tym większa przewidywana całkowita liczba błędów.

2. Defect Seeding Technika ta polega na celowym umiejscowieniu w kodzie źródłowym programu błędów.

Informacja o tym ile z tych błędów zostało wykrytych podczas testowania pozwala przewidywać

ile błędów z tych, które były pierwotnie w oprogramowaniu, pozostaje jeszcze do wykrycia.

Technika ta jest najbardziej skuteczna, jeśli błędy celowo umieszczone w kodzie źródłowym

obejmują cały zakres funkcjonalny oraz są róŜnej wagi – od błędów krytycznych po

kosmetyczne.

Przyjmę następujące oznaczenia:

PZnalezione – Liczba znalezionych błędów pierwotnych

PWszystkie – Liczba wszystkich błędów pierwotnych

CZnalezione – Liczba znalezionych błędów celowo umiejscowionych w kodzie

CWszystkie – Liczba wszystkich błędów celowo umiejscowionych w kodzie

W technice tej przyjmuje się, Ŝe liczba znalezionych błędów pierwotnych jest równa:

Page 16: Tester.pl - Numer 9

TESTER.PL

Strona 16 z 37

PZnalezione = (CZnalezione / CWszystkie) * PWszystkie stąd liczba wszystkich błędów pierwotnych jest równa:

PWszystkie = PZnalezione * (CWszystkie / CZnalezione) Jeśli więc w kodzie programu umiejscowiono celowo 40 błędów, z czego wykrytych

zostało 30, a pierwotnych błędów wykryto 500, to moŜna się spodziewać, Ŝe łączna liczba

błędów pierwotnych wynosi:

PWszystkie = 500 * (40 / 30) = 667 Znaleźliśmy więc dopiero 75% błędów. ZałóŜmy, Ŝe jako kryterium przyjęliśmy usunięcie

95% błędów przed publikacją oprogramowania, co stanowi ok. 630 błędów. Mamy więc jeszcze

sporo do zrobienia.

Technika ta jest przydatna, lecz ma kilka wad:

� Celowe umiejscowienie błędów w kodzie programu jest kosztowne, wymaga

dodatkowych nakładów pracy.

� MoŜna zapomnieć o usunięciu tych błędów, a przy ich usuwaniu – zrobić kolejne.

Ideały są jak gwiazdy. Jeśli nawet nie moŜemy ich osiągnąć, to naleŜy się według nich orientować.

George Bernard Shaw

Podsumowanie PowyŜej omówiłam wybrane metryki i techniki, które mogą być przydatne przy ocenie

czy produkt jest „wystarczająco dobry” do wdroŜenia. Postawienie sobie takiego pytania

wymaga pewnej dojrzałości organizacji, jeszcze większej natomiast wymaga świadoma na nie

odpowiedź. Autorzy ksiąŜki [2] proponują taki test – jeśli chcesz wiedzieć co organizacja

naprawdę myśli o jakości, obserwuj trzy ostatnie dni kaŜdego sześciomiesięcznego

przedsięwzięcia – zobacz co się stanie, jeśli ostatniego dnia zostanie zgłoszony nowy problem.

Osobiście wyznaję w takich sytuacjach zasadę: „lepszy znany wróg niŜ nieznany przyjaciel”.

Wykrycie i usunięcie wszystkich błędów jest niemoŜliwe, a jeden błąd zazwyczaj stanowi nikły

procent całości. Pochopne usuwanie go w ostatniej chwili moŜe z kolei spowodować całą lawinę

błędów, które wykryje dopiero niezadowolony klient. Trzeba pogodzić się ze świadomością, Ŝe

za kaŜdym razem kiedy publikujemy oprogramowanie, dajemy uŜytkownikom do ręki produkt

z błędami5 (choć i tak to uŜytkownicy będą mieli większą trudność z pogodzeniem się z tym

faktem). Dobrze jest jednak wiedzieć jak wadliwy jest to produkt i czy wydanie go tu i teraz

przysporzy więcej korzyści czy problemów.

5 Stąd właśnie wymagania dotyczące dostępności i niezawodności są podgrupą wymagań niefunkcjonalnych.

Page 17: Tester.pl - Numer 9

TESTER.PL

Strona 17 z 37

W niniejszym opracowaniu omówiłam tylko wybrane metryki i techniki szacowania liczby

ukrytych błędów oparte na danych dostarczonych przez proces testowania (liczba znalezionych

błędów). Pomijam tematykę modeli niezawodności, równieŜ bazujących na tych danych, których

zastosowanie wymaga pewnej wiedzy statystycznej. W literaturze moŜna takŜe przeczytać

o wielu innych metodach, na przykład opartych na miarach rozmiaru programu (bazujących na

związku pomiędzy rozmiarem programu, a liczbą ukrytych w nim błędów). Większość z tych

metod, między innymi z racji tego, Ŝe operują pojęciem błędu zamiast awarii (róŜnice między

nimi – patrz rozdział dotyczący metryki MTBF), a więc tak naprawdę nie mówią za duŜo

o niezawodności oprogramowania, spotyka się z szeroko zakrojoną krytyką. Stąd trwają prace

nad wykorzystaniem w tym obszarze drzew decyzyjnych czy sieci Bayesa, które pozwalają

bazować na wielu róŜnych kryteriach będących wyznacznikiem niezawodności. Więcej informacji

moŜna znaleźć w [1] oraz wielu artykułach dostępnych w Internecie.

Literatura KsiąŜki: [1] Metrics and Models in Software Quality Engineering, 2nd Edition, Stephen H. Kan,

Addison Wesley Professional, 2003 [2] The Rational Unified Process Made Easy, A Practitioner’s Guide to the RUP, Per Kroll,

Philippe Kruchten, Pearson Education Inc., 2003 Artykuły: [3] Defect Removal Effectiveness, Linda Westfall (dostępne w Internecie pod adresem:

http://www.westfallteam.com/Papers/defect_removal_effectiveness.pdf)

[4] Gauging Software Readiness With Defect Tracking, Steve McConnell (artykuł dostępny pod adresem: http://www.stevemcconnell.com/ieeesoftware/bp09.htm)

[5] An overview of software quality concepts and management issues, Claude Y. Laporte, 2005 (artykuł dostępny w Internecie pod adresem:

http://profs.logti.etsmtl.ca/claporte/Publications/Publications/Duggan_Chapter_SQA.pdf)

Page 18: Tester.pl - Numer 9

TESTER.PL

Strona 18 z 37

Software & Systems Quality Conferences 2007 We would like to invite you to join colleagues and associates from the Software &

Systems Quality Management and Testing profession at the industry’s most important

conference in 2007.

The programme has been carefully designed by our independent programme committee

to fulfill the comments and feedback gathered from delegates at our conferences and seminars

throughout the year. We have selected presentations that offer new answers to obstacles and

problems we face today and case studies wherever possible.

We have had a tremendous response to the call for papers this year and we are grateful

to everyone for communicating their ideas for the 2007 conference.

The SQC conference provides solutions, state-of-the-art best practices and services to IT

professionals. The mission of this must attend conference, now in its 12th year is to:

• help make sense of trends, technologies, and strategies in the Software &

Systems Quality world today

• learn about the latest developments in outsourcing, process models and

optimization, test management and test automation, embedded systems

• learn about testing in SOA and agile project environment, and model-based

testing

Exhibitors are also preparing to show their latest offerings to you at the most

comprehensive exhibition in this field in 2007. So come along and see the latest tools and

services from the leading suppliers in software testing and quality.

Prepare yourself for three interesting days packed with lectures, workshops, and

tutorials as well as the accompanying exhibition and an evening event in Dusseldorf. Get to

know the latest trends and innovative solutions, discuss the issues that matter to your business,

swap experience and information with experts.

For further information please have a look at www.sqs-conferences.com/de

Page 19: Tester.pl - Numer 9

TESTER.PL

Strona 19 z 37

Zarządzanie problemem i incydentem

Joanna Droździel

Joanna Droździel jest absolwentem Informatyki na

Wydziale Elektrycznym Politechniki Warszawskiej. Obroniła pracę magisterską z zakresu metodyki ITIL. Od października 2006 roku prowadzi blok wykładów „Zarządzanie usługami IT” na Podyplomowym Studium Prowadzenia Projektów Informatycznych na Politechnice Waszawskiej.

Obecnie pracuje w firmie IMPAQ na stanowisku analityka do spraw zapewnienia jakości, biorąc udział w projektach dla klientów w kraju, jak równieŜ dla klientów zagranicznych. W obecnej pracy wykorzystuje głównie procesy z zakresu Service Support, zarządzania problemem oraz incydentem.

Page 20: Tester.pl - Numer 9

TESTER.PL

Strona 20 z 37

Zarządzanie problemem i incydentem

Joanna Droździel

1. Service Desk

W większości przedsiębiorstw wyodrębniony został oddział odpowiedzialny za

bezpośredni kontakt z uŜytkownikiem. Najpopularniejszą jednostką realizującą to zadanie jest

Help Desk, ale pojawiają się równieŜ inne rozwiązania takie jak: Call Center, Customers Service

Center oraz Customer Hotline. Bez względu na bardzo rozbudowane obowiązki, jednostki te

mają jedno wspólne zadanie do wykonania: jak najszybsze rozwiązanie awarii oraz incydentów

zgłaszanych przez uŜytkowników. Działania całego działu informatycznego postrzegane są przez

działalność Help Desku, poniewaŜ stanowi on pierwszy i jedyny bezpośredni kontakt dla

uŜytkownika. Z badań Forrester Research wynika, Ŝe prawie połowa z 2000 badanych

uŜytkowników jest niezadowolona z jakości świadczonych usług. Narzekają przede wszystkim na

wydłuŜający się czas rozwiązywania zgłoszonych incydentów.

MenedŜerowie działów informatycznych oraz przedstawiciele zarządu prześcigają się w

wymyślaniu coraz to ciekawszych nazw dla jednostek odpowiedzialnych za bezpośredni kontakt

z uŜytkownikiem. Chcą tym samym zamknąć epokę nie lubianych działów Help Desk. Jednak nie

w nazwie tkwi problem ale w sposobie organizacji pracy. Dlatego metodyka ITIL wychodzi z

propozycją Service Desku. Jego zadaniem jest nie tylko szybka reakcja na zgłoszenie czyli

realizacja procesu zarządzania incydentem, ale równieŜ wspieranie procesów zarządzania

problemem, zmianą, konfiguracją, wersją, dostępnością oraz procesu zarządzania poziomem

usług. Na czym polega unikalność działu Service Desk? Przede wszystkim na poprawnie

określonych zadaniach, procesach a w szczególności na pełnej odpowiedzialności, poniewaŜ od

efektywności pracy działu Service Desk zaleŜy poprawność pozostałych procesów Service

Support. Jednak by działania te przebiegały sprawnie i efektywnie, potrzeba zrozumiałych dla

wszystkich zasad. Wytyczne muszą być jasne zarówno dla pracowników działu, uŜytkowników

jak i przede wszystkim dla osób odpowiedzialnych za poprawną realizację pozostałych procesów

Service Support. Informacje uzyskane dzięki cięŜkiej i efektywnej pracy zespołu Service Desk

przekazywane są osobom odpowiedzialnym za realizacje pozostałych procesów omawianego

obszaru. Błędnie wykorzystane mogą skutkować załamaniem się całego obszaru Service

Page 21: Tester.pl - Numer 9

TESTER.PL

Strona 21 z 37

Support. Dlatego współpraca na linii Service Desk - pozostałe procesy musi być rozwinięta na

bardzo wysokim poziomie.

2. Zarządzanie incydentem

Jednym z głównych zadań pracowników Service Desk jest zagwarantowanie stałej

dostępności usługi informatycznej (Zarządzanie dostępnością). Jednak nawet w sytuacji, gdy

firma dysponuje sprzętem najnowszej generacji, trudno wykluczyć moŜliwość wystąpienia

awarii. Dlatego pracownicy tego działu powinni być gotowi na szybką reakcję.

UŜytkownicy kaŜdego dnia zgłaszają do działu Service Desk kilkadziesiąt a niekiedy i

kilkaset awarii. Proces, który jako pierwszy przychodzi z pomocą w sytuacji awaryjnej to proces

zarządzania incydentem. Na wstępie warto zapoznać się z pojęciem incydentu. OtóŜ incydent -

według metodyki ITIL - to kaŜde zdarzenie (które nie jest częścią normalnego działania)

powodujące lub mogące spowodować przerwę w dostarczeniu usługi. Powodów wystąpienia

incydentów moŜe być bardzo wiele. Zasadniczo incydenty ze względu na powód wystąpienia

podzielone zostały na dwie grupy: incydenty wynikające z awarii sprzętu (awaria drukarki,

monitora) oraz incydenty wynikające z awarii oprogramowania (brak dostępu do bazy danych,

aplikacji). Cykl Ŝycia incydentu od momentu wykrycia do momentu zamknięcia został omówiony

w podrozdziale przedstawionym poniŜej.

Proces zarządzania incydentem

Celem procesu jest jak najszybsze przywrócenie usługi oraz zminimalizowanie

niekorzystnego wpływu na działalność biznesu. Nie ma tutaj miejsca ani czasu na szukanie

przyczyn wystąpienia awarii. Na tym etapie stosuje się gotowe i wypróbowane procedury

przywracające usługę informatyczną. KaŜdy wykryty incydent powinien zostać zgłoszony

i zarejestrowany przez osobę z działu Service Desk. Metodyka ITIL nie podaje jednej konkretnej

drogi zgłoszenia incydentu, więc nie jest waŜne czy odbywa się to drogą telefoniczną, za

pomocą poczty elektronicznej czy teŜ osobiście. Istotną kwestią na tym etapie procesu jest

stworzenie takiego klimatu pracy by uŜytkownicy wykrywając awarię nie bali się zgłaszać jej

pracownikom Service Desku. WaŜne teŜ jest by nie doszło do takiej sytuacji gdy kaŜdy

uŜytkownik w obawie przed trudnymi pytaniami informatyków podejmuje próbę samodzielnej

naprawy awarii, co w rezultacie moŜe doprowadzić do jeszcze większych szkód. Dlatego by

uniknąć takich zachowań, pracownik działu Service Desk, przyjmując zgłoszenie o awarii,

powinien zadawać tylko pytania potrzebne do identyfikacji obszaru czy części infrastruktury.

UŜytkownik zgłaszając awarię nie musi znać numeru seryjnego uszkodzonego monitora czy

Page 22: Tester.pl - Numer 9

TESTER.PL

Strona 22 z 37

drukarki; wystarczy, Ŝe wskaŜe miejsce, gdzie dana część infrastruktury się znajduje. W tym

przypadku wystarczy informacja, iŜ drukarka znajduje się w dziale księgowym a wszystkimi

pozostałymi potrzebnymi informacjami powinien dysponować Service Desk. Informacje te

powinny znajdować się w Bazie Konfiguracji - CMDB, która zawiera najdrobniejsze szczegóły o

danym sprzęcie i oprogramowaniu oraz relacjach miedzy nimi. Po przyjęciu zgłoszenia ma

miejsce określenie przyczyny wystąpienia incydentu. Pełen cykl obsługi incydentu przedstawiono

na rysunku 1.

Rysunek 1. Cykl Ŝycia incydentu.

Z reguły Service Desk jest przeciąŜony pracą poniewaŜ uŜytkownicy generują setki

zgłoszeń dziennie. WaŜne jest by w gąszczu błahych awarii nie zostały przeoczone zdarzenia,

dla których kaŜda minuta zwłoki przynosi działalności biznesowej wysokie straty. Dlatego bardzo

pomocne na tym etapie pracy jest właściwe określenie priorytetu zgłoszenia przez pracownika

przyjmującego informację o awarii. Osoba przyjmująca zgłoszenie powinna posiadać

odpowiednią wiedzę techniczną niezbędną w szybkim naprawianiu awarii, ale równieŜ powinna

znać realia działania przedsiębiorstwa oraz hierarchię priorytetów określoną w ramach umowy

Page 23: Tester.pl - Numer 9

TESTER.PL

Strona 23 z 37

SLA tak, by swoją decyzją nie naraŜała firmy na niepotrzebne koszty. Po określeniu priorytetu

incydentu następuje przypisanie do odpowiedniej grupy wsparcia. Rysunek 2 przedstawia

strukturę grup wsparcia wymienionych przez autorów metodyki ITIL. JeŜeli jest to awaria dobrze

znana pracownikom Service Desku oraz dysponują oni gotową do realizacji procedurą

naprawienia, wówczas zgłoszenie jest kierowane na pierwszą linie obsługi incydentu.

Rysunek 2. Linie wsparcia procesu zarządzania incydentem.

JeŜeli natomiast ma miejsce sytuacja, gdzie pracownik Service Desk nie potrafi określić

przyczyny wystąpienia awarii, wówczas takie zgłoszenie kierowane jest do drugiej linii wsparcia

odpowiedzialnej za poszukiwanie rozwiązania. Wskazane jest aby przed przekierowaniem

zdarzenia do drugiej grupy wsparcia udało się je naprawić, nie czyniąc tym samym szkód

finansowych dla działalności biznesowej przedsiębiorstwa. Jednak przypadków, które zostały

naprawione bez poznania przyczyny ich powstania jest niewiele. Z reguły na drugą linię

wsparcia trafiają nierozwiązane problemy, których bez wnikliwego procesu zarządzania

problemem nie sposób naprawić. Dlatego wielu praktyków metodyki ITIL uwaŜa, iŜ druga i

Page 24: Tester.pl - Numer 9

TESTER.PL

Strona 24 z 37

trzecia linia wsparcia w procesie zarządzania incydentem realizuje załoŜenia procesu zarządzania

problemem (będzie o tym mowa w rozdziale następnym). Niekiedy pracownicy drugiej linii

wsparcia nie mogąc znaleźć rozwiązania problemu, korzystają z pomocy trzeciej linii wsparcia,

którą z reguły stanowią konsultanci z firm zewnętrznych.

W procesie zarządzania incydentem nie ma czasu na szukanie przyczyny wystąpienia

awarii. Na tym etapie prac w obszarze Service Support stosuje się procedury oraz rozwiązania

stanowiące Bazę Wiedzy. Zawiera ona scenariusze postępowania na wypadek konkretnych

awarii. Gdy brakuje w bazie danego rozwiązania, wówczas jest to jednoznaczne z sytuacją, iŜ

pracownicy Service Desk mają do czynienia z nowym typem awarii, dotychczas nieopisanym. W

takiej sytuacji incydent staje się problemem i trafia do procesu zarządzania problemem.

Zarówno uŜytkownicy jak i pracownicy Service Desku wiedzą, jak wiele awarii

naprawianych jest na bieŜąco. Jest jednak równieŜ grupa nierozwiązanych incydentów, dlatego

Service Desk powinien cały czas śledzić oraz monitorować przebieg realizacji incydentów. Nie

moŜe dojść do sytuacji, w której pracownicy zapomną o naprawieniu awarii, co w rezultacie

narazi przedsiębiorstwo na straty finansowe. By tego uniknąć wiele firm, których uŜytkownicy

generują setki zgłoszeń dziennie, decyduje się na zakup dodatkowego oprogramowania

pomocnego w obsłudze incydentów.

Po określeniu procedury w Bazie Wiedzy następuje etap naprawienia incydentu i w

efekcie jego zamknięcie. Według autorów metodyki ITIL Service Desk powinien rozwiązać 85%

wszystkich zgłoszeń juŜ w pierwszej linii wsparcia, bez korzystania z pomocy pozostałych grup.

Działania proaktywne procesu zarządzania incydentem

Zadaniem działu Service Desk nie jest tylko naprawianie zgłaszanych awarii ale przede

wszystkim podjęcie działań eliminujących awarie drobne, błahe. Wiadomo, Ŝe nie sposób

przeszkolić wszystkich uŜytkowników tak, by nie generowali niepotrzebnych zgłoszeń ale warto

czasami zwrócić uwagę na błędy popełniane przez uŜytkowników. Zazwyczaj uŜytkownicy z

braku wiedzy, bojąc się zapytać pracowników działu informatycznego, drogą prób i błędów

poznają tajniki nowej aplikacji bądź sprzętu. Częściej jednak poszerzają swoją wiedzę drogą

popełnianych błędów, za które strona biznesowa zmuszona jest płacić, a Service Desk

naprawiać. Dlatego warto przyjrzeć się zachowaniom uŜytkowników oraz ich starym, złym

nawykom. Jeden szybki telefon do działu Service Desk z krótkim zapytaniem uchroni organizację

przed niepotrzebnymi kosztami. Jako przykład negatywnego zachowania uŜytkownika moŜe

posłuŜyć problem drukowania na foliach. Wystarczyło aby uŜytkownik wykonał jeden telefon do

Service Desku z zapytaniem, na której drukarce moŜna w ten sposób drukować. Uchroniłoby to

firmę przed niepotrzebną wymianą drukarki. Jednak nie wszystkie awarie wynikają z

Page 25: Tester.pl - Numer 9

TESTER.PL

Strona 25 z 37

nieprofesjonalnych zachowań uŜytkowników, tego typu awarie stanowią niewielką część

wszystkich incydentów. Zdecydowana większość awarii wynika z przestarzałego sprzętu

zalegającego w wielu przedsiębiorstwach. Zasada, Ŝe im starsze tym lepsze sprawdza się w

przypadku wina. W przypadku komputerów jest odwrotnie - trzyletnia maszyna moŜe juŜ

spowodować właścicielowi niemałe kłopoty. Amerykańscy specjaliści wyliczyli, iŜ koszt obsługi

starego komputera jest od 3 do 5 razy większy niŜ zakup nowego sprzętu. Dlatego strona

biznesowa nie powinna ograniczać funduszy na zakup nowej infrastruktury informatycznej.

Zwłaszcza, Ŝe przestarzały sprzęt wymusza na uŜytkownikach bardzo groźne dla całej

infrastruktury działania. UŜytkownicy aby przyśpieszyć działanie komputerów wyłączają

programy antywirusowe, co sprowadza na przedsiębiorstwo kolejne straty finansowe

spowodowane incydentami naruszeń bezpieczeństwa informatycznego. Według raportu

magazynu CIO oraz firmy PricewaterhauseCoopers, opracowanego w roku 2003, w 17% firm

miało miejsce powyŜej 10 wypadków dotyczących naruszeń bezpieczeństwa firmy w ciągu roku,

co było równoznaczne z przestojem w pracy o całkowitym wymiarze od 4 do 8 godzin. Dlatego

zamiast wydawać pieniądze na „gaszenie poŜarów”, warto zainwestować w działania

profilaktyczne eliminujące moŜliwość wystąpienia takiego poŜaru. Dzięki takiej postawie ilość

zakłóceń w normalnej pracy zarówno dla pracowników Service Desku, jak i uŜytkowników

zostanie zmniejszona do niezbędnego minimum.

3. Zarządzanie problemem

MenedŜerowie róŜnych działów informatycznych mieli zapewne niejednokrotnie do

czynienia z sytuacją, uznawaną przez nich za sytuację bez wyjścia: co zrobić w wypadku, gdy

następuje przerwa w dostawie usługi z przyczyn nie rozpoznanych przez personel Service

Desku. Z pomocą moŜe przyjść proces zarządzania problemem. NiezaleŜnie od tego Service

Desk powinien próbować przywrócić usługę w stopniu, na jaki pozwalają realia zaistniałej awarii.

JeŜeli podjęte działania nie przyniosły oczekiwanych rezultatów naleŜy poddać problem

szczegółowej analizie. Względy formalne określają, iŜ awarie zgłoszone przez uŜytkowników

stają się problemami wówczas, gdy pierwsza linia wsparcia Service Desk nie dysponuje

gotowym rozwiązaniem bądź procedurą. W takiej sytuacji incydent staje się problemem.

Efektywne zarządzanie problemem zaleŜy w duŜym stopniu od poprawnej implementacji procesu

zarządzania incydentem.

Page 26: Tester.pl - Numer 9

TESTER.PL

Strona 26 z 37

Proces zarządzania problemem

Proces zarządzania incydentem miał na celu jak najszybsze przywrócenie usługi,

natomiast proces zarządzania problemem odpowiada za minimalizowanie niekorzystnego

wpływu na działalność biznesową incydentów i problemów.

Nie ma określonej kolejności wdraŜania procesu zarządzania problemem; najlepszym

rozwiązaniem jest wdraŜanie go równolegle z procesem zarządzania incydentem. Zazwyczaj na

proces zarządzania problemem nakłada się kilka incydentów, dlatego teŜ warto spojrzeć na to

zagadnienie z szerszej perspektywy. Pracownicy Service Desku obserwują kaŜdy indywidualny

incydent; w procesie zarządzania problemem jest czas by przejrzeć się całej grupie.

Proces zarządzania problemem składa się z dwóch podprocesów: kontroli problemu oraz

kontroli błędu. Podproces kontroli problemu ma za zadanie przekształcić nieznaną awarię w

znany błąd, natomiast podproces kontroli błędu ma za zadanie rozwiązać znane błędy

przygotowując tym samym RfC dla procesu zarządzania zmianą.

Service Desk nie posiada gotowych scenariuszy postępowania w przypadku kaŜdej

moŜliwej awarii. W procesie zarządzania problemem następuje więc identyfikacja przyczyn

występowania incydentów oraz poszukiwanie rozwiązań. Dana awaria kierowana jest do grupy

pracowników odpowiedzialnych za proces zarządzania problemem. Zespół ten pracuje w

bardziej komfortowych warunkach, niŜ te z jakimi mają do czynienia pracownicy Service Desku.

Przede wszystkim działania w procesie zarządzania problemem nie mają określonych ram

czasowych, toteŜ pośpiech jest tutaj wręcz niewskazany. NaleŜy jednak zachować w tej kwestii

zdrowy umiar. Grupa poszukująca rozwiązania dla danego problemu powinna mieć szczególnie

na uwadze względy finansowe, starając się wykluczyć sytuacje naraŜające stronę biznesową na

jakiekolwiek dodatkowe straty. Dlatego bardzo waŜne jest aby zespół składał się zarówno z

osób bardzo dobrze wyszkolonych technicznie, jak równieŜ osób posiadających konieczną

wiedzę biznesową. Z reguły problemy, które kierowane są do tej grupy, wymagają bardzo

wnikliwej analizy. WaŜne by w trakcie procesu korzystano z róŜnych technik pomocnych w

analizie problemu. Do najczęściej stosowanych naleŜą:

− Ankiety eksperckie - cechą charakterystyczną tej metody jest jej prostota. Polega

na zidentyfikowaniu właściwego eksperta w danej dziedzinie projektu

informatycznego, np.: oprogramowaniu, którego zadaniem jest przygotowanie

ankiety w oparciu o przekazane informacje. Następnie w rozmowie z szefem działu

IT konsultanci posługują się gotowymi zestawami pytań. Dane otrzymane z ankiet

dotyczą ryzyka związanego z harmonogramem, kosztami i wydajnością.

Page 27: Tester.pl - Numer 9

TESTER.PL

Strona 27 z 37

− Burza mózgów - zwana twórczą dyskusją, umoŜliwia przeprowadzenie otwartej,

dynamicznej rozmowy na tematy związane z wykrytym problemem. Pozwala spojrzeć

na problem w sposób nowatorski, co byłoby niemoŜliwe przy wykorzystaniu innych

metod. Technice tej towarzyszy sporo emocji. Praca odbywa się w zespole.

Rozwiązania które powstają w czasie spotkania od razu są utrwalane, by po

spotkaniu udostępnić je upowaŜnionym osobom w firmowym Intranecie.

− Analiza załoŜeń - zadaniem tej techniki jest przeanalizowanie wszystkich aspektów

i ich weryfikacja prowadząca do zatwierdzenia lub odrzucenia sposobu rozwiązania

problemu. Takie działanie prowadzi do powszechnego zrozumienia warunków i

własności projektu.

Proces zarządzania problemem rozpoczyna się od identyfikacji oraz wstępnej klasyfikacji

problemu. Po określeniu przyczyn wystąpienia problemu naleŜy zaproponować scenariusz

postępowania zmierzający do naprawy problemu. Bardzo waŜne aby takich scenariuszy było

kilka, tak by osoby odpowiedzialne za realizację podprocesu kontroli błędu mogły wybrać

rozwiązanie optymalne zarówno dla strony informatycznej jak i biznesowej. Na tym etapie

procesu zarządzania problemem jest wystarczająco duŜo czasu by opracować klika wariantów

naprawy problemu. Po wykryciu przyczyny wystąpienia awarii zadaniem osoby odpowiedzialnej

za podproces zarządzania problemem jest opracowanie dokumentacji, tak by stanowiła ona

podstawę do reakcji dla pracowników Service Desk. Nie chodzi tutaj o produkowanie zbędnej

dokumentacji, ale o udokumentowanie rozwiązania, z którego w przyszłości mogliby korzystać

pracownicy mający bezpośredni kontakt z uŜytkownikiem. Takie działania mają na celu

zwiększenie liczby rozwiązywanych przez Service Desk awarii juŜ na pierwszej linii wsparcia.

Podprocesy składające się na proces zarządzania problemem przedstawiono na rysunku 3.

Page 28: Tester.pl - Numer 9

TESTER.PL

Strona 28 z 37

Rysunek 3. Proces zarządzania problemem.

Gdy działania w podprocesie zarządzania problemem zakończą się sukcesem rozpoznany

problem zostaje przekazany do podprocesu zarządzania błędem, który ma na celu wdroŜenie

opracowanych procedur. Osoby odpowiedzialne za podproces kontroli błędu zmuszone są

korzystać z pomocy grupy realizującej proces zarządzania zmianą. Naprawa błędu wymaga

wprowadzenia dodatkowych zmian, które muszą być wdroŜone poprawnie. Dlatego proces

zarządzania problemem zaleŜy nie tylko od efektywności procesu zarządzania incydentem ale

równieŜ od skuteczności procesu zarządzania zmianą.

Jednak na zamknięciu błędu proces się nie kończy. Przed osobami odpowiedzialnymi za

realizację procesu zarządzania problemem stoi dodatkowe zadanie: sprawdzenie naprawionych

elementów. O ile w przypadku małych incydentów wystarczy telefon do uŜytkownika z

zapytaniem o sposób rozwiązania, to juŜ w przypadku duŜych problemów taka forma nadzoru

moŜe nie wystarczyć. Dlatego konieczny jest formalny przegląd sprawdzający załoŜone cele oraz

Page 29: Tester.pl - Numer 9

TESTER.PL

Strona 29 z 37

sposób ich realizacji. Tak przeprowadzony proces pomoŜe w usystematyzowaniu procesów

zasilających Bazę Wiedzy w rekordy o znanych błędach i sposobie ich rozwiązania.

Działania proaktywne procesu zarządzania problemem

Proces zarządzania problemem przez niektórych praktyków metodyki ITIL uwaŜany jest

za przedłuŜenie procesu zarządzania incydentem. Ma on na celu nie tylko opracowanie strategii

naprawy problemu, ale przede wszystkim podejmuje działania proaktywne, polegające na

analizie infrastruktury informatycznej oraz raportów pochodzących z aplikacji wsparcia.

Proaktywne działania zmierzające do realizacji procesu zarządzania problemem muszą mieć

poparcie w danych zgromadzonych przez proces zarządzania incydentem. JeŜeli proces

zarządzania incydentem będzie prowadzony bardzo chaotycznie, bez moŜliwości sprawdzenia

całej historii zdarzenia, wówczas proaktywny proces zarządzania problemem nie będzie przynosił

oczekiwanych rezultatów. W rzeczywistości będzie sprowadzony do koniecznego minimum, a w

ostateczności całkowicie zaniknie.

Działania proaktywne realizują załoŜenia ustalone w procesach zarządzania dostępnością oraz ciągłością (Proces zarządzania dostępnością) oraz (Proces zarządzania pojemnością).

Nie tylko zdarzenia na które brakuje scenariuszy w Bazie Wiedzy trafiają do procesu zarządzania

problemem; kieruje się tam równieŜ i te incydenty, które udało się naprawić, ale przyczyna ich

wystąpienia jest nadal nieznana. Wówczas rekord dotyczący tego incydentu zostaje zamknięty w

procesie zarządzania incydentem, a w jego miejsce zostaje otwarty rekord w procesie

zarządzania problemem. Warto nie tylko rozwiązanie kaŜdego problemu przedstawić

pracownikom Service Desku ale równieŜ opracować wstępny koszt naprawy takiego problemu

oraz strat finansowych, jakie poniósł biznes z racji wystąpienia. NaleŜy takie oszacowanie

przedstawić stronie biznesowej na jednym z licznych spotkań. Przedstawiony raport napewno

przekona stronę biznesową do inwestycji w działania proaktywne zapobiegające wystąpieniu

problemów. Tylko takie działania mogą uchronić firmę przed zwiększającą się liczbą incydentów

mających negatywny wpływ na działalność biznesową, co jest równoznaczne z poprawieniem

jakości świadczonych usług.

Page 30: Tester.pl - Numer 9

TESTER.PL

Strona 30 z 37

CMMI – Dlaczego powinno Ci ę to obchodzi ć Relacja z konferencji

Kamila Dec

Wprowadzenie 27 września 2006 w Warszawie odbyła się konferencja „CMMI – Dlaczego powinno Cię to

obchodzić” zorganizowana przez firmy: Software Mind i Kugler Maag CIE. Konferencja związana

była z zagadnieniami Capability Maturity Model Integration, przy czym prelegenci dzielili się

zarówno wiedzą teoretyczną na ten temat, jak i, co szczególnie cenne – praktycznymi

doświadczeniami, nie zawsze zakończonymi sukcesem, zdobytymi podczas usprawniania

procesów produkcji oprogramowania w swoich firmach.

Konferencję rozpoczęli: Christophe Debou z Kugler Maag CIE oraz Jay Douglass z SEI

Europe, którzy wprowadzili nas w zagadnienia związane z CMMI oraz Software Process

Improvement.

Później wystąpili przedstawiciele takich firm, jak: Deutsche Bank, Motorola, AXA Belgium,

Software Mind oraz DaimlerChrysler Financial Services opowiadając o sukcesach i poraŜkach,

czyli doświadczeniach zdobytych podczas wspinania się na kolejne poziomy dojrzałości CMMI.

Co ciekawe – wszystkie te firmy aktualnie osiągnęły drugi i/ lub starają się osiągnąć trzeci

poziom dojrzałości. Najbardziej zaawansowana jest w tym względzie Motorola, która co prawda

osiągnęła poziom piąty, jednak w modelu CMM, i równieŜ stoi przed mniej lub bardziej Ŝmudną

drogą przejścia na model CMMI. Dzięki temu, jak sądzę, prelegenci i uczestnicy konferencji mieli

okazję osiągnąć wysoki poziom zrozumienia własnych bolączek i problemów związanych

z usprawnieniem procesów produkcji oprogramowania.

Dlaczego powinno Ci ę to obchodzi ć Jak mówił w swoim wystąpieniu Jay Douglass z SEI Europe, jakość produktu w duŜym

stopniu zaleŜy od jakości procesu, w którym ten produkt powstaje. Dla jakości produktu bardzo

istotne jest więc, aby:

1. dokładnie zdefiniować ten proces,

2. mierzyć jego efektywność,

3. ciągle szukać sposobów na jego usprawnienie.

To właśnie jest podstawą Process Improvement.

Capability Maturity Model Integration stanowi kompendium dobrych praktyk, które

pozwalają osiągnąć cele biznesowe związane z kosztami przedsięwzięć, harmonogramami,

Page 31: Tester.pl - Numer 9

TESTER.PL

Strona 31 z 37

produktywnością, jakością i satysfakcją klienta. I liczby to potwierdzają. NaleŜy przy okazji

pamiętać, Ŝe CMMI mówi o tym CO robić, nie mówi jednak JAK (co pewnie stanowi podstawową

trudność w jego wdroŜeniu, choć Jay Douglass o tym nie wspominał).

Jak piszą organizatorzy konferencji w jej podsumowaniu, podobno Jay Douglass tak

skomentował temat spotkania „CMMI – Dlaczego powinno Cię to obchodzić”: Bo jeśli nie, to

Twoja firma będzie ponosić dodatkowe koszty, a konkurencja Cię wyprzedzi. Niby proste,

a jednak…

Do… czterech razy sztuka Firma AXA Belgium przeszła długą drogę zanim udało jej się osiągnąć drugi poziom

dojrzałości według modelu CMMI. Rozpoczęła ją w roku 2001, aby po czterech próbach,

w listopadzie 2005 roku, zostać ocenioną jako organizacja na drugim poziomie dojrzałości.

Z historii opowiedzianej przez prelegenta wynika ogromne samozaparcie i ciągła nauka na

własnych błędach, co w końcu doprowadziło do szczęśliwego zakończenia (choć „zakończenie”

nie jest tu dobrym sformułowaniem, choćby z racji tego, Ŝe usprawnianie procesów, jak mówili

wszyscy prelegenci, to ciągła praca, a osiąganie kolejnych poziomów dojrzałości, nie jest celem,

jest tylko środkiem). Jakie błędy popełnione zostały przy kolejnych próbach? Główne,

wymieniane przez prelegenta, to:

� brak zrozumienia i zaangaŜowania ze strony uczestników programu,

pracowników i osób decyzyjnych,

� zbyt teoretyczne podejście, wypracowane metody były trudne do

zastosowania w praktyce.

Mimo tej dość skomplikowanej historii nie da się ukryć, Ŝe ze wszystkich firm

reprezentowanych na konferencji (pomijając Motorolę, u której przejście na model CMMI pewnie

okaŜe się formalnością), wyłącznie o AXA Belgium moŜna powiedzieć z całą pewnością, Ŝe jej

poziom dojrzałości jest wyŜszy niŜ pierwszy.

Liczby na drodze do trzeciego poziomu dojrzało ści Firma DaimlerChrysler Financial Services zmierza do trzeciego poziomu dojrzałości

(z pominięciem poziomu drugiego) i planuje osiągnąć go w maju 2007 roku. Program Software

Process Improvement rozpoczęła we wrześniu 2005 roku. W ramach programu opracowywany

jest Quality Management System, który będzie miał około pięćdziesięciu uŜytkowników.

W pogram zaangaŜowanych jest łącznie 30 pracowników6 wewnętrznych i 1,5 konsultantów

6 Nicole Neckermann posługiwała się w swojej prezentacji określeniem FTE (ang. Full-time equivalent). Biorąc pod uwagę jednak rozmiar zespołu (zarówno uŜytkowników QMS – ok. 50 osób, jak i twórców QMS – 31,5 osoby) oraz czas trwania programu (2

Page 32: Tester.pl - Numer 9

TESTER.PL

Strona 32 z 37

zewnętrznych. Struktura organizacyjna programu podzielona jest na cztery zespoły robocze,

kaŜdy zespół pracuje nad czterema procesami, ma pięciu członków i jednego właściciela

procesów.

W ramach programu na dzień dzisiejszy przygotowanych zostało 14 procesów oraz 119

dokumentów. Przeprowadzono 36 szkoleń wewnętrznych, a 10 jest jeszcze planowanych. Ponad

310 godzin spędzono nad przeglądami (wraz z przygotowaniem), opracowano ponad 630 wersji

dokumentów.

Mimo podanych liczb świadczących o ogromnym zaangaŜowaniu środków w program

Software Process Improvement, Nicole Neckermann podsumowała swoją prezentację

następującymi słowami:

Quality is not for free – but it is cheaper than the alternatives!

Dostawca i klient – jak mo Ŝemy si ę od siebie uczy ć Marcin Politowicz z firmy Software Mind swoją prezentację poświęcił zagadnieniom

współpracy organizacji o róŜnym poziomie dojrzałości. Współpraca taka moŜe się nie powieść

z wielu powodów, między innymi z braku zrozumienia i cierpliwości, braku chęci znajdowania

kompromisów czy braku elastyczności i otwartości na zmiany procesów. UwaŜa jednak, Ŝe jest

to jednocześnie wielka okazja dla obu organizacji – najprostszy i najszybszy sposób na wzrost

dojrzałości obu stron. Dla organizacji mniej dojrzałej – szansa na rozwój, dla organizacji bardziej

dojrzałej – szansa sprawdzenia swoich procesów w innym otoczeniu. Nie da się ukryć, Ŝe

współpraca organizacji o wysokim poziomie dojrzałości zwiększa prawdopodobieństwo sukcesu.

Poza tym, co jest optymistycznym przesłaniem tego wystąpienia – organizacje mogą sobie

pomagać w jej wzroście. Trzeba jednak pamiętać, Ŝe poprawa dojrzałości jest procesem, który

wymaga czasu, cierpliwości i wielu kompromisów, a „Quality is not an act, it is a habit.”

(Arystoteles)

Podsumowanie Dobór prelegentów, osób, które od jakiegoś czasu zmagają się z niełatwą sztuką

usprawniania procesów produkcji oprogramowania, spowodował, Ŝe konferencja obfitowała

w dobre praktyki wyniesione z tych doświadczeń. Prelegenci podsumowywali swoje wystąpienia

analizą sukcesów i poraŜek, popełnionych błędów i zdobytej w ich następstwie nauki. Jako

kluczowe wszyscy wymieniali następujące elementy (nie są uporządkowane według waŜności):

1. Osiągnięcie określonego poziomu dojrzałości nie moŜe być celem samym w sobie. Cele

programu SPI muszą być skorelowane z celami biznesowymi organizacji.

lata) i łączną liczbę godzin spędzonych nad przygotowaniem dokumentacji (310), zakładam, Ŝe miała na myśli liczbę osób (zaangaŜowanych z róŜnym nakładem pracy), a nie liczbę FTE.

Page 33: Tester.pl - Numer 9

TESTER.PL

Strona 33 z 37

2. Konieczność zaangaŜowania w prace nad programem zarządu, osób decyzyjnych.

Przykład musi iść z góry.

3. Konieczność jak najszybszego wprowadzenia metryk, zbierania danych, które pozwolą na

kaŜdym etapie oceniać jak blisko jesteśmy celu, czy zmierzamy w jego kierunku. WaŜne

jest równieŜ uświadamianie wszystkim, Ŝe celem pomiarów nie jest atak na jednostki.

4. Kluczowym elementem jest komunikacja. Trzeba bez przerwy przekonywać

pracowników, Ŝe nowy sposób działania jest lepszy i przyniesie mierzalne rezultaty

w przyszłości. NaleŜy na bieŜąco wyjaśniać wszystkie wątpliwości.

5. Jak kaŜdy inny projekt, program SPI wymaga planowania i dyscypliny. Zespół musi

wiedzieć, Ŝe to co robi jest waŜne, a wszystkie jego działania są zaplanowane

i ograniczone ustalonymi z góry terminami.

Na pocieszenie (raczej wątpliwe) dla wszystkich, którzy podjęli walkę w celu zwiększenia

satysfakcji klienta poprzez usprawnienie swoich procesów oraz zarządzanie nimi w sposób

systematyczny i metodyczny, Marek Rydzy z krakowskiej Motoroli przytacza w swojej prezentacji

następujące słowa:

There is nothing more difficult to take in hand, more perilous to conduct, or more

uncertain in its success than to take the lead in the introduction of a new order of things.

(Nicolo Machiavelli, The Prince)

I to jest wyzwanie.

Page 34: Tester.pl - Numer 9

TESTER.PL

Strona 34 z 37

TESTWAREZ Relacja z konferencji

Lucjan Stapp TESTWAREZ to krótka, jednodniowa konferencja zorganizowana przez Infovide – Matrix

i IBM Polska przy patronacie merytorycznym naszej organizacji. Na konferencji przedstawiono 5

referatów, tworzących tzw. ścieŜkę główną oraz 3 sesje warsztatowe, tworzące ścieŜkę

warsztatową konferencji.

ŚcieŜkę główną moŜna podzielić na dwie części: w jednej Michał Bugowski z IBM Polska

przedstawił dwa referaty: Platforma IBM Rational oraz Jakość wg IBM Rational. W sumie

prezentowały one całą ofertę zez IBM Rational, wspierających proces testowy: od ideologii IBM

Rational (oczywiście RUP) poprzez narzędzie do zarządzania wymaganiami i zarządzania

procesem testowym (TestManager) do narzędzi testowych (PurifyPlus, Functional Tester,

Performance Tester). W ramach odbywających się równolegle z sesja główną warsztatów moŜna

było te narzędzia zobaczyć i przekonać się samemu, Ŝe tworzą one zintegrowane środowisko

testerskie.

Trzy pozostałe referaty przedstawili:

� Jan Sabak (Infovide-Matrix) - Podstawowe narzędzia testera

� Szymon Kuliński (Infovide Matrix) – Dynamiczny Generator Danych Testowych

� Piotr Ślęzak (SJSI) – Wymagania jako narzędzia testera

W pierwszym referacie Jan Sabak przedstawił pięć podstawowych imperatywów pracy

testera: komunikacja, planowanie testów, dane testowe, przeglądy i automatyzacja. By

zapewnić sobie współpracę słuchaczy, prezenter przygotował drobne upominki (czekoladki) za

prawidłowe zgadywanie, czego dotyczą kolejne punkty jego prezentacji.

Szymon Kuliński zaprezentował narzędzie o nazwie Dynamit – Dynamiczny Generator

Danych Testowych, zaprezentował jego moŜliwości oraz jak współpracuje on z narzędziami IBM

Rational (w tym wypadku Rational Robot).

Piotr Ślęzak w swojej prezentacji Wymagania jako narzędzia testera pokazał jak w miarę

prosty sposób, korzystając z nazrzędzi IBM Rational (głównie Requisite Pro) moŜna sprawnie

zarządzać wymaganiami, śledzić ich zmiany, budować zaleŜności pomiędzy wymaganiami

a testami i – co najwaŜniejsze – śledzić, które testy powinny być moŜe ulec zmianom, gdy

zmieniają się wymagania.

Po zakończeniu konferencji odbyło się bardzo miłe spotkanie integracyjne. Prócz duŜej

ilości jedzenia i piwa organizatorzy zapewnili takŜe dostęp do kręgielni. Spowodowało to, Ŝe ta –

nieformalna cześć konferencji przeciągnęła się do późnych godzin wieczornych.

NaleŜy mieć nadzieję, Ŝe TESTWAREZ będzie kontynuowany w roku 2007.

Page 35: Tester.pl - Numer 9

TESTER.PL

Strona 35 z 37

Spotkanie International Software Testing Qualificat ion Board w Pary Ŝu

Joanna Nowakowska SJSI

3 grudnia 2007 w ParyŜu miało miejsce kolejne spotkanie przedstawicieli organizacji

International Software Testing Qualification Board. Na spotkaniu pojawili się przedstawiciele

wielu krajów z całego świata, m.in. ze Stanów Zjednoczonych, Japonii, Chin, Nowej Zelandii,

Norwegii, Francji, Niemiec, Wielkiej Brytanii, a takŜe z Polski. Stanowisko polskie z ramienia SJSI

reprezentowali Joanna Nowakowska i Wojciech Jaszcz. Spotkanie w zastępstwie prezydenta

ISTQB – Rex’a Black’a poprowadził Erik van Veneendal.

Dyskutowano jak zwykle długo i burzliwie. Dzień rozpoczęto od raportów poszczególnych

working parties, podjęto rozmowę na temat przyszłej konstytucji organizacji ISTQB, która

wreszcie będzie podmiotem prawnym, a skończono na przyjęciu kolejnych organizacji

narodowych (Malezja, Nigeria, Czechy i Słowacja).

Page 36: Tester.pl - Numer 9

TESTER.PL

Strona 36 z 37

Krótkie podsumowanie prac oraz plany dla poszczególnych niektórych roboczych zostały

przedstawione w tabelce poniŜej.

Po spotkaniu SJSI podpisało umowę ze Szwajcarią, Norwegią i Izraelem w kwestii wymiany pytań egzaminacyjnych dla poziomu ISQTB Foundation Level.

Od lewej: Thomas Mueller (Swiss Testing Board), Wojciech Jaszcz (SJSI), Hans Schaefer

(Norwegian Testing Board), Yaron Tsubery (Izrael Testing Certification Board)

Page 37: Tester.pl - Numer 9

TESTER.PL

Strona 37 z 37

Zestawienie działalności poszczególnych working parties Foundation Level Stan na dziś to zatwierdzony sylabus dla poziomu podstawowego. Do sylabusa parę organizacji narodowych zgłosiło swoje uwagi, które poddane zostały głosowaniu. Pełna, nowa wersja sylabusa będzie gotowa pod koniec kwietnia 2007. Advanced Level (Practitioner) Powstała pierwsza wersja sylabusa Advanced Level. W grudniu 2006 odbył się pierwszy przegląd sylabusa, do kwietnia 2007 sylabus zostanie poddany przeglądowi przez członków Advanced Working Party, i zostanie rozesłany jako draft do dostawców szkoleń. Wydanie końcowej wersji sylabusa planowane jest na lipiec 2007. Expert Level Toczą się prace nad nowym poziomem certyfikacji. Do tej pory zdefiniowano kryteria wejścia i wyjścia dla robiących certyfikat, toczą się prace nad zakresem certyfikatu. Expansion Working Group Cel – obecność 36 krajów w ramach struktur ISTQB niedługo zostanie osiągnięty. ISTQB pracuje teraz nad rozpoczęciem współpracy z przedstawicielami następujących państw: Singapur, Węgry, Afryka Południowa, Meksyk, Włochy, Litwa, Pakistan, Sri Lanka, Grecja, Macedonia