UML
مقدمه
شئ گرایی
تاریخچه
تعاریف
Class : توصیفی از یک یا چند شئ که مجموعه صفات متدهای یکسان دارند.
Instance : مورد یا نمونه عبارتست از هر یک از موجودیتهای متعلق به یک کلاس.
Attribute : هر شئ یکسری خصوصیات دارد که به آنها صفت گفته می شود که در واقع یک مقدار یا ارزش مشخصی برای آن به ازای هر شئ می تواند وجود داشته باشد.
Method : رفتار خاصی که شئ موظف به انجام است.
روابط
توارث (Inheritance) : يک شئ صفات و متدهای کلاس خودش و همچنين کلاس ديگری را می تواند به ارث ببرد.تجرید (Abstraction) : خصوصیات اصلی یک موجودیت را که آنرا از تمام موجودیت های دیگر متمایز می کند نشان می دهد.
پنهان سازی (Encapsulation): بدین معنی که فقط اطلاعاتی از یک شئ را در اختیار اشیاء دیگر قرار دهیم که برای آن شئ قاب استفاده است نه بیشتر.
چند شکلی (Polymorphism) : مفهومی در تئوری انواع که در آن یک اسم می تواند نشان دهنده موجودیت های کلاس های مختلفی باشد که بواسطه یک فوق کلاس مشترک با هم مرتبط می شوند.
نمونه سازی (Instantiation) : به معنای ایجاد یک شئ از یک کلاس است .
مسئولیت ( Responsibility) : مسئولیت چیزی است که به شئ اختصاص داده می شود و دو جنبه دارد :
آنچه که شئ راجع به خودش می داند .
کسانی که شئ را می شناسند و با آن ارتباط دارند .
تناظر يا ارتباط Associations : اشياء در بعضی حالات به يکديگر وابسته هستند . يک شئ از يک کلاس ممکن است با چند شئ از کلاس ديگر متناظر باشد .
تجمع Aggregation: نشان دادن وابستگی بين اجزاء و کل .
ارسال پيام(Message Sending): در يک سيستم، اشياء با هم کار می کنند. آنها اين کار را با فرستادن پيام به يکديگر انجام می دهند. يک شئ پيامی را برای اجرای عمليات به شئ ديگر می فرستد، شئ گيرنده پيام آن عمليات را اجرا می کند. بطورکلی پيام ها برای اجرای عمليات درخواست می شوند .
UML چیست ؟
کاربرد UML
به عنوان زبان مدل سازی اجزای مختلف فرایند توسعه نرم افزار
قابل استفاده در سیستم های نرم افزاری و غیر نرم افزاری (Business Systems)
برای مدل سازی و طراحی پایگاه داده های نرم افزاری
پذیرفته شدن به عنوان استانداردی در اکثر ابزارهای مهندسی نرم افزار
مدلها ی آن را م ی توان مستقيماً به انواع زبان ها ی مختلف ارتباط داد. يعنی امكان نگاشت از مدلهای UML به كد زبان های برنامه نويسی مثل Java و VC++ وجود دارد كه به اين عمل "مهندسی رو به جلو " می گويند . عكس اين عمل نيز ممكن است ، يعنی اين امكان وجود دارد كه شما بتوانيد از كد یک برنامه شئ گرا، مدلهای UML معادل آن را بدست آوريد. به اين عمل "مهندسی معكوس" می گويند . مهندسی روبه جلو و معكوس از مهمترين قابليتها ی UML به شما ر می روند، البته نياز به ابزار مناسبی داريد كه از اين مفاهيم پشتيبانی كنند .
UML و فرآیند
Requirements : فعالیت هایی جمع آوری نیازمندی های سیستم
Analysis : فعالیت های تحلیل برای درک نیازمندی ها
Design : برای تخمین اینکه سیستم با چه اجزایی می تواند نیازمندی های سیستم را برآورده سازد.
Test : برای بررسی اینکه سیستم نیازمندی ها را پوشش می دهد.
Deployment : برای در دسترس قرار دادن سیستم برای کاربران نهایی
سازگاری با UML
نحو انتزاعی به صورت نمودار و زبان طبیعی بیان می شود.
قوانین خوش فرم به زبان طبیعی و OCL بیان می شود.
معنی با استفاده از زبان طبیعی و اندکی نمودار بیان می شود.
نماد گذاری با زبان طبیعی و نمودار بیان می شود.
شمای XMI با زبان XML بیان می شود.
چرا از نمودارهای تحلیل و طراحی استفاده می شود؟
تحلیل گران و طراحان سیستم، با استفاده ازنمودارها، سیستم نرم افزاری خود را ویژوال می کنند. نمودارها چه امتیازاتی برای فرایندهای طراحی ارائه می کنند؟
دو کاربرد مهم نمودارها در طراحی عبارتند از :
انتزاعی کردن ویژگی های طراحی
نمایش رابطه های بین عناصر طراحی
سیستم های کامپیوتری ، محصولات پیچیده ای هستند که از نرم افزار و سخت افزار ساخته شده اند. نمودارها، راهی را برای مدل سازی این سیستم ها ، چگونگی سازمان دهی آنها و چگونگی عملکرد آنها فراهم می کنند. رابطه های بین عناصر طراحی را می توان به طور گرافیکی یا متنی نمایش داد.
انواع رابطه ها در مدل ها عبارتند از:
رابطه های ساختاری بین عناصر مدل که وابستگی ای به یکدیگردارند.
رابطه های سازمانی بین عناصر سیستم که باید با هم در سیستم نهایی بسته بندی شوند تا سیستم کار کند.
رابطه های موقتی بین بخش هایی از مدل به منظورتشریح دنباله ای از رویدادها در طول زمان.
رابطه های علت و معلولی بین عناصر مدل ، مثلاً برای نمایش پیش شرط هایی که باید قبل از انجام کاری برقرار باشد.
رابطه های تکاملی بین مدل ها در طول زمان ، که نشان می دهند در اثنای طول عمر پروژه ، عنصری از عنصر دیگر مشتق شده است.
UML تمام این رابطه ها را بین عناصر خود دارد.
رابطه های ساختاری : وابستگی های بین کلاس ها.
رابطه های سازمانی : Package ها راهی برای سازمان دهی عناصر مدل است.
رابطه های موقتی : توالی زمانی پیام ها در نمودار توالی تعاملی.
رابطه های علت و معلولی : حالت ها در نمودارهای حالت.
رابطه های تکاملی : رد یابی وابستگی های بین نمودارها در مدل طراحی و مدل تحلیل.
ارسال مقاله توسط کاربر محترم سایت: baran22
/ع