متمرکز کردن هستی شناسی ها در فرآیندهای مهندسی نرم افزار عامل گرا

ساخت وبلاگ

تعداد زیادی از روش های توسعه سیستم های چند عاملی (MAS) وجود دارد و همه برای برجستگی رقابت می کنند. این مقاله از متحد کردن بهترین فعالیت های نژاد از این روش ها حمایت می کند و دو رویکرد موجود را برای یکسان کردن دسترسی به آنها بررسی می کند. این یک رویکرد جایگزین را پیشنهاد می کند که بر استفاده از دانش دامنه از طریق هستی شناسی ها به عنوان ارائه بهترین پتانسیل برای یکپارچه سازی دسترسی به آن ها تمرکز دارد. اتکا به هستی شناسی ها انعطاف پذیری را در فرآیند و استفاده از محصولات کاری در متدولوژی فراهم می کند. تمرکز بر دانش حوزه، تعداد وظایف روش شناختی اجباری را کاهش می دهد و در عین حال زمینه را برای استفاده مجدد با توجه به طراحی ها و اجزای سیستم ایجاد می کند. این مقاله بیشتر به طرح و استدلال برای چرخه عمر توسعه نرم افزار کامل برای MAS می پردازد که در آن هستی شناسی هایی که دانش دامنه را بیان می کنند، مصنوعات اصلی هستند.

روی یک دست نوشته کار می کنید؟

مقدمه

افزایش علاقه به مهندسی یک کلاس از سیستم های هوشمند توزیع شده، Multi Agent Systems، منجر به توجه فزاینده به مسائل استفاده مجدد مهندسی نرم افزار در سطوح بالاتر شده است. این شامل استفاده مجدد از مدل ها، استفاده مجدد از دانش توسعه پروژه و همچنین دانش مدیریت پروژه می شود [9]. مانند هر پروژه توسعه نرم افزاری، استفاده مجدد باید برای توسعه سیستم های چند عاملی (MAS) نیز مورد توجه قرار گیرد. به عبارت دیگر، استفاده مجدد از مدل های MAS و مهارت های توسعه دهندگان MAS باید تسهیل شود. ما در این مقاله استدلال می کنیم که هر دو بعد استفاده مجدد را می توان با استفاده از هستی شناسی ها به عنوان ساختارهای مرکزی برای هدایت کل چرخه حیات توسعه نرم افزار (SDLC) تسهیل کرد. این مقاله توسعه MAS مبتنی بر هستی شناسی را ترویج می کند. ادغام قابل توجهی بین هستی شناسی ها و مهندسی نرم افزار به دست آمده است. در ODE [15] و Onto [19]. این مقاله بخشی از یک تلاش مداوم برای (1) قرار دادن هستی شناسی ها در مرکز چرخه عمر توسعه نرم افزار (SDLC) برای MAS ها، (2) افزایش استفاده مجدد از محصولات کاری MAS و (iii) یکپارچه سازی مهندسی نرم افزار مبتنی بر عامل است. دانش

