دوستان عزیز در رابطه با امکان سنجی مربوط به مهندسی نرم افزار در بخش پایگاه داده من قسمتی از مطالبی که تازه ترجمش کردم ( دست و پا شکسته ) برای بالا بردن اطلاعات شما عزیزان قرار می دهیم اگه تمامی مطالب را خواستین بگین تا بزارم . با تشکر مدیریت
مقایسه SQL server 2000 و Oracel 9i
در این قسمت به مقایسه دو پایگاه داده SQL server 2000 و Oracel 9i از نظر قیمت ، اجرا ، پشتیبانی توسط سیستمها می پردازیم .
1) مقایسه از نظر پشتیبانی توسط سیستمهای عامل : SQL server 2000 فقط بر روی سیستم عاملهای ویندوز شامل Windows 9x, Windows NT, Windows 2000 و Windows CE اجرا می شوند . در مقابل SQL server 2000 پایگاه داده Oracel 9i بر روی تمامی سیستم های عامل که شامل Windows-based platforms, AIX-Based Systems, Compaq Tru64 UNIX, HP 9000 Series HP-UX, Linux Intel, Sun Solaris و so اجرا می شوند .
2) سخت افزار مورد نیاز : برای نصب SQL server 2000 شما باید پردازنده Intel یا سازگار با آن و همچنین سخت افزارهای زیر را داشته باشید .
Hardware |
Requirements |
Processor |
Pentium 166 MHz or higher |
Memory |
32 MB RAM (minimum for Desktop Engine), |
Hard disk space |
270 MB (full installation), |
Oracel 9i از پردازنده های اینتل و پردازنده های سازگار با Windows-based platforms, AIX-Based Systems, Compaq Tru64 UNIX, HP 9000 Series HP-UX, Linux Intel, Sun Solaris و so پشتیبانی می کند.
برای نصب اراکل بر روی پردازنده های اینتل و سازگار با آن به سخت افزارهای زیر نیاز است .
Hardware |
Requirements |
Processor |
Pentium 166 MHz or higher |
Memory |
RAM: 128 MB (256 MB recommended) |
Hard disk space |
140 MB on the System Drive |
برای نصب اراکل بر روی پردازنده های زیر سیستم Unix ازقبیل Windows-based platforms, AIX-Based Systems, Compaq Tru64 UNIX, HP 9000 Series HP-UX, Linux Intel, Sun Solaris و so به سخت افزارهای زیر نیاز است .
Hardware |
Requirements |
Memory |
A minimum of 512 MB RAM |
Swap Space |
A minimum of 2 x RAM or 400 MB, whichever is greater |
Hard disk space |
4.5 GB |
منبع :
http://www.technology-updates.com/
تهیه سناریو اولین قدمی است که برای انجام تجزیه و تحلیل سیستم برداشته می شود . در سناریو ما شمای کلی سیستم و نحوه کار را توضیح می دهیم
دوستان عزیز این سناریو از مجموعه دروس آموزش رشنال روز می باشد که در آن به این نکته اشاره شده که یک سناریو دارای چه بخشهایی باید باشد
Precondition : ( شرایطی که باید ایجاد شود تا Use case فعال شود )
هنگامی که پرسنل جهت مراجعه یا ترک محل کار ورود و خروج می نمایند .
Postcondition : ( شرایطی که بعد از اتمام کار Use case ایجاد می شود )
باید میزان حضور پرسنل در محل کار محاسبه شود .
Goal : ( هدف )
محاسبه میزان عملکرد پرسنل در شرکت پاسارگاد .
Description : ( شرح مختصری از فعالیتهای سیستم )
پرسنل جهت محاسبه میزان عملکرد ، ساعت ورود و خروج خود را ثبت می کنند تا بر اساس آن حقوق و مزایا دریافت کنند .
Main Flow : ( جریان اصلی کار Use case )
1) پرسنل هنگام مراجعه به محل کار کد پرسنلی خود را در اختیار مسئول قسمت اداری قرار می دهند .
2) مسئول قسمت اداری به منوی برنامه رفته و ورود پرسنل مورد نظر را ثبت می کند .
3) پرسنل هنگام ترک محل کار کد پرسنلی خود را دوباره در اختیار مسئول قسمت اداری قرار می دهند .
4) مسئول قسمت اداری به منوی برنامه رفته و با ورود کد پرسنلی مشخصات + ساعت ورود پرسنل مورد نظر را مشاهده می کنند .
5) مسئول قسمت اداری ساعت خروج را ثبت و سیستم میزان عملکرد پرسنل در آن روز را محاسبه می نماید .
Altrnative Flow : ( جریان فرعی کار Use case )
1) امکان دارد پرسنل در یک روز مرخصی ساعتی یا در ماموریت باشد آنگاه دیر تر در محل کار حاضر شود یا اینکه زودتر محل کار را ترک کند
2) امکان دارد پرسنل در یک روز مرخصی یا در ماموریت روزانه بوده و آن روز به محل کار مراجعه نکند .
فایل PDF در تاریخ 1390/03/14 دوباره آپلود شده
زبان مدلسازی یکنواخت:
زبان مدلسازی یکنواخت یا Unified Modeling Language (UML)، یک زبان مدلسازی است که برای تحلیل وطراحی سیستمهای شیگرا بکار میرود. UML اولین بار توسط شرکت Rational ارائه شد و پس از آن از طرف بسیاری از شرکتهای کامپیوتری و مجامع صنعتی و نرمافزاری دنیا مورد حمایت قرار گرفت؛ به طوریکه تنها پس از یک سال، توسط گروه Object Management Group، به عنوان زبان مدلسازی استاندارد پذیرفته شد. UML تواناییها و خصوصیات بارز فراوانی دارد که میتواند به طور گستردهای در تولید نرمافزار استفاده گردد. در ادامة این مقاله ابتدا به تاریخچة UML و در ادامه به معرفی، ویژگیها و نمودارهای آن پرداخته میشود و در پایان، روند حرکت به سمت UML و اهمیت آن برای ایران، بررسی خواهد شد.
تاریخچة UML :
دیدگاه شیگرایی (Object Oriented) از اواسط دهه 1970 تا اواخر دهه 1980 در حال مطرح شدن بود. در این دوران تلاشهای زیادی برای ایجاد روشهای تحلیل و طراحی شیگرا صورت پذیرفت. در نتیجة این تلاشها بود که در طول 5 سال یعنی 1989 تا 1994، تعداد متدولوژیهای شیگرا از کمتر از 10 متدولوژی به بیش از 50 متدولوژی رسید. تکثر متدولوژیها و زبانهای شیگرایی و رقابت بین اینها به حدی بود که این دوران به عنوان "جنگ متدولوژیها" لقب گرفت. از جمله متدولوژیهای پرکاربرد آن زمان میتوان از Booch، OOSE، OMT، Fusion، Coad-Yourdan، Shlayer-Mellor وغیره نام برد. فراوانی و اشباع متدولوژیها و روشهای شیگرایی و نیز نبودن یک زبان مدلسازی استاندارد، باعث مشکلات فراوانی شده بود. از یک طرف کاربران از متدولوژیهای موجود خسته شده بودند، زیرا مجبور بودند از میان روشهای مختلف شبیه به هم که تفاوت کمی در قدرت و قابلیت داشتند یکی را انتخاب کنند. بسیاری از این روشها، مفاهیم مشترک شیگرایی را در قالبهای مختلف بیان میکردند که این واگرایی و نبودن توافق میان این زبانها، کاربران تازهکار را از دنیای شیگرایی زده میکرد و آنها را از این حیطه دور میساخت. عدم وجود یک زبان استاندارد، برای فروشندگان محصولات نرمافزاری نیز مشکلات زیادی ایجاد کرده بود.
اولین تلاشهای استانداردسازی از اکتبر 1994 آغاز شد، زمانی که آقای Rumbaurgh صاحب متدولوژی OMT به آقای Booch در شرکت Rational پیوست و این دو با ترکیب متدولوژیهای خود، اولین محصول ترکیبی خود به نام "روش یکنواخت" را ارائه دادند. در سال 1995 بود که با اضافه شدن آقای Jacobson به این دو، روش یکنواخت ارائه شده با روش OOSE نیز ترکیب شد واین خود سبب ارائة UML نسخة 0.9 در سال 1996 گردید. سپس این محصول به شرکتهای مختلفی در سراسر جهان به صورت رایگان ارائه شد و استقبال شدید شرکتها از این محصول و تبلیغات گسترده شرکت Rational، سبب آن شد که گروه OMG، نسخة 1.0 UML را به عنوان زبان مدلسازی استاندارد خود بپذیرد. تلاشهای تکمیلی UML استاندارد ادامه پیدا کرد و نسخة 1.1 آن در سال 1997 و نسخه 1.3 آن در سال 1999 ارائه گردید.
UML چیست؟
UML یا زبان مدلسازی یکنواخت، زبانی است برای مشخص کردن (Specify)، مصورسازی (Visualize)، ساخت (Construction) و مستندسازی (Documenting) سیستمهای نرمافزاری و غیر نرمافزاری و نیز برای مدلسازی سیستمهای تجاری. اما چرا مدل و مدلسازی؟
ایجاد یک مدل برای سیستمهای نرمافزاری قبل از ساخت یا بازساخت آن، به اندازه داشتن نقشه برای ساختن یک ساختمان ضروری و حیاتی است. بسیاری از شاخههای مهندسی، توصیف چگونگی محصولاتی که باید ساخته شوند را ترسیم میکنند و همچنین دقت زیادی میکنند که محصولاتشان طبق این مدلها و توصیفها ساخته شوند. مدلهای خوب و دقیق در برقراری یک ارتباط کامل بین افراد پروژه، نقش زیادی میتوانند داشته باشند. شاید علت مدل کردن سیستمهای پیچیده این باشد که تمامی آن را نمیتوان یکباره مجسم کرد، بنابراین برای فهم کامل سیستم و یافتن و نمایش ارتباط بین قسمتهای مختلف آن، به مدلسازی میپردازیم. UML زبانی است برای مدلسازی یا ایجاد نقشه تولید نرمافزار.
به عبارت دیگر، یک زبان، با ارائه یک فرهنگ لغات ویک مجموعه قواعد، امکان میدهد که با ترکیب کلمات این فرهنگ لغات و ساختن جملات، با یکدیگر ارتباط برقرار کنیم. یک زبان مدلسازی، زبانی است که فرهنگ لغات و قواعد آن بر نمایش فیزیکی و مفهومی آن سیستم متمرکزند. برای سیستمهای نرمافزاری نیاز به یک زبان مدلسازی داریم که بتواند دیدهای مختلف معماری سیستم را در طول چرخة تولید آن، مدل کند.
فرهنگ واژگان و قواعد زبانی مثل UML به شما میگویند که چگونه یک مدل را بسازید و یا چگونه یک مدل را بخوانید. اما به شما نمیگویند که در چه زمانی، چه مدلی را ایجاد کنید. یعنی UML فقط یک زبان نمادگذاری (Notation) است نه یک متدولوژی. یک زبان نمادگذاری شامل نحوة ایجاد و نحوة خواندن یک مدل میباشد، اما یک متدولوژی بیان میکند که چه محصولاتی باید در چه زمانی تولید شوند و چه کارهایی با چه ترتیبی توسط چه کسانی، با چه هزینهای، در چه مدتی و با چه ریسکی انجام شوند.
ویژگیهای UML :
UML دارای ویژگیهای بارز فراوانی است که در این قسمت به آنها میپردازیم. UML یک زبان مدلسازی است اما چیزی فراتر از چند نماد گرافیکی است. بطوریکه در ورای این نمادها، یک سمانتیک (معناشناسی) قوی وجود دارد، بطوریکه یک تولیدکننده میتواند مدلهایی تولید کند که تولیدکنندههای دیگر و یا حتی یک ماشین آن را بخواند و بفهمد. بنابراین یکی دیگر از نقشهای مهم UML "تسهیل ارتباط" بین اعضای پروژه و یا بین تولیدکنندگان مختلف میباشد. این ارتباط بسیار مهم است. شاید دلیل اصلی اینکه تولید نرمافزار به صورت فریبندهای دشوار است، همین عدم ارتباط مناسب بین اعضای پروژه باشد و اگر در تولید نرمافزار، بین اعضای پروژه گزارشهای هفتگی و مداوم وجود داشته باشد، بسیاری از این دشواریها برطرف خواهد شد.
البته این را هم باید در نظر گرفت که UML کمی پیچیده است و این به خاطر آن است که سعی شده است نمودارهایی فراهم شود که در هر موقعیتی و با هر ترتیبی قابل استفاده باشند. دلیل دیگر پیچیدگی از آنجا ناشی میشود که UML ترکیبی است از زبانهای مختلف، که برای حفظ سازگاری و جمع کردن خصوصیات مثبت آنها، ناگزیر از پذیرش این پیچیدگی میباشد.
UML موفقیت طرح را تضمین نمیکند، اما در عین حال خیلی چیزها را بهبود میبخشد. به عنوان مثال استفاده از UML، تا حد زیادی، هزینههای ثابتی نظیر آموزش و استفاده مجدد از ابزارها را در هنگام ایجاد تغییر در سازمان و طرحها کاهش میدهد.
مساله دیگر اینکه، UML یک زبان برنامهنویسی بصری (visual) نیست، اما مدلهای آن را میتوان مستقیماً به انواع زبانهای مختلف ارتباط داد. یعنی امکان نگاشت از مدلهای UML به کد زبانهای برنامهنویسی مثل Java و VC++ وجود دارد که به این عمل "مهندسی روبهجلو" میگویند. عکس این عمل نیز ممکن است؛ یعنی این امکان وجود دارد که شما بتوانید از کد یک برنامه زبانی شیگرا، مدلهای UML معادل آن را بدست آورید. به این عمل "مهندسی معکوس" میگویند. مهندسی روبهجلو و معکوس از مهمترین قابلیتهای UML به شمار میروند، البته نیاز به ابزار Case مناسبی دارید که از این مفاهیم پشتیبانیکنند.
اگر با زبانهای مدلسازی دیگر کار کرده باشید، برای کار با UML مشکل چندانی نخواهید داشت. اما برای شروع کار با UML به عنوان اولین زبان مدلسازی، بهتر است فقط با نمودارهای خاصی کار کنید. برای این کار بهتر است ابتدا با نمودارهای مورد کاربرد و تعامل کار کنید و پس از مدتی کار و آشنا شدن با ویژگیهای اولیة آن، به یادگیری و استفاده از نمودارها واجزای دیگر بپردازید. در مقایسه با زبانهای مدلسازی دیگر مثلER و زبان فلوچارتی DR، زبان UML نمودارهای قویتر و قابلفهمتری را ارائه میدهدکه شامل تمامی مراحل چرخة حیات تولید نرمافزار (تحلیل، طراحی، پیادهسازی و تست) میشود.
یکی دیگر از ویژگیهای مهم UML این است که مستقل از متدولوژی یا فرایند تولید نرمافزار میباشد و این بدان معنی است که شما برای استفاده از UML، نیاز به استفاده از یک متدولوژی خاص ندارید و میتوانید طبق متدولوژیهای قبلی خود عمل کنید با این تفاوت که مدلهایتان را با UML نمایش میدهید. البته مستقلبودن از متدولوژی و فرایند تولید، یک مزیت برای UML میباشد؛ زیرا بسیاری از انواع پروژهها و سیستمها نیاز به متدولوژی خاص خود دارند. اگر UML در پی پیاده کردن همة اینها بر میآمد، یا بسیار پیچیده میشد و یا استفاده خود را محدود میکرد. البته متدولوژیهایی براساس UML در حال شکلگیری میباشند.
از دیگر ویژگیهای UML میتوان به پشتیبانی از مفاهیم سطح بالای شیگرایی مثل Collaboration، Framework، Pattern و Component اشاره کرد. همچنین UML با استفاده از یک سری مکانیزمهای گسترشپذیر امکان میدهد که بتوان زبانهای مدلسازی جدیدتری (با گسترش مفاهیم پایهای موجود) ایجادکرد.