بخشی از مقاله
بررسی و مقایسه متدولوژي و ابزار هاي ساخت آنتولوژي در وب معنایی
خلاصه: امروزه آنتولوژيها علاوه برنقش مهمی که در برنامههايمبتنی بر دانش ایفا میکنند، میتوانند تغییرات عظیمی را نیزدر محتواي وب ایجاد نمایند. این تغییر عمده باعث ظهور نسل سوم وب، یعنی وب معنایی شده است. در وب معنایی اطلاعات می بایست بگونه اي ذخیره شوند که براي ماشین ها قابل فهم باشند. این امر نیاز به سطح مناسبی از مفهوم سازي دارد که آنتولوژي ها آن را فراهم می کنند. اگرچه رسیدن به ایده هاي وب معنایی در آینده نزدیک بعید بنظر می رسد، تلاش هاي بسیاري جهت بسط و توسعه مفاهیم آن در حال انجام می باشد. در این میان استفاده از ابزار و متدولوژي مناسب جهت توسعه آنتولوژي هاي وب معنایی ضروري بنظر می رسد. ابزار ها و متدولوژي هاي متعددي جهت توسعه آنتولوژي پیشنهاد شده اند. در این مقاله سعی بر این است که ابزار هاي متداول ساخت از جنبه هاي گوناگون مورد مقایسه قرار گیرند. در حیطه متدولوژي مقایسه بر اساس معیار هاي مشخص شده در یکی از استاندارد مهندسی نرم افزار انجام گرفته است. از نتایج مقایسه می توان جهت شناخت نقاط ضعف و قوت متدولوژي و ابزار ها استفاده نمود.
کلمات کلیدي: وب معنایی، متدولوژي، آنتولوژي.
- 1 مقدمه
وب معنایی فضایی جهانی از جنس محاسبات هوشمند ماشینی ماشینی است که در آن تمامی دانش بشري در حیطه وب به صورتی معنی گرا و با توانایی درك مفهومی از آنها در کنار هم قرار خواهند گرفت. تیم برنرزلی، پدید آورنده مفهوم وب، آینده وب را بصورتی بیان کرده که بر خلاف وب کنونی فقط توسط انسانها قابل فهم نباشد بلکه توسط ماشین ها نیز قابل درك و پردازش است .[1] این امر از طریق داشتن یک زبان بازنمایی از دانش با امکان مفهوم سازي مثل آنچه در آنتولوژي ها آمده است امکان پذیر می باشد.
در واقع هدف از آنتولوژي مفهوم سازي مجموعه اي از مفاهیم در قالب تعریف آنها بهمراه ذکر روابط هر یک با دیگري می باشد .[2] در سال هاي اخیر پیشرفت هاي خوبی در ارائه ابزار ایده ها و ابزار هاي لازم جت توسعه آنتولوژي ها صورت پذیرفته است. آنتولوژي ها شرط لازم براي داشتن وب معناي می باشند، لذا استفاده از ابزار هاي کارا درکنار متدولوژي مناسب جهت توسعه آنتولوژي در یک محدوده خاص از اهمیت ویژه اي برخوردار است. نرم افزار هاي متعددي جهت ایجاد، توسعه و نگهداري آنتولوژي تاکنون معرفی گردیده اند. این ابزار ها غالبا قابلیت استفاده از متدولوژي هاي مختلف را دارند. در کنار ابزار مناسب، داشتن متدولوژي مناسب جهت ساخت موفقیت آمیز یک آنتولوژي از اهمیت بسیاري برخوردار است. در اینجا ضمن مقایسه متدولوژي هاي مختلف جهت ساخت آنتولوژي در چهارچوب استاندارد IEEE ، نرم افزار هاي متداولی چون Protégé ، Isa Viz، Appolo و SWOOP مورد بررسی و مقایسه قرار گرفته اند.
– 2 استاندارد IEEE 1074-1995
استاندارد IEEE 1074-1995ا جهت توصیف پروسه توسعه نرم افزار تدوین شده است .[3] در این استاندارد فعالیت هایی که می بایست انجام گیرد به همراه تکنیک هاي متناظر جهت توسعه یک سیستم نرم افزاري آمده اند. در این استاندارد تقدم و تاخر زمانی فعایت ها مشخص نشده است بلکه تصمیم گیري راجع زمان انجام آنها در سیکل زندگی پروژه انجام می گیرد. همچنین در این استاندارد سیکل زندگی خاصی جهت توسعه پروژه تعریف نگردیده است. در این استانداد تمام فعالیت ها در قالب پروسه هاي زیر انجام می گیرد:
- پروسه مدل سیکل زندگی نرم افزار: شامل فعالیت هاي شناسایی و انتخاب یک سیکل زندگی به همراه تعیین ترتیب فعالیت ها درون پروسه می باشد. براي ساخت آنتولوژي، متدولوژي می بایست یک یا چند سیکل زندگی را پیشنهاد کند، بطوریکه توسعه دهنده بتواند یکی را انتخاب کند.
- پروسه مدیریت پروژه: وظیفه آن ایجاد چهارچوب براي پروژه و اطمینان ازمدیریت صحیح در تمام سیکل زندگی می باشد. فعالیت هایی چون شروع و کنترل پروژه به همراه مدیریت کیفیت نرم افزار به این گروه تعلق دارند. فعالیت هاي این مرحله با توجه به اینکه قابل استفاده براي هر سیستم نرم افزاري می باشند قابل اعمال براي ساخت آنتولوژي نیز می شود. قبل از مقایسه، آنها را به صورت مختصر مقایسه می کنیم.باشند.
- - پروسه توسعه گراي نرم افزار: این پروسه شامل تولید، نصب، اجرا -1-3 متدولوژي Uschold and Kingو نگهداري و کنار گذاري نرم افزار می باشد. اي پروسه شامل این متدولوژي بر اساس توسعه آنتولوژي Enterprise معرفیگروه هاي زیر است: گردیده است [4] و شامل مراحل زیر می باشد:
-
- - پروسه پیش توسعه: این پروسه قبل از توسعه نرم افزار
- - شناسایی هدف: در این مرحله به این سئوال که چرا آنتولوژيانجام می گیرد و شامل فعالیت هاي مربوط به مطالعه باید ساخته شود و هدف از ساخت آن چیست پاسخ داده می محیط عملکرد نرم افزار و امکان سنجی می باشد. مطالعه شود.
محیطی که آنتولوژي در آن نصب می گردد، امکان تجمیع - ساخت آنتولوژي : شامل سه مرحله است
: آنتولوژي در سیستم هاي دیگر نیز می بایست بررسی - تسخیر : شامل شناسایی مفاهیم کلیدي بجاي کلمات گردند. نمایش دهنده آنها، تولید تعریف بدون ابهام از مفاهیم،
- پروسه توسعه: شامل فعالیت هاي لازم جهت ساخت نرم شناسایی واژه ها جهت توصیف مفاهیم و رابطه ها
افزار می باشد. این پروسه خود شامل سه پروسه می باشد: - کد کردن: بدست آوردن نمایش دقیقی از دانش بدست-
پروسه احتیاجات: شامل مجموعه فعالیت هاي تکراري آمده در مرحله تسخیر جهت تولید و توسعه مشخصات مورد نیاز نرم افزاز-
یک پارچه سازي آنتولوژي هاي موجود: شامل استفاده ازمی باشد. آنتولوژي ها می بایست قادر مشخص کردن آنتولوژي هایی است که تاکنون ساخته شده اند.حداقل قسمتی از آنچه از آنها انتظار می رود می- ارزیابی: شامل
داوري بر اساس آنچه در [5] آمده می باشد.باشند. - مستند سازي: در این مرحله، روشی جهت تهیه مستندات
- پروسه طراحی: در این مرحله هدف توسعه یک ساخت ارائه می شودبازنمایی سازماندهی شده از سیستم است که احتیاجات مورد نظر را برآورده نماید. اگرچه آنتولوژي
-2-3 متدولوژي Gruninger And Fox
ها احتیاج به طراحی شدن دارند، نحوه طراحی آنها این متدولوژي بر اساس آنچه که در توسعه TOVE آمده مطرح متفاوت است. بر اساس آنچه در استاندارد آمده است گردیده است.[6] این رو ش در واقع یک مدل منطقی از دانش تحت تبدیل مستقیم مشخصات مورد نیاز به کد پیشنهاد عنوان آنتولوژي ارائه می دهد. پروسه ساخت با توصیف غیر رسمی از نمی گردد. مشخصات برآورده کننده نیازها و سپس تبدیل آنها به شکل رسمی - پروسه پیاده سازي: تبدیل بازنمایی ایجاد شده از صورت می پذیرد. مراحل این متدولوژي بصورت ذیل می باشد سیستم به یک زبان برنامه نویسی. واضح است که این - تسخیر سناریوهاي انگیزه بخشی: بر اساس آنچه در این مرحله در مورد ساخت آنتولوژي نیز می بایست انجام متدولوژي آمده است، انگیزه توسعه آنتولوژي از سناریو هاي گردد. مختلف نشات می گیرد. این سناریو می تواند احتیاجات مورد - پروسه پس توسعه: مربوط به نصب، اجرا، پشتیبانی،نظر در یک نرم افزار یا مسائلی که در آنتولوژي هاي موجود نگهداري و کنارگذاري محصول نرم افزاري می باشد. این مورد ملاحظه قرار نگرفته اند را در برگیرد . پاسخ به این نیاز ها فعالیت ها همگی بعد از ساخت نرم افزار انجام می گیرد. می تواند بعنوان توصیفی غیر رسمی از مفاهیم و روابط بین آنهااین فعالیت نیز براي هرنوع سیستم نرم افزاري می بایست مورد استفاده قرار گیرد.انجام پذیرد. - فرموله کردن سئوالات شایستگی : در این مرحله سئوالاتی بر - پروسه تجمیع: براي کامل شدن فعالیت هاي دیگر لازم است اساس سناریو هاي مرحله قبل تدوین می گردد. آنتولوژي می ضمن اینکه این پروسه از کامل بودن و کیفیت عملکرد پروژه بایست قادر به پاسخ گویی به این سئوالات بر مفاهیم درون خود نیز اطمینان حاصل می کند. فعالیت هاي این پروسه همزمان با باشد. پاسخ به یک سئوال از یک سو می تواند منجر به پاسخ به فعالیت هاي پروسه توسعه گراي نرم افزار انجام می پذیرد و سئوالی عمومی تر گردد و از سوي دیگر می توانند تعیین کننده شامل اعتبار سنجی، مدیریت پیکربندي، مستند سازي و محدودیت هاي یک آنتولوژي نیز باشد. آموزش می باشد. این فاز نیز براي ساخت آنتولوژي می بایست - توصیف واژگان یک آنتولوژي با یک زبان رسمی: این مرحله خود انجام پذیرد. بعنوان مثال کسی که وظیفه نگهداري آنتولوژي را شامل دو زیر مرحله است: دارد می بایست آموزشهاي لازم را ببیند. - بدست آوردن واژگان غیر رسمی: واژگان غیررسمی می توانند از سئوالات شایستگی استخراج گردند. – 3 متدولوؤي هاي
متداول ساخت آنتولوژي - مشخصات واژگان رسمی: در این مرحله واژگان بر اساس جهت ساخت آنتولوژي از متدولوژي هاي مختلفی استفاده می یک زبان رسمی مانند KIF تعریف می گردند فرموله کردن سئوالات شایستگی بااستفاده از واژگان آنتولوژي : بر اساس سئوالات شایستگی غیر فرمال و واژگان تعریف شده در آنتولوژي، سئوالات شایستگی فرموله می شوند. تعیین شرایط براي تعیین کامل بودن : شرایطی جهت تعیین این که آیا پاسخ به سئوالات شایستگی کامل هستند یا خیر استخراج می گردند.
متدولوژي Amaya Berneras
اي متولوژي تحت تاثیر روش مورد استفاده در پروژه KACTUS توسعه یافته است.[7] یکی از اهداف این پروژه امکان سنجی استفاده مجددد از دانش در یک سیسیتم پیچیده و تعیین نقش آنتولوژي در این زمینه بوده است. یکی از مشخصه هاي این متدولوژي ساخت آنتولوژي مورد نیاز یک برنامه کاربردي در حین ساخت آن می باشد. مراحل این متدولوژي بصورت ذیل می باشد:
- مشخصات کاربرد: زمینه کاربرد و مولفه هایی که قرار است مدل سازي گردد مشخص می گردد.
- طراحی مقدماتی بر اساس گروه هاي سطح بالاي آنتولوژي: لیست واژگان و وظایفی که در مرحله قبل تعیین گردیده است جهت بدست آورن یک دید کلی از آنتولوژي استفاده می گردد. این مرحله همچنین شامل بررسی و جستجوي آنتولوژي هاي موجود در دیگر کاربرد ها نیز می شود.
- پالایش و ساختمندکدن آنتولوژي: در مرحله پالایش بستگی هاي غیر ضروري به دیگر آنتولوژي ها حذف می گردد تا بیشترین همگنی در آنتولوژي حاصل گردد.
-4-3 متدولوژي METHODOLOGY
این متدولوژي در آزمایشگاه دانشگاه صنعتی مادرید توسعه داده شده است .[8] این متدولوژي امکان این را دارد که آنتولوژي را در سطح دانش تولید نماید و شامل مراحل زیر می باشد:
- فعالیت هاي مدیریت پروژه: شامل طرح، کنترل و اطمینان از کیفیت می باشد. این امر شامل نحوه انجام کار، نحوه سازماندهی، زمان و منابع مورد نیاز می باشد.
- فعالیت هاي توسعه گرا: شامل مشخصه سازي بعناي اینکه چرا آنتولوژي ساخته می شود و استفاده کنندگان چه کسانی هستند. مفهوم سازي به معناي ساختمند کردن اطلاعات یک محدوده در سطح دانش و پیاده سازي به معناي ساخت مدل با یک زبان رسمی و در نهایت نگهداري می باشد.
- فعالیت هاي پشتیبانی: مجموعه دیگر از فعالیت ها شامل بدست آوردن دانش، ارزیابی و یک پارچه سازي است که حین انجام فعالیت هاي توسعه گرا انجام می پذیرد.