ABONAMENTE VIDEO REDACȚIA
RO
EN
NOU
Numărul 150
Numărul 149 Numărul 148 Numărul 147 Numărul 146 Numărul 145 Numărul 144 Numărul 143 Numărul 142 Numărul 141 Numărul 140 Numărul 139 Numărul 138 Numărul 137 Numărul 136 Numărul 135 Numărul 134 Numărul 133 Numărul 132 Numărul 131 Numărul 130 Numărul 129 Numărul 128 Numărul 127 Numărul 126 Numărul 125 Numărul 124 Numărul 123 Numărul 122 Numărul 121 Numărul 120 Numărul 119 Numărul 118 Numărul 117 Numărul 116 Numărul 115 Numărul 114 Numărul 113 Numărul 112 Numărul 111 Numărul 110 Numărul 109 Numărul 108 Numărul 107 Numărul 106 Numărul 105 Numărul 104 Numărul 103 Numărul 102 Numărul 101 Numărul 100 Numărul 99 Numărul 98 Numărul 97 Numărul 96 Numărul 95 Numărul 94 Numărul 93 Numărul 92 Numărul 91 Numărul 90 Numărul 89 Numărul 88 Numărul 87 Numărul 86 Numărul 85 Numărul 84 Numărul 83 Numărul 82 Numărul 81 Numărul 80 Numărul 79 Numărul 78 Numărul 77 Numărul 76 Numărul 75 Numărul 74 Numărul 73 Numărul 72 Numărul 71 Numărul 70 Numărul 69 Numărul 68 Numărul 67 Numărul 66 Numărul 65 Numărul 64 Numărul 63 Numărul 62 Numărul 61 Numărul 60 Numărul 59 Numărul 58 Numărul 57 Numărul 56 Numărul 55 Numărul 54 Numărul 53 Numărul 52 Numărul 51 Numărul 50 Numărul 49 Numărul 48 Numărul 47 Numărul 46 Numărul 45 Numărul 44 Numărul 43 Numărul 42 Numărul 41 Numărul 40 Numărul 39 Numărul 38 Numărul 37 Numărul 36 Numărul 35 Numărul 34 Numărul 33 Numărul 32 Numărul 31 Numărul 30 Numărul 29 Numărul 28 Numărul 27 Numărul 26 Numărul 25 Numărul 24 Numărul 23 Numărul 22 Numărul 21 Numărul 20 Numărul 19 Numărul 18 Numărul 17 Numărul 16 Numărul 15 Numărul 14 Numărul 13 Numărul 12 Numărul 11 Numărul 10 Numărul 9 Numărul 8 Numărul 7 Numărul 6 Numărul 5 Numărul 4 Numărul 3 Numărul 2 Numărul 1
×
▼ LISTĂ EDIȚII ▼
Numărul 69
Abonament PDF

BRFplus – o privire de ansamblu a Business Rule Management System SAP

Mihai Dorian Popescu
SAP Developer @ Siemens



PROGRAMARE

Piețele aflate în evoluție continuă au plasat toate afacerile pe traiectoria "Adaptează-te sau mori" ("Adapt or die"). Cinică, această afirmație este cum nu se poate mai departe de adevăr. Cheia succesului nu este o rețetă valabilă pentru toți, dar acest lucru nu presupune că nu există metode care să faciliteze atingerea succesului. Orice afacere prosperă are în centru un bun proces decizional care ajută managementul să aibă o imagine clară asupra proceselor sale și să ia decizii mai bune. În acest sens, în multe cazuri clienții simt nevoia ca sistemul lor informațional să le permită să își configureze procesele și fluxul operațional din cadrul afacerii. Pentru a servi acestui scop, SAP a introdus soluția unui sistem BRFplus - Business Rule Management pentru aplicațiile ABAP, care le permite utilizatorilor săi să creeze, să gestioneze și să implementeze reguli de complexitate variată.

Ce este BRFplus - Business Rule Management (Gestionarea bazată pe reguli a afacerilor) pentru aplicații ABAP

