SŁAWOMIR NOWAK *, DARIUSZ STEFANIUK * REKONFIGURACJA PROCESÓW ZWIĄZANYCH Z REKRUTACJĄ NA STUDIA NA POLITECHNICE WARSZAWSKIEJ RECONFIGURATION OF ENROLLMENT PROCESSES AT THE WARSAW INSTITUTE OF TECHNOLOGY STRESZCZENIE. Referat poświęcony jest omówieniu rekonfiguracji procesów dla potrzeb implementacji ich obsługi w systemie informatycznym, w związku z koniecznością honorowania wyników uzyskanych na świadectwach maturalnych. Przedstawiono sposób projektowania oraz analizy procesów oraz związane z nimi korzyści, jakie niesie modelowanie procesów we wstępnej fazie prac nad modernizacją systemu. ABSTRACT. The article describes how to implement reconfiguration processes in the informatics system in order to acknowledge the results of the school-leaving certificate. We show how to design and analyse the procedure and its efficiency in the modelling processes during the first phase of works on modernising the system. 1. Wstęp Politechnika Warszawska posiada bardzo rozbudowany system informatyczny wykonany w technologii Oracle, który obsługuje wiele procesów związanych z rekrutacją na studia. System obsługiwany jest zarówno za pomocą aplikacji zainstalowanych na lokalnych komputerach jak również przeglądarki internetowej, dzięki czemu kandydat ma możliwość dokonania niezbędnych formalności związanych z ubieganiem się na studia z dogodnego dla niego miejsca bez konieczności przyjazdu na uczelnie. Obowiązek honorowania wyników uzyskanych na maturze (tzw. nowa matura ) wprowadził konieczność modernizacji niektórych procesów rekrutacyjnych. 2. Etapy realizacji prac projektowych Przed przystąpieniem do zmian algorytmów obsługujących procesy rekrutacji w systemie informatycznym przystąpiono do modelowania nowych procesów zmieniających zasady naboru na studia. Wprowadzenie konieczności honorowania nowej matury zmodernizowało w szczególności proces obliczania liczby punktów kandydata, który jest uwzględniony podczas klasyfikacji oraz proces decyzyjny algorytmu przyjęć. Wykorzysta- * Centralny Ośrodek Informatyki Politechniki Warszawskiej 175
ne zostało narzędzie Process 2003 for Six Sigma, które umożliwia modelowanie procesów jak również ich późniejszą symulacje. Po weryfikacji poprawności procesów przystąpiono do prac związanych z modyfikacją algorytmów w systemie rekrutacyjnym pracującym na platformie Oracle. W końcowej fazie realizacji projektu wykonano szereg testów potwierdzających zgodność zaimplementowanych algorytmów z zaprojektowanymi procesami. 3. Proces obliczania liczby punktów kandydata Proces obliczania sumy punktów jest skomplikowany, ponieważ każdy kandydat ma prawo do zdawania do dwóch przedmiotów. Zazwyczaj są to matematyka i fizyka, zamiast fizyki niekiedy występuje możliwość zdawania chemii lub biologii w zależności od wybranego wydziału oraz kierunku. Do tego kandydat może dostarczyć świadectwo maturalne. W tym przypadku liczba punktów przeliczana jest wg następującej zasady: 30% oceny uzyskanej na maturze z poziomu podstawowego oraz 70% oceny uzyskanej na maturze z poziomu rozszerzonego. Uzyskany wynik jest odpowiednio skalowany, przy czym na Politechnice Warszawskiej występuje skala od 0 do 100 punktów. Jeśli kandydat zdecyduje się na zdawanie egzaminu z wybranego przedmiotu nie honoruje się jego wyniku uzyskanego na maturze. Dodatkowo kandydat ma prawo do zdawania maksymalnie na trzy kierunki spośród wszystkich dostępnych na uczelni wydziałów wg określonych przez niego priorytetów (opcja A, B oraz C), gdzie z kolei mogą obowiązywać egzaminy z różnych przedmiotów. Może wystąpić sytuacja, w której kandydat będzie zdawał na uczelni egzaminy z matematyki oraz fizyki i na pierwszym z wybranych kierunków obowiązują właśnie takie przedmioty, wówczas należy obliczyć sumę uzyskanych przez niego punktów. Może również zdarzyć się, że na drugim kierunku, na jaki ubiega się kandydat, możliwe jest zdawanie również chemii, wówczas należy sprawdzić czy zdawał on na maturze chemię i zweryfikować czy nie bardziej korzystnie jest (z punktu widzenia kandydata) przy obliczaniu wyniku wzięcie pod uwagę wyniku uzyskanego na egzaminie z matematyki wraz z punktami przeliczonymi z oceny uzyskanej na maturze z chemii. Dodatkowo można dojść do sytuacji, że na trzecim z wybranych kierunków możliwe jest zdawanie nie tylko chemii, ale również biologii. Wówczas należy sprawdzić wynik uzyskany na maturze zarówno z chemii jak i z biologii, a następnie postępować zgodnie z zasadą, która mówi, że w procesie oceny należy wziąć pod uwagę najbardziej korzystny dla kandydata przypadek. Opisany proces wyliczania sumy punktów kandydata jest prowadzony dla każdego z wybranych przez niego kierunków. W fazie analizy procesu przeprowadzono szereg symulacji pozwalających na analizę czasu wykonania procesu. Pozwoliło to na optymalizację działania procesu, aż do osiągnięcia satysfakcjonującego wyniku. Obliczenie wyniku dla kolejnych opcji odbywa się w sposób analogiczny. Funkcjonowanie algorytmu zostanie omówione dla jednej z opcji. Przedstawionemu na rysunkach 1 oraz 2 algorytmowi nie podlegają jedynie laureaci olimpiad przedmiotowych, którzy to otrzymują maksymalną liczbę punktów z przedmiotu, w którym uzyskali nagrodę. 176
Rys. 1. Algorytmu obliczający wynik punktowy kandydata cz. 1. Narzędzie Process 2003 for Six Sigma pozwala na przeprowadzenie bardzo zaawansowanych symulacji, co jest bardzo przydatne podczas oceny wydajności projektowanego algorytmu. Możliwe jest określenie wielu parametrów m.in. czasu, jaki zajmuje każda z operacji czy też statystycznej odpowiedzi na pytania zawarte w elementach decyzyjnych. Do celów testowych założono, że proces wykona się 3000 razy, przy czym średni czas wykonania całego zadania dla jednego kandydata obliczono jako 0.13 sekundy. Liczba wykonanych operacji przez pojedynczy element procesu oraz średni czas wykonania zadania przez każdy z tych elementów przedstawiony jest w tabeli 1. 177
Rys. 2. Algorytm obliczający wynik punktowy kandydata cz. 2. 178
Tabela 1 Zestawienie elementów biorących udział w procesie, ilości wystąpień danego elementu oraz średniego czasu wykonania zadania. Nazwa elementu Liczba operacji Średni czas wykonania zadania [s] Jakie przedmioty są dostępne na egzaminie? 3000 <0,01 Sprawdzenie na jaki kierunek ubiega się kandydat 3000 <0,01 Czy kandydat zdawał fizykę? 2100 <0,01 Sprawdzenie czy kandydat zdawał fizykę 2100 0,02 Czy kandydat zdawał matematykę? 2100 0,11 Zsumowanie ilości punktów z matematyki oraz fizyki i zapamiętanie tej wartości 2100 0,02 Zapamiętanie ilości punktów z matury 1050 0,02 Zapamiętanie ilości punktów z egzaminu 1050 0,02 Zapamiętanie ilości punktów z matury 1050 0,02 Zapamiętanie ilości punktów z egzaminu 1050 0,02 Czy kandydat zdawał fizykę? 600 <0,01 Czy suma punktów mat+fiz > mat+chem 600 <0,01 Obliczenie sumy punktów z matematyki i chemii 600 0,02 Obliczenie sumy punktów z matematyki i fizyki 600 0,02 Sprawdzenie czy kandydat zdawał chemie 600 0,02 Czy kandydat zdawał chemię? 600 <0,01 Czy kandydat zdawał matematykę? 600 <0,01 Sprawdzenie czy kandydat zdawał fizykę 600 0,02 Zapamiętanie ilości punktów z matury 300 0,02 Zapamiętanie ilości punktów z egzaminu 300 0,02 Zapamiętanie ilości punktów z matury 300 0,02 Zapamiętanie ilości punktów z egzaminu 300 0,02 Zapamiętanie ilości punktów z egzaminu 300 0,02 Zapamiętanie ilości punktów z matury 300 0,02 179
4. Proces decyzyjny w algorytmie przyjęć. Wprowadzenie nowej matury wpłynęło również na modyfikację procesu decyzyjnego. Na Politechnice Warszawskiej decyzje o przyjęciach podejmowane są dwuetapowo. W pierwszym etapie rozpatruje się wyniki przyjęć kandydatów wg pierwszej wybranej opcji. Na wstępie następuje sprawdzenie wyników punktowych, jakie otrzymali kandydaci, następnie poczynając od najwyższych sprawdza się czy rozpatrywani kandydaci spełniają warunki przyjęcia tzn. czy ich wynik punktowy jest wyższy bądź równy od założonego oraz czy są dostępne wolne miejsca na kierunku. Jeżeli obydwa warunki są spełnione wówczas może nastąpić zakwalifikowanie kandydata na studia. W przeciwnym wypadku decyzja o przyjęciu kandydata nie jest podejmowana. Na rysunku 3 przedstawiony jest algorytm przyjęć dla opcji o najwyższym priorytecie (opcja A). Rys. 3. Algorytm przyjęć dla opcji o najwyższym priorytecie (opcja A). W kolejnym kroku zostaje uruchomiony proces przyjęć na studia wg pozostałych opcji zdawania (opcja B oraz C). 180
Rys. 4. Algorytm przyjęć dla opcji B i C. 181
Przyjęcia wg pozostałych opcji (B oraz C) funkcjonują zgodnie z diagramem przedstawionym na rysunku 4. Ze względu na fakt, że progi punktacji oraz liczbę miejsc na wybranych kierunkach można regulować również na etapie przyjęć z pozostałych opcji, w procesie tym na wstępie występuje element przyjęć z pierwszej opcji (opcja A) tak, aby na wszelki wypadek nie dopuścić do zaistnienia błędu w wyniku zmiany progów punktacji. Algorytm działa w taki sposób, że analizując poszczególne poziomy punktacji sprawdzana jest możliwość przyjęcia kandydatów o liczbie punktów zgodnej z analizowanym poziomem. Jeżeli na zadanym kierunku próg punktacji jest niższy od analizowanego oraz są wolne miejsca, wówczas możliwe jest przyjęcie kandydatów, w przeciwnym przypadku sprawdzana jest możliwość przyjęcia na kierunek wybrany o niższym priorytecie, a w przypadku niepowodzenia sprawdzana jest możliwość przyjęcia na kierunek o najniższym priorytecie. Gdy każda z prób zakończy się niepowodzeniem, wówczas podejmowana jest decyzja o nie przyjęciu kandydata. Wprowadzenie nowej matury znacznie skomplikowało proces decyzyjny. Dopuszczalna jest sytuacja, gdzie podczas rozpatrywania wybranej liczby punktów kandydat zostanie zakwalifikowany np. z opcji C, natomiast mógłby on zostać zakwalifikowany z opcji B lub nawet A, przy niższym kryterium punktowym, dlatego też konieczne było wprowadzenie algorytmu korygującego. Po przedstawionym powyżej procesie przyjęć zostaje uruchomiony algorytm, który dla wszystkich zakwalifikowanych kandydatów przyjętych z innej opcji niż A sprawdza czy kandydat został przyjęty z opcji C. Jeśli tak się stało wówczas następuje sprawdzenie czy kandydat nie mógł zostać zakwalifikowany z opcji B. Jeśli jego wyniki na to pozwalały, wówczas następuje zmiana decyzji przyjęcia. Następnie sprawdzana jest również możliwość przyjęcia z opcji A. Jeśli taka możliwość istnieje wówczas decyzja o przyjęciu zostaje zmieniona na przyjęcie z opcji A. Możliwa jest również sytuacja, gdzie kandydat nie będzie mógł zostać zakwalifikowany z opcji B, lecz będzie mógł zostać zakwalifikowany z opcji A. Opisany algorytm korekcyjny jest przedstawiony na rysunku 5. 182
Rys. 5. Algorytm korekcyjny. 183
5. Problemy powstałe w trakcie prowadzenia prac. Problemy pojawiły się dopiero w trakcie implementacji przedstawionych procesów. System rekrutacyjny wymagał dużej ingerencji programistycznej, bowiem okazało się, że w dotychczas funkcjonującym systemie brakuje danych do obsługi opisanych procesów. Duża część pracy została wykonana podczas modernizacji samego systemu. Polegała ona głównie na uzupełnieniu systemu o brakujące elementy pozwalające za przechowywanie nowych informacji oraz na oprogramowaniu obsługi funkcji operujących na tychże danych. 6. Podsumowanie Przedstawione podejście do wykonywania prac przyniosło oczekiwane rezultaty. Zidentyfikowanie procesów na etapie budowy koncepcji pozwoliło na sprawdzenie ich kompletności oraz dało możliwość przetestowania i sprawdzenia czy funkcjonują one w oczekiwany sposób. Bardzo dużą zaletą wykorzystanego do opisu procesów narzędzia jest możliwość bardzo szczegółowego analizowania procesów łącznie z szacowaniem czasu ich wykonania. Analizowanie procesów pozwoliło na ich optymalizację na etapie projektowania. Takie podejście pozwoliło na uniknięcie sytuacji, w której zaimplementowany proces działa niepoprawnie lub nieefektywnie i konieczne staje się modyfikowanie zaimplementowanego kodu. Inwestycja w czas poświęcony na modelowanie procesów wielokrotnie zwraca się podczas implementacji programu. Nie ma potrzeby wykonywania analizy działania programu, a jedynie należy skoncentrować się na tym, w jaki sposób obsłużyć opisane procesy. Przedstawione powyżej podejście pozwala na skoncentrowanie się na wykonywanej pracy, tzn. podczas modelowania procesów nie trzeba skupiać uwagi, w jaki sposób program będzie zaimplementowany, dzięki czemu możliwe jest skoncentrowanie na sposobie funkcjonowania procesu. Podobnie podczas implementacji kodu nie trzeba skupiać uwagi, w jaki sposób dany proces najefektywniej obsłużyć. Zaprezentowane podejście minimalizuje ryzyko niepowodzenia projektu oraz umożliwia realizacje prac informatycznych na wysokim poziomie merytorycznym. 7. Literatura Davis R., 2001: Business Process Modeling with ARIS. Practical Guide, SPRINGER Durlik J., 1998: Restrukturyzacja procesów gospodarczych, PLACET Gabryelczyl R., Lasek M. 1998: Modelowanie procesów gospodarczych za pomocą ARIS- TOOLSET, Katedra Cybernetyki i Badań Operacyjnych Wydziału Nauk Ekonomicznych Uniwersytetu Warszawskiego, Warszawa Green S. Red, Beeson J. Red 2003: Process Modelling: Perspectives, Problems, and Standarisation in the Support of Organisational Processes, Elsevier Science, London Lasel M., Pęczkowski M. Otmianowski B. 2002: Analiza procesów biznesowych z wykorzystaniem programów: igrafix Process 2000 for Six Sigma / igrafix FlowCharter 2000 Professional PL, Wyższa Szkoła Informatyki Stosowanej i Zarządzania, Warszawa Pande P.S., Neuman R.P., Cavanagh R.R., 2003: Six Sigma, K.E. LIBER SC 184