مهندسی نرم افزار - آموزش Rational Rose - SSADM

مطالب راجع به تجزیه و تحلیل سیستم

مهندسی نرم افزار - آموزش Rational Rose - SSADM

مطالب راجع به تجزیه و تحلیل سیستم

refine و owner و derive در یک رابطه dependency

 یه سول از یکی از دوستان بود گفتم بد نیست یک یادداشت جدا باشه . 

گفته بودن که در یک رابطه dependency ارتباط های refine و owner و derive به چه معنایی هست ؟

 --------------------------------------

refine برای ارتباط دو یا چند عنصر که از لحاظ سطح معنایی با هم متفاوت باشن استفاده میشه .owner همنطور که ازش پیداست برای رابطه های که بین صاحب یک عنصر و خود عنصر هست ایجاد میشه .derive ارتباطی است بین یک viwe و منبع جداول یا viwe های دیگر ، یا بین فضای جدول و دیتابیس . 

برای دسترسی به اطلاعات بیشتر می تونید به Help رشنال مراجعه کنید . 

 

موفق باشید.

سلام مجدد

دوستان 4 ماه از آخرین پست این ویلاگ می گذره . یه قول داده بودم که هنوز نتونستم عملیش کنم . واقعاً وقت ندارم . ولی در این مدت به ایمیل های دوستان تا حدود زیادی پاسخ دادم . این گفتم که اگه دوستانی خواستند با من در ارتباط باشند بدونند که جواب ایمیلها رو من می دم . می خواستم یه شماره تماس بذارماونم دیدم با وضعیت کاریم جور در نمی یاد ولی انشاالله به زودی یه شماره برای دوستان می ذارم . 

درپایان رحلت پیامبر اکرم (ص) و امام حسن مجتبی (ع) و امام رضا (ع) رو تسلیت میگم . 

موفق و پیروز باشید .

آموزش طراحی دیاگرامهای UML با Visio

سلام دوستان 

اگه عمری باقی موند قصد دارم آموزش طراحی نمودارهای UML رو با نرم افزار Viso رای دوستان بر روی این وبلاگ قرار بدم . دوستان اگه نظری در این رابطه دارند به ما منعکس کرده تا در آموزش ها قرار بدیم همچنین خوشحال می شیم اگه دوستانی در این امر ما رو یاری بدند . 

موفق باشید .

رسم نمودارهای UML

 با سلام مجدد خدمت دوستان 

این دوسه روز بازار معرفی ابزار برای UML یکم اینجا داغ شده . یه نرم افزار به نام ArgoUML هستش که امکاناتی نزدیک به Rose داره . این نرم افزار رو میتونید از لینک زیر دانلود کنید . حجمش 8.20 مگابایت هستش و باید قبل از نصب جاوا روی سیستم شما نصب باشه . این نرم افزار مجانی هستش .

دانلود ArgoUML

در رابطه با نرم افزار Ideogramic UML™ باید بگم که این نرم افزار با محدودیت هستش و نمی توان در اون فارسی نوشت و در قسمت نمودار توالی self to رو نداره (چک کردن) .

موفق باشید .

ترسیم نمودارهای UML

با سلام مجدد 

یکی دیگه از دوستان لطف کردند و یک ابزار دیگر برای رسم نمودارهای UML معرفی کردند نام این نرم افزار starUML هستش که می تونید از لینک زیر دانلودش کنید .

دانلود

یک نرم افزار برای رسم نمودارهای UML

با سلام 

یکی از دوستان به نام آقا حسین در قسمت نظرات دو لینک معرفی کرده بودند که بازدید از اونها خالی از لطف نیست . 

اولی مطالبی در رابطه با مباحث مربوط به روشهای توسعه مهندسی نرم افزار است و دومی در رابطه با ابزار طراحی نمودارهای UML است که این نرم افزار رو میتونید دانلود کنید و مطالب مربوطه را در همان سایت مطالعه کنید . 

باتشکر فراوان از این دوست عزیز 

موفق باشید .

اعیاد شعبانیه مبارک باد

سلام بر همه دوستان 

اعیاد شعبانیه بر همه شما عزیزان مبارک باد .امید است با در پیش گرفتن مشی زندگی امامان عزیز و بزرگوار و حضرت ابوالفضل (ع) در مسیر درست زندگی قرار بگیریم  انشاالله . 

موفق باشید. 

Agile Software Development

سلام بر دوستان  

این هم یک pdf در رابطه با Agile Software Development که متاسفانه نمی دونم از کیه . به هر حال اون واسه استفاده شما عزیزان گذاشتم و امیدوارم صاحب اثر هم راضی باشه . 

 

دانلود

طراحی چابکانه - Agile Software Desing (قسمت دوم)

با سلام مجدد خدمت دوستان  

در ادامه پست قبلی کل مطلب مربوط به طراحی چابکانه را آپلود کرده ام . 

امیدوارم مورد استفاده دوستان واقع شود . 

 

لینک دانلود 

