استاندارد XPDL چیست ؟

XPDL یا زبان تعریف فرایند به‌صورت XML

یک فرمت استاندارد است که توسط (Workflow Management Coalition (WfMC در سال ۲۰۰۸ مطرح گردید و هدف آن فراهم نمودن امکان تبادل تعاریف فرایندهای کسب‌وکار بین محصولات ارائه‌دهنده گردش کار و همچنین دستگاه‌های مدیریت فرایندهای کسب‌وکار (ابزارهای مدل‌سازی مختلف) است. XPDL یک الگوی XML را برای تعیین بخش‌های فرایند کسب‌وکار و یا گردش کار تعریف می‌نماید. درواقع XPDL یک فرمت طراحی فرآیند است و شامل اطلاعاتی است که با استفاده از آن، می‌توان فرآیند را به‌صورت بصری نمایش داد؛ اطلاعاتی از قبیل موقعیت و اندازه المان‌های فرآیند از این نوع هستند؛ همچنین می‌توان خطوطی را تعریف نمود که المان‌ها را به هم متصل نمایند، خطوط و گره‌ها شامل ویژگی‌هایی هستند که اطلاعات اجرایی را دربرمی گیرند، نمونه‌هایی از این اطلاعات عبارت‌اند از: قوانین، تشریح فعالیت‌ها، فراخوانی وب‌سرویس‌ها و غیره. همچنین XPDL ۲ دارای المان‌های معادل المان‌های BPMN است به‌عنوان‌مثال Activity(فعالیت)ها در BPMN معادل Generic Activity در XPDL می‌باشد و همچنین BPMN Event معادل XPDL Event Activity، BPMN Gateway معادل XPDL Route Activity و BPMN Connections معادل XPDL Transition است.

هدف XPDL ذخیره و انتقال فرآیند است. XPDL به یک ابزار طراح فرآیند اجازه می‌دهد تا فرآیند را در فایلی ذخیره نموده و طراح فرآیند دیگر آن را فراخوانی نماید و نمادهای مخصوص به خود را نمایش دهد. استاندارد XPDL اجرای فرآیند را تضمین نمی‌کند زیرا ممکن است قوانین در یک BPMS قابل‌اجرا باشند ولی در دیگری قابل‌اجرا نباشند.

مفهوم و هدف XPDL در شکل زیر بیان‌شده است. در بخش بالایی شکل، ابزارهای طراح فرآیند مختلف وجود دارند و در بخش پائین شکل محیط اجرای فرآیند قرارگرفته است، همان‌��ور که مشاهده می‌شود XPDL در محیط اجرایی فرآیند نقشی ندارد در این محیط BPEL نقش اصلی را ایفا می‌نماید، لذا گرفتن کد اجرایی از XPDL غیرممکن است.

سه کاربرد مهم XPDL به شرح زیر است:

مبادله فرآیندها برای شرکت‌هایی که فعالیتشان ساخت و فروش فرآیندها می‌باشد بسیار بااهمیت است، زیرا آنان نمی‌خواهند فقط در یک نرم‌افزار خاص، فرایندها را به کار ببرند چراکه یک طراحی را می‌توانند به شرکت‌های مختلف بفروشند و ازآنجایی‌که شرکت‌های مختلف ممکن است از BPMS های متنوعی استفاده نمایند لذا XPDL برای آن‌ها بسیار حیاتی خواهد بود.

دسته دیگری که XPDL برای آن‌ها بسیار بااهمیت است متخصصین طراح فرآیند می‌باشند، زیرا هر BPMS ممکن است ابزار طراحی فرایند مخصوص به خود را داشته باشد و چنانچه یک متخصص در یک ابزار خبره گردد، دیگر نیاز نیست در ابزار دیگر برای یادگیری هزینه صرف نماید و می‌تواند تمرکز را بر روی ساخت فرآیند نه در یادگیری ابزار جدید قرار دهد.

نمونه‌ای دیگر اینکه با XPDL می‌توان فرآیند را بین ابزارهای مختلف انتقال داد؛ مثلاً ابزارهایی که مخصوص شبیه‌سازی فرآیند می‌باشند و یا ابزارهایی که مسئول بهینه‌سازی فرآیندها هستند؛ حتی یک متخصص طراح فرآیند می‌تواند با طراحی فرآیند در یک ابزار با XPDL آن را به ابزارهای مختلف انتقال داده و از آن‌ها استفاده نماید.

شکل زیر معرف عملکرد XPDL می‌باشد:

البته هر ابزاری علاوه بر نمادهای استاندارد، یک سری نمادها و ویژگی‌های مخصوص به خود را دارد که قطعاً در XPDL دارای معادل نیست لذا انتقال آن نیز امکان‌پذیر نخواهد بود ولی ازآنجایی‌که بعضی ابزارها فقط به المان‌های استاندارد نیاز دارند، XPDL برای استفاده از آن‌ها بسیار مفید خواهد بود.

 

 

 

استاندارد Wf-XML 2.0 چیست ؟

wf-xml به صورت افزونه ای برای OASIS Asynchronous Service Access Protocol - ASAP طراحی و پیاده سازی شده است.
ASAP یک راه استاندارد شده ای را معرفی میکند که توسط آن نرم افزار ها می توانند شروع و پایانی که ممکن است زمان زیادی را تا اتمام سپری کند نمایش دهد.
همچنین توانایی نمایش سرویس های اجرا شده و تغییرات که در وضعیت اجرا میشود را دارد.
Wf-XML این امر با ارائه یک وب سرویس استاندارد و عملیاتی که اجازه ارسال و دریافت از "نرم افزار" یا سرویس ارائه شده توسعه میدهد.
یک موتور پردازشی رفتار ارائه یک سرویس برای مدت زیادی داشته است و همچنین آماده برنامه ریزی و تعریف توسط نصب یک پروسه است.
Wf-XML یک راه حل استاندارد برای یک BPM جهت استناد یک پردازش در BPM دیگر را ارائه میدهد , و منتظر اتمام آن نیز میشود.
ابزار ویرایش پردازش و ابزار ایجاد پردازش ممکن است توسط دیگر تولید کنندگان معرفی شده باشد.
یک راه استاندارد برای دستیابی به تعاریف پردازشی و ارسال تعاریف به یک کاربر اجازه خواهد داد که بهترین ابزار تعریف پردازشی همچنین بهترین پروسه موتور اجرایی را برای نیاز های خود تطبیق دهد.
wf-xml کار را توسط ارائه راه های استاندارد پردازش تعریف میان ابزار طراحی و موتور اجرایی به اتمام می رساند.
سرشاخه این تلاش ها در سال 1997 توسط Internet Engineering Task Force یا همان IETF به نام Simple Workflow Access Protocol یا (SWAP) توسط Netscape, Oracle Corporation و دیگران انجام شد.
wf-xml یک راهکار استاندارد برای حل یک پردازش تعریفی از یک BPM را ارائه میدهد, و همچنین به عنوان یک ارتقا برای BPM محسوب میشود.
یک ابزار طراحی پردازش می تواند برای یک وب سرویس استاندارد مبتنی بر پروتکل جهت نمایش پروسه ها در یک سرور میزبان BPM مورد استفاده قرار گیرد, همچنین می تواند یک رابط کاربری میان ابزار طراحی و BPM ارائه دهد.
این ها خصوصیات WfMC سنتی نسخه 1 است که برای دریافت و ثبت پردازش های تعریفی کاربرد دارد و هیچ تلاشی برای استاندارد سازی شناخت این تعامل ارائه نشده است.
Wf-XML 2.0 مشخصا از WSDL استفاده میکند. بنابراین به طور کلی به عنوان یک سرویس وب استاندارد پذیرفته شده است.
باید در نظر داشت که سرویس های ساخته شده توسط Wf-XML 2.0 به بعد با نسخه های قبلتر از Wf-XML 1.1 سازگار نیستند و بر روی پروتکل SOAP بنا نشده اند.

منبع : https://en.wikipedia.org/wiki/Wf-XML

wf-xml یک پروتکل وب سرویس است که برای موتور پردازشی با هدف ارسال و یا دریافت پردازش از مقصد به کار میرود

اکثر مردم در جریان برنامه های توسعه یافته در سال های اخیر در زمینه زبان های فرایند تعریفی بوده اند ,معروفترین این برنامه ها OASIS , WS-BPEL هستند ولی به طور دقیق برای نقطه ای WfMC XPDL , مانند دیگر زبانهای فرایند تعریفی طراحی شده اند از یک فرایند های تعریفی که با زبان های فوق الذکر تعریف شده است انتظار میرود بر روی یک موتور پردازشی نصب شود. ولی زبان به صورت ذاتی نمی تواند بر روی یک موتور پردازشی نصب شود. پس در عوض مهمترین نقش Wf-XML مطرح میشود.

مفهوم اصلی این است که یک ابزار فرایند طراحی به کاربر به طور اختصاصی اجازه ویرایش فرایند تعریفی را بدهد.و کاربر بتواند در یک فرمت استاندارد امکان معرفی و استفاده (مصرف) را داشته باشد.اینجا یک موتور پردازشی خواهیم داشت که می توانیم آن را راه اندازی کنیم.ابزار موتور طراحی کاربر Wf-XML اولین گزینه در لیست فرایند های تعریفی است که در موتور پردازشی قرار گرفته است و پس از آن برای یک فرایند تعریفی خاص بازیابی می شود.

همچنین Wf-XML راهی برای بروزرسانی تعریف فرایند به جای ایجاد یک فرایند جدید را هموار میکند.از دیدگاه یک ناظر , مسئولیت شما بسیار کم است و شما در حقیقت نیازی به انجام کار خاصی ندارید , شما فقط نیاز دارید که مشخص کنید نتایج را به چه حالتی میخواهید نمایش دهید.

1- کلیه گزارش های نتایج به صورت لیست فروشندگان به همراه موفقیتشان در ارتباط با دیگر محصولات فروشندگان برای شما نمایانگر میشود.

2- شما میتوانید لیست ها رابر اساس نام و ارگان و هر حالت دیگری که بخواهید خروجی بگیرید.شما نیازی به مسافرت به هیچکجا نخواهید داشت و کلیه گزارشات در اینترنت به صورت مساوی در هر مکان خواهد بود.

  • شما نیازی به هیچ قرارملاقاتی نخواهید داشت ولی ممکن است چند تماس برای بیشتر متوجه شدن پرتکل ها و نتایج با نیاز باشد.
  • شما نیازی به بررسی مجدد ثبت نوت یا هیچ چیز دیگر ندارید ولی می توانید نوت ها را در صورت نیاز به صورت کاملا اختیاری درج کنید.
  • از منظر یک بیننده شما نیاز به تائید هیچ چیزی ندارید ولی به هر حال میتوانید سطح دسترسی برای بخش هایی که میخواهید تعیین کنید.
  • با شروع لیست شما به سادگی می توانید بگوئید که علاقه مند به خروجی نتیجه موفقیت یا شکست کسب و کار خود شده اید.

منبع : https://www.wfmc.org/wfxml_demo.htm

ترجمه توسط علی حریریان

مشکل عدم نمایش پیام خطا در ویژوال استودیو

ممکن است زمانی که شما در ویژوال استودیو اقدام به Debug کردن پروژه میکنید بدون نمایش هیچگونه خطایی در لیست خطا Error List به شما پیام وجود مشکل را بدهد و سوال اینکه آیا مایل به ادامه هستید یا خیر را از شما بپرسد!

چه باید کرد ؟

ممکن است حالت های مختلفی بوجود آمده باشد که در اینجا به دو مورد آن می پردازیم

تنظیمات ویژوال استودیو :

اگر شما حدس میزنید که تغییر تنظیمات ممکن است این بلا را سر پروژه تان آورده باشد تنظیمات ویژوال استودیو را میتوانید از بخش Developer Command Prompt که در فولدر مربوطه است اجرا کنید

و کد دستوری زیر را در آن وارد کنید

devenv.exe /RootSuffix Exp

حال مجددا بررسی کنید...

برخی مواقع کد هایی که شما نوشته اید از نظر ویژوال استودیو مشکلی ندارد ولی ویژوال در حین Debug به مشکل بر میخورد و نمی تواند مشکل را دقیق به شما نمایش دهد

برای عیب یابی دقیقتر پروژه خود در Developer Command Prompt که بالاتر اشاره شد کد دستوری زیر را وارد کنید

MSBuild.exe C:\Path\ToYourProject /verbosity:d

در قسمتی اول کد باید فولدر روت پروژه خود را جایگزین کنید

حال پروژه شما دقیقتر بررسی و نتیجه به این شکل به شما نمایش داده میشود

در مثال فوق مشاهده میکنید که در کدام یکی از صفحات و بخش های پروژه مشکل وجود دارد و میتوانید با رفع آن مجددا پروژه خود را احیا کنید.

اگر مشکل شما از این طریق حل شد لطفا با درج نظر خود دیگران را نیز از تجربه خود مطلع سازید

دانلود نرم افزار ویژوال استودیو برای مک Visual Studio for Mac

جهت دانلود آخرین نسخه از نرم افزار ویژوال استودیو Visual Studio  برای مک Mac ابتدا وارد این صفحه شوید

www.visualstudio.com/vs/visual-studio-mac/

حال بر روی کلید مشابه تصویر زیر

کلیک کنید و سایت مایکروسافت یک فایل 23 مگابایتی به شما میدهد

این فایل را در مک خود اجرا کنید و مراحل نصب را سپری کنید

توجه : در صورتی که فقط میخواهید کد نویسی دات نت را داشته باشید تمامی انتخاب های پیشنهادی مایکروسافت ویژوال استودیو را بردارید که حجم فایل دانلودی به حدودا 750 مگابایت تقلیل یابد.

تجربه خود را با ما نیز درمیان بگذارید

سرعت تبدیل های OTG سری USB Type-C

این مطلب راجع به یه تجربه در استفاده از تبدیل usb-c به usb3 یا همان otg است

توی این تست این تبدیل را روی سه گوشی نکسوس 6p , سامسونگ s8 و ال جی v20 زدم و یه usb3 که توی کامپیوتر اپل سرعت read 75mb و write 50mb داشته را بهشون وصل کردم

نتیجه خیلی عجیب و جالب بود

سامسونگ اس8 و نکسوس 30MB/s در هر دو حالت

ال جی V20 خواندنش 75MB/s و نوشتن 50MB/s

بعد از اون یه هارد اکسترنال را به ال جی وصل کردم و سرعت خواندن و نوشتن به 100MB/s رسید.

بعد کمی تحقیق کردم و متوجه شدم که شرکت ها برای ارزونتر تمام شدن قیمت گوشی پرت usb-c کیفیت پایین استفاده میکنن البته فقط درگاه نیست باید مادربورد هم سرعت بالایی داشته باشه که معمولا تا رقیب هاشون در این رابطه شروع به تبلیغ نکنه وادار به نصب و استفاده از این قطعات نمیشوند.

معایب استفاده از هاست های اشتراکی

هاست های اشتراکی به جز سادگی در استفاده و قیمت ارزان عیب های فراوانی دارند که در این مقاله به برخی از آنها اشاره می کنیم

  • عدم توانایی استفاده از session :هنگامی که مشتری شما در حال تسویه حساب است احتمال اینکه وب سایت های همسایه شما (shared host های دیگر) دستور session.clear که کلیه session های موجود در app pool را خالی میکند را فرا بخوانند و مشتری شما حیران پس از پرداخت می بیند که کاربری وی خارج شده است و نمی تواند از خدمات سایت شما استفاده کند. که اگر من به جای مشتری باشم حتما سایت دیگری را امتحان میکنم
  • در دسترس نبودن : uptime میزبانی اشتراکی بسیار پایین است و هر لحظه ممکن است به دلیل attack و یا حملات d-dos به یکی از ip-address های موجود در سرور سایت شما نیز از دسترس خارج شود.
  • عدم امکان استفاده از سرویس های مختلف : شما 50% امکاناتی که به سادگی در هاست های vps , dedicate می توانید داشته باشید را در هاست هاش اشتراکی نخواهید داشت و بالاجبار می بایست از امکانات پیشفرض ادمین سرور استفاده کنید. برخی از این امکانات ممکن است ایمیل سرور , sql timing , sql custom indexing , sql full text search و iss ip restriction و خیلی موارد دیگر است که از حوصله خارج است.
  • ریست شدن پی در پی : ادمین های سرور برای رهایی از سنگین شدن app pool ها و کانکشن های مختلف ممکن است هرز گاهی دست به ریست کردن سرور و یا سرویس های مختلف همچون IIS بزنند که مطمئنا گریبانگیر هاست شما نیز می شود.
  • کند بودن : همانطور که میدانید سرور های مشترک از منابع مشترک بهره می برند و الزاما این منابع سرعت بالا و کیفیت مناسب ندارند حال در نظر بگیرید که یکی از سرور ها اقدام به بک آپ گیری میکند ! مطمئنا خودتان در منزل نیز اینکار را گاها انجام میدهید هارد ها قابلیت خواندن اطلاعات از چند جای مختلف به صورت همزمان را ندارند پس فکرش را بکنید که چه اتفاقی برای دیگر کاربران این سرور میافتد ؟ 
    مثال دیگر : فرض کنید یکی از این این سایت ها بدلیل برنامه نویسی نا مناسب و یا بازدید زیاد میزان قابل توجهی از رم و cpu را به خود اختصاص میدهد باز هم شاهد کند بودن بقیه سایت ها می شوید.
  • پهنای باند ضعیف : اگر سرور اشتراکی شما خارج از ایران است شاید این بخش زیاد مهم نباشد ولی در ایران پهنای باند متصل به سرور ها معمولا 100Mb/s به زبان سادهتر کمی بیشتر از 10 مگابایت در ثانیه البته در شرایط آرمانی , اجاره چنین لینکی با یک unit سرور حدودا 136 هزار تومان است خوب حال در نظر بگیرید که چند وبسایت از سایت های همسایه شما اقدام به قراردادن لینک های جذاب برای دانلود می شوند ! چه اتفاقی برای دیگران می افتد به سادگی کلیه پهنای باند در مدت زمان دانلود مصرف میشود و دیگران دچار افت سرعت و کندی میشوند.

برخی از موارد فوق ممکن است با تنظیمات درست ادمین رفع شود ولی واقع بین باشید تخصص اخرین چیزی است که می توانید به سادگی با پول کم آنرا خریداری کنید و احتمال وقوع موارد فوق زیاد است.

در انتها پیشنهاد میکنم به جای اینکه به دنبال سرور های اشتراکی باشید از سرور های مجازی و یا اختصاصی بهره ببرید و برای کسب و کار خود ارزش قائل شوید.

طراحی سایت و اجاره هاست های اختصاصی و مجازی

ارسال پست و خبر به صورت خودکار در کانال یا گروه تلگرام

ارسال اتوماتیک مطالب به  تلگرام

اگر صاحب کانال یا گروهی هستید که اعضای زیادی دارد و یا در نظر دارید که کانالی را برای هدفی خاص ایجاد کنید ولی زمانی برای پیدا کردن محتوا و درج آن در کانال ندارید این مطلب به کار شما می آید:

ابتدا نگاهی به این کانال بیاندازید

کانال رسمی نارون خبر

همانطوری که مشاهده میکنید بیش از 3000 پست (تا تاریخ 1396/05/02) در این کانال ثبت گردیده است این تعداد پست تنها در مدت کمتر از 1 ماه در این کانال تازه تاسیس درج شده است.

روش کار چگونه است ؟

به سادگی با استفاده از کد های API که تلگرام در اختیار عموم قرار داده است می توانید این کار را انجام دهید و تنها کمی دانش برنامه نویسی چاشنی کار است

منابع کجا هستند ؟

اطلاعات ثبت شده از چند منبع مختلف مانند اخبار روزنامه ایران و وبلاگ اخبار فناوری و تکنولوژی دیجیاتو جمع آوری میشود و در نهایت املاک عکسدار ثبت شده توسط کاربران در سایت مسکن نارون نیز پس از تائید در این کانال درج میشوند.

اما چگونه ؟

نرم افزار نوشته شده در ورای یک صفحه اینترنتی زنده (پر بازدید) قرار گرفته است که پس از هربازدید در سه دسته اشاره شده بررسی میکند و در صورت وجود مطلب جدید توسط API Telegram آنرا در کانال پست میکند.

پیام آخر

در صورتی که برنامه نویس هستید و برای انجام اینکار سوال دارید در این بخش سوال خود را مطرح کنید.

در صورتی که دانش برنامه نویسی ندارید و تصمیم ارسال اخبار و شاید اطلاعات کسب و کار خود به صورت خودکار را در کانال و یاگروه را دارید از طریق ID زیر در تلگرام با من در تماس باشید

تگرام مدیریت : haririan_ali