ویژگی های منحصربه فرد MAS اکثر متدولوژی های توسعه سیستم های استاندارد را غیرقابل اجرا کرده است و باعث توسعه متدولوژی های مهندسی نرم افزار عامل گرا (AOSE) شده است. باید گفت که، با این حال، ماهیت تکرار شونده فرآیند برای همه آن روش شناسی ها مشترک است. این نیاز معمولی برای توسعه هر سیستم اطلاعاتی مبتنی بر دانش حفظ می شود. به عبارت دیگر، تمام روش شناسی های جدید به طور تکراری مراحل توسعه مشترک را مشاهده می کنند: تعریف نیاز، تجزیه و تحلیل، طراحی و پیاده سازی [27]. با این حال، بررسی سیستماتیک آن روش ها [1، 29، 30] نشان داده است که بیشتر آنها هنوز مسائل بلندمدت مرتبط با استفاده از MAS را در نظر نمی گیرند. آنها استفاده مجدد از سیستم را با گنجاندن قابلیت توسعه در نظر نمی گیرند. آنها طول عمر سیستم را با تسهیل نگهداری و/یا قابلیت همکاری در نظر نمی گیرند. علاوه بر این، آنها با اطمینان از اینکه محصولات کاری پروژه توسعه به اندازه کافی قابل استفاده مجدد هستند، از سرمایه گذاری محافظت نمی کنند. این مقاله یک دستور کار تحقیقاتی و یک مسیر ایجاد روش برای حل آن مسائل بلند مدت را ترسیم می کند. از طریق استفاده از هستی شناسی ها در طول چرخه عمر توسعه نرم افزار و در عین حال سازگاری با مدل های فرآیند تکراری، این مقاله اسکلت یک فرآیند مبتنی بر هستی شناسی را ترسیم می کند.

به سمت این ، بیدون و همکاران.[5-8] توسعه عوامل را به روشی برای جدا کردن دانش دامنه از دانش حل مسئله پیشنهاد داد. این به منظور تقویت استفاده مجدد در توسعه سیستم های عامل است. دانش دامنه از طریق استفاده از هستی شناسی وابسته به دامنه قابل استفاده می شود. فرآیند حل مسئله/دامنه دانش از طریق استفاده از روشهای قابل استفاده مجدد از مشکل (PSM) تهیه می شود. به عنوان مثال. اینها با واحدهای فرآیند تجاری در مجموعه ای از حوزه های کاربردی مشابه مطابقت دارد. آنها در اصل ساختارهای سطح بالایی هستند که یک فرآیند استدلال را برای حل مشکلات مشابه در حوزه های مختلف توصیف می کنند [3 ، 10 ، 31]. هر دو مؤلفه ، هستی شناسی دامنه و روشهای حل مسئله از طریق استقرار یک کتابخانه از اجزای مدولار دوباره مورد استفاده قرار می گیرند. این امر به توسعه مستقل از دامنه سیستم های عامل محور ، کاهش هزینه های توسعه و سرعت بخشیدن به روند توسعه کمک می کند. کار شرح داده شده در این مقاله از [7 ، 12] ادامه دارد. نقش رابط های اجزای قابل استفاده مجدد در طراحی یک کتابخانه از اجزای قابل استفاده مجدد که بطور خاص به سمت مهندسی نرم افزار عامل محور گرایش یافته اند ، تجزیه و تحلیل می شود. در مرحله طراحی و انتخاب اجزای قابل استفاده مجدد ، عوامل تعامل هستند که برای شناسایی مناسب ترین مؤلفه قابل استفاده مجدد ، نشانگرهایی را ارائه می دهند. به همین ترتیب ، مشخصات مربوط به تعامل ، کتابخانه مؤلفه ها را برای هدایت توسعه دهندگان به سمت طراحی راه حل ها که در آن برای حل مسئله ضروری است ، گسترش می دهد ، با تعامل بوجود آمده هم در همکاری و هم در مذاکره عوامل.

بقیه مقاله به شرح زیر سازماندهی شده است: بخش "یک طرح مهندسی نرم افزار Ontology-محور MAS" زیربنای مفهومی برای قرار دادن هستی شناسی در قلب شیوه توسعه نرم افزار (SDLC) در توسعه سیستم های چند عامل فراهم می کند. بخش "توسعه روش شناختی مبتنی بر هستی شناسی MAS" این موضوع را به یک طرح از یک روش مبتنی بر هستی شناسی تکراری تبدیل می کند و توضیح می دهد که چگونه می توان این امر را با یک زمینه خاص خاص سازگار کرد. سرانجام ، بخش "نتیجه گیری" با خلاصه و بحث در مورد کارهای آینده.

یک طرح مهندسی نرم افزار MAS محور محور

