(قسمت اول)
1? تکامل
زبان مدل های متحد (UML) زبانی برای معین کردن ، به تصویر کشیدن ، ساختن و مستند کردن محصولات سیستم های نرم افزاری ، سیستم های تجاری و سایر سیستم های غیر نرم افزاری است. UML برای نشان دادن یک همکاری عالی مهندسی علمی که موفقیت آنها در مدل های سیستم های بزرگ و کامل ثابت شده است می باشد.
تعاریف UML عبارتند از :
معنای (Semantics) UML : ترکیب توصیفات و معنایی UML را تعریف می کند .UML را می توان از لایه های معماری شده و سازمان داده شده درست شده و میان هر بسته ، عناصر مدل را در دوره هایی که از ترکیب انتزاعی خودش ( با استفاده از توضیحات دیاکرام کلاس ) ، نقش فرم های صحیح ( استفاده از متن و توضیح زبان ساختار ) و معناها ( با استفاده از متن های دقیق ) تعریف نمود . و شامل دو ضمیمه : عناصر استاندارد و فهرست لغات UML می باشد.
یاداشت های راهنمای UML : یاداشتها و تهیه مثالهای پشتیبانی را تعریف می کند . یاداشتهای UML ترکیب گرافیکی برای توضیح معنایی توصیفات با UML MetaModel را نشان می دهد.
گسترش UML در پردازش های شئی گرا برای مهندسی نرم افزار و گسترش UML برای مدل های تجاری : توسعه UML ، توسعه پردازش ها است و دامنه معین در UML در تصویر دیاگرام در دوره های که مکانیسم توسعه و پردازش خاص دارند را شامل می شود.
OCL در UML استفاده می شود که برای تفکیک تعریف مستند قید شئی زبان معین (Object Constraint Language Specification) به کار می رو د.
1?1 معنی برای بینندگان
این مستند شده از مجموعه معناهای اولیه جامع و خود مرکب که تعریف شده از معنا ها و یاداشت های UML است می باشد . اولین ملاقات از این مدارک مجموعه مرکب از گروه مدیریت اشیاء ، سازمان دهی استاندارد ها ، نویسندگان کتاب ، فرهیختار و ابزار سازنده است .
نویشندگان آشنایی با آنالیز شئی گرا و طراحی متد ها را به عهده دارند .این مستندات ،برای متن های وابسته به مقدمه روی مدلهای اشیاء برای سیستم های پیچیده نوشته نشده اگر چه آنها می توانند در اتصال با مواد یا یا آموزش استفاده شوند. این مجموعه از مستندات بیشتر نیتشان در ضمیمه های اضافی کتاب ها ، دوره های آموزشی ، و ابزار مناسب در دسترسی به UML بکار می رود.
3? هدف UML
اولین اهداف در طراحی UML عبارت بودند از :
1 ) آماده سازی کاربران خواندن برای استفاده ، توضیح زبان مدل تصویری چنان که بتوان آن را گسترش و تغییر مدل داد .
2 ) میسر ساختن توسعه پذیری و مکانیسمهای تخصصی در برابر مفاهیم هسته داخلی
3 ) وجود استقلال از زبان های برنامه نویسی خاص و گسترش پردازش .
4 )آماده سازی یک قرارداد اساسی برای فهمیدن زبانهای مدل .
5) تفویت رشد از طرف بازار ابزارهای مدلهای شئی گرا.
6) پشتیبانی سطح بالا از گسترش مفهوم از قبیل همکاری ها ، چهار چوب ها ، الگوها ، و اجزاء .
7) یکپارچکی بهترین تمرین است .
این هدف ها که در زیر آمده اند قابل بحث می باشند :
آماده سازی کاربران خواندن برای استفاده ، توضیح زبان مدل تصویری چنان که بتوان آن را گسترش و تغییر مدل داد . این از مهمترین چیزهایی است که استاندارد OOAD یک زبان مدل پشتیبانی می کند که می توان ” خارج از جعبه ” در برابر وظایف عادی مدل هایی که مقصود آنها عمومی می باشد استفاده کرد .
اگر استانداردهای انح
صاری تهیه کنندگان به صورت meta-meta-description که نیاز به تصیحح برای یک مجموعه خاص از مفهومهای مدل ، که نمی خواهند به مقاصدی دست یابند که کاربران اجازه تغییرات مدل بدون گم شدن اطلاعات یا کارهای بیش از حد به نقشه های مدل خودشان برای هر فرم جداگانه را تحمیل کنند.
UML محکم سازی یک مجموعه از مفهومهای درونی و اصلی مدل را که عموما در سراسر متد ها و ابزار های مدل در حال جریان را به عهده دارد. این مفهومها در چندین یا بیشتر برنامه های کاربردی نیاز است .اگر چه هر مفهومی نیازمند هر فسمت از هر برنامه کاربردی نیست . ویژگی مفاهیم یک فرمت meta-meta-level برای کاربران مدل کافی نیست ، زیرا مفاهیم باید از مدل های واقعی رخدادی ، محکم ساخته شده باشند. اگر مفاهیم در چندین منطقه برنامه کاربردی چندین اساس را دار بودند سپس این قبیل قدرت کار کردن نزدیک تری دارند ، اما اساس داخلی یک مفهوم نیازمند بیشترین مناطق استفاده که شبیه و دلیلی برای پشتیبانی مستقیم با استاندارد بدون نیاز به لایه های دیگر هستند .
میسر ساختن توسعه پذیری و مکانیسمهای تخصصی در برابر مفاهیم هسته داخلی . ما انتظار داریم که UML خواهد توانست تصیحح نیاز های جدید را پوشش دهد و دامنه ها را معین نماید . در بعضی از مواقع ما نمی خواهیم در هسته داخلی مفاهیم عمومی برای دوباره تعریف کردن یا پیاده سازی هر منطقه اصلاحی نفوذ کنیم. از اینرو ما کم کم مکانیسمی را که می بایست از پشتیبانی بواسطه قالب عمومی نسبت به نیاز های شروع برای پیاده سازی هسته OOA&D مفهومی خودشان انحراف داشته باشند را توسعه می دهیم .
هسته های مفهومی برای اینکه موفق باشند نمی بای
ست تغییرات داشته باشند . کاربرانی نیاز دارند که توانایی های همچون زیر را داشته باشند .
1)ساخت مدلهای قابل استفاده مفاهیم هسته بدون استفاده از مکانیسم توسعه برای بیشتر کاربرد های عادی
2) اضافه کردن مفاهیم و یاداشت های جدید برای خارج نشدن پوشش هسته
3) انتخاب از میان مفاد گوناگون موجود در مفاهیم موجود ، زمانی که توافقات جمع از بین نرفته باشد.
4) مفاهیم ، یاداشت ها و قیدها ی ویژه برای دامنه های کاربردهای خاص .
وجود استقلال از زبان های برنامه نویسی خاص و گسترش پردازش .UML باید و بتواند از همه زبانهای مستدل برنامه نویسی پشتیبانی نماید .آن همچنین باید و بتواند از متد ها و پردازش های گوناگون مدل های ساخته شده پشتیبانی نماید . UML بدون هیچ اشکالی می تواند از چندن زبان برنامه نویسی و متد های در حال گسترش پشتیبانی نماید .
آماده سازی یک قرارداد اساسی برای فهمیدن زبانهای مدل .زیرا کاربران می خواهند به صورت مرسوم از کمک(Help) برای زبانهایی که نمی دانند استفاده می کنند . آن می بایست مختصرو مفید و معنای نزدیک را برساند یک کسری از این دو اندازه ای ضرر دارد که آن را غیر مفید می سازد . به طور مرسوم نیازی به لایه لایه و غیر مستقیم بودن ندارد .
استفاده از ریاضی سطح پایین غیر صمیمی از دامنه مدل ها ، به طوری که مجموعه ای از یاداشت های تئوری ، یا تعاریف موثرآن برای برنامه نویسی یک پیاده سازی یکسان باشد. UML یک معنی عادی را از یک فرمت ساکن از مدل استفاده شده در MetaModelکه در دیاگرامهای کلاس UML بیان شده آماده می کند .این قرار داد قابل دسترس پذیرفته شده ، محبوب و وسیع است که برای فرمت های خاص از یک مدل و راهنمایی مستقیم برای پیادسازی فرمت های تغییر یافته می باشد .
UML اجبارا ترکیبی خوب در زبان های جامع طبیعی به اضافه اشیاء زبان را بیان می کند .UML معانی قابل استفاده که بیشتر در نهاد زبان مختصر و مفید است را بیان می کند. یک قرارداد نزدیکی کامل به زبان های خاص دارد به طوری که Algol-68 به اندازه کافی به این مقصود نزدیک نبود
تقویت رشد از طرف بازار ابزارهای مدلهای شئی گراء . فعالیت فروشندگان برای پشتیبانی از استاندارد های زبان مدل و استفاده کردن بیشتر کاربران و ابزار ها ، مفید بودن این صنعت را نشان می دهد . ازمانی که فروشندگان هنوز می توانند مقادیر را در ابزار پیاده سازی اضافه کنند فعالیت در آن ضرورت دارد. فعالیت در آن نیاز مند مدل ها،
بدون گم شدن اطلاعات ، که بتوانند میان کاربران و ابزار مبادله کنند. این فقط اگر ابزار روی فرمت و معنی با همه مفهوم مطابقت داشته باشند می تواند رخ دهد . استفاده از یک meta-level سطح بالا راه حلی مناسب نیست مگر اینکه نگاشت های مفهومی شامل استاندارد های سطح کاربر باشد.
پشتیبانی سطح بالا از گسترش مفهوم از قبیل همکاری ها ، چهار چوب ها ، الگوها ، و اجزاء . صراحت در تعریف معانی که مفهوم آن ضرورتی برای همه استفاده کننده های شئی گرا و دوباره استفاده کردن دارد. و تعریف آن در میان مفاد همگانی از یک زبان مدل که همکاری یکتا با زبان UML دارد .
یکپارچکی بهترین تمرین است . یک کلید محرک در میان UML در حال پردازش که یکپارچگی دارد بهترین تمرین در صنعت ، شامل تغییرات وسیع مناظر اساسی روی سطوح مجرد ، دامنه ها ، معماری ، مراحل چرخه حیات ، تکنولوژی پیاده سازی و غیره است . بدرستی که UML بهترین یک یکپارچگی برای تمرین است.
4 . میدان دید در UML
زبان مدل متحد (UML) زبانی خاص ، ساخت یافته ، متجسم و مستند که محصولی از سیستم نرم افزاری متمرکز می باشد است .
اولین و بهترین ، زبان متحد مدل از مفاهیم Boochf, OMT و OOSE ترکیب شده است. این نتایج منفرد ، عمومی ،و استفاده ای وسیع در زبان های مدل برای کاربران خود و سایر متد دارد .
دومین جلو برنده زبان های متحد مدل پوششی است که می توانند با متد های موجود صورت پذیرد..برای مثال ،هدف نویسندگان UML مدلسازی همزمان سیستم های توزیع شده، برای مجاب کردن آدرسدهی کافی UML در دامنه های خودش است .
سومین ، متمرکز شدن زبان متحد مدل روی استاندارد های زبان مدل و نه روی پردازش زبان است ، اگرچه UML می بایست در پردازش مفاهیم بکار رود ، این تجربه ای است که چندین سازمان و دامنه های مسائل نیاز به پردازش های مختلف دارند . ( برا ی مثال ، گسترش پردازش برای نرم افزار های فشرده کوچک بسیار چالب است اما ساخت نرم افزار های فشرده کوچک با وسعت مختلف در سیستم های خودکار منوط به زندگی آن است .)
از اینرو اولین تلاش برای تمرکز روی یک مدل برتر عمومی ( که معانی متحد دارند ) و دومی روی یک یاداشت عمومی (که یک فرد را برای ترجمه معانی خودش آماده می سازد) می باشد . نویسندگان UML گسترش پردازش روی راهبری UseCase ها، معماری مرکزی ، و توسعه و تکراری را ترویج داده اند .
UML تعیین کننده یک زبان مدل ، که متحد کننده اجتماع موافق شئی گرا روی هسته اصلی مدل های مفهومی می باشد . این اجازه انحراف توضیحات در دوره های که مکانیسم توسعه دارند را می دهد . توسعه هایی که UML دارد پیروی از قابل مشاهده بودن مفاهیم در طول اجرا است
این توسعه ها عبارتند از :
• آمادگی کافی معنی شناسی و نماد ها برای آدرسهای وسیع مرکب از موضوعات مدل های همزمان در یک هدایت و سبک اقتصادی .
• آمادگی کافی معنی شناسی برای همانند سازی آدرس مورد انتظار مدل های نمونه آینده ، وابستگی ویژه برای تکنولوژی اجزاء ، محاسبه بدنه توزیع شده ، و اجرا پذیری .
• آمادگی مکانیسم توسعه پذیری به طوری که یک پروژه مستقل بتواند MetaModel را برای کاربرد ها به سوی ارزش پایین گسترش دهد . ما نمی خواهیم که کاربران نیاز داشته باشند که خودشان را با UML MetaModel وقف دهند.
• آمادگی مکانیسم توسعه پذیری به طوری در آینده ، مدل های های در حال رشد به UML نزدیک باشند .
• آمادگی کافی معنی شناسی برای کمک کردن مدل در حال تفییر در میان انواع گوناگون از ابزار .
• آمادگی کافی معنی شناسی برای واسطه های معین در برابر مخازن برای تقسیم بندی و ذخیره سازی محصولات مدل.
3?1 اولین محصولات UML
چه چیزهایی محصولات اولیه UML هستند ؟ این پاسخ می تواند دو جنبه مختلف داشته باشد . UML خودش و آن چیزهای که محصولات پروژه ها استفاده می کنند را تعریف می نماید.
3?1?1 تعاریف محصولات UML
اولین درک ، از محصولاتی است که خودشان زبان مدل متحد را تشکیل داده اند ، این سند شامل مجموعه از معناها UML ،راهنمای یاداشت های UML ، و مستندات الحاقات UML ، به اضافه ضمایم است. بعضی از این مفاهیم در زیر آمده است . در اضافه این مستندات ، کتاب ها تدابیری کانونی برای درک ، مثال ها و اصطلاحات کاربردی عمومی ما هستند .
مفاهیم UML
مدارک مفاهیم UML زبان تعریف استفاده از سه عبارت را بیان می کند :
ترکیب انتزاعی دیاگرام کلاس های UML ،MetaModel های UML که مفاهیم (MetaModel) ، ارتباطات ، و خود کنترل ها را نشان می دهد. که مفاهیم شامل شده را بیان می کند.
قواعد فرم بندی خوب قواعد و خود کنترل کننده ها روی یک مدل صحیح تعریف می شوند ، قواعد ، توضیح به نثر درآمده انگلیسی و در یک زبان خود کنترل شئی(OCL) دقیق و مختصرشده است.OCL یک زبان ویژه که منطقا ساده برای خواص یکسان معین از سیستم های که شامل مجموعه ها و ارتباطات بین مجموعه ها است .
مفاهیم مفاهیم مدل برای به نثر در آوردن توصیحات انگلیسی به کار می رود ، این چشم اندازی برای تشکیل یک تعریف قرارداد در UMLاست. بیشتر قراردادها می توانند به صورت توضیحات ریاضی وارد شوند که بیشتر افراد می توانند به طور مستقیم آن را درک نمایند.
یک متا مدل (MetaModel) زبانی برای مدلهای معین ، و در قالب یک شئی مدل است . در کلمات دیگر مدلی
برای مدل عناصر است . مقصود UML از متا مدل آماده سازی یک فرد ، عموم ، و تعریف توضیح از علم نحو و مفاهیم عناصر UML است . پیش از این متا مدل هایی ساخته شده بودند که امکانی برای گسترش ترتیب روی مفاهیم غیر زوج از نمونه مفاهیم که آن مفاهیم می خواهند بهترین منتقل کننده باشند را دارا بود.
اضافا ، متامدل برای به وجود آوردن امکان برای تیم هایی که کاوش راه ها را در به وسیله زبان های مدل خیلی ساده، در کنار مفاد، عناصر یکی شده ، از زبان مدل متحد ساخته شده، بود ( برای مثال ، عموما میان مفاهیم کلاس ، الگو ها ، و قالب های مورد اسبفاده را پوشش می داد ) . نویسندگان انتظار دارند شخصا این متا مدل زوج بیشتر توصیفات جامع را توضیح دهند . استفاده از این مفاهیم تکنیکی قراردادی است .
سطح متا در یک مدل قدری قابل داوری است و توسعه دهنده UML از روی قصد مفاهیم سطح بالا را انتخاب می کند زیرا آن سطح ضروری است ، و مفاهیم قابل قبول برای طراحی سیستم های پیچیده ، سازگار با استفاده ، و ابزار قابل تعویض را ضروری می سازد.
عناصر استاندارد و فهرست UML دو ضمیمه هستند .
یاداشت های راهنمای UML
راهنمای یاداشت های UML ، یاداشت ها UML و مثال های آماده آن را توضیح می دهد . یاداشت های گرافیکی و ترکیب متنی بیشتر برای قسمت های قابل دید UML ( از دید خارجی ) که افراد و ابزار ها سیستم مدل استفاده می کند است . اینها نشان دهنده سطح مدل کاربر ، که کدام مفاهیم نمونه ای از متا مدل در UML است را بیان می کند. انواع دیاگرام استاندارد در قسمت 4?1?2 در پایین لیست شده اند . یاداشت های راهنما همچنین خلاصه ای از مفاهیم UMLهستند ; به هر حال مفاهیم مستندات UML محتوی تعاریف است..
الحاقات UML
الحاقات تعریف شده توسط کاربران در UML قادرند در سرتا سر قالب ها ، مقادیر ضمیمه و خود کنترل استفاده شوند .
دو نوع الحاق در حال جریان به صورت زیر تعریف می شوند.
1 – پردازش شئی
2-مهندسی تجاری
کاربرد UML وسیع است بدون الحاقات ، همینطور شرکت ها و پروژه ها می توانند تعریف شوند الحاقات را فقط زمانی برای معرفی یادداشت جدید و کلمات فنی ضرورت پیدا کردند می توان استفاده نمود. الحاقات نمی خواهند به صورت عمومی درک ، پشتیبانی و ترتیب دهنده برروی خود UML باشند .
در مراحلی که برای کاهش عوامل اشتباه زا اطراف یک فروشنده پیاده ساز در دوره های متناوب تعریف می شود که دوره های آن عبارت است از :
گوناگونی UMLکه زبانی با مفاهیم خوش تعریف که روی متا مدل یک متا مدل UMLساخته شده است. این می تواند ویژگی متا مدل UMLبدون تغییرات هر UMLاز مفاهیم یا دوباره تعریف کردن هر دور از آن باشد ( برای مثال این نمی تواند در جزء ای که ساخته شده دوباره تعریف گردد.)
الحاقات UML مجموعه ای از قبل تعریف شده از قالب ، مقادیر برچسب دار و خود کنترل ها و شمایل یادداشت ها که توسعه ای مجتمع و تصیحح UML برای دامنه ای معین یا پردازشی ، برنامه ای الحاقی پردازشی دارند است