Ölü Yol Eleme Semantiği Altında BPEL Süreç Modellemesi ve Analizi

Chen Ying1, Xing Jianchun1, Wang Hongda1, Yang Qiliang1,2

(1. National Defence Engineering College, PLA University of Science and Technology, Nanjing 210007, Jiangsu; 2. State Key Laboratory of Advanced Computer Software Technology, Nanjing University, Nanjing 210093, Jiangsu)

: BPEL sürecinin ölü yol eleme semantiği altında yetersiz modelleme ve analizi sorununu hedef alan yeni bir BPEL süreç modelleme ve analiz yöntemi önerilmiştir. Bu yöntem, BPEL ölü yol eliminasyon anlambilimini sıradan eğer öyleyse olağan hale dönüştürme kurallarını belirler ve ardından BPEL sürecini resmi olarak modellemek ve CPN-Tools aracılığıyla BPEL sürecini oluşturmak için renkli Petri ağlarını (CPN) kullanabilir. Model otomatik olarak analiz edilir ve doğrulanır. Vaka analizi, yöntemin belirli bir uygulanabilirliği ve fizibiliteye sahip olduğunu ve yazılım mühendislerinin BPEL programlarını daha iyi test etmesine, hatalarını ayıklamasına ve sürdürmesine yardımcı olabileceğini göstermektedir.

: TP311.5 Belge tanımlama kodu: ADII: 10.19358 / j.issn.1674-7720.2017.06.008

Alıntı biçimi Chen Ying, Xing Jianchun, Wang Hongda, ve diğerleri. BPEL süreç modelleme ve ölü yol eliminasyon semantiği altında analizi J. Mikrobilgisayarlar ve Uygulamalar, 2017,36 (6): 22-25.

0 Önsöz

* Fon Projesi: Jiangsu Eyaleti Doğal Bilimler Vakfı (BK20151451) Web hizmeti iş süreci yürütme dili (BPEL veya WS-BPEL), hizmet tabanlı iş süreçlerinin [1] ihtiyaçlarını karşılamak için geliştirilmiş bir endüstri standardıdır. BPEL tabanlı bileşik Web hizmetleri, daha güçlü hizmetler sağlayabildikleri için endüstri tarafından yaygın olarak kabul edilmektedir [2]. Bununla birlikte, hizmet iş süreçleri her zaman mükemmel değildir.Çoğunlukla süreç tasarımında, yüksek güvenilirlik ve fizibilite gereksinimlerini karşılaması zor olan bazı problemler (ölü yolların ortadan kaldırılması gibi) vardır. Bu nedenle, BPEL sürecinin ölü yol ortadan kaldırma semantiği altında modelleme ve analiz probleminin hala iyileştirilmesi gerekmektedir. Sözde ölü yol eliminasyonu, gerçekleştirilemeyen bir faaliyetin kapsamının genişletilmesi anlamına gelir, böylece faaliyetin yürütülmesinden sonra yürütülen tüm faaliyetler tamamlanmayacaktır. Her faaliyet, bir sonraki faaliyetin yürütülüp yürütülmeyeceğini belirleme rolünü taşır. Şu anda, BPEL süreç modelleme analizi ve doğrulaması ile ilgili teknikler esas olarak Petri ağlarını [3], süreç cebirini [4] ve otomatayı [5] içermektedir. BREUGL F V [6] tarafından analiz edilen yaklaşık 100 makaleden, süreç cebri ve otomatının BPEL sürecini modellemek için kullanıldığı, modelin daha karmaşık ve soyut olduğu ve modelleme sürecinin daha zor olduğu bulunmuştur. Ve BPEL programları eşzamanlı yol ve ölü yol ortadan kaldırmayı (Ölü Yol Eleme, DPE) aynı anda desteklediğinden, BPEL süreç modellemesinde eşzamanlı yol ve ölü yol ortadan kaldırma sorununu en üst düzeye çıkarmak için, mevcut geleneksel modelleme yöntemlerinin iyileştirilmesi gerekir.

İş sürecinin karmaşıklığına bağlı olarak, BPEL süreç kompozisyon modellemesinin kullanımı hatalara daha yatkındır [7] ve dil ifadesi kısa ve anlaşılması kolay değildir. Süreç dili ifadesini daha doğru ve basit hale getirmek için, BPEL sürecini modellemek ve analiz etmek için resmi yöntemler benimsemek gerekir.