طراحی چابکانه - Agile Software Development (قسمت اول)

طراحی نرم‌افزار از سال‌ها پیش در محافل  محققان و مهندسان نرم‌افزار مورد بحث است. معمولاً بحث در مورد این موضوع است که طراحی سیستم نرم‌افزاری بر اساس سورس‌کدهای نرم‌افزار استوار است و دیاگرام‌ها و طرح‌های ابتدایی می‌تواند در پیاده‌سازی نرم‌افزار به ما کمک کند، ولی نمی‌توان گفت تمامی مراحل طراحی یک نرم‌افزار به آن دیاگرام‌ها وابسته است. در واقع این بحث بیان می‌کند که سورس‌کدهای برنامه از دیاگرام‌های UML مجزا نیست.

اگر تا به حال در تیم‌های نرم‌افزاری حضور داشته‌اید و پروژه‌های نرم‌افزاری پیاده‌سازی نموده‌اید، حتماً با اشکالاتی، برخورد کرده‌اید. اگر خیلی خوش‌شانس باشید، در شروع پروژه مشتری یا همان کلاینت، اطلاعات دقیقی را از سیستمی که نیاز دارد در اختیار شما قرار خواهد داد. اگر خیلی زرنگ و باز خوش‌شانس باشید، در همان جلسه اول مصاحبه با مشتری می‌توانید تصویری کلی از نرم‌افزاری که قرار است تهیه شود را در فکر خود تجسم کنید و شروع به طراحی و پیاده‌سازی قسمت ابتدایی برنامه نمایید. با این حال صبر کنید؛ انگار با مشکلی روبه‌رو شده‌اید! بله کوچک‌ترین تغییری از طرف مشتری تمام برنامه شما را با مشکل روبه‌رو می‌سازد و پروژه شما دچار تغییراتی می‌شود. از جمله مشکلاتی که ممکن است برای شما پیش بیاید، می‌توان به موارد زیر اشاره کرد:

- ممکن است ماجول‌های برنامه بسیار سخت طراحی شده باشند. در ابتدا برنامه‌نویسان کدهای هر ماجول را بسیار منظم و قابل فهم برای سایر اعضای تیم آماده می‌کنند، ولی به مرور زمان و ایجاد تغییراتی در متن کدها، به کدهایی تبدیل می‌شوند که فهمیدن آن‌ها بسیار سخت خواهد بود.

- کدهای نرم‌افزار ممکن است دچار تکرارهای غیرضروری شوند و قطعه‌ای از کد چندین بار در طول برنامه تکرار شود که در نتیجه باعث سردرگمی برنامه‌نویسان تیم خواهد شد و طبیعتاً تغییرات در برنامه را با مشکلاتی رو‌به‌رو خواهد کرد. مثلاً تصور کنید که در برنامه با اشکالی روبه‌رو شده‌اید و آن را مرتفع کرده‌اید، ولی وقتی برنامه را مجدداً کامپایل می‌کنید، متوجه می‌شوید برنامه باز اشکال دارد. در نتیجه مجبور می‌شوید تمام قسمت هایی را که این اشکال در آن وجود دارد، اصلاح کنید.

- کدهای برنامه ممکن است دارای اجزایی باشند که جز افزودن پیچیدگی به برنامه سود دیگری نداشته باشند. این اشکال معمولاً وقتی پیش میآید که برنامه‌نویسان پروژه امکاناتی که احتمال می‌دهند در آینده به آن نیاز است را از ابتدا در برنامه قرار می‌دهند که باعث پیچیدگی در متن برنامه خواهد شد.

- یکی از اشکالات دیگری که ممکن است در پروژه‌های نرم‌افزاری پیش آید این است که وقتی برنامه‌نویسان با اشکال یا تغییری در برنامه مواجه می‌گردند، بیش از یک راه‌حل برای آن تغییر پیدا می‌کنند. برخی از این تغییرات قالب طراحی نرم‌افزار را حفظ می‌کند و برخی تنها با هک کردن سورس‌کدها این تغییر را به وجود می‌آورند و این کار باعث به‌هم ریختگی و از هم گسیختگی طراحی یک نرم‌افرار و کدهای آن می‌شود.

- معمولاً تغییرات در برنامه باعث شکنندگی سیستم نرم‌افزاری می‌شوند.

- معمولاً از آنجا که هر تغییر در برنامه باعث تغییراتی در قسمت‌های مختلف برنامه می‌شود،  تغییرات در سیستم‌های نرم‌افزاری معمولاً دشوار است.  

در مدل برنامه‌نویسی چابکانه اعضای تیم با رعایت اصول این مدل نرم‌افزاری نمی‌گذارند اشکالات ذکرشده در سیستم نرم‌افزاری به وجود آید. در ادامه با ذکر یک مثال بسیار ساده، طراحی چابکانهِ این مثال مورد بررسی قرار می گیرد.  

 

منبع : ماهنامه شبکه - خرداد ۱۳۸۶ شماره 76