BRFplus nu este doar un produs, ci un nou Business Rule Management System (BRMS) oferit de SAP clienților săi. Principiul de bază este că orice afacere are propriile sale reguli, cu nivele diferite de complexitate, pe baza cărora se iau decizii. BRFplus este un BRMS unde aceste reguli pot fi gestionate și integrate cu sistemele SAP ale clienților. Prima variantă a sistemului a fost prezentată sub formă pilot în 2008 prin intermediul Enhancement Package 1 al SAP NetWeaver 7.0, ca mai apoi să fie disponibil tuturor clienților prin intermediul Enhancement Package 2 of SAP NetWeaver 7.0.

Diagrama 1. Ansamblul BRFplus

Un BRMS este un sistem software ce gestionează regulile unei afaceri permițând utilizatorilor să definească, să execute, să monitorizeze și să facă mentenanța logicii decizionale a diferitelor reguli de business, fiind un instrument cheie al procesului de luare de decizii de către management. Fiind un sistem software, acesta este format din:

BRFplus se bazează pe aceleași principii și se poate integra cu aplicații de tip ABAP. Conține Web Dynpro ABAP Workbench unde utilizatorul poate crea, edita sau gestiona regulile. Printre funcționalitățile sale de top amintim faptul că rulează în browser, deci nu are nevoie de instalare pe partea client și integrează datele existente definite în ABAP Dictionary. De asemenea, oferă posibilitatea organizării obiectelor create în cataloage diferite sau permite personalizarea componentei Workbench conform profilului de utilizator. Mai mult, un real avantaj pentru acest BRMS este că oferă posibilitatea simulării fluxului de reguli definite și, deci, a testării lor pentru a verifica dacă regulile respectă cerințele inițiale, înainte de lansarea în producție.

BRFplus Engine oferă un obiect API ABAP ce permite utilizatorilor să integreze regulile create în aplicațiile ABAP. Componenta permite ca pentru fiecare artefact BRFplus să se genereze cod specific ce va fi folosit la inițializarea aplicației. Prin urmare, utilizatorii nu au nevoie de cunoștințe vaste de ABAP pentru a crea regulile. Fiecare regulă poate fi asociată cu date de tip timestamp, ceea ce permite crearea de aplicații complexe ce pot avea reguli active la un moment dat, bazate pe condiții specifice.

Componenta Repository poate stoca regulile ca elemente dependente sau independente de partea client în funcție de nevoile aplicației, permițând obiecte locale sau flotante (transportable). Mai multe, componenta oferă un mecanism de definire a permisiunilor și a nivelelor de acces utilizând concepte de autorizare SAP.

Componentele BRFplus

Cum funcționează BRFplus? O aplicație BRFplus este un container de obiecte BRFplus care sunt configurate pentru a deservi regulile fluxului. Fiecare obiect creat în cadrul aplicației va moșteni toate caracteristicile aplicației: constrângeri, informație administrativă, ieșiri, opțiuni de navigare, etc. . Deoarece BRFplus oferă posibilitatea de a face obiectele locale sau flotante (transportable), acest lucru se va aplica și aplicației BRFplus, ce poate fi privită similar unui proiect din alte IDE-uri sau pachete ABAP.

Diagrama 2. Procesul BRFplus

Fiecare obiect creat are un set de proprietăți generale și specifice. Unele sunt moștenite, iar pentru altele utilizatorul poate asigura mentenanța. Cea mai importantă proprietate este ID-ul obiectului care este generat unic în momentul creării și care este folosit pentru a accesa obiectul prin intermediul ABAP API.

Obiectul central (core) ce va face legătura între aplicația BRFplus și aplicațiile cu care clienții trebuie să se integreze este funcția BRFplus. Funcția va defini scopul aplicației prin intermediul semnăturii funcției. Aceasta include: tipul datelor de intrare, rezultatul și modul în care datele sunt procesate conform regulilor definite. Există trei moduri diferite de a procesa funcția, ceea ce va influența complexitatea funcției. Putem opta pentru abordarea de sus în jos (top-down), utilă pentru cazurile simple de business, abordarea numită și Functional Mode (Mod Funcțional), sau putem opta pentru mai multă complexitate prin intermediul Event Mode (Mod Eveniment) unde putem implementa diferite seturi de reguli. A treia abordare este o combinare a primelor două moduri.