مدل سازی مفهومی در مهندسی دانش به دنبال تعریف مفاهیم و روابط کلیدی است که دانش را در هر زمینه معینی تشکیل می دهند [22، 28]. بیان این گونه مدل ها در قالب هستی شناسی، زمینه را برای استفاده مجدد از این مفاهیم و روابط در قالب نرم افزار در ارتباط با فرآیندهای سازمانی مکمل فراهم می کند [17]. پیچیدگی دانش، توسعه یک مجموعه واحد و کامل را غیرعملی می سازد [28] که به نوبه خود منجر به تکثیر هستی شناسی ها برای توضیح زمینه های مختلف شده است. حتی در زمینه توسعه یکسان، رایج است که تعدادی از هستی شناسی ها مرتبط هستند. در دسترس بودن هستی شناسی های متعدد در اینجا به عنوان یک منبع بالقوه مفید برای توسعه MAS در نظر گرفته می شود. برای بهره برداری از این منبع، متدولوژی های MAS نیاز به ترکیب آنتولوژی محور تجزیه و تحلیل و وظایف طراحی دارند. این وظایف به درجات متفاوتی از انتزاعات نیاز دارند و محصولات کاری با درجه های متفاوتی از رسمیت را همانطور که توسط SDLC پشتیبانی می کنند منعکس می کنند. در اصل، کار در اینجا از طراحی معماری خاصی از سیستم توزیع شده، MAS پشتیبانی می کند. در این معماری، هستی شناسی ها در ترکیب با وظایف پیشنهادی مجموعه ای از الگوهای نرم افزاری را تشکیل می دهند که استفاده مجدد و توسعه یک MAS را تسهیل می کند. انتزاعات مختلف در یک هستی شناسی یا هستی شناسی های متعدد می توانند از وظایف تحلیل و طراحی در مراحل مختلف توسعه یک MAS پشتیبانی کنند. وظایفی که می توانند توسط هستی شناسی ها پشتیبانی شوند در این مقاله شناسایی می شوند.

MAS از مجموعه ناهمگن از عوامل با اطلاعات و قابلیت های متمایز تشکیل شده است. هماهنگی و همکاری بین عوامل ، دستیابی به اهداف جمعی را تسهیل می کند که در غیر این صورت توسط یک عامل واحد که در انزوا کار می کند ، نمی توان به دست آورد [33]. فقط تعداد کمی از روشهای MAS موجود شامل هستی شناسی در محصولات و فرآیندهای کاری آنها است. این پشتیبانی به طور کلی محدود به مراحل اولیه توسعه است تا از قوام داخلی مدل ها در مرحله تجزیه و تحلیل پشتیبانی کند. اگرچه ، Mobmas Methodology Agent نشان می دهد که می توان از هستی شناسی برای تأیید ساختار مدل ها ، برای پشتیبانی از قابلیت همکاری و استفاده مجدد استفاده کرد [29 ، 30] ، هیچ فرآیند صریح در جهت آن مشخص نمی شود. به سمت چنین فرآیندی ، دو نوآوری مهم در حمایت از SE (i) یک چارچوب روش شناختی مبتنی بر هستی شناسی مورد نیاز است که می تواند برای ساخت روشهای جدید AOSE هستی شناسی محور از ابتدا و (ب) مخزن افزودنی مورد استفاده قرار گیرد. عناصر روش شناختی که می توانند به یک روش AOSE موجود اضافه شوند.

با وجود تمام مزایای استفاده مجدد برای چنین فرایندی ، این نگرانی گسترده تر از استفاده مجدد از استفاده مجدد از دانش SE را نیز برطرف می کند. همانطور که قبلاً مورد بحث قرار گرفت ، تحقق فزاینده ای وجود دارد که به برخی از شکل های نوآورانه ادغام نیاز است. برای تولید یک رویکرد روش شناختی مؤثرتر از بدنه موجود دانش مهندسی نرم افزار عامل محور ، مهم است که ابتدا جوانب مثبت و منفی نقشه راه را به جلو بکشید.

