Page 1

www.process-conference.org

Preslikava poslovnih procesov v funkcionalnosti informacijskega sistema

Uroť Katić IPMIT d.o.o.


www.process-conference.org

Ali razvoj aplikacij s strani uporabnikov postaja realnost?

Programiranje Programiranje

Generiranje Generiranjekode kode

Sistemsko Sistemskomodeliranje modeliranje Poslovno Poslovnomodeliranje modeliranje

Abstrakcija Abstrakcijaposlovnih poslovnih pravil pravilizizprocesov procesov

Izvrševanje Izvrševanje poslovnih poslovnihprocesov procesov


www.process-conference.org

Kaj je (še vedno) aktualno • BPM orodja, ki omogočajo pretvorbo procesnih modelov v računalniku berljiv jezik – BPEL. • SOA platforme, ki s pomočjo BPEL zapisov procesov uravnavajo tok storitev. • Koncepti in rešitve za pretvorbo modelov v programsko kodo (npr. MDA). * BPM - Business process management • UML * BPEL - Business process execution language • ... * SOA – Service oriented architecture

* MDA – Model driven architecture * UML – Unified modeling language


www.process-conference.org

Vsebina predstavitve • 2 pristopa k razvoju aplikacij na osnovi procesov: – V 5 korakih od poslovnega procesa do programske kode z UML 2.0/RUP – Izvrševanje poslovnih procesov z BPMN in BPEL


www.process-conference.org

V 5 korakih od poslovnega procesa do programske kode z UML 2.0/RUP

• Diagram aktivnosti Î modeli poslovnih procesov • Diagram primerov uporabe Î prikaz primerov uporabe (funkcionalnosti) informacijskega sistema • Diagram zaporedja Î podrobni prikaz izvajanja enega primera uporabe • Diagram komunikacij Î pregled vseh komunikacij med objekti • Razredni diagramÎ statičen pogled na razrede sistema in njihove lastnosti


www.process-conference.org

1. Korak: Poslovne procese preoblikujemo v primere uporabe Poslovni procesi Zac etek

Primeri uporabe

Aktiv nost 1

Primer uporabe

Uporabnik

Odlocitev?

DA

Aktiv nost 2

NE

Primer uporabe 2

Administrator

Zakljucek

N

...

M

Tiste aktivnosti, ki jih Ĺželimo podpreti v IS, na nov naÄ?in uskupinimo v primerih uporabe.


www.process-conference.org

2. Korak: Primere uporabe opišemo z diagrami zaporedja Diagram zaporedja Vmesnik

Poslovna entiteta

Uporabnik

Primeri uporabe VnesiPoizvedbo()

PosredujPoizvedbo() Primer uporabe

Poišč iRezultat() VrniRezultat()

Uporabnik

PosredujRezultat()

Primer uporabe 2

PrikažiRezultat()

Administrator

1*

...

1*

Diagram zaporedja prikazuje “proces” delovanja enega primera uporabe.


www.process-conference.org

3.korak: Diagrame zaporedja pretvorimo v komunikacijske diagrame Diagram komunikacij

Diagram zaporedja 1.5: PrikažiRezultat()

1: VnesiPoizvedbo() Vmesnik

Vmesnik

Poslovna entiteta

1.3: PosredujRezultat() Uporabnik

Uporabnik VnesiPoizvedbo()

1.1: PosredujPoizvedbo()

1.2: VrniRezultat()

PosredujPoizvedbo() PoiščiRezultat()

Poslov na entiteta

VrniRezultat() PosredujRezultat()

1.4: PoiščiRezultat()

PrikažiRezultat()

1

...

1

Diagram zaporedja je v večini orodij za modeliranje možno avtomatično preoblikovati v komunikacijski diagram.


www.process-conference.org

4.korak: Iz komunikacijskih diagramov izpeljemo razredni diagram Razredni diagram

Diagram komunikacij

«boundary» Vmesnik + +

1.5: PrikažiRezultat() 1: VnesiPoizvedbo()

«control» Poizv edba

PrikažiRezul tat() : void VnesiPoizvedbo() : void 1

1 + + +

Vmesnik 1.3: PosredujRezultat()

IdentificirajEn titeto() : void PosredujPoizvedbo() : void PosredujRezult at()() : void 0. .1

Uporabnik

1.1: PosredujPoizvedbo()

1.2: VrniRezultat()

0. .1 «entity» Poslov na entiteta