Pentru a testa rezultatul funcției create, BRFplus oferă un tool de simulare ce ajută la testarea comportamentului regulilor definite pentru scenarii diferite. Toolul va procesa toate obiectele active și va permite utilizatorilor fie să introducă date de un singur tip (date pentru câmpuri de intrare simple, structuri imbricate sau tabele) sau date pentru testare în masă prin importarea de parametri contextuali via un fișier Microsoft Excel. Fișierul va avea nevoie de un antet, iar pentru fiecare parametru de intrare contextual o coloană. Pentru a avea o structură exactă, este recomandată exportarea fișierului din toolul de simulare.

Tipurile de obiecte de date folosite sunt elemente precum amount, boolean, number, text, etc. ; structuri și tabele definite pe diferite structuri de date. Fiecare din aceste tipuri de date poate fi legat de un tip deja existent în ABAP Data Dictionary.

Diagrama 3. Integrarea BRFplus cu SAP

Regulile aplicației sunt combinate în obiecte numite Rulesets (seturi de reguli). Utilizatorul poate asigna aceste obiecte unui singur obiect funcție, poate asigna priorități diferite sau (pre)condiții de tip timestamp. Pentru fiecare Ruleset se pot defini și inițializa variabile sau variabile globale. BRFplus permite și definirea condițiilor de ieșire pentru reguli, ceea ce adaugă complexitate fluxului de reguli. Fiecare Ruleset este construit prin intermediul de reguli simple, reguli ce au structura standard IF-THEN-ELSE. Regula poate realiza acțiuni, poate asigna o valoare sau poate inițializa contexte, procese sau alte reguli.

Expresiile BRFplus constituie corpul unei reguli. Acestea sunt unități independente având propriul lor set de proprietăți și propria logică. Oferim informații despre cele mai uzuale expresii:

Performanța aplicațiilor BRFplus

Deoarece acest tool este proiectat să ofere suport în procesul decizional al unei companii, performanța atinsă în procesarea regulilor de business complexe și multiple este un aspect prioritar. Acesta este strâns legat de modul în care este creată aplicația BRFplus și de modul în care fiecare obiect BRFplus este implementat. Depinde și de hardware-ul avut la dispoziție, de capacitatea rețelei și de alte procese ce rulează în sistem.

Un factor cheie ce poate îmbunătăți performanța în procesul de creare a unei aplicații BRFplus ar putea fi utilizarea operațiilor loop și table acolo unde este nevoie. Elementele loop imbricate sau expresiile DB Lookup din cadrul unei expresii loop ar trebui evitate, iar elementul loop ar trebui gândit să aibă un număr finit de pași. În interacțiunea cu baza de date, aplicăm aceleași principii precum interogarea coloanelor cheie ale tabelelor sau utilizarea tabelelor buffered pentru acces mai rapid la date. Când apelăm proceduri, performanța expresiilor aplicației BRFplus este dependentă de implementarea metodei apelate sau de modulul funcțiilor, din moment ce BRFplus mapează doar variabilele parametrilor de intrare.

Concluzie

De ce am dori să folosim BRFplus în configurarea procesului nostru decizional? BRFplus oferă posibilitatea unei modelizări unificate și a unui mediu de runtime pentru regulile de business. Mai mult, BRFplus oferă o perspectivă simplificată a regulilor de business atât pentru utilizatorii tehnici, cât și pentru utilizatorii de business, singurul factor cheie fiind cerințele de business.

Din punct de vedere tehnic, BRFplus poate fi ușor integrat într-un mediu SAP NetWeaver utilizând API-urile aflate la dispoziție ce oferă acces la Data Dictionary și diferite workflow-uri. Un mare avantaj al aplicației BRFplus vine din codul generat pentru fiecare obiect BRFplus creat la runtime, prin intermediul motorului propriu. Astfel, utilizatorilor le va fi mai simplu să creeze și să implementeze scenariul de business necesar.

Cu cât este mai pregătită o companie pentru optimizarea și gestionarea propriului proces decizional, cu atât compania va înregistra succes pe piața aflată în continuă evoluție. Tehnologia a facilitat acest lucru în diverse forme, iar una dintre acestea este soluția SAP pentru BRMS ce se concretizează în BRFplus.

NUMĂRUL 149 - Development with AI

Sponsori

  • Accenture
  • BT Code Crafters
  • Accesa
  • Bosch
  • Betfair
  • MHP
  • BoatyardX
  • .msg systems
  • P3 group
  • Ing Hubs
  • Cognizant Softvision
  • Colors in projects