Bu makale, BPEL sürecini ölü yol eleme semantiği altında modellemek için renkli Petri ağlarına dayanmaktadır. Renkli Petri Ağları (Renkli Petri Ağları, CPN), genel Petri Ağlarının bir uzantısıdır ve Petri Ağlarının tüm özelliklerine sahiptir.Petri Ağlarını Meta Dili (ML) ile birleştirir ve eşzamanlı sistemleri kısa ve net bir şekilde açıklar. . Bu makalenin ana yeniliği, mevcut çalışma temelinde, ölü yol eleme semantiği altında bir BPEL süreç modelleme ve analiz yönteminin önerilmesidir. Bu yöntem, BPEL ölü yol eleme semantiğinin sıradan eğer-öyleyse-ise dönüştürülmesini sağlar. Ve bunu resmen ifade etmek için CPN-Tools kullanın. Vaka analizi, mevcut BPEL süreç modellemesi ile karşılaştırıldığında, bu makalede önerilen BPEL sürecinin, yazılım mühendislerinin daha iyi test etmesine, hata ayıklamasına ve BPEL programlarını sürdürün.

1 ilgili kavram

1.1 BPEL'e giriş ve ölü yolların ortadan kaldırılması

BPEL, XML ile yazılmış bir hizmet bileşimi programlama dilidir (standart evrensel biçimlendirme dilinin bir alt kümesi) İş süreçlerini otomatikleştirmek için kullanılan ve birden fazla hizmetin yürütülmesini koordine edebilen resmi bir belirtim dilidir. İş süreçlerinin ihtiyaçları nedeniyle, BPEL iki farklı faaliyet türü sağlar, temel faaliyetler ve yapılandırılmış faaliyetler [8]. BPEL aynı zamanda < akış > Eşzamanlılık sağlamak, eşzamanlı etkinliklerin senkronizasyonu < bağlantı > Dedim.

Bir BPEL etkinliği birden fazla olabilir < bağlantı > Kaynak etkinlikler, bunlar < bağlantı > Bu aktivitenin giden bağlantılarını çağırdı [9]. Her birine göre etkinlik sonunda < bağlantı > Karşılık gelen geçiş koşulu çifti < bağlantı > Durum ayarlanır (doğru veya yanlış). Açık bir geçiş koşuluyla ilişkili değilse, varsayılan geçiş koşulu doğrudur. Bir aktivite aynı anda birden fazla olabilir < bağlantı > Hedef faaliyetler, bunlar < bağlantı > Aktivitenin gelen bağlantılarını aradı. Gelen bağlantı durumuyla ilgili değişkenlerden oluşan Boole ifadesi, BPEL işleminin birleştirme koşulu olarak tanımlanır. Yalnızca füzyon koşulu doğru olduğunda aktivite yürütülebilir. Ne zaman < bağlantı > Belirli bir durum elde edildikten sonra bu bağlantı koşulunun değeri belirlenebilir [10]. Bağlantı koşulu doğruysa, etkinlik yürütülebilir, aksi takdirde bağlantı koşulu yanlışsa, etkinlik yürütülemez ve bunu geçen tüm etkinlikler < bağlantı > Hepsi yanlış olarak ayarlanmıştır. Bu durum, belirli bir aktivitenin geçiş koşulu doğru olana kadar aktarılacaktır, ardından hedef aktivite yürütülebilir.Bu tekniğe ölü yol eliminasyonu denir.

1.2 CPN'ye Giriş

Renkli Petri Ağı (CPN), 1981'de Danimarkalı araştırmacı Kurt Jensen tarafından önerildi. Tanınmış temel Petri ağı gibi, CPN de yerler, geçişler ve yaylardan oluşur [11], ancak farklı Eleman bildirimleri ekleyen ve sistemi simüle etme ve doğrulama yeteneğine sahip olan CPN'dir. CPN, temel Petri ağlarının ve programlama dillerinin avantajlarını birleştirir ve karmaşık iş süreçlerini grafiksel olarak modelleyerek süreci daha basit ve anlaşılır hale getirir. Ek olarak, güçlü bir renkli Petri ağı simülasyon aracı CPN-Tools, sistemin sınırlarını, canlılığını ve adaletini doğrulamak için de kullanılabilir. Bu makalenin durumu, bu aracı simülasyon, doğrulama ve analiz için kullanmak ve böylece makalede önerilen kuralların doğruluğunu onaylamaktır.

Tanım [9]: Bir CPN dokuz parçalı CPN = (, P, T, A, N, C, G, E, I) 'den oluşur. Nerede:

, boş olmayan sınırlı bir renk kümesini temsil eder;

P: Sistem yerlerinin sınırlı koleksiyonunu tanımlayın (Yer);

