Избор на процес за развој на информацискиот систем
За изведување на CRM модулот од овој информациски систем, сметам дека најпогоден би бил RUP процесот на развој на информациски системи.
RUP (Rational Unified Process) (4)
RUP е добро дефиниран и структуриран процес за развој на ИС. RUP нуди флексибилна рамка за развој на софтвер, прилагодлива на барањата на компанијата. Креиран од страна на Rational Software Corporation, која подоцна е купена од страна на IBM, заедно со RUP.
Карактеристики
Главните карактеристики на RUP:
- се води според корисничките случаи
- ориентиран кон архитектура
- е итеративен и инкрементален.
Структура:
Rational Unified Process (RUP) има динамичка структура и се состои од 4 фази:
- Inception (зачеток)
- Се формулира визијата и опсегот на проектот, се поставуваат главните побарувања и се одредуваат засегнати страни. Главната цел на оваа фаза е да се определи што треба да се прави, без одење во детали.
- Elaboration (елаборација)
- Се намалуваат ризиците врзани за технологијата, се поставува основна архитектура со најголем број од побарувањата. Целта е да се дефинира како ќе се прави софтверот.
- Construction (конструкција)
- Градење на прва оперативна верзија на производот.
- Transition (транзиција)
- Градење на конечна верзија на производот и доставување на клиентот. Оваа фаза исто така вклучува запознавање на корисниците со софтверот и осигурување дека софтверот ќе биде прифатен.
Работните текови (workflows) кои се користат во RUP се :
- Бизнис моделирање – се моделираат бизнис процесите преку кориснички случаи, се утврдува контекстот на системот
- Барања – се развиваат корисничките случаи и визијата на системот
- Анализа и дизајн – опис на архитектурата на системот, преку модели на компоненти, архитектурни модели, модели на секвенци и сл.
- Имплементација – користење на моделите на дизајн за имплементација на подсистемите и генерирање на код
- Тестирање – итеративен процес што се одвива низ сите фази, паралелно со имплементацијата и се користи за утврдување дали се исполнети барањата, функционалностите, сигурноста и перформансите на системот
- Поставување – се поставува комплетиран систем кај корисниците, истиот се инсталира, а корисниците се обучуваат
- Конфигурација и менаџирање со промени – се одржува и следи системот, се утврдуваат и се извршуваат промените во системот, доколку постојат
- Менаџирање со проектот – надгледување и управување со проектот, користејќи техники и алатки, со цел утврдување на успешноста на системот
- Околина – избор и набавка на соодветни алатки кои ќе се користат при развој на процесот
Примена на RUP во проектот
1. Inception
1.1. Итерација бр. 1
Одржување на состанок со нарачателот на софтверот и заинтересираните страни. Во овој случај тоа би биле претставници од раководството на фирмата одговорна за патиштата во земјата и барем еден вработен кој ќе го користи системот. На овој состанок се изнесуваат барањата. Се дефинираат главни побарувања:
- Можност за пријавување на проблем на пат преку повеќе различни канали, вклучувајќи чат во живо, социјални медиуми, СМС пораки и т.н.
- Можност за маркетинг на услугите преку различни канали.
- Отвореност на системот за управување на односи со клиенти кон останатиот дел од информацискиот систем.
Овие барања потоа се анализирани од софтверската компанија и се составува првична листа на кориснички барања. Сите забелешки од состанокот, заедно со барањата се составуваат во визија за системот.
1.2. Итерација бр.2
Се креира визија за системот, опишувајќи во детали како ќе функционира истиот, кои се заинтересирани страни, кои се ограничувањата во системот и слично (детализирана верзија наосновната визија за целокупниот информациски систем). Визијата се доставува до фирмата и откако се анализира повторно се закажува состанок. На состанокот се изнесуваат забелешките за визијата и дефинираните кориснички барања. После состанокот корисничките барања и визијата се модифицираат врз база на коментарите добиени на состанокот. Се дефинира конечна визија и се детализираат корисничките барања. На крајот од оваа итерација тимот се спрема за фазата на елаборација, со изготвување на план за елаборација.
2. Elaboration
2.1. Итерација бр.1
Поставување на прелиминарна архитектура на системот. На состанок со нарачателот се дообјаснуваат корисничките барања и се дефинира use case модел. Со користење на техниките за изработка на ИС се дефинира прелиминарна верзија на системот, која опишува кои се главните сценарија кои што ќе бидат потребни за реализирање на системот и за негова прифатливост.
2.2. Итерација бр.2
Се анализираат корисничките случаи и се детализираат дијаграмите на архитектура. Се дефинира начинот на комуникација на овој потсистем со останатиот дел од информацискиот систем. Од ова се изведува прв прототип на архитектурата.
2.3 Итерација бр.3
Нов состанок со клиентите. Овде се дискутира првобитниот прототип, се анализираат недостатоците кои може да се појават во него, се собираат повеќе детали и се подобрува архитектурниот прототип и неговите дијаграми. На крајот се доставува конечен архитектурен прототип.
3. Construction
3.1. Итерација бр.1
Дизајн и имплементација на релевантините use case-ови за овој систем. Се започнува од имплементација на најосновните барања, како што е пријавување на проблем преку одреден канал на комуникација. Се води сметка за отвореноста на овој потсистем кон целокупниот систем, така што постои комуникација помеѓу различни аспекти на информацискиот систем. Се интегрираат use casе-овите еден по еден. На крајот од оваа итерација се очекува да бидат имплементирани корисничките случаи за пријавување на проблем барем преку еден канал и давање на повратна информација на корисникот. Со имплементација на овие случаи на употреба се имплементираат и пропратните use case-ови, како што се проследување на пријавените проблеми кон одговорниот модул од информацискиот систем. На крајот од оваа итерација се генерира првичен прототип и се презентира на нарачателот.
3.2. Итерација бр.2
Интеграција на останатите use case-ови, вклучувајќи:
- пријавување на проблем на разни начини, преку социјални мрежи, СМС пораки и слично;
- можност за давање повратна информација кон корисниците на системот во врска со пријавените проблеми
- можност за маркетинг на системот.
Тестирање на сите use cases. Поправање на забележани грешки. Довшување на останатите use case-ови и правење промени кои ги побарал клиентот после првата итерација. Отворање на канали за комуникација спрема другите делови од информацискиот систем.
На крај од итерацијата се доставува конечен софтвер, придружен со документација за користење и се прави план за транзиција.
4. Transition
Итерација бр.1
Во оваа фаза се инсталира системот во околината во која се користи. Се објаснува на оние кои што ќе го користат и се охрабруваат да го користат системот. Ова се прави преку континуирана обука. Откако корисниците го прифатат системот, можеме да кажеме дека фазата на транзиција е завршена.
RUP е строго дефиниран процес на развој на информациски систем кој доследно ги применува дефинираните методи. Сметам дека оваа методологија е добра за проект од овој тип, бидејќи барањата се доро дефинирани и точно знаеме што треба да се направи. Ако во фазата на зачеток добро ги дефинираме корисничките сценарија и потоа добро ги доработиме во фазата на елаборација, проектот ќе биде успешно завршен и клиентот ќе биде задоволен. Има мал простор за премислување и ако истото се случи може да се зголеми предвиденото време и буџет.