***2
شی و شی گرایی :
مجموعه ای از تفکرات و دید های قبلی است.
این مفاهیم چیزی جز مفاهیم طبیعی نیستند.
یک شی هر چیزی می تواند باشد.
یک شی نمونه ای از یک کلاس است .
نکته مهم : وقتی که یک شی را ایجاد می کنید ، محیط عملیاتی ، تعیین کننده صفات و عملیاتی است که یک شی می تواند به خود بگیرد .
استفاده از مفاهیم شی گرا درک نیازهای کاربران
این نیازها را به تصویر بکشید درک آن ها سریع تر و آسان تر (هم برای شما و هم برای مشتریان)
***3
چرا از شی گرائی استفاده می کنیم؟
شی گرایی می تواند دارای منافع زیادی باشد.
متدولوژی شی گرا توانایی حل تمام مسائل را ندارد.
و اما منافع این متدولوژی :
افزایش موفقیت :
موفقیت تیم پروژه کاهش زمان تحلیل ، طراحی و برنامه نویسی
برنامه زمان بندی پروژه را به صورت چشمگیری کاهش دهد.
توسعه سریع و کاهش هزینه :
مفهوم دوباره استفاده نمودن بهبود زمان توسعه سیستم
عمل توسعه سیستم از طریق استفاده مجدد آنها باعث بالا رفتن بهره وری و بهبود کیفیت خواهد شد و بطور کلی به کاهش هزینه ها منجر گردد.
***4
تاریخچه :
مطرح شدن دیدگاه شی گرایی (Object Oriented) از اواسط دهه 1970 تا اواخر دهه 1980.
افزایش تعداد متدولوژی ها در طول 5 سال یعنی 1989 تا 1994.
دوران جنگ متدولوژی ها : تکثر متدولوژی ها و زبانهای شی گرایی و رقابت بین آن ها
از جمله متدولوژی های پرکاربرد : Booch، OOSE، OMT، Fusion، Coad-Yourdan، Shlayer-Mellor و غیره.
مشکلات حاصل از فراوانی و اشباع متدولوژی ها و روش های شی گرایی و نیز نبودن یک زبان مدلسازی استاندارد :
پیامد 1 :کاربران خسته !
پیامد 2 :کاربران زده شده از دنیای شی گرایی !
پیامد 3 : عدم وجود یک زبان استاندارد، برای فروشندگان محصولات نرم افزاری !
***5
تاریخچه :( ادامه ... )
اولین تلاشهای استانداردسازی از اکتبر 1994 آغاز شد.
Rumbaurgh صاحب متدولوژی OMT
Booch در شرکت Rational
و اولین محصول ترکیبی شان به نام "روش یکنواخت" را ارائه دادند.
در سال 1995 : با پیوستن Jacobson،
روش یکنواخت + روش OOSE = UML نسخه 0.9 در سال 1996
ü استقبال شدید شرکت ها از این محصول
ü تبلیغات گسترده شرکت Rational
پذیرفته شدن نسخه 1.0 UML به عنوان زبان مدلسازی استاندارد از سوی OMG(Object Management Group)
***6
UML چیست ؟
UML : زبانی استاندارد به منظور مشخص نمودن، پیش بینی، ایجاد و مستندسازی
تولیدات نرم افزاری.
مجموعه ای است از بهترین امکانات مهندسی به منظور استفاده در مدلسازی
سیستم های بزرگ .
UML یک متدولوژی برای ساخت نرم افزار است.
UML یک ابزار ویژوال بوده که از انواع متفاوتی از نمودارها استفاده می کند و
هریک از نمودارهای آن امکان مشاهده یک سیستم نرم افزاری را از دیدگاههای
متفاوت و با توجه به درجات متفاوت تجرید ( Abstraction ) در اختیار
پیاده کنندگان قرار می دهد.