بخشی از مقاله
چکیده:
توسعهی نرمافزار تنها نوشتن کدهای برنامه نیست بلکه چرخهای از تمامی فرآیندها جهت ساخت نرمافزار است، که این مراحل شامل جمعآوری نیازهای کاربران، طراحی، نوشتن کد و در آخر تست و کنترل کیفیت نرمافزار است. اسکرام، چارچوبی قابل انعطاف و جامع برای توسعهی محصول با روش تکرارپذیر، افزایشی و همچنین از سری روشهای چابک بوده که در آن تمامی گروههای توسعه به عنوان یک واحد برای رسیدن به هدف مشترک عمل میکنند. لذا در این پژوهش، با استفاده از تلفیق آنتولوژی و متدولوژی اسکرام فرآیند برنامهریزی نیازمندیهای نرمافزار را بهبود داده ایم.
مقدمه:
هر انسان در زندگی روزمرهی خود بنا به سلیقهی شخصی یا ضرورت کاری با اشیای مختلفی سروکار دارد. انسان به طور ناخودآگاه اشیای پیرامون خود را بر اساس خصلتهای مشترک و یا ارتباطات خاص بین آنها دستهبندی میکند. این دستهبندی به درک محیط و پردازش تراکنشهای آن کمک شایانی میکند. بنابراین میتوان گفت هر انسان به فراخور محیطی که در آن قرار دارد، نسبت به اشیای خاصی شناخت پیدا نموده، این اشیا را دستهبندی کرده و روابط بین آنها را مشخص میکند.
هم اکنون دهها میلیارد صفحه در اینترنت به هم پیوند داده شده و وب را مبدل به گنجینهای عظیم از دادهها و اطلاعات ارزشمند کردهاند. مشکل اصلی وب برخاسته از این واقعیت است که اطلاعات پراکنده در وب صرفاً توسط انسان قابل فهم است و از ماشینها، فقط برای نمایش و پردازش دادهها استفاده میشود، بدون آنکه معنا و مفهوم دادهها را درک کنند. وب معنایی از غنی کردن وب امروزی حاصل میشود به گونهای که به دادههای موجود در وب کنونی، معنا و مفهوم قابل فهم توسط ماشین نیز افزوده میگردد تا ماشینها به خوبی از اطلاعات، سرویسها و عملکردهای موجود در پهنهی وب استفاده کنند - مرتضی نوروزی و همکاران، . - 1931
وب معنایی همان کاری را با دادهها انجام میدهد که وب با استفاده از HTML با سامانههای متنی انجام داد؛ به عبارت دیگر، اگر وب با استفاده از HTML اسناد برخط را مانند یک کتاب عظیم درآورده و وب معنایی تمام دادههای پراکنده در وب را مانند یک پایگاه دادهی بزرگ میکند. در زمینهی وب معنایی، استفاده از خدمات وب معنایی به دلیل توان و انعطافپذیری بالا وعده داده میشود. خدمات وب معنایی خدمات وب را شرح داده و سبب کشف خودکار میشود - کابرال و همکاران، . - 4112
خدمات وب، اجزای نرمافزاری میباشند که برای انجام کاری خاص به خوبی تعریف شده و قابلیت استفادهی مجدد را دارند. از طریق مکانیزم تحت وب، وظایف استانداردشده را میتوان کشف، استناد و با استفاده از چارچوب مدلسازی به خوبی طراحی نمود. فناوری خدمات وب کنونی به طور عمده با استفاده از استانداردهای باز - بدون اینکه به توصیف معنایی در مورد ویژگیها بپردازد - ، تعریف شده است. این کمبود معنایی به دخالت انسان برای انجام وظایف اشاره دارد، مانند کشف سرویس و ترکیببندی که استفادهی آنها در سامانههای پیچیده، پیچیده است - گومز و همکاران، . - 4113
در حال حاضر برخی ابزارهای بزرگ برای وب معنایی وجود دارد. Protégé، در دانشگاه استنفورد، توسعه یافته است، یک ویرایشگر آنتولوژی منبع باز میباشد که در جاوا ساخته شده است. Protégé، به دلیل ایجاد یک پلتفرم برای توسعه، تعمیر و نگهداری و تجسم آنتولوژی به عنوان ابزاری قدرتمند به شمار میرود. هستهی اصلی آن یکی دیگر از ابزارهای معنایی بنام Jena است - API برای زبان آنتولوژی. - OWL که اجازه انجام کارهایی مانند اضافه کردن یک کلاس به آنتولوژی، بدون نیاز به زبان OWL را میدهد. بسترهای نرمافزاری Protégé و Jena در جاوا ساخته شده است که بسیاری از توسعه دهندگان معنایی را برای استفاده از جاوا تشویق میکند. توسعهی معنایی در تمام پلتفرمها یکنواخت نیست. پلت فرم مایکروسافت، دارای پشتیبانی کمتری برای آنتولوژی میباشد.
اگرچه عبارت "آنتولوژی" در قرن هجدهم برای ارجاع به شناخت عمومی از کلمهی "بودن" در یونان باستان معرفی شد، اما آنتولوژی به عنوان یک نظام از آغاز تاریخ - قبلاً به عنوان بخشی از علم متافیزیک - اجرا شده است. در سامانهای اطلاعات معمولاً آنتولوژی به صورت زیر تعریف میشود: یک توصیف واضح و صریح از یک مفهوم مشترک . از آنتولوژی برای نمایش تصویری از جهان انتزاعی به صورت واضح و ساده، به منظور استخراج واژگان از یک دامنه استفاده میکنند. داشتن تصویر واضح ممکن است به استخراج مفاهیم و ارتباطات آنها از جهان واقعی منجر شود. از آن جایی که آنتولوژیها به هنگام شرح ایدهها و رابطهها از مجموعهی واژگان مشترک و مشابه استفاده میکنند، همچنین به عنوان یک ابزار به صورت تعریفی روشن در تشخیص معنای سامانههای اصطلاحات استفاده میشوند.
اسکرام از سری رویکردهای چابک برای توسعهی محصولات و خدمات نوآورانه است. با توجه به اینکه اسکرام راهکاری ساده و تضمینشده یا داروی جادویی نیست؛ اما میتواند امکانی فراهم کند تا بتوانید تغییراتی را که در فعالیتهای توسعهی محصولات پیچیده به وجود میآیند بپذیرید. بر ارزشهای صداقت، شفافیت، شجاعت، احترام، تمرکز، اعتماد، توانمندسازی و همکاری است. همچنین چارچوبی برای سازماندهی و اجراست. این چارچوب زیربنایی را برای سازمان فراهم میکند تا پیادهسازی مناسب خود از فعالیتهای مهندسی و تجربههای اسکرام را به آن بیفزاید. نتیجهی کار، ایجاد نسخهای خاص و منحصربهفرد از اسکرام برای سازمان خواهد بود.
تمرکز اسکرام بر تحویل ویژگیها در هر تکرار باعث میشود نتایج به سرعت قابل تحویل باشند، چرا که ویژگیها کار میکنند و یکپارچه، آزمون شده و از دیدگاه کسبوکار باارزش هستند. از طرف دیگر، اسکرام به سازمانها کمک میکند تا در این دنیای پیچیده موفق باشند؛ دنیایی که باید خود را به سرعت با اقدامات رقبا، مشتریان، کاربران، نهادهای قانونگذار و سایر ذینفعانی که در ارتباط تنگاتنگی با یکدیگر دارند، تطبیق دهند. بهعلاوه اسکرام باعث خوشنودی همهی دستاندرکاران میشود. نهتنها مشتریان از نتیجهی کار لذت خواهند برد، بلکه افرادی هم که کار را انجام میدهند واقعاً لذت میبرند. ٱنها از همکاری دائمی و جدی که موجب بهتر شدن روابط بین افراد و افزایش اعتماد دوطرفه بین اعضای تیم میشود، لذت میبرند - مهران بی بالان و همکاران، . - 1934
هر تیم از سه نقش تشکیل شده است: مالک محصول، استاد اسکرام و تیم توسعه. هنگام اجرای اسکرام ممکن است نقشهای دیگری نیز در سازمان وجود داشته باشد، اما اسکرام فقط به این سه نقش نیاز دارد - مهران بی بالان و همکاران، . - 1934 مسئولیت انتخاب ویژگیها و ترتیب انجام آنها بر عهدهی مالک محصول است. استاد اسکرام مسئول راهنمایی اعضای تیم است تا فرآیند منحصربهفرد خود را مبتنی بر چارچوب اسکرام ایجاد و اجرا کنند. تیم توسعه مسئول تعیین چگونگی تحقق خواستههای مالک محصول است. اسکرام همهی نقشهای سازمان را تعریف نکرده، بلکه فقط نقشهای مختص به خود را مشخص نموده است.
طرح پیشنهادی:
پس از بررسی نیازمندیهای نرم افزار و ارائه برنامههای زمانبندی، نمودارهای مورد نظر با توجه به آنتولوژی سیستم تعیین شده و با استفاده از نرم افزار پروتچ و زبان OWL تهیه میگردد. در واقع در این فاز، با استفاده از کلاسهای سیستم نرم افزاری و ارتباطات موجود، ارتباط سازمانها و زیر سازمانها، نمودار تاکسونومی و غیره را پیاده سازی و رسم میکنیم.
شکل :1 فلوچارت روش پیشنهادی
مراحل اجرای روش پیشنهادی جهت بهبود تحلیل نیازمندی نرم افزار با استفاده از تلفیق آنتولوژی در چارجوب اسکرام عبارتند از: - 1مطالعه و بررسی روشهای ارائه شده قبلی - 4تحلیل نیازمندیهای نرم افزار با استفاده از نمودارهای آنتولوژی - 9 پیاده سازی و رسم کلاسهای سیستم نرم افزاری و ارتباطات موجود، ارتباط سازمانها و زیر سازمانها، نمودار تاکسونومی و غیره با پروتج - 2 ارزیابی مدل تهیه شده و مقایسه با سایر روشها.