Sunteți pe pagina 1din 4

Deversari de petrol

Fotu Victor Mihai

1. Prezentare generala a sistemului selectat pentru managementul


hazardurilor
SINTEF Materials and Chemistry au un produs commercial pentru simularea deversarilor de
petrol,ce poate ajuta la prezicerea modului in care se va raspandi petrolul in cazul unei deversari
accidentale. Sistemul este implementat de o simulare Fortran, iar interfata este facuta in C++.In
momentul de fata doresc sa faca o tranzitie la o paradigma orientata pe servicii pentru a se putea
adapta mai usor la cerintele noilor clienti si pentru a avea modele mai flexibile.
Figura 1. Ilustreaza aplicatia existenta. Nucleul simularii Fortran este responsabil pentru
simularea deversarii folosind modele numerice. Toate intrarile sunt bazare pe fisiere, si simularea
ruleaza in mod batch si poate dura de la cateva minute la cateva zile.Aceasta abordare a
functionat bine multi ani, dar apparent sunt niste provocari cand vine vorba de
interoperabilitate,integrare si scalabilitate. Scopul este sa migreze aplicatia, pentru a indeplini
noile cerinte ale pietei in timp ce se confrunta cu aceste provocari.

Folosim tehnici de inginerie bazate pe modele pentru a dezvolta predictii ale deversarilor de petrol ca
si serviciu ce inglobeaza nucleul simularii existente. Modelele UML sunt folosite pentru a specifica
interfete de servicii si detalii ale arhitecturii. Din aceste modele generam scheme XML pentru servicii
web, interfete Java si implementari ale claselor serviciilor web,arhitectura si comportamentul.

Structura serviciului si Interfata


Serviciul este definit de clasa <interfatadeserviciu>, care implementeaza interfata serviciului cu un
set de operatii expuse.Cea mai interesanta dintre acestea este <async> care ofera serviciul principal
in cazul predictiei deversarii.Din moment ce executarea simularii poate dura ore, sau chiar zile,
operatia este declarata ca asincrona.
Operatia va returna imediat un rezultat cu un id al sesiunii pentru a putea identifica sesiunea. Exista
si alte doua operatii ajutatoare pentru a verifica statusul executiei (getStatus)si pentru a recupera
rezultatele in cazul finalizarii. (getPredictOilDriftResult).
PredictOilDriftService este o clasa structurata care are un set de componente:

PredictOilDriftServiceControlleris este componenta interna ce programeaza serviciul.Toate


apelarile sunt trimise catre controller care implementeaza operatiile serviciului.
DataTransformer ofera operatii pentru transformarea intrarilor necesare simularii de catre
nucleul Fortran,si transmiterea datelor dupa simulare.
FatesWrapper este o componenta executabila care executa programul Fortran.
WeatherServiceIntegrator ofera operatii pentru integrarea cu un furnizor extern de date
despre vreme.
getWeatherInfooperation aduce date despre vreme dintr-un service web ce furnizeaza date
binare in format GRIB.
OilDatabase este o component < db jdbc> care furnizeaza informatii despre tipuri de petrol
intr-o baza de data SQL.

2. Modelare conceptuala
2.1.

Diagrama de clase UML

2.2.

Tabel de concepte

Nume Concept

2.3.

Atribute

Descriere scurta

Tabel de relatii

Nume relatie

Concept sursa

Concept
destinatie

Descriere scurta

3. Exemple de utilizare practica


In Marea Egee
In Marea Baltica

Referinte bibliografice
1. http://www.gdmc.nl/publications/reports/Humboldt_0837.pdf
2. http://sisas.modelbased.net/practice.architecture.model_driven_migration.basesintef/guidances/examples/oil_spill_example_2F502D73.html