دو موضوع مهم برای در نظر گرفتن بسیار مهم است: (i) چقدر آسان است که توسعه دهندگان نرم افزار در واقع نتیجه یکپارچه را اعمال کنند (ب) رویکرد ادغام در وهله اول چقدر امکان پذیر است. دو رویکرد که قبلاً مورد استفاده قرار گرفته است ، اکنون از این دو دیدگاه مورد بحث قرار گرفته است.

رویکرد ad-hoc به طور موثری روشهای موجود را یک بار ، با یک روش خودسرانه به عنوان نقطه شروع و بدون راهنمایی در زمینه اتصال به روش ها ، ادغام می کند. این رویکرد امکان پذیر نیست. یک رویکرد موقت می تواند منجر به تکرار و یک روش غیر ضروری بزرگ و دست و پا گیر شود. این نباید تعجب آور باشد زیرا هر روش خاص نگرانی خاصی را هدف قرار می دهد. ما می دانیم که آنها در مدل سازی و مراحل بسیار همپوشانی دارند. یک روش شناسی بیش از حد بزرگ باعث می شود تا توسعه دهندگان نرم افزار متعاقباً برای مقابله با آنها تلاش کنند و به احتمال زیاد آنها پیشرفت مربوطه را رها می کنند (Cossentino و همکاران 2004).