T: sınırlı bir geçiş kümesi;

C: Sonlu bir yay kümesi, PT = PA = A satisfT = ;

N: A (P × TT × P) düğüm (Düğüm) işlevidir;

C: (PT) ss, renk fonksiyonudur, burada ss, 'nin sonlu bir alt kümesidir;

G: T ifade, T'nin koruma fonksiyonudur, yani tT, [Tür (G (t)) = BTip (Var (G (t))) ], burada Tür (v) değişkeni temsil eder V, Var (ifade r) türü, ifade ifadesindeki değişkenler kümesini temsil eder;

E: A İfade, aA, [Tür (E (a)) = C (P (a)) msTip (Var (E (a))) ] biçiminde bir yay ifade fonksiyonudur. ;

I: pP gibi P ifadesinin ilk işareti, [Tür (I (p)) = C (P) ms].

2DPE semantiği altında BPEL süreç modellemesinde dönüşüm kuralları

BEPL'den Petri ağlarına haritalama kuralları ile ilgili olarak, 2004 gibi erken bir tarihte, Almanya, Berlin'deki Humboldt Üniversitesi'nden HINZ S, Petri ağına dönüşüm kurallarının eksiksiz bir setini önerdi [12]. Ayrıca STAHL C, yüksek lisans tezinde ölü yol eleme semantiği altındaki modelleme kurallarına değinmiş, ölü yol modelini ortadan kaldırmak için bir bağlantı modu oluşturmuş ve bir etkinlik yerleştirmiştir [12]. Bu makalenin ana katkısı, BPEL ölü yol yok etme anlambilimini sıradan eğer öyleyse-öyleyse sıradan hale dönüştüren bir kural önermek ve bunu resmi bir şekilde ifade etmektir.

BPEL'de < bağlantı > Faaliyet temel bir faaliyet olarak kabul edilir ve bağlantı koşulu bu faaliyetin belirleyici koşulu olarak kabul edilir. göre < bağlantı > Etkinlikler ve DPE semantiği için aşağıdaki dört kural tüm durumları kapsayabilir.

Üç renk seti tanımlanmıştır:

colset E = e ile; colset L = bool;

colset ACTIVE = ürün L × E;

9 değişken:

var l, lA, lB, l1, l2, l3, jc, ran: L, a: E.

2 işlev:

eğlenceli TAMAM (l1: L) = (l1 = doğru);

fun Atla (l1: L) = (l1 = false).

Kural 1: Tek bağlantı. Şekil 1'de gösterildiği gibi, Etkinlik A, Etkinlik B, Etkinlik C sırasıyla üç temel etkinliği temsil eder ve bu üç etkinlik aktiftir. < akış > içinde. Ok çizgisi, iki etkinlik arasındaki kontrol akışını temsil eder ve kalın çizgi, < bağlantı > aktivite. Aktivite B'nin geçiş koşulu tc1'dir ve Aktivite B'nin bağlantı durumu varsayılan bir true değeridir. DPE semantiğine göre, tek < bağlantı > Bağlantı dönüştürme kuralları Şekil 2'de gösterilebilir. Bu dönüşümde, < bağlantı > Normal bir kontrol akış düğümüne dönüştürülür ve aktivite l1 = tc1 olarak ifade edilir. Bu nedenle, BPEL program yolunun fizibilitesini analiz etmek için geleneksel analiz yöntemleri kullanılabilir.

Şekil 1'deki aktivite ağında, kütüphane Başlangıç Aktivitesi A, aktivite A'nın başlangıç durumunu temsil eder ve renk seti AKTİF'dir. Belirteç değeri (true, e) olduğunda, bu, A aktivitesinin normal çalışabileceği anlamına gelir.Arkı ifadesinin hesaplanmasına göre, Aktivite B'nin geçişi tetiklenir, böylece durum ifadelerinden biri yürütülür ve diğer ifadeler atlanır, bu da B aktivitesinin normal şekilde çalıştığını gösterir. [9]. Öte yandan, belirteç değeri (false, e) olduğunda, B etkinliğinin atlandığını gösteren geçiş B atlama tetiklenecektir. Kütüphanedeki Bitiş Etkinliği C'nin simge değeri, etkinliğin son durumunu, yani etkinliğin normal şekilde yürütülüp yürütülmediğini gösterir.

Kural 2: İki bağlı < bağlantı > . Eğer iki tane varsa < bağlantı > Art arda bağlanan Şekil 2, dönüştürme kurallarını göstermek için kullanılabilir.