Poslov na entiteta

+ +

1.4: Poišč iRezultat()

N

...

Poišč iRezult at() : void VrniRezultat() : void

1*

Komunikacijski diagram nam pomaga identificirati razrede in njihove operacije, samodejno pa jih ne more oblikovati. Iz več komunikacijskih diagramov izpeljemo enoten razredni diagram.


www.process-conference.org

5.Korak: Generiranje programske kode Programska koda

Razredni diagram «boundary» Vmesnik + +

PrikažiRezul tat() : void VnesiPoizvedbo() : void 1

«control» Poizv edba 1 + + +

IdentificirajEn titeto() : void PosredujPoizvedbo() : void PosredujRezult at()() : void 0. .1

public class Poslovna entiteta { public Poslovna entiteta(){ } public void finalize() throws Throwable { } public void PoiščiRezultat(){ }

0. .1 «entity» Poslov na entiteta + +

Poišč iRezult at() : void VrniRezultat() : void

public void VrniRezultat(){ } }

Pretvorbo razrednega diagrama v programsko kodo avtomatično izvede orodje za modeliranje. Predpogoj je zadostna raven podrobnosti in ustrezno opisani in oblikovani modeli. Generirana je le izhodiščna koda, ki jo je potrebno dovršiti.


www.process-conference.org

Izvrševanje poslovnih procesov z BPMN in BPEL

• BPMN (Business process modeling notation) je vedno bolj dominanten standard za modeliranje procesov • BPEL je postal de-facto standard za opisovanje modelov poslovnih procesov v računalniku berljivem jeziku na osnovi XML • BPEL procesi so namenjeni orkestraciji (spletnih) storitev in so zaradi tega usmerjeni v tehnično delovanje aplikacije.


www.process-conference.org

Pretvorba modela procesa v izvršno kodo procesa BPMN diagram Prejem

Podrobnosti diagrama

Kontrola

+

Atributi procesa in aktivnosti + Sprožilec + Način izvedbe +...

Potrditev

WSDL spletne storitve

BPEL koda <prejem createInstance=“yes” operation=“operation1” name=“Prejem” wpc:displayName=“Prejem” portType=“wsdl:ime” variable=“input” wpc:id=“1”> <source linkName=“link1” /> </prejem>

Odziv

BPM/BPEL orodja omogočajo generiranje BPEL kode na podlagi ustrezno opisanega BPMN modela. Podrobnosti elementov so ključne za uspešno generiranje BPEL kode.


www.process-conference.org

Primerjava predstavljenih pristopov • Prikazana pristopa predstavljata dve različni ravni razvoja neke aplikacije in dve različni ravni pretvorbe procesov v funkcionalnosti. • BPEL omogoča orkestracijo storitev, ki jih je potrebno posebej razviti. • Tudi pri razvoju storitev lahko izhajamo iz procesov in uporabimo prvi prikazan pristop.


www.process-conference.org

Ocena primernosti - UML/RUP + Pristop na osnovi UML/RUP je preizkušen in primeren za razvojne projekte, ki zahtevajo visoko transparentnost in sledljivost procesa razvoja + Pristop UML/RUP nam omogoča celovito, sistematično in učinkovito pretvorbo procesnih zahtev v funkcionalnosti sistema - Zaradi velikega obsega modeliranja in preverjanja skladnosti lahko pri enostavnejših projektih nepotrebno podaljša razvojni cikel


www.process-conference.org

Ocena primernosti – BPMN/BPEL + Ob kvalitetni implementaciji omogoča izjemno fleksibilnost delovanja aplikacije. + Hiter razvoj platform, ki podpirajo na BPEL temelječe aplikacije. - Prilagajanje delovanja aplikacije s posegom v BPMN proces je lahko zahtevno. - Visoka zahtevnost in cena upeljave je sprejemljiva le za velike uporabnike.


www.process-conference.org

Sklep

UporabniĹĄki razvoj aplikacij poÄ?asi napreduje ...


www.process-conference.org

Sklep

... vseeno pa bomo ĹĄe nekaj Ä?asa potrebovali programerje.


www.process-conference.org

Hvala za pozornost!

uros.katic@ipmit.si http://www.ipmit.si

Preslikava poslovnih procesov v funkcionalnosti informacijskega sistema  

Preslikava poslovnih procesov v funkcionalnosti informacijskega sistema

Read more
Read more
Similar to
Popular now
Just for you