مورد دوم یک رویکرد متامودلینگ است که به یک زبان رسمی یکپارچه (یک متامودل) متکی است برای بیان قطعات متدولوژی مختلف از منابع مختلف (شاید با استفاده از یک متامودل مانند FAML (پاورقی شهرت 1 زبان مدل سازی عامل گرا) که در [7] توضیح داده شده است. این رویکرد برای ایجاد مخزن قطعات متد نیاز به مجموعه ای از روش های همه کاره دارد. یک مدیر پروژه متعاقباً از زبان وحدت استفاده می کند و نگرانی و طعم مورد نیاز را تعیین می کند. این رویکرد بار بیش از حد برای توسعه مخزن و مدیر پروژه می گذارد. با وجود اجتنابناسازگاری یا تکرار بین روشها ، فقط زیر مجموعه های انتخاب شده از اجزای بازنویسی شده روش شناسی می توانند در هر زمان یکپارچه شوند ، و این بسیار وقت گیر است. علاوه بر این ، منطقه نوظهور AOSE ، تجربه توسعه محدود است و معیارهای پروژه انتخاب ممکن استپیشینی شناخته نشده است.

مباحث مربوط به بخش های "مقدمه" و "یک طرح مهندسی نرم افزار Ontology-MAS" از حمایت از کتابخانه های مؤلفه ها برای حمایت از یک پایان اتحاد حمایت می کند. اما نیاز به تعادل بین بازتولید قطعات روش مورد نیاز زبان یکپارچه (در رویکرد متامودلینگ) و نتیجه دست و پا گیر رویکرد موقت وجود دارد. این مقاله با استفاده از هستی شناسی دامنه به عنوان یک آثار باستانی مدل ، یک رویکرد جایگزین و بالقوه مکمل ارائه شده است. از تکنیک های هستی شناسی توسعه یافته در اینجا می توان برای تقویت رویکرد متامودلینگ استفاده کرد.

برای جلوگیری از نوشتن مجدد دست و پا گیر روشهای موجود با استفاده از یک زبان رسمی مشترک (متامودل) ، یک مرحله شناسایی ویژگی کمتر رسمی ارائه شده است. این رویکرد نیاز به تلاش بسیار کمتری دارد و بدون نیاز به همکاری سازندگان هستی شناسی قابل تحقق است. این رویکرد همچنین می تواند توسعه دهندگان را از کار بسیار تخصصی و دشوار ادغام اجزای روش شناسی بر اساس هر پروژه خلاص کند. این امر به این دلیل است که این رویکرد به استفاده از هستی شناسی های صریح به عنوان یک نقطه کانونی در طول توسعه متکی است و از این طریق ترکیب ویژگی های روشهای مختلف AOSE را تسهیل می کند ، استفاده از آنتولوژی ها به عنوان ابزاری برای نقشه برداری معنایی برای تبدیل محصولات کاری نرم افزاری متناسب با مراحل مختلف توسعه. با حمایت قابل ملاحظه ای از فرآیندها و محصولات ، این می تواند به طور مؤثر از ارتباط آن با سایر سیستم ها پشتیبانی کند و می تواند به عنوان یک مزیت سودمند در نظر گرفته شود.

استفاده از هستی شناسی های دامنه خارج از قفسه به عنوان نقطه شروع مرحله توسعه سیستم، تمرکز تلاش های ما در استفاده کاربردی از هستی شناسی ها در مهندسی نرم افزار عامل خواهد بود. در پرداختن به قابلیت همکاری و استفاده مجدد از محصول کاری، مسئله صرفاً این نیست که یک روش AOSE مبتنی بر هستی شناسی باید کامل و سازگار باشد و سیستم هایی را تولید کند که به راحتی بتوانند در زمینه های جدید تکامل یابند. مسئله عمیق تر این است که باید یک مرحله تعمیر و نگهداری بسیار توسعه یافته داشته باشد و توسعه دهندگان را در استفاده مجدد از سیستم ها و اجزای موجود که قبلاً توسعه داده اند راهنمایی کند. استفاده مجدد هدف اصلی استفاده از هستی شناسی ها به طور کلی است. هستی شناسی ها در اصل کپسوله سازی مجدد دانش هستند [11، 32، 34]. در استقرار آنها در فرآیندهای توسعه MAS، به طور بالقوه هزینه طولانی مدت استقرار سیستم های مبتنی بر عامل را کاهش می دهد.

دو سهم مهم در پیشرفته ترین مهندسی نرم افزار مبتنی بر عامل به شرح زیر شناسایی می شود:

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

دوم ، تعهدات هستی شناختی مربوط به طراحی سیستم چند عامل در طول طراحی و توسعه واقعی خود به صراحت انجام می شود. در کاوش در تعامل های مربوط به هستی شناسی در حال حاضر بین فازهای تجزیه و تحلیل و طراحی توسعه نرم افزار برای MAS ، تأیید تکراری در طول طراحی و توسعه سیستم نیز امکان پذیر می شود. یک رویکرد اعتبار سنجی برای تکمیل این دیدگاه مبتنی بر هستی شناسی اخیراً در [20] ساخته شده است تا دقیقاً در طول ایجاد مدلهای مورد نیاز MAS از هستی شناسی استفاده شود. با توجه به بهبود فرایند ایجاد محصولات کاری نرم افزاری متوسط ، استفاده از یک روش توسعه مبتنی بر هستی شناسی بدون عناصر فرآیند مناسب که می توانند دانش دامنه را در هستی شناسی مهار کنند ، غیرممکن است. به عبارت دیگر ، وجود روشهای حل مسئله با استفاده جزئی از هرگونه هستی شناسی برای هر عامل واحد زوج است. بنابراین ، عناصر فرآیند لازم است تا "بیت ها" را در یک هستی شناسی که در هر زمان مورد نیاز است ، شناسایی کنند. به همین دلیل بخش بعدی بر شناسایی عناصر فرآیند مورد نیاز برای ایجاد یک روش هستی شناسی محور متمرکز است.

توسعه روش شناختی مبتنی بر هستی شناسی ماس

"سیستم اطلاعاتی محور هستی شناسی" سیستمی است که در آن هستی شناسی یک جزء جدایی ناپذیر سیستم است. برای سیستم چند عامل "یک هستی شناسی محور" ، یک هستی شناسی بخشی جدایی ناپذیر از هر عامل در سیستم و خود سیستم است. به عبارت دیگر ، ما یک دیدگاه مبتنی بر هستی شناسی از عوامل را فرض می کنیم ، که در آن هر عامل فرض می شود که یک اثر شناسی محلی دارد که نشان دهنده دانش دانش و دیدگاه آنها الزامات کلی سیستم ها است. براساس این دیدگاه ، یک نماینده در یک سیستم چند عامل یک حل کننده مسئله فردی است که نیاز به دانش در مورد حوزه عملیاتی و دانش حل مسئله دارد تا بتواند ارتباطات مناسب با سایر عوامل و دستکاری مناسب از محیط داده خود را فراهم کند. در این دیدگاه ، دانش یک عامل را به دانش دامنه و دانش حل مسئله طبقه بندی می کنیم. دانش حل مسئله با تکنیک های لازم برای استفاده از هستی شناسی و تبدیل آن به یک سیستم کاری برابر است. تکنیک های خاص برای انواع مختلف مشکلات برای ساخت سیستم های نسبتاً کامل و صالح ضروری است. ما فرآیندهای مبتنی بر هستی شناسی را برای استفاده از هستی شناسی دنبال می کنیم. این همچنین منجر به شناسایی و استفاده مجدد از روشهای همزمان حل مسئله (PSM) می شود. بنابراین ، حمایت از توسعه مبتنی بر هستی شناسی همچنین نیاز به راهنمایی برای توسعه دهندگان برای شناسایی PSM برای عوامل انفرادی و ادغام مناسب این موارد در یک MAS ، عملیاتی کردن عوامل فردی در مطابقت با مدل های تحلیل نیاز دارد.

یکی از جذابیت های اصلی فعالیت های توسعه مبتنی بر هستی شناسی این است که اعتماد به تجزیه و تحلیل و طراحی کاهش می یابد که مهندسی مجدد هستی شناسی با انتخاب مناسب روشهای حل مسئله همراه باشد [3]. بر خلاف بسیاری از روشهای توسعه مبتنی بر دانش ، این فاقد حمایت جامعه توسعه MAS است. به عنوان یک نتیجه ، ما تلاش های اولیه محققان مبتنی بر سیستم دانش را به عنوان مثال تعمیم می دهیم.[21 ، 24] و یک سیستم دانش مبتنی بر دانش (KBS) را به عنوان روش های حل مسئله و مجموعه های مناسب از هستی شناسی مشاهده می کند.

در دیدگاه هستی شناسی ما از عامل ها، هر عامل دیدگاه خاص خود را در مورد هستی شناسی دامنه دارد و هر عاملی برای دستیابی به مجموعه اهداف خود که توسط تحلیل نیازمندی های سیستم تعیین می شود، کار می کنند و هماهنگی بین عامل ها نقش کلیدی درسیستم. این سیستم به طور کلی دارای دانش متنوع و قابلیت های حل مسئله است که در عوامل تشکیل دهنده تجسم یافته است. یک معماری MAS به عنوان چنین پاسخی به تعدادی از کاستی های شناخته شده روش های حل مسئله عمومی [26] می پردازد: مشخصات نیاز دانش ناقص، نیاز حل مسئله ناقص و منابع محاسباتی محدود. با این حال، این مشکلات هنوز ممکن است در سطح عامل فردی اعمال شوند و پیامدهای آنها برای پیگیری فرآیند توسعه هستی شناسی محور واقعاً آموزنده است. برای نمایندگان فردی در یک MAS آنها به صورت زیر ترجمه می شوند:

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

آموزش فارکس برای مبتدی ها...
ما را در سایت آموزش فارکس برای مبتدی ها دنبال می کنید

برچسب : نویسنده : Mihayloo بازدید : <-PostHit-> تاريخ : جمعه 21 بهمن 1401 ساعت: 22:03