Kural 3: Bir < bağlantı > İki halef var < bağlantı > . Eğer biri < bağlantı > İki halef var < bağlantı > , Dönüştürme kuralı Şekil 3'te gösterilmiştir.

Kural 4: Bir < bağlantı > Öğesinin kaynak etkinliği bir dayanak etkinliği ( < süre > , < Eğer > , < toplamak > ). Eğer biri < bağlantı > Kaynak etkinliği iddialı bir yapı içerir ve dönüştürme kuralları Şekil 4'te gösterilmiştir. Şekilde, F aktivitesinin yürütülmesi dayanak aktivitesine bağlıdır (örneğin < Eğer > ), bu nedenle, l1 aktivitesi, l1 = if'i temsil eder (eğer, tahmin aktivitesinin belirleyici koşulunu temsil ediyorsa).

Aktif ağın 2 ila 4 numaralı kurallarının işletim kuralları kural 1'e benzer olduğundan, uzunlukları sınırlıdır ve burada tekrarlanmayacaktır.

Yukarıdaki 4 kuralda, her bir hedef etkinlik < bağlantı > Temel bir aktivitedir Hedef aktivite yapılandırılmış bir aktivite ise, kendisini içeren aktivite de göz ardı edilecektir. Bu 4 kural, BPEL programında artık bu yapı kalmayana kadar aynı anda uygulanacaktır.

3 vaka analizi

3.1 Vaka açıklaması

Bu bölümde, bu yöntemi değerlendirmek için WS-BPEL 2.0-Primer [1] örneği kullanılmıştır. Şekil 5'teki örnekte, dört faaliyet aynı anda yürütülmektedir. < akış > Aktivite başladığında, dört aktivite aynı anda yürütülmeye başlar. Nedeniyle < bağlantı > İçin geçiş koşulu tamamen zıttır (5000'den büyük veya eşittir), bu da, Kredi Onayı veya Krediyi Reddet sonraki iki faaliyetten yalnızca birinin yürütüleceği anlamına gelir.

BPEL kontrol akış diyagramı tasarlanırken, DPE kontrol akış diyagramı dikkate alınmadığında, bazı kilitlenmeler ve diğer sorunlar tespit edilemez. DPE düşünüldüğünde, bu kilitlenme sorunları tespit edilebilir. Bu nedenle, BPEL süreç modellemesi ve analizi ölü yol ortadan kaldırma semantiği altında çok gereklidir.

3.2 Modelleme ve analiz

Modelleme, BPEL sürecinin CPN haritalama kurallarına dayanır.Tüm vaka, iki akış aktivitesinden, bir anahtar aktivitesinden ve dört temel aktiviteden oluşur: Yüksek Risk, Düşük Risk, Yanıtla ve Çağır. Bunlar arasında akış aktivitesi, Akışı Başlat yeri ile Akışı Sonu yeri arasındaki kısımdan, anahtar aktivitesi ise yer Başlatma Anahtarı ile yer Bitiş Anahtarı arasındaki kısımdan oluşur.Yer sınırlamaları nedeniyle durum diyagramı atlanmıştır.

Yukarıdaki durumun CPN modeli için, CPN-Tools'un durum uzayı analiz aracı, modelin doğasını otomatik olarak doğrulamak için kullanılır Şekil 6, faaliyetin doğasını açıklayan verilerdir.Şekilden modelde ölü işaret olmadığı ve mevcut olmadığı görülebilir. Gerçekleşemeyen değişiklikler, yani tüm değişiklikler aktiftir, bu nedenle tüm vaka modeli aktif doğanın gerekliliklerini karşılar ve böylece vakanın rasyonelliğini doğrular.

4. Sonuç

BPEL kontrol akış şemasına dayalı olarak (eşzamanlılık yapısı ve DPE dili dikkate alındığında Şekil 4, tahmin etkinliğinin dönüşüm diyagramını içerir Şekil 5, tipik bir program anlamına gelir), bu makale BPEL süreç yolunun fizibilitesini analiz etmek için yeni bir yöntem önerir. Ana katkılar ikiye bölünmüştür Yönler. İlk olarak, yeni bir BPEL kontrol akış diyagramı türü, yani bir kontrol akış diyagramı, WS-BPEL programlarının yürütme sürecini soyutlayabilir ve ölü yol eleme anlamını dikkate alabilir. İkinci olarak, karmaşık BPEL kontrol akış diyagramını nispeten basit ve net bir akış diyagramına dönüştürmek için CPN-Tools aracını kullanın ve sınırlarını ve faaliyetini analiz etmek için CPN'deki durum alanı analiz aracını kullanın, böylece yöntemin uygulanabilirliğini doğrulayın. Seks.

