دوشنبه, ۱۰ اردیبهشت, ۱۴۰۳ / 29 April, 2024
مجله ویستا

UML، زبان استاندارد جهانی برای مدل سازی اصطلاحات


UML، زبان استاندارد جهانی برای مدل سازی اصطلاحات
با کمی اغماض می توان ادعا کرد که در میان شاخه های مختلف مهندسی در هر کدام که دارای قدمت بیشتری است، همگرایی بیشتری در اتخاذ روش و ابزار برای انجام اعمال نسبتاً مشابه از میان متخصصان و متولیان آن رشته وجود دارد. به طور مثال در حال حاضر برای اجرای یک سازه در هر نقطه از دنیا، مهندسین عمران از یک روند همسان با توالی مشابه شامل:
الف) تولید طرح عمرانی
ب) پیاده سازی نقشه
ج) محاسبات سازه ای
د) اجرا استفاده می کنند.
ولی در رشته نوپایی چون مهندسی نرم افزار، گاه چنان روش ها متفاوت است که از دید یک ناظر خارجی، دو تیم نرم افزاری مختلف که هر دو قصد تولید محصولی مشابه را دارند، دو تیم در رشته های متفاوت به نظر بیایند. یکی از علل وجود تمایز در تولید نرم افزار میزان تخصص نیرو و زمان به پیاده سازی می باشد. بدین معنا که در نزد بسیاری از برنامه نویسان تولید نرم افزار معادل است با تولید کد. ولی از نظر بعضی دیگر تولید کد فقط بخشی از تولید نرم افزار است که در بسیاری از موارد حتی منابع و زمان اختصاص داده شده به آن در طول پروسه تولید نرم افزار کمتر از ??% می باشد. از یک دیدگاه کلی، پروسه تولید نرم افزار را می توان به دو بخش کلی شامل: الف) تحلیل و طراحی ب) پیاده سازی تقسیم کرد.
از دیدگاه دسته اول برنامه سازان، تحلیل و طراحی صرفاً فهم ذهنی مساله می باشد که دقیقا پس از آن بایستی اقدام به پیاده سازی کرد. در حالیکه در نظر دسته دوم، فاز تحلیل و طراحی پر اهمیت تر از فاز دوم می باشد که بایستی برای انجام آن از متدولوژی ها و روش های استاندارد استفاده کرد. UML یک زبان مدلسازی می باشد که در فاز تحلیل و طراحی مورد استفاده قرار می گیرد.
● مدل سازی (Modelling) چیست؟
مدل سازی یکی از تکنیک های ذهنی بشر می باشد که نه فقط برای اهداف علمی، بلکه برای انجام امور روزمره بشر به دفعات مورد استفاده قرار می گیرد. مدل سازی به طور کلی یعنی شبیه سازی یک محیط با اندازه های متفاوت و از محیط واقعی و احتمالا مواد و مصالحی متمایز از جنس مواد و مصالح محیط مدل شده. در مدل سازی ابتدا اجزای محیط واقعی انتخاب شده و متناسب با هدف مورد نظر از مدل سازی خصوصیاتی از هر یک از اجزای واقعی انتزاع می شود، یعنی به ازای هر یک از اجزای محیط واقعی یک موجودیت تجریدی ساخته می شود و با برقراری ارتباطی مشابه با ارتباط اجزای واقعی، در میان موجودیت های تجریدی، محیط واقعی مدل می شود. برای روشن شدن مثالی می زنیم: فرض کنیم قصد داشته باشیم در فاز طراحی یک اتومبیل میزان موفقیت هوا در مقابل اتومبیل در حال حرکت را بسنجیم یکی از راه ها برای انجام این آزمایش، ساخت یک اتومبیل واقعی، راندن و سپس اندازه گیری مقاومت هوا می باشد که انجام اینکار اگرچه ما را به هدف می رساند، ولی دارای هزینه بالای است. چرا که بایستی ابتدا ماشین ساخته شود، سپس مورد آزمایش قرار گیرد.
در این صورت اگر در آزمایش به نتیجه مورد نظر نرسیم، بایستی دوباره طراحی را تغییر داد، و پس از ساخت یک نمونه واقعی دیگر آزمایش را تکرار کنیم و این روند آنقدر ادامه پیدا کند تا طراحی مناسب برای اتومبیلی با خصوصیات مورد نظر شکل گیرد. می بینیم که چنین روشی بسیار پرهزینه است و این هزینه هم شامل هزینه های اقتصادی است و هم هزینه های زمانی، چون علاوه بر این که در هر مرحله آزمایش بایستی اتومبیل با صرف هزینه بالا ساخته شود، زمان ساخت آن نیز طول خواهد کشید. ولی متخصصان برای انجام چنین آزمایشی به مدل روی می آورند. یعنی یک جسم فیزیکی کوچک با خصوصیات آئرودینامیکی لحاظ شده در طراحی اتومبیل، ساخته می شود و با قرار دادن آن در یک تونل باد، حرکت اتومبیل در فضای واقعی را شبیه سازی می کنند و بدین طریق میزان مقاومت هوا را می سنجند.
نکات مورد توجه در این مدل سازی، یکی اندازه مدل و دیگری خصوصیات آن می باشد. مدل بسیار ساده و کوچک می باشد و از طرفی فقط خصوصیت آئرودینامیکی اتومبیل در مدل لحاظ می شود. چرا که هدف ما از مدل سازی فقط بررسی خصوصیات آئرودینامیکی اتومبیل است و مدل الزاماً نبایستی از جنبه های دیگر، شباهتی به اتومبیل واقعی داشته باشد. مثلا در ساخت چنین مدلی به هیچ وجه به استحکام اجزا و یا زیبایی مدل توجه نمی شود چون بررسی چنین خصوصیاتی خارج از هدف این مدلسازی خاص است. مثال بالا فقط یک جنبه از مدل سازی را بیان می کند و آن جنبه شناختExploration می باشد. یعنی در مدلسازی های مشابه مدل سازی فوق الذکر، هدف از مدل سازی فقط شناخت محیط مورد مدل می باشد. یک جنبه دیگر از مدل سازی تبیین (specitication) می باشد. یعنی گاه برای معرفی و ارایه خصوصیات یک موجودیت واقعی یک مدل از آن ارایه می شود. نقشه جغرافیایی مثال خوبی است که این جنبه از مدل سازی را مورد نظر دارد. پس می توان گفت که هدف از مدل سازی دو چیز می باشد:
الف) شناخت(exploration)
ب) تبیین(specification)
که بر اساس تعریف مساله، مدل سازی یکی یا هر دو هدف را در نظر می گیرد. نکته دیگری که بایستی در مدل سازی توجه کرد، روش (methodology) ساخت یک مدل می باشد. در بعضی موارد مدل چیز بسیار ساده ای است و به راحتی ساخته می شود. ولی در بعضی از موارد مدل خود بسیار پیچیده می باشد هر چند از نظر منطقی غیرممکن می نماید ولی می توان ادعا کرد که در بعضی موارد مدل پیچیده تر از موجودیت واقعی است. زمینه ای که این ادعا در آن مصداق فراوان دارد، نرم افزار می باشد. بنابراین در شاخه ای از مهندسی که مدل سازی حائز اهمیت فراوان می باشد قطعا روش های استانداردی برای ساختن مدل وجود دارد. در نرم افزار، روش های تولید نرم افزار مانند SSAPM ,RUP ,USDP، در واقع روش های مدل سازی می باشند. هر روش مدل سازی طبیعتا نیازمند مصالحی برای ساخت مدل می باشد که در روش های مدل سازی نرم افزاری مصالح لازم برای تولید مدل، زبان های مدل سازی می باشند.
● UMLچیست؟
Unified Modelling Language یک زبان مدل سازی است که در سال ???? به وسیله شرکت Rational معرفی شد. UML یک زبان شی گراست، یعنی اجزا این زبان متناسب با مفاهیم به کار رفته و پارادایم شی گرایی طراحی شده اند.
پس از ارایه مفاهیم شی گرایی در ابتدای دهه ۸۰ میلادی به تدریج روش های شی گرایی تولید نرم افزار به وسیله افراد و سازمان های مختلف ارایه گردید. این روش ها در برگیرنده یک مجموعه علایم برای بیان مفاهیم و ایده ها از یک سو و یک طرح کاری برای تولید نرم افزار از سوی دیگر بود که از مهم ترین این روش ها می توان به OMT,BOOCH ,OOSE اشاره کرد. اگرچه داشتن یک روش استاندارد امری مطلوب است ولی تفاوت روش ها امری است طبیعی و با توجه به تفاوت فراوان در نوع مسایل می توان گفت که حتی وجود روش های مختلف الزامی است. چرا که مثلا در یک پروژه بسیار بزرگ نمی توان همان روشی را به کار برد که در یک پروژه کوچک. ولی زبان و مجموعه علایم از چنین قاعده ای پیروی نمی کند و داشتن یک زبان استاندارد امری بسیار مطلوب و از بعضی دیدگاه ها حتی الزامی می باشد.
یکی از الزامات مهم در داشتن یک زبان استاندارد همگانی ناشی از نقشی است که زبان در ارتباطات به عهده دارد. البته چند گونه بودن زبان خود مولد مشکلات متعددی است. با هدف ارایه یک زبان استاندارد فراگیر شرکت Rational با گردآوری سه نفر از ارایه کنندگان معتبرترین روش های شی گرا یعنی Irar jacobson مبدع روش OOSE، BOOCH مبدع روشی با همین نام، Rambaughمبدع روش OMT و با اخذ نقاط قدرت سه روش فوق الذکر، یک زبان استاندارد به نامUML ارایه کرد. این زبان پس از ارایه از سوی ( Mamgement Group) که یکی از معتبرترین سازمان های جهانی در زمینه شی گرایی می باشد به عنوان یک استاندارد پذیرفته شد. پس از ارایه این زبان و پذیرفته شدن آن به عنوان یک استاندارد جهانی در زمینه نرم افزار، علاوه پروسه این زبان و ارایه متولوژی های مبتنی بر آن مانند usop و rup از سوی افراد و سازمان های مختلف، متخصصین در پی یافتن کاربرد این زبان در زمینه های دیگر فنی و مخصوصی بر آمدند. برآیند این تلاش ها در حال حاضر UML را به عنوان قدرتمندترین زبان مدل سازی در دنیای نرم افزار مطرح ساخته است.
http://qomelecom.parsiblog.com/


همچنین مشاهده کنید