Referanslar

1 Wang Hongda, Xing Jianchun, Yang Qiliang ve diğerleri.Hizmet odaklı iş akışı uygulamaları için optimum kontrol tabanlı regresyon testi seçimi J. Journal of Systems and Software, 2016, 124: 274-288.

2 Zheng Jian, Jiang Jianhui. Web hizmeti yazılım test teknolojisi ilerlemesi J. Bilgisayar Uygulamaları ve Yazılım, 2009, 26 (10): 101-104.

[3] HINZ S, SCHMIDT K, STAHL C. BPEL'i Petri Ağlarına Dönüştürmek C. 3. Uluslararası İş Süreçleri Yönetimi Konferansı (BPM 2005), Berlin, 2005: 220-235. 4 FERRARA A. Web hizmetleri: bir süreç cebiri yaklaşımı C Service 2. Uluslararası Servis Odaklı Hesaplama Konferansı Bildirileri New York: ACM Press, 2004: 242-251.

[5] FOSTER H, UCHITEL S, MAGEE J, ve diğerleri Web hizmeti bileşimlerinin modele dayalı doğrulaması C.

18th IEEE International Conference on Automated Software Engineering, 2003: 152-161.

6 BREUGEL FV, KOSHKINA M. BPEL EB / OL modelleri ve doğrulaması. 200609xx 2016-10-19 /drafts/t-utorial.pdf. Eylül 2006.

7 OUYANG C, BREUTAL S. WofBPEL: BPEL süreçlerinin otomatik analizi için bir araç J. Bilgisayar Bilimi Ders Notları, 2005, 3826: 484-489.

[8] Yu Gang. BPEL [D] 'de asenkron moda dayalı insan görev yürütme sisteminin araştırılması ve uygulanması Chongqing: Chongqing Üniversitesi, 2010.

9 STAHL C.Transformation von BPEL4WS, Petrinetze D Berlin Berlin: Humboldt Üniversitesi, zu Berlin, 2004.

[10] Luo Xiangyu, Wang Kun, Wang Fengchai Web Hizmeti Kompozisyonu için Bilişsel Model Algılama Yöntemi J. Küçük Mikrobilgisayar Sistemi, 2011, 32 (10): 2042-2047.

[11] Peng Jie. Renkli Petri ağlarına dayalı iş akışı modelleme ve uygulama [D] Nanchang: Jiangxi Bilim ve Teknoloji Üniversitesi, 2009.

[12] Men Peng, Duan Zhenhua, BPEL modelleme ve renkli Petri ağlarına dayalı doğrulama J. Journal of Northwest University, 2007, 37 (6): 986-990.

Nadir güzel hava, vatandaşlar sıcak güneşin tadını çıkarmak için meydanda toplanıyor
önceki
"Rise of the Planet of the Apes 3" gişede 500 milyon kırdı
Sonraki
On milyarlarca dolar kaybeden Didi paniğe kapıldı mı?
"Siber Güvenlik Yasası" bugün uygulanıyor, Baidu güvenlik uzmanları size web sitesinin çalışması için doğru duruşu öğretiyor
İHA satışları geçen yılın aynı döneminin 4 katı ve Jingdong 11.11 çılgınlıktan sonra 2 saat içinde rekor kırdı
"Aristokratik Aile" muhtemelen yeniden yapmak istemediğim drama
"Anayasa Günü" ne hoş geldiniz ve "zeytin dalı" yaklaşıyor
Yüzlerce yeni tanınmış marka Wanjiali ticaret bölgesine girdi ve dördüncü kalite geliştirme konferansını düzenledi
"Kış Günü İğne Aşkı" ılık kışı aydınlatır. Yuzhong Bölgesinde binlerce örgü gönüllüsü aşk için iplik iğneleri
Swipe Terminator çevrimiçi! Alibaba, tüm bağlantı boyunca siparişlerle mücadele etmek için en güçlü teknolojiyi kullanıyor
"Ace Agent 2", Yabancı Medyanın Yılın En İyi Orijinal Aksiyon Filmi Değerlendirmesi olan "Eski Sürücü" Ekipmanını Sergiliyor
Benim bgm'de kimse beni yenemez!
"God of War" daki önemli olaylar ve ayrıntılar hakkında konuşun
Geng Le, Zhang Aijia'nın "Aşk ve Buluşma" olarak adlandırması için çığır açan bir performans sergiledi.
To Top