Upload
shaina
View
126
Download
10
Embed Size (px)
DESCRIPTION
تحلیل و طراحی سیستمهای شی گرا. حسین دهقان دانشگاه آزاد بوشهر. مرجع. نحوه ارزيابي. امتحان پايان ترم 12 نمره پروژه گروهی 8 نمره تحلیل و طراحی سامانه نرمافزاری یکپارچه سامانه نرم افزاری و مستندات (پیشنهاد، تحلیل، طراحی) نیاز به کد نویسی ندارد ! - PowerPoint PPT Presentation
Citation preview
تحلیل و طراحی
سیستم های شی گرا
حسین دهقاندانشگاه آزاد بوشهر
مرجع
2
نقا
ه د
نسی
ح
hd
.deh
ghan
@gm
ail.c
om
نحوه ارزيابي نمره12امتحان پايان ترم • نمره8پروژه گروهی•
تحلیل و طراحی سامانه نرم افزاری یکپارچه•
سامانه نرم افزاری و مستندات )پیشنهاد، تحلیل، طراحی(•
نیاز به کد نویسی ندارد !•
تاریخ تحویل فاز نهایی: ؟ )حداکثر تاریخ ممکن(•
+ نمره1سایت گروهی پروژه•درج تکوینی نتایج فعالیت های فردی و گروهی•
نمره 21------------------- ---------------------
نقا
ه د
نسی
ح
hd
.deh
ghan
@gm
ail.c
om
3
نحوه ارتباط[email protected]ایمیل•
؟زمان های مالقات در دانشگاه•
4
نقا
ه د
نسی
ح
hd
.deh
ghan
@gm
ail.c
om
مقدمه
تحلیل و طراحی
سیستم های شی گرا
حسین دهقاندانشگاه آزاد بوشهر
مهندسی نرم افزار یا
مهندسی سخت افزار نقا
دهن
سیح
م
جی
سند
مهو
ی فن
ه کد
شدان
6
سخت افزار و نرم افزارهر دستگاه برنامه پذیر )مانند یک کامپیوتر یا یک •
میکروکنترلر( دارای دو بخش اصلی است: سخت افزار و نرم افزار
سخت افزار: هر قطعه قابل لمس و فیزیکی•نرم افزار: برنامه هاي کامپيوتري یا کدهایی که •
روی قطعات سخت افزای نصب می شوند )قرار مي شوند.می گیرند( و باعث کار کردن سخت افزار
نرم افزار نصب شده، باید در مورد سخت افزار •خود اطالعاتی داشته باشد.
بین نرم افزار و سخت افزار باید هماهنگی کاملی •وجود داشته باشد.
7
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
سخت افزار و نرم افزارCPU RAM Battery
CapacityScreen Size
Removable Memory
Operating System
فروش
Dual Core1.00 GHz
1,024 MB
1,432 mAh
3.5 inch
NoiOS 5 1
Quad Core1.40 GHz
2,048 MB
2,100 mAh
4.8 inch
Yes Android 4.0 2
8
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مهندسی نرم افزار با مهندسی سخت افزار تفاوت دارد.
چرا بسیاری از نرم افزارها فاجعه هستند ولی •سخت افزارها نه؟
• Mariner Bugs Out (1962)• Cost: $18.5 million• Destroyed the rocket 293 seconds after liftoff.
• Medical Machine Kills (1985)• Cost: Three people dead, three people critically injured• a subtle bug called a race condition
• Ariane 5 rocket explosion• Cost: $360 million• 16 bit memory,
. . . .یکی از دالیل این مشکالت: عدم تست سیستم•
9
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
SWو HWتفاوت
•HWهزینه ارتقا سیستم •باید قبل از عملیات ساخت به HWطراحی •
پایان برسد.: برگشت دادن آنHWاشکال در •
•SWهزینه ارتقا سیستم •با گذشت زمان SWانتظار بهتر شدن •(upgrade: انتظار برای ارتقا )SWاشکال در •
قدیمی شدن سخت افزار و نرم افزارهای قدیمی•10
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
SWو HWتفاوت فرايند توليد نرم افزار يك فرايند مهندسي •
است نه يك فرايند توليد صتعتي
بوسيله استفاده كننده گان نهائيبوسيله متخصصين تعيين مشخصات:
يند توليد:آماهيت فريند مهندسي كه براي هر كاربرد آفرمكانيكي
جديد منحصر به فرد است
منطقيفيزيكيماهيت محصول:
نرم افزارسخت افزار
11
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
SWو HWتفاوت
زمان
نرخ خرابي
منحني نرخ خرابي سخت افزار نسبت به زمان
پس از رفع خطاهاي طراحي و
ساخت
آغاز فرسودگي
12
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
SWو HWتفاوت
زمان
نرخ خرابي
منحني نرخ خرابي نرم افزار نسبت به زمان
13
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
بحران نرم افزارپيشرفت شگرف سخت افزار• نرم افزار ضعف روشهاي توليد•ناتواني روشهاي توليد نرم افزار در •
كنترل پيچيدگي نرم افزار
14
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
نشانه های بحران نرم افزارعدم بهره گيري كامل از قدرت سخت افزار•
ناتواني روشهاي توليد نرم افزار در پاسخگوئي •به افزايش تقاضا
هزينه هاي هنگفت توليد نرم افزار•
عدم تحويل به موقع•
هاي كاربر عدم تامين نيازمندي•
كيفيت پايين و نامطمئن•
سختي نگهداري بعلت كيفيت پايين طراحي• 15
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مهندسی نرم افزار نرم افزار، براي مقابله با بحران•
د. مطرح شمهندسي نرم افزار
ويژگيهاي مهندسي نرم افزار•تجديد نظر در روشهاي برنامه ريزي و كنترل •
استفاده از تجربيات ديگر رشته هاي مهندسي•
تهيه و جايگزيني استانداردهاي مطمئن•
16
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
)ادامه(مهندسی نرم افزار
تعريف•
سيستماتيك، منظم و بكارگيري يك روش براي توليد و توسعه، گيري قابل اندازه
عملياتي كردن و نگهداري نرم افزار؛ در توليد نرم اصول مهندسي بكارگيري
افزار
17
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
اهداف مهندسی نرم افزارافزايش كيفيت، قابليت اطمينان، قابليت نگهداري•
رضايت كاربر و سهامداران•
كاهش هزينه•
تحويل به موقع•
استفاده از مولفه هاي استاندارد•
استفاده مجدد•
18
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
سیستم اطالعاتی نقا
دهن
سیح
م
جی
سند
مهو
ی فن
ه کد
شدان
19
سیستم اطالعاتیسیستم•
اجزایی که در کنار یکدیگر و با همدیگر برای دستیابی به یک •هدف تالش می کنند.
.چند نفر که در یک اداره یا سازمان با یکدیگر کار می کنند•آنها معموال کارهای روزمره خود را بدون کامپیوتر انجام •
می دهند.(Information System – IS)العاتی طسیستم ا•
فناوری برای تسهیل کارهای خود بخواهند از سیستمی که •)استفاده از سخت افزار، نرم افزار، شبکه، پایگاه اطالعات
.داده و دیگر امکانات رایانه( استفاده نمایندمجموعه ای از افراد، داده ها، فرایندها و اطالعات که با •
بکارگیری فناوری اطالعات به منظور پشتیبانی و بهبود .کسب و کار شکل می گیرد
20
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
نرم افزارنرم محصولی است که توسط مهندسین •
طراحی و ایجاد می شود. افزارشامل برنامه ای است که در کامپیوتری •
اجرا می شود: و دادهبرنامه• که حاوی متن ها، فرم هامستنداتی•
سیستم اطالعاتی تعریف کلی تری از •نرم افزار می باشد.
یک سیستم اطالعاتی ممکن شامل شبکه و •سخت افزاری باشد که نرم افزار آن قابل
دیدن نباشد.
21
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
چه کسانی در سیستم اطالعاتی دخیل هستند
صاحبان سیستم•کسانی که برای ایجاد سیستم هزینه می کنند. •معموال از طبقه مدیران ارشد یا میانی می باشند. •
کاربران سیستم )مشتری(•افرادی که از سیستم برای انجام عملیات و کارهای •
خود استفاده می کنند.این افراد اموری مانند وارد کردن و تایید اطالعات، •
پاسخ دهی و ذخیره سازی را بعهده دارند. تیم پروژه•
افرادی که برای تحلیل، طراحی و پیاده سازی سیستم •اطالعاتی تالش می کنند.
این افراد معموال مهندسین نرم افزار می باشند.•
22
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مهندس نرم افزاروظیفه یک •فهمیدن اینکه یک سیستم اطالعاتی •
چگونه می تواند نیازهای کسب و کار را براورده کند.
این افراد با طراحی، ساخت و تحویل آن •به کاربر، از کسب و کار اقتصادی حمایت
می کنند. اگر شما تاکنون کالس برنامه نویسی •
داشته اید یا اینکه برنامه ای برای خود نوشته اید، فکر می کنید که نوشتن یک نرم افزار
برای یک سازمان کار راحتی است.متاسفانه این چنین نیست.•
23
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
آمار نرم افزارها1995سال •
24
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
Cancelled31%
Successful16%
Challenged53%
Challenged: Completed late, over budget, feature missing
)ادامه(آمار نرم افزارها
2000سال •
25
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
Cancelled23%
Successful28%
Challenged49%
دوره حیات توسعه سیستم ن
قاده
ن سی
ح
مجی
سند
مهو
ی فن
ه کد
شدان
26
دوره حیات توسعه سیستم ساخت یک سیستم اطالعاتی )یا نرم افزار( بسیار •
شبیه به ساخت یک خانه است. ساده ایدهیک 1.طرح ها باز )و ساده روی کاغذ طراحی های کلی 2.
طراحی می شوند تا اینکه توسط مشتری تایید (گردد
تکمیلی از پروژهطراحی با جزئیات 3.
3فاز خانه به کمک طرح هایی ساختن4.
ساختن خانه در ایران = ساختن نرم افزار در ایران ؟
27
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
دوره حیات توسعه سیستم )ادامه(
منظور مراحلی است که برای ساخت یک نرم افزار •باید طی شود.
Planningبرنامه ریزی 1.
Analysisآنالیز 2.
Designطراحی 3.
Implementationپیاده سازی 4.
هر فاز از گام ها یا زیر مراحلی تشکیل شده است.خروجی هر فاز مستدات و فایل هایی است که با
مشتری تحویل داده می شود.
28
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
برنامه ریزیچرا یک سیستم اطالعاتی باید برای •
؟سازمان ساخته شودمی توان پروژه را ساخت یا انجام داد؟•آیا طرح پیشنهادی می تواند کسب و کار را •
ارتقا دهد؟آگر پیاده سازی شود، آیا از سیستم •
استفاده خواهد شد؟از بعد برنامه ریزینحوه انجام داده پروژه ••Project Plan
29
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
)گام ها(برنامه ریزی
برای ایجاد یک ایده جدید یک مطرح شدن 1.سیستم نرم افزاری جدیدی توسط یک سازمان
ارائه درخواست توسط بخش های حسابداری، •مالی و ...
امکان سنجی طرح پیشنهادی توسط سازمان •و تیم پروژه
بررسی انجام یا عدم انجام پروژه•مدیریت پروژه2.خروجی این مرحله نمودار زمانی انجام پروژه •
(Project Plan)30
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
آنالیزچه کسی از سیستم استفاده خواهد کرد؟•سیستم چه کاری انجام خواهد داد؟•چه زمانی و کجا از سیستم استفاده خواهد •
شد؟تیم پروژه•
سیستم موجود در سازمان و سیستم های •دیگر را بررسی می کند
فرصت های بهبود را بررسی می کند•کلیت سیستم جدید را توسعه می دهد•
31
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
)گام ها(آنالیز
گام تجزیه و تحلیل: شامل آنالیز سیستم 1.( و مشکالت آن as-in systemفعلی سازمان )
و آنالیز راهی برا طراحی سیستم جدید (to-be system)
جمع آوری نیازهای سیستم: بدست آوردن 2.اطالعات در مورد سیستم جاری از
طریق مصاحبه، پرسش نامهمستندات طرح پیشنهادی سیستم ارائه 3.
(system proposal )به سازمان 32
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
طراحیسیستم زئیاتجبررسی •
سخت افزار•ررم افزان•شبکه•رابط کاربری•فرم ها وگزارشات نرم افزار•زبان برنامه نویسی•فایل ها و پایگاه داده• 33
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
)گام ها(طراحی
(Design strategy )استراتژی طراحی1.سیستم باید توسط برنامه نویسان خود سازمان یا توسط تیم •
پروژه انجام شود.( باید تهیه گردد یا نرم افزاری باید Open Sourceیک برنامه متن باز )•
.خریداری شودطراحی2.
•Architecture Design : بعد سخت افزاری، نرم افزاری و زیر بنای شبکه•Interface Design : رابط کاربری سیستم، فرم ها و گزارشات
سیستم
پایگاه داده و فایل ها 3.
(: هر برنامه واقعا Program Designطراحی برنامه )4.چه کاری انجام خواهد داد. 34
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
)گام ها(پیاده سازی
ساخت سیستم: سیستم ساخته و تست می شود. 1.
نصب سیستم: در این مرحله سیستم قبلی از 2.کار انداخته و سیستم جدید شروع به کار می کند
روش حذف سریع: سیستم جدید به سرعت جایگزین سیستم •قدیمی می شود.
روش موازی: دو سیستم برای یک یا دو ماه بصورت موازی کار •می کنند تا مشکالت سیستم جدید کامال برطرف شود.
روش تبدیل: سیستم جدید در یک بخش از سازمان به عنوان یک •آزمایش اولیه نصب می شود و سپس به تدریج در بخش های دیگر
استفاده می شود.
طرح پشتیبانی: نحوه پیاده سازی تغییرات جزئی 3.و کلی در سیستم 35
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مدل های توسعه سیستم
شروع یک پروژه
تحلیل و طراحی
سیستم های شی گرا
حسین دهقاندانشگاه آزاد بوشهر
مدل های توسعه سیستم ن
قاده
ن سی
ح
مجی
سند
مهو
ی فن
ه کد
شدان
37
مدل های توسعه سیستمروش های قاعده مند براي پياده سازي چرخه •
(SDLCحيات توسعه سيستم )
38
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
Planning
Analysis
Design
Implementation
System
+
(1تقسیم بندی )تاکید این مدل ها بر فرایندهای کسب و کار یا داده ها•
: بر تعريف فعاليت ها در فرآيندگرامتدولوژي هاي •.سيستم تاكيد دارند
: بر داده ها و نحوه داده گرامتدولوژي هاي •سازماندهي آنها تاكيد دارند.
: يك نوع توازن و تعادل بين دو شي گرامتدولوژي هاي •متدولوژي فوق ايجاد مي كند.
(: فعالیت های انجام شده در یک سازمان که اهداف Processفرایند )•سازمان را برآورده می کند.
(: حقایقی درمورد سازمان و تعامالت کسب و کار یا Dataداده )•مواد اولیه برای انجام کسب و کار در یک سازمان
39
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
(1تقسیم بندی )
40
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
(2تقسیم بندی )طراحی ساخت یافته•
مدل آبشاری•مدل موازی•
Rapid Applicationمدل های توسعه سریع )•Development یا )RAD
(Phased Developmentمدل فازبندی شده )•مدل نمونه سازی•
41
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مدل آبشاری
42
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مدل آبشاری )مزایا(اگر اولين مرحله مدل آبشاری به خوبي •
انجام شده باشد ورودي درست به مرحله بعد مي دهد و مي توان انتظار داشت كه اين
مرحله نيز به خوبي انجام شود.ارائه اصول و تكنيك هاي مناسب در اكثر •
مراحل مختلف اين مدل، انجام مراحل آن را آسان مي كند.
43
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مدل آبشاری )معایب(در مدل آبشاري با وجوديكه مراحل اوليه بسيار مهم مي •
� توجه الزم به اين مرحله نمي شود .باشند ولي عمالدرصد هزينه ها براساس آمار:•
%3فهم و تحليل خواسته ها •%3تعيين مشخصات •%5طراحي •% 7پياده سازي •%15تست •نگهداشت •
67%44
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مدل آبشاری )معایب(در مدل آبشاري استفاده كننده بايد كليه •
� خواسته هاي خود را در مرحله اول صريحابيان كند.
بيان كليه خواسته ها در مرحله اول توسط •استفاده كننده مشكل است
مشتری ممكن است بعضي از آنها را •فراموش كند
ممكن است همه نيازها را نتواند مشخص •كند و به طور كامل نداند. 45
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مدل آبشاری )معایب(مرحله تعیین خواسته توسط زبان طبيعي صورت مي •
گيرد كه زبان طبيعي داراي ابهامات زيادي مي باشد.زبان مشتركي بين تحليل گر و كاربر وجود ندارد •
بطوريكه كاربر نمي داند تقاضاي چه امكاناتي را بكند و تحليل گر نمي داند چه سواالتي را مطرح كند.
استفاده كننده بايد صبور باشد. يك اجراي عملي از •برنامه ها قابل مشاهده نيست تا اينكه پروژه به
.اتمام برسد به صرفه در این مدلدر عمل بازگشت به عقب•
نيست.46
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مدل موازی
47
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مدل موازی )ویژگی ها(مدل موازی تالش می کند زمان طوالنی که •
بین فازهای آنالیز و تحویل پروژه وجود دارد را کاهش دهد.
مهمترین ویژگی این مدل این است که •زمان تحویل سیستم را کاهش می دهد.
ممکن است زیر سیستم ها کامال از یکدیگر •مستقل نباشند و باید بین زیر پروژه
هماهنگی برقرار گردد.48
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مدل فاز بندی شده
49
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مدل فازبندی شده )ویژگی ها(مدل مبتنی بر فازبندی، یک سیستم را به نسخه های •
مختلفی تقسیم بندی می کند.این زیر نسخه ها پشت سرهم آنالیز، طراحی و پیاده سازی •
می شوند.مهم ترین و اساسی ترین نیازهای سیستم با اولین نسخه از •
سیستم همراه خواهد بود.در این مدل، به سرعت یک سیستم برای کار کاربر آماده •
می شود. اشکال عمده این مدل•
، است که عمدا ناقص یکاربران شروع به کار با سیستم•می کنند.
تشخیص ویژگی های مهم و مفید که در نسخه اول باید •قرار گیرد، بسیار مشکل است.
50
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مدل نمونه سازی
51
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مدل نمونه سازی )ویژگی ها(به طراح نرم افزار قادر است مدلی از نرم افزاری را•
کاربر نشان دهد. مدل نمونه سیستم•
به طور مختصر و مفيد و به صورتهای مختلف حتی •روی کاغذ
برنامه فقط قسمت کوچکی از کارهايی است که در •آينده و پس از تکميل پروژه انجام خواهد داد.
کاربر نباید دچار اشتباه شود و فکر کند که برنامه •نهايی نيز در اين حد کارآيی خواهد داشت.
در این مدل، قسمتی از برنامه نوشته شده و به کاربر •نشان داده می شود و بعد از اين کار به نوشتن اصلی و
جزئيات پرداخته می شود.
52
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مدل نمونه سازی )نمودار(نمودارگردش ارتباط طراحان سيستم با •
مشتری
53
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
محاوره با مشتری
ساخت یا تجدید نظر در مدل
نمونه
نظر مشتری راجع به مدل
نمونه
(مزايامدل نمونه سازی )امکان تغيير و جمع آوری نيازها • در طول توليد نرم افزار ارتباط مشتری با •
طراح و توليدکننده نرم افزار همواره برقرار می باشد.
54
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مدل نمونه سازی )معایب(چون نمونه ای از نرم افزار در اختيار مشتری •
قرار می گيرد و مشتری در ابتدا نمی تواند نرم افزار کامل را مشاهده کند ممکن است تصور
غلطی از نرم افزار نهايی پيدا کند.
طراح ممکن است برای دستيابی سريع تر به •مدل نمونه به مسائل مهمی توجه نکند.
سيستم عامل درستی را انتخاب نکرده•زبان برنامه نويسی نامناسبی را برای •
نمايدننوشتن مدل نمونه انتخاب 55
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
شروع یک پروژه
نقا
دهن
سیح
م
جی
سند
مهو
ی فن
ه کد
شدان
56
شروع یک پروژهمجموعه ای از فعالیت ها با یک نقطه : پروژه•
شروع و یک نقطه پایان به منظور ارتقای کسب و کار
شروع یک پروژه•پی بردن به فرصت های توسعه کسب و کار•نیازهای تجاری•تکنولوژی جدید•
57
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
شروع یک پروژهمتاسفانه بسیاری از پروژه ها بدون درک •
صحیحی از نحوه بهبود کسب و کار ایجاد می شوند
ایده آل ترین موقعیت برای شروع یک •پروژه
همکاری افراد خبره در سیستم اطالعاتی •یا در فناوری اطالعات
افراد خبره در کسب و کار•58
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
شروع یک پروژه( از Project sponserپروژه توسط فرد یا گروهی )•
یک سازمان برای ارتقا کسب و کار توسط فناوری اطالعات شروع می شود.
Systemافراد سازمان ابتدا یک طرح پیشنهادی )•request برای ایجاد سیستم اطالعاتی را به کمیته )
تصمیم گیر برای قبول یا رد پروژه ارائه می دهند.در صورت موافقت با انجام پروژه توسط کمیته •
Feasibilityتصمیم گیر، آنالیز امکان سنجی )analysis جهت بررسی تکنیکی، اقتصادی و )
سازمانی جوانب مثبت و منفی پروژه انجام می شود.
59
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
طرح پیشنهادی
اسپانسر
پروژه
فرد یJا سJازمانی کJه پJروژه را از افJرادی و می کنJد شJروع در پJJروژه بJJا کJJه سJJازمان
ارتباط خواهند بود.
1
مثال
اعضای گروه مالی سازمانبخش بازاریابی
سازمان ITمدیر بخش
60
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
طرح پیشنهادی
نیازهای کسب و
کار
دالیJJل اصJJلی بJJرای شJJروع پروژه
2
مثال افزایش فروشبهبود بازار
بهبود دسترسی به اطالعاتبهبود خدمت رسانی با
یمشتر
61
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
طرح پیشنهادی
ملزومات کسب و
کار
امکانات الزم که سازمان آنها را برای انجام پروژه آماده
خواهد کرد.
3
مثال فراهم کردن دسترسی به اطالعات
در اختیار قرار دادن اطالعات مشتریان
اطالعات مربوط به محصوالتتولید گزارشات 62
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
طرح پیشنهادی
ارزش کسب و
کار
مزایJایی کJه این پJروژه بJرای سازمان خواهد داشت
4
مثال بهبود خدمت رسانی با یمشتر
افزایش فروش3% افزایش سهم بازار1%
میلیارد کاهش هزینه ها در 2سال
63
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
طرح پیشنهادی
مسائل ویژه
مسJJائل مربJJوط بJJه اجJJرای پJروژه و تصJمیماتی اتخJاذ شJده
توسط کمیته تصمیم گیر
5
مثال مهلت اتمام پروژهپروژه باید در عید نوروز
آماده باشد.اطالعات مهم شرکت نباید
در اختیار تیم پروژه قرار .گیرد
64
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
آنالیز امکان سنجی(Technical) تکنیکیامکان سنجی •
آیا می توان این پروژه را انجام داد؟ آیا می •توان سیستم را ساخت؟
(Economic )اقتصادیامکان سنجی •آیا باید این سیستم را بسازیم؟ صرفه •
اقتصادی دارد یا خیر؟(Organization )سازمانیامکان سنجی •
اگر سیستم را ساختیم، آیا سازمان از آن •استفاده خواهد کرد؟
65
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
جمع آوری اطالعات
نقا
دهن
سیح
م
جی
سند
مهو
ی فن
ه کد
شدان
66
جمع آوری اطالعاتشناخت خواسته هاي كاربر •مناسب برای آنالیز امکان سنجی•مصاحبه•مشاهده•پرسشنامه•بررسي اسناد و مدارك•بررسي سيستمهاي موجود•بررسي ساير سيستمهاي مشابه•نمونه گيري و تجزيه و تحليل آماري•
67
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مصاحبهبهترين روش براي بدست آوردن اطالعات در يك سيستم • مصاحبهزمان•
مصاحبه بايد زماني باشد كه مصاحبه كننده اطالعات و مسائل •� آماده كرده باشد مورد سوال را كامال
مصاحبهمكان•بايد محل مناسبي باشد.•
مصاحبه:موضوع•سواالتي بايد در رابطه با كار و اطالعات باشد•از مديران: سواالت در رابطه با سياست ها و خط مشي هاي •
سازمان� چگونگي • از كارمندان جزء: سواالت در مورد جزئيات مثال
پركردن فرم هامصاحبه شونده شخص•
به ترتيب سلسله مراتب از باال به پايين باشند•
68
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مشاهدهمشاهده شرايط محيطي، چگونگي انجام •
كارها و كنترلهاي الزم، حجم و فشردگي كارها، سرعت كار، معطلي كار
شرايط مصنوعي و غير عادي در محيط •نباشد
69
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
پرسش نامهجمع آوري اطالعات در مورد عده زياد و يا •
در محل هاي پراكنده و دور از يكديگرپرسشنامه ها باید با حوصله توسط افراد پر •
شود.پرسشنامه با پاسخ باز •پرسشنامه با پاسخ بسته )چندگزينه اي(•
70
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
بررسی مدارکهر مدركي كه در سيستم فعلي مورد استفاده قرارمي گيرد•نمودار سازماني•صورت جلسات مديران•شكايات مشتريان•گزارش هاي حسابرسان و بازرسان، گزارش هاي مشاوران، •
گزارش عملكردها، سياست ها و اهداف و خط مشي ها، مقررات و دستورالعمل •
هاي اجرائيپرونده هاي دستي و كامپيوتري•فرم هاي ورودي و نحوه پركردن آنها•مستندات مربوطه به مطالعات قبلي سيستم توسط ساير •
مشاوران 71
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
بررسی سیستم های موجودسیستم های جاری در سازمان•
� تهيه شده م• � سيستم مكانيزه ديگری قبال ثالكه داراي پرونده اي است كه اين پرونده
مورد استفاده سيستم مورد نظر ما هم مي تواند باشد.
72
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
نمونه گیری و تحلیل آماریهميشه نمي توان تمام اقالم اطالعاتي •
.مربوطه را در سيستم بررسي كرددر صورتي كه تعداد اقالم اطالعاتي زياد •
باشد بايد نمونه هاي آماري را از بين آنها انتخاب نمود.
مثال بررسی تمام پرونده ها•
73
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
شروع یک پروژهنماتن
تحلیل و طراحی
سیستم های شی گرا
حسین دهقاندانشگاه آزاد بوشهر
نماتن
نقا
دهن
سیح
م
جی
سند
مهو
ی فن
ه کد
شدان
75
درباره نماتننظام مهندسی و استانداردهای تولید و •
توسعه نرم افزارقانونمند نمودن نحوه•
ارجاع کار توسط کارفرما•نوشتن پیشنهاد•چگونگی دریافت پیشنهاد•انجام کار توسط پیمانکار•
76
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
نمودار ارجاع کار در پروژه های نرم افزاری
77
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
درخواست برای ارئه ن پیشنهاد
قاده
ن سی
ح
مجی
سند
مهو
ی فن
ه کد
شدان
78
درخواست برای ارائه پیشنهادتولید یک نرم افزار← انتخاب مجری واجد •
شرایطدرخواست برای ارائه پیشنهاد•
•Request For Proposal = RFP
ارائه اطالعات و شرایط مورد نیاز در •ارتباط با انجام یک پروژه یا یک سیستم
نرم افزاریتوسط کارفرما یا سازمان•اهداف، داشته ها، خواسته ها، شرایط •
مرتبط با پروژهبیان نیازها•
79
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
درخواست برای ارائه پیشنهاد RFPک پروژه قدم اول مطالعه ي انجام يبرا•
باشد.يشنهاد( مي پي)مستند درخواست براستم هستند که يصاحبان س RFPد کنندگان يتول•
انجام پروژه را دارند.يتقاضامهندسان نرم افزار RFP يدکنندگان واقعيتول•
RFPستم مستند يهستند که به سفارش صاحبان س
کنند. يد ميرا تول با ي نرم افزاريستم هايیک شرکت توسعه س•
انجام پروژه اقدام کند. ي تواند برايمطالعه آن مشنهاد( به ي) پ Proposalک يد ين شرکت باي← ا•
ستم ارائه کند. يصاحبان س80
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
RFPمزایای شناخت واقعی نیازهای پروژه•دریافت اطالعات درست و دلخواه در رابطه با نیازهای •
اعالم شدهتخمین درست هزینه و زمان پروژه•امکان مقایسه بهتر و ساده تر پیشنهادهای دریافت •
شدهکاهش مخاطرات پروژه•کاهش شکایات آتی پروژه•کمک به انجام پروژه در یک تشکیالت اجرایی مناسب•نشانه جدیت کارفرما در انجام پروژه•کمک به تنظیم پیمان نامه منطبق با نیازهای اعالم شده•
81
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مراحل تهیه و گردش اجرایی پروژه
شناخت نیازها پروژه•تهیه و تنظیم درخواست برای ارائه پروژه •
(RFP)برای افراد و شرکت های واجد RFPارسال •
شرایطبرپایی جلسات پرسش و پاسخ برای •
اشخاصدریافت پیشنهاد از اشخاص•انتخاب تیم پروژه و انعقاد قرارداد•
82
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
نمونه درخواست برای ( RFPارئه پیشنهاد ) ن
قاده
ن سی
ح
مجی
سند
مهو
ی فن
ه کد
شدان
83
RFP است؟يشامل چه موارد
معرفي سازمان
معرفي سازمان مشتري
تاريخچه سازمان
مقررات کاري، محدوديت هاي و مقررات همکاري
سازمان هاي مرتبط و زير مجموعه ها
و خدماتاهداف، عمليات
بندي سازمان واحدها و طبقه
تخصص هاي موجود
کليه سيستم هاي نرم افزاري، سخت افزاري و ارتباطات
RFP است ؟ي شامل چه موارد
زمانبندي مراحل منتهي به عقد قرارداد
استاندارها و ها دستورالعمل
قوانين تصميم گيري در مورد انتخاب را کنترل مي کند
چه کسي با چه افرادي مذاکره مي کند
چه کسي پرداخت ها را انجام ميدهد
اي قابل قبول است proposal چه فرمت
انتظارات در مورد قرارداد
انتظرات در مورد مستندات
proposal معيار هاي ارزيابي
RFP است ؟ي شامل چه موارد
بررسي مشکالت و کمبودهاي سيستم
خصوصيات نيازها وسيستم
درخواستي
نيازهاي سخت افزاري که شامل خصوصيات و نياز هاي اجباري، اساسي و مطلوب
سيستم است
نياز هاي نرم افزاري که شامل خصوصيات و نياز هاي اجباري، اساسي و مطلوب
سيستم است
سرويس هاي مورد نياز که شامي خصوصيات اجباري، اساسي و مطلوب و نيازهاي
سيستم است
RFP است ؟ي شامل چه موارد
توضيح مديريت
مشخصات پروژه ارائه شده
برنامه پروژه پيشنهادي
تست هاي قبولي سيستم
RFP مربوط به پروژه نقا
دهن
سیح
م
جی
سند
مهو
ی فن
ه کد
شدان
88
ارائه پیشنهادProposal نقا
دهن
سیح
م
جی
سند
مهو
ی فن
ه کد
شدان
89
Proposalديتول•Proposal و مطالعه يصفر با بررس RFP
شود. يه ميته يشنهاد شرکت هاي پ proposalيبه طور کل•
توسعه دهنده به درخواست شرکت باشد.ي ميمتقاض
دو گروه يد براي باproposal يبه طور کل•خواننده جالب باشد:
کارشناس•ران سازمانير کارشناس یا مديغ• 90
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
( Proposalپیشنهاد )نماتن ن
قاده
ن سی
ح
مجی
سند
مهو
ی فن
ه کد
شدان
91
مدیریت و کنترلپروژه
تحلیل و طراحی
سیستم های شی گرا
حسین دهقاندانشگاه آزاد بوشهر
مدیریت پروژه
نقا
دهن
سیح
م
جی
سند
مهو
ی فن
ه کد
شدان
93
مقدمهبرگزاری یک جشن فارغ التحصیلی در •
دانشگاه یا جشن عروسیقبل از شروع جشن، مشخص شدن:•
کارهایی که باید به ترتیب انجام شود.•رمان انجام تمام کارها•هزینه هر بخش و هزینه کلی•
موفقعیت یک جشن بستگی به نحوه •دارد.برنامه ریزی
94
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مقدمهپروژه طراحی یک سیستم نرم افزاری می •
تواند بسیار پیشرفته تر از یک جشن باشد:تعداد افراد درگیر در پروژه بسیار بیشتر •
است. )سازمان دولتی(هزینه باالتر است.•کارهای بیشتری باید انجام شود.•
نیاز به برنامه ریزی، مدیریت پروژه95
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مدیریت پروژهدر طراحی یک سیستم نرم افزاری نیاز به •
Projectفردی به اسم مدیر می باشد. Manager
Project Managementمدیریت پروژه•
فرایند برنامه ریزی و کنترل جهت پیاده •سازی یک سیستم
مشخص زماندر یک • حداقلهزینهبا یک • صحیحعملکردبا •
96
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مدیریت پروژهمدیر پروژه•
مسئول صدها کار و نقشی که در طول پروژه باید •انجام شود.
هدف مدیر پروژه•پروژه براساس ارزیابی واقع گرایانه از برنامه ریزی •
پروژهانجام پروژه براساس ارزیابی مدیریتسعی در •
انجام شده
نرم افزارهای مدیریت پروژه••Microsoft ProjectPlan ViewPMOffice
97
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مدیریت پروژه
شامل•پروژه اندازهتخمین و اندازه گیری •(Project Planبندی پروژه )زمانتولید جدول • پروژههزینهتخمین •
98
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
هرم مدیریت پروژه
مدیریت پروژه
اندازه سیستم
هزیمهزمان99
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
هرم مدیریتهر کدام از اجزا را بخواهیم تغییر دهیم، •
روی اجزای دیگر تاثیر می گذارد. 3در ابتدای پروژه، مدیر پروژه باید این •
قسمت را به توازنی برساند که اهداف سازمان )کارفرما( را برآورده کند.
اگر بخواهیم پروژه را سریع انجام دهیم:•کاهش اندازه پروژه ← نادیده گرفتن •
بعضی از قسمت هاافزایش هزینه ← افزودن افراد به تیم •
پروژه
100
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
تعاریف مدیریت پروژه
نقا
دهن
سیح
م
جی
سند
مهو
ی فن
ه کد
شدان
101
تعریف پروژه هاي موقتي براي تحقق يك تالشمجموعه •
تعهد در ايجاد يك محصول يا ارائه خدمات مشخص
براي دستيابي به فعاليتهامجموعه اي از •منظور خاص يا هدف خاص
كه داراي خاص عمليات و اقداماتمجموعه •روابط منطقي با يكديگر هستند و براي نيل
به هدف يا اهداف معيني انجام مي شود. 102
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
برخی تعاریف دیگر: كوچكترين جزء عملياتي تشكيل دهنده فعاليت•
يك پروژه را گويند. مثال جوش كاري، اجراي آسفالت، اجراي فونداسيون، ... در يك پروژه سازه
: مدت زمان انجام يك فعاليت در فعاليت مدت•پروژه را مدت فعاليت گويند. اين زمان مي تواند
كم يا زياد باشد اما صفر يا بينهايت ممكن نيست. : به كليه امكانات و وسايلي گفته مي شود كه منابع•
براي انجام آن فعاليت مورد نياز است. كه به سه - منابع انساني1دسته عمده تقسيم مي شوند:
- ماشين آالت و تجهيزات2- مواد و مصالح3
103
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
انواع پروژه- پروژه اجرايي1
همانند احداث پااليشگاه، احداث سد، احداث •ساختمان و ...
- پروژه مطالعاتي و تحقيقاتي2همانند مطالعه توجيه اقتصادي يك پروژه، •
مطالعات اجتماعي و فردي يك منطقه يا شهر و ...
- پروژه خدماتي3همانند زيباسازي شهر، بهبود ترافيك، دفع •
زباله و ...104
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
چرخه حیات پروژه
105
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
محدودیت های پروژه
106
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مدیریت پروژه
نقا
دهن
سیح
م
جی
سند
مهو
ی فن
ه کد
شدان
107
مدیریت و کنترل پروژه تعريف برنامه ريزي
تعيين توالي و توازي فعاليتهاي الزم براي اجراي يك •پروژه با در نظر گرفتن زمان مورد نياز براي اجراي
هر فعاليت و كيفيت تعيين شده براي آن فعاليتتعريف كنترل پروژه•
كنترل پروژه فرايندي است در جهت حفظ مسير •پروژه براي دستيابي به يك تعادل اقتصادي موجه بين سه عامل هزينه، زمان و كيفيت در حين اجراي پروژه
كنترل، اجراي دقيق و كامل برنامه تدوين شده براي •پروژه است، بگونه اي كه هنگام خروج از برنامه بتوان با تشخيص علل و طرح، پروژه را به نزديكترين حالت
ممكن در مسير اوليه و اصلي خود بازگرداند.108
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
تخمین اندازهپروژه ن
قاده
ن سی
ح
مجی
سند
مهو
ی فن
ه کد
شدان
109
Function Point Approach
110
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
Function Point Approach
روشی برای اندازه گیری اندازه برنامه •براساس پیچیدگی
(Inputsورودی ها )•(Outputsخروجی ها )•(Filesفایل ها )•(Queriesپرس و جوها )•(Program Interfacesظاهر برنامه )•
111
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
Function Point Approach
112
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
گام اول
Function Point Approach
Total Function Point = TUFP * APC
TUFP = 338: اسالید قبلAPC: Adjusted Processing Complexity
• 0.65 for very simple systems
• 1.00 for normal systems
• 1.35 for complex systems
→ TFP = 338 * 0.72 = 243113
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
گام اول
Function Point Approach
در فاز برنامه ریزی، وضعیت واقعی •سیستم هنوز مشخص نشده است.
غیرممکن است که بتوانیم تعداد واقعی •ورودی، خروجی و ... یک سیستم را
تعیین کنیم.تخمین اندازه سیستم به هوش و تجربه •
مدیر پروژه بستگی دارد.
114
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
گام اول
Function Point Approach
•Function Point ← تعداد خط کدهای یک برنامه
115
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
گام اول
Function Point Approach
تعداد خط کدهای یک برنامه•
= 243 × 148← باشد Cاگر زبان برنامه نویسی 35964
بسته های نرم افزاری و زبان های زیادی وجود دارد. •هر زبان امکانات خاصی را در اختیار کاربر قرار •
می دهد.نمی توان تمام سیستم را با یک زبان نوشت.•
بین میزان زمان انجام و تالش برای انجام پروژه و •زبان انتخابی برای برنامه نویسی رابطه وجود دارد.
116
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
گام اول
Function Point Approach
تخمین نفر-ماه•
effort (in person-months) = 1.4 * thousands of lines of code
خط کد35964
نفر-ماه50.35
117
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
گام دوم
:برای کدنویسی به کمک سی
Function Point Approach
تخمین زمان•
schedule time (months) = 3.0 * person-months1/3
نفر-ماه50.35
ماه11
زمان برآورد شده برای فازهای تحلیل، طراحی و •پیاده سازی است و فاز برنامه ریزی را شامل نمی شود. 118
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
گام سوم
:برای کدنویسی به کمک سی
ساخت و مدیریتWORKPLAN ن
قاده
ن سی
ح
مجی
سند
مهو
ی فن
ه کد
شدان
119
برنامه ریزی پروژهتعريف برنامه ريزي
تعيين توالي و توازي فعاليتهاي الزم براي اجراي •يك پروژه
در نظر گرفتن•زمان مورد نياز براي اجراي هر فعاليت•كيفيت تعيين شده براي آن فعاليت•
روش ها(The Project Workplanتهیه جدول فعالیت ها )•(Gantt Chartنمودار گانت )••Pert Chart
(critical path method (CPM)روش مسیر بحرانی )•
120
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مشخص کردن فعالیت هااهداف کلی سیستم باید مشخص شود و مدیر •
پروژه باید فعالیت هایی که برای دسیابی به سیستم باید انجام شود را مشخص کند.
فعالیت ها به صورت کلی مشخص می شود.•برای مشخص کردن SDLCمی توان از فاز های •
فعالیت ها استفاده کرد.برنامه ریزی، تحلیل، طراحی و پیاده سازی•
می توان از متدهای توسعه سیستم برای اجرای •استفاده کرد. SDLCفازهای
در این قسمت باید متد توسعه سیستم برای اجرای •را مشخص کرد. SDLCفازهای
121
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مشخص کردن فعالیت ها
122
)ریز مشخص کردن فعالیت ها فعالیت ها(
123
مشخص کردن فعالیت ها
124
به طور کلی باید کلیه فعالیت ها را مشخص •کرد.
وابستگی ها یک فعالیت به فعالیت های دیگر•زمان هر فعالیت•
مشخص کردن فعالیت ها
125
نمودار گانت حرف ارزش 1000یک عکس به اندازه •
دارد.وضعیت فعالیت ها، زمان انجام و وابستگی •
ها در یک نمودار رسم می شود.محور افقی: زمان•محور عمودی: فعالیت ها•رسم به کمک نرم افزارهای•
• spreadsheet package• graphics software (e.g., Microsoft VISIO)• project management package (Microsoft Project)
126
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
نمودار گانت
127
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
Pert Chart
128
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
(CPMروش مسیر بحرانی )
129
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
محاسبات روش مسیر بحرانیحرکت رفت یا محاسبه زودترین زمان وقوع •
یک فرایند
محاسباتي است كه از گره شروع پروژه آغاز •مي شود و گره به گره و فعاليت به فعاليت به
سمت گره پايان پروژه پيش ميرود.
قانون است:3داراي •- زودترين زمان وقوع گره شروع را 1قانون •
برابر صفر بگيريد.130
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
محاسبات روش مسیر بحرانیحرکت رفت یا محاسبه زودترین زمان •
وقوع یک فرایند قانون است:3داراي •
i- زودترين زمان وقوع گره 2قانون •برابر با حداكثر مقدار مربوط به زودترين
زمان پايان كليه فعاليتهاي پيش نياز آن است.
131
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
محاسبات روش مسیر بحرانیحرکت رفت یا محاسبه زودترین زمان •
وقوع یک فرایند قانون است:3داراي •
( i-j- زودترين زمان ختم فعاليت )3قانون •برابر است با زودترين زمان شروع
فعاليت، بعالوه زمان انجام آن فعاليت.
132
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
محاسبه زودترین زمان وقوع
زمان هر فعاليت روي كمان مربوطه نوشته •شده است.
واحد زمان در اين شكل “روز” است.•براي شروع محاسبه يك تاريخ براي رويداد •
آغازين شبكه تعيين مي شود.133
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
محاسبه زودترین زمان وقوع )حل(
134
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
محاسبه زودترین زمان وقوع )حل(
135
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
محاسبات روش مسیر بحرانیحرکت برگست یا محاسبه دیرترین زمان وقوع یک •
فرایند
محاسبات حركت برگشت، به منظور تعيين ديرترين •زمان وقوع هر گره و ديرترين زمانهاي شروع و پايان
هر يك از فعاليتهاي شبكه انجام مي شود.
داراي سه قانون مي باشد:•- ديرترين زمان مجاز براي وقوع گره پاياني 1قانون•
را برابر با مقدار مورد نظر )از پيش تعيين شده( يا برابر زودترين زمان وقوع آن گره در نظر بگيريد.
136
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
محاسبات روش مسیر بحرانیحرکت برگست یا محاسبه دیرترین زمان •
وقوع یک فرایند
داراي سه قانون مي باشد:• يا j- ديرترين زمان وقوع گره 2قانون •
( را برابر با كوچكترين i-jختم فعاليت )مقدار ديرترين زمانهاي شروع فعاليتهاي
( بگيريد، يعنيi-jبعد از فعاليت )137
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
محاسبات روش مسیر بحرانیحرکت برگست یا محاسبه دیرترین زمان •
وقوع یک فرایند
داراي سه قانون مي باشد:•- ديرترين زمان شروع فعاليت 3قانون •
(i-j برابر با ديرترين زمان ختم فعاليت )منهاي مدت زمان اجراي آن است.
138
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
محاسبه دیرترین زمان وقوع )حل(
139
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
محاسبه دیرترین زمان وقوع )حل(
140
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
محاسبه دیرترین زمان وقوع )حل(
141
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
شبكه با ديرترين و زودترين تاريخ وقوع
142
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
شناوری در تاریخ های وقوع رویداد
مراجعه به شكل قبل مشاهده مي شود كه • مي تواند در هر تاريخي 1به عنوان مثال گره
اتفاق بيفتد.8 تا 4بين روزهاي 1در اينجا گفته مي شود كه رويداد )گره( •
شناوريداراي شناوري است و مقدار اين عبارتست از:
4=4-8: مقدار شناوري رويداد عبارتست از تعريف•
تفاضل بين زودترين تاريخ و ديرترين تاريخ وقوع
143
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
رویدادهای بحرانیدر يك شبكه رويدادهائي هستند كه داراي •
شناوري صفر مي باشند.زودترين و ديرترين تاريخ هاي وقوع اين •
رويدادها همواره مساوي بوده و هر تغييري در اين تاريخ ها باعث خواهد شد كه زمان
الزم براي تكميل پروژه را تغيير دهد.
144
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مسیر بحرانیدر هر شبكه حداقل يك راه وجود دارد كه •
شامل طوالني ترين زمان مي باشد. اين راه را مسير بحراني مي نامند.
مقدار شناوري مسير بحراني همواره برابر •صفر است.
مسير بحراني از رويداد آغازين تا پاياني، •همواره از رويدادهاي بحراني عبور مي
نمايد.145
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مدیریت منابعانسانی ن
قاده
ن سی
ح
مجی
سند
مهو
ی فن
ه کد
شدان
146
رابطه اعضا در تیم پروژه
147
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
رابطه اعضا در تیم پروژه
148
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
رابطه اعضا در تیم پروژه
149
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مدیریت خطاها
نقا
دهن
سیح
م
جی
سند
مهو
ی فن
ه کد
شدان
150
خطاهای هزینه و زمان
151
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
محاسبه هزینه
نقا
دهن
سیح
م
جی
سند
مهو
ی فن
ه کد
شدان
152
تحلیل سیستم ها
تحلیل و طراحی
سیستم های شی گرا
حسین دهقاندانشگاه آزاد بوشهر
مهندسی خواسته ها
نقا
دهن
سیح
م
جی
سند
مهو
ی فن
ه کد
شدان
154
مهندسی خواسته ها
155
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
تحلیل مشکل
تحلیل نیازها
مهندسی خواسته ها
156
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
بررسی
مشکل
بررسی
نیازها
تحلیلگر
آنالیز
طراح
مدل تحلیل
طراحی
مشتری
خروجی این مرحلهمستندات تحلیل •
نیازهامشخصه •
خواسته هاگزارش •
مهندسی خواسته ها
مبناي قرارداد •رسمي و مالك تحويل سيستم
در خاتمه ي پروژه
157
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
بررسی نیازها در مقابل تحلیلبررسی نیازها•
تعریف سیستم از •دید مشتری یا
سازمانمشخص شدن به •
کمک زبان طبیعیراه ارتباطی میان •
مشتری و تیم پروژه 158
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
تحلیل•تعریف سیستم از •
دید تحلیلگران و طراحان
مشخص شدن به •کمک مدل های
تحلیلراه ارتباطی بین •
تحلیلگران و طراحان سیستم
بررسی مشکالت و بررسی نیازها
اس�تفاده • نيازه�اي ك�ه سيس�تمي ط�راحي هدف: كنندگان را پوشش دهد.
باي�د اين نيازه�ا ب�ه درس�تي تع�يين، تحلي�ل و بررس�ي •شود.
: يع�ني مش�كالت را شناس�ايي ك�نيم مش�كالتتحلي�ل •و عل�ل و ا�ثرات آن �را برر�سي كنيم.
آن نيازه�ايكش�ف • در ك�ه ه�ايي تكني�ك سيس�تم: تحليلگ�ر ش�رحي� از نيازه�ا و� خواس�ته �ه�اي �سيس�تم را
شناسايي مي كند.159
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
فاز تحلیل نیازها
نقا
دهن
سیح
م
جی
سند
مهو
ی فن
ه کد
شدان
160
تحلیل نیازهامرحله تحلیل نیازها، نیازهای کسب و کار •
را برای سیستم جدید تعریف می کند.“چه کلید اصلی در مرحله تحلیل نیازها •
چیزی” است نه “چگونه”•What نه Howکاربراین از سیستم جدید چه می خواهند و •
چه نیازی به آن دارند؟
161
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
انواع نیازهانیازهای کارکردی یا عملیاتی•
•Functional
فعالیت ها و خدماتی که سیستم باید آنها را انجام •دهد.
مثال در يك سيستم دانشگاه: محاسبه معدل دانشجو•در يك سيستم انبارداري: تعيين موجودي فعلي انبار•
نیازهای غیر عملکردی••Nonfunctional
عملكردهايي كه استفاده كنندگان بصورت غير •مستقيم از سيستم انتظار دارند.
مانند راحتي استفاده براي كاربر•سريع كار كردن نرم افزار•امنيت نرم افزار•
162
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
اولویت نیازهانیازهای الزامی•
نیازهایی که باید در سیستم حداقل یا • وجود داشته باشد.1نسخه
نیاز الزامی را نمی توان رتبه بندی نمود.•نیاز مطلوب•
1نیازی که برای نسخه حداقل یا نسخه •ضروری نیست.
163
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
فاز تحلیل تصمیم
نقا
دهن
سیح
م
جی
سند
مهو
ی فن
ه کد
شدان
164
فاز تحلیل تصمیمبا در نظر گرفتن نیازهای کسب و کار•
سیستم جدید به کمک رایانه چگونه باید •عمل کند.
مرحله تحلیل تصمیم•راه حل های ممکن را مشخص و تحلیل •
می کندسیستم جدید را برای طراحی و اجرا •
توصیه می کند.165
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مراحل فاز تحلیل تصمیمشناسایی راه حل های ممکن•تحلیل راه حل های ممکن•مقایسه راه حل های ممکن•توصیه یک راه حل•بهنگام سازی طرح پروژه•
166
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
تحلیل مدل گرا
نقا
دهن
سیح
م
جی
سند
مهو
ی فن
ه کد
شدان
167
تحلیل مدل گراسیستم را مدل کنیم. عملکردهدف این است که •مدل•
تصاویرنشان دادن سیستم و عملکرد به کمک •مانند: فلوچارت، نمودار سازمانی•“یک تصویر به اندازه هزاران حرف ارزش دارد”•
ترسیم مدلهای تصویری سیستم موجود یا •پیشنهادی در مستندسازی
تصاویری هستند که اجزای سازنده سیستم •)فرایندها، ورودی ها، خروجی ها و فایل ها( را با آن
نمایش می دهیم.168
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
نرم افزارها• Microsoft Visio• Rational ROSE• Visible Analysis• System Architect
169
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
بلوک های سازنده سیستم و مدل ها
داده ها•اطالعاتی که توسط سیستم جمع آوری و ذخیره •
می شود.مدلهای داده•← طراحی پایگاه دادهنمودار رابطه موجودیت •
فرایندها•کارهایی که سیستم انجام می دهد.•مدلهای فرایندی•← طراحی برنامه ها و نرم افزارهانمودار جریان داده •
رابط ها•نحوه ارتباط بین افراد، سیستم ها یا سازمانهای دیگر•← طراحی رابط های سیستم و کاربر Usecaseنمودار •
170
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
تحلیل مدل گرااز دیدی دیگر می توان رویکردهای مدل گرا •
را به دسته های دیگر تقسیم کرد:تحلیل ساخت یافته•
فرایند محور •نمودارهای جریان داده•
مهندسی اطالعات•داده محور•نمودارهای رابطه موجودیت•
تحلیل شی گرا• 171
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
تحلیل ساخت یافته، روشی مدلگرا و فرایند محور برای ساخت یافتهتحلیل •
تحلیل سیستم موجود یا تعریف نیازهای کسب و کار سیستم جدید
تحلیلگران مجموعه ای از مدل های فرایندی را ترسیم •می کنند.
Data Flow Diagram، DFDبه نام نمودارهای جریان داده، •
فرایندهای موجود در سیستم را به همراه ورودی ها، •خروجی ها و فایلها نشان می دهد.
این مدلها برای فرایندهای کسب و کار و برنامه های •کامپیوتری استفاده می شود.
172
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
DFD
173
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
IEمهندسی اطالعات
، روشی مدلگرا و داده محور ساخت یافتهتحلیل •برای تحلیل سیستم موجود یا تعریف نیازهای
کسب و کار سیستم جدیداز ابزارهای طراحان پایگاه داده•تحلیلگران مجموعه ای از مدل های داده ای را •
ترسیم می کنند. Entityبه نام نمودارهای رابطه موجودیت، •
Relationship Diagram، ERD
ابتدا مدل داده و در تحلیل ساخت یافته ابتدا IEدر •مدل فرایند ترسیم می شود.
174
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
ERD
175
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
تحلیل شی گرادر دو مدل قبلی، داده از فرایند تفکیک •
بوده است.
تحلیل شی گرا، داده و فرایند را در •ساختارهایی به نام شی یکپارچه می کند.
•Object Oriented Analysis، OOAبرای این تحلیل، استاندارد مدل سازی •
تکامل یافته است.•Unified Modeling Language، UML
176
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
UML
177
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
+Admit()+Regsiter for Classes()+Withdraw()+Change Address()+Calculate GPA()+Graduate()
-ID Number-Name-Grade Point Average
STUDENT
+Create a Course()+Delete from Course Master()+Change in Course Master()
-Subject-Number-Title-Credit
COURSE
+Add()+Drop()+Complete()+Change Grade()
-Semester-Division-Grade
TRANSCRIPT COURSE
11
has record for>0..*
0..*
تحلیل تسریع شده
نقا
دهن
سیح
م
جی
سند
مهو
ی فن
ه کد
شدان
178
رویکرد تسریع شدهساخت نمونه اولیه از سیستم به منظور •
شناسایی سریعتر نیازهای کاربر و کسب و کار
استفاده از نرم افزار اکسس برای ایجاد •پایگاه دادهف فرم های ورودی و نمونه
گزارش ها
باورهای نادرست•سیستم نهایی را می توان به همان سرعت نمونه •
ساختابزارهایی مانند اکسس می توانند در ساخت سیستم •
نهایی استفاده شود.
179
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
کشف نیازها
تحلیل و طراحی
سیستم های شی گرا
حسین دهقاندانشگاه آزاد بوشهر
کشف مشکل ها
نقا
دهن
سیح
م
جی
سند
مهو
ی فن
ه کد
شدان
181
کشف مشکلتحلي�ل گ�ر موف�ق كس�ي اس�ت ك�ه مش�كالت سيس�تم را •
دري�ابد و توانا�يي تحليل� مشكل را� داش�ته باشد.مثال: تشخيص بيماري )مشكل( توسط پزشك•
نكت�ه مهم: الزمس�ت بين علت مش�كل و معل�ول مش�كل •تمايز قائل شويم.
(: ي�ك اب�زار گ�رافيكي Ishikawa Diagram) ايش�يكاوانم�ودار •ت است�. ب�راي شناس�ايي، برر�سي و نماي�ش مشكال�
اس�تخوان م�اهي و ي�ا عل�ل و س�بب به اين نم�ودار نم�ودار •هم مي گويند. 182
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
نمودار استخوان ماهیعلت در سمت راست )سر ماهي( و علل •
ممكن به عنوان استخوان در اسكلت ماهي در نظر گرفته مي شود.
183
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
(Cause)علل(Effect)آثار
3علت 2علت 1علت
6علت 5علت 4علت
مشكل
نمودار استخوان ماهی
184
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
کشف نیازها
نقا
دهن
سیح
م
جی
سند
مهو
ی فن
ه کد
شدان
185
جمع آوری نیازهااستفاده از تحقيق، مصاحبه، پرسشنامه، •
نمونه برداري و ديگر تكنيك هاي جمع آوري اطالعات، جهت يافتن مشكالت و
نيازمندي هاي سيستم.
186
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
روش های کشف نیازهانمونه گيري از اسناد، فرم ها و فايل هاي موجود•مشاهده تحقيقات و سايت ها•مشاهده محيط كار•
مزاياي مشاهده•معايب مشاهده•روش هاي انجام يك مشاهده خوب•
زندگي در سيستم•
187
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
پرسشنامهمزاياي پرسشنامه•معايب پرسشنامه•انواع پرسشنامه•
فرمت آزاد•فرمت محدود•
سواالت چندجوابي•سواالت درجه بندي شده•سواالت رتبه بندي•
توسعه پرسشنامه•188
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مصاحبهمزاياي مصاحبه•معايب مصاحبه•انواع مصاحبه و تكنيك هاي آن•
غير ساخت يافته•ساخت يافته•
سواالت بسته•سواالت باز•
انتخاب مصاحبه شوندگان•آماده شدن براي مصاحبه•اجتناب از اين سه نوع سوال•
سواالت بارگذاري شده•سواالت هدايت كننده•سواالت انحرافي•
راهنماي سواالت مصاحبه•هدايت مصاحبه•تعقيب كردن مصاحبه•
189
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
نمونه سازی( prototyping)نمونه سازي •
مزاياي نمونه سازي•معايب نمونه سازي•
استراتژي پيدا كردن واقعيت•
190
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
تحلیل شی گرایی
تحلیل و طراحی
سیستم های شی گرا
حسین دهقاندانشگاه آزاد بوشهر
شی گرایی
نقا
دهن
سیح
م
جی
سند
مهو
ی فن
ه کد
شدان
192
شی گرایی شي گرايي كل سيستم را به صورت مجموعه اي از اشياي
دنياي واقعي به ما نشان مي دهد. شي گرايي بر مبناي مفهوم و اصول كالس ها پياده سازي شده
است.مجموعه اي از اشيا، صفات، متدها )رفتارها و رويدادها( كالس :
را براي كاربران به صورت بسته بندي شده فراهم مي كند. به مجموعه خواصي گفته مي شود كه صفاتدر اين تعريف
تعريف كننده آن كالس مي باشند مانند خاصيت رنگ، وزن، تعداد سيلندر و ... براي يك ماشين
مجموعه عمليات هايي هستند كه يك كالس در تعامل رفتارهابا اشيا و يا كالس هاي ديگر از خود بروز مي دهد.
عبارت است از نمونه اي از يك كالس كه صفات، خواص و شي :رفتارهاي آن كالس را نمايش مي دهد و در واقع با استفاده از
يك شي مي توان خصوصيات يك كالس را تغيير داد.
نقا
ه د
نسی
ح
hd
.deh
ghan
@gm
ail.c
om
193
مثالبه عنوان مثال كالس انسان را در نظر بگيريد•
در كالس انسان همه انسان ها داراي خواص و صفات و •رفتار هايي هستند.
اما هر انسان خاص يك شي از كالس انسان است كه داراي •خواص منحصر به فردي نسبت به يك انسان ديگر است.
نمونه اي از خواص انسان اين است كه هر انسان رنگ •پوست متفاوتي دارد. رنگ چشم خاصي دارد، نام خاصي
دارد و.....رفتارهاي يك انسان، مانند: صحبت كردن، غذا خوردن و ....•: هر شي در دنياي شي گرايي داراي صفتي كليد مشخصه•
است كه ان را از ديگر صفات متمايز مي كند. مانند اثر انگشت براي انسان يا نام شي در دنياي برنامه نويسي
نقا
ه د
نسی
ح
hd
.deh
ghan
@gm
ail.c
om
194
اجزاي شي گرايي•Abstraction)تجري�د( ي�ك رفتاره�اي و نم�ايش خ�واص يع�ني :
كالس بدو�ن تو�جه به سا�ختار در�وني� و نحوه پياده سازي آن.•Inheritance :)يع�ني ه�ر كالس مي توان�د خواص�ي را از )وراثت
كالس ه�ا�ي �ديگ�ر� ب�ه ا�رث ب�برد�. �مانن�د �ي�ك �ف�رزن�د ك�ه ا�ز پ�در �خ�ود س ه�اي ا�رث ب�ري د�ارد. �اين� ك�ار ب�ه ش�م�ا ك�م�ك� مي� �كن�د ت�ا� كال�
جديدي� را با تركيب ك�الس �هاي� ديگر� بسازيد.•Encapsulation :)محصورس�ازي ب�ه ش�ما كم�ك )محصورس�ازي
مي� كن�د� ت�ا� ص�ف�ات� �و رف�تاره�اي �ي�ك �ش�ي� را� ك�ه م�و�رد �ني�از ش�ي د�يگري نمي باش�د از� آن� شي مخ�في �نگه داريد.
•Polymorphism)ريخ�تي )چن�د امك�ان ش�ما ب�ه روش اين :عملكرده�اي و�اق�ع د�ر ك�ه ن�ام� ي�ك ب�ا ت�ا �رفتاره�اي�ي م�ي د�ه�د م�تف�او�تي دارن�د� ط�راحي نم�ايي�د. �مثال ش�ي م�اش�ين لب�اس ش�ويي
ب�س�ته ب�ه ن�وع� ورودي ه�ا�ي خ�ود� اعم�ا�ل متف�اوتي انج�ام مي دهد.
نقا
ه د
نسی
ح
hd
.deh
ghan
@gm
ail.c
om
195
مدل سازی شی گراییمدل سازي به روش شي گرا با استفاده از •
انجام مي شود.UMLتكنيك •UML Unified Modeling Language
زبان يكپارچه مدل سازي•زباني است كه به صورت بصري براي •
نمايش نمودارهاي مختلف جهت مدل سازي يك سيستم به روش شي گراء
استفاده می شود.
نقا
ه د
نسی
ح
hd
.deh
ghan
@gm
ail.c
om
196
مدل سازی شی گرایی• Functional Models
• Use case diagrams• Structural Models
• Class diagrams• Dynamic/Behavioral Models
• Statechart diagrams• Sequence diagrams• Activity diagrams
نقا
ه د
نسی
ح
hd
.deh
ghan
@gm
ail.c
om
197
use caseمدلسازی
تحلیل و طراحی
سیستم های شی گرا
حسین دهقاندانشگاه آزاد بوشهر
هدف
نقا
دهن
سیح
م
جی
سند
مهو
ی فن
ه کد
شدان
199
use case هدف مدل
برای توصیف توابع و فرایندهای اساسی سیستم •و نحوه تعامل سیستم اطالعاتی با محیط اطراف
مدل سازی رویدادهای کسب و کار و اینکه چه •کسی این فرایندها را آغار و سیستم چگونه به
این رویدادها پاسخ می دهد.برای مدل سازی•
(as-inسیستم جاری )•(to-beسیستمی اطالعاتی آینده )•
نمایش نحوه تعامل سیستم کسب و کار با محیط•200
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مزایاوسیله ای برای کسب نیازهای کارکردی•تجزیه سیستم به اجزای قابل اداره و •
کنترلزبانی مشترک ارئه می دهد که به آسانی •
برای صاحبان سیستم قابل درک است.کمک به تخمین گستره پروژه، فعالیت ها و •
برنامه زمان بندینقطه آغازی برای شناسیایی اشیا یا •
موجودیت ها 201
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
توصیف
نقا
دهن
سیح
م
جی
سند
مهو
ی فن
ه کد
شدان
202
مقدمه یک توصیف ساده از توابع سیستم و use-caceمدل •
از دید کاربران است.• Function diagram
نمایش دهنده توابع پایه ای سیستم•کاربر چه کاری می تواند انجام دهد.•سیستم برای درخواست های کاربر چه •
عکس العملی انجام می دهد.
عمليات سيستم و افرادي که اين اطالعات را •دريافت يا ارسا ل مي کنند، را به تصوير مي کشد.
203
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
use-caseساخت دیاگرام های
همکاری سازمان و تیم پروژه برای نوشتن •هاuse-case متنیتوصیفات
ها به use-caseانتقال توصیفات متنی •دیاگرام ها
204
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
usecaseاجزای نمودار
نقا
دهن
سیح
م
جی
سند
مهو
ی فن
ه کد
شدان
205
•UseCase. دهد: می قرار کاربر اختیار در سیستم که هرسرویسی•Actor :با که هستند هایی سیستم یا افراد ها، کار UseCaseعامل ها
. . شود می دریافت یا و تزریق آنان توسط اطالعات کنند می
•UseCase Diagram میان و UseCaseمحاورات نشان Actorها را ها. دهد می
. UseCaseدر • هستیم کاربران های نیاز دنبال به ما دیاگرام،
اجزای نمودار
206
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
Actor یا کنشگر
207
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
هرچیزی که نیاز به تعامل با سیستم دارد تا به مبادله اطالعات بپردازد.
کنشگر: کاربران خارجی یک سازمان
سیستم اطالعاتی دیگر حسگر دما
زمان
Use case ها از سوی کنشگرها آغاز یاتحریک می شود.
Use case یا موردکاربردی
208
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
یک هدف از سیستم را use caseهر نمایش می دهد و توالی فعالیت ها و
تعامل کاربر را توصیف می کند.
یک فرآیند مهم است که با انجام آن توسط سیستم، سودی برای کنشگر
دارد.
Associationتناظرها یا
209
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
use caseبرای نمایش تعامل بین یک کنشگر و در حالت عادی، این ارتباط دو طرفه است.اگر ارتباط یک طرفه باشد، از یک پیکان در
انتهای خطوط استفاده می شود.* = تعدد ارتباط
مثال
210
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
هاuse caseروابط بین • Extends
• A use case extends another use case• Include
• A use case uses another use case (“functional decomposition”)
• Generalization• An abstract use case has different
specializations
211
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مثال وراثت
212
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
وراثت
213
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
وقتی دو یا چند کنشگر ویژگی رفتاری مشترکی داردند
یکسانی را آغاز کنند. use caseمی توانند
مثال وراثت
214
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
includeشمول یا
215
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
: در بعضی مسائل، یک فعالیت برای انجام مشکلبسیار پیچیده می باشد.
پیچیده را به صورت use case: می توان راه حلمجموعه ای از حاالت کاربردی ساده تر در نظر
گرفت.
مثال شمول
216
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
CreateDocument
Scan OCR Check
<<include>>
<<include>>
<<include>>
شمول: استفاده مجدد
217
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
در حال حاظر توابعی وجود دراند. چگونه : مشکلمی توان از این توابع استفاده کرد؟
includeاستفاده از رابطه : حل راه
ViewMapOpenIncident
AllocateResources<<include>>
<<include>>
Base UseCase
SupplierUse Case
Extendتوسعه یا
218
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
: در بعضی مسائل، یک فعالیت در بعضی مشکلوقت ها نیاز به گسترش دارد.
extend: استفاده از رابطه راه حل
مثال توسعه
219
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
ReportEmergency
FieldOfficer
Help
<<extend>>A
Base UseCase
هاuse caseرابطه وراثت در
220
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
ValidateUser
CheckPassword
CheckFingerprint
ParentCase Child
Use Case
221
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
توضیحات
نقا
دهن
سیح
م
جی
سند
مهو
ی فن
ه کد
شدان
222
223
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
مثال
نقا
دهن
سیح
م
جی
سند
مهو
ی فن
ه کد
شدان
224
سيستم پردازش سفارشات
ارسال کاالي سفارش شده
تغيير فهرست اموال
چاپ گزارش فهرست اموال
تغيير سفارش
موجود
سفارش جديد
فروشنده
مديرانبار
کارمند انبار
حسابدار
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
225
...uc Use Case Moدستگاه خود پرداز بانکEA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version EA 7.1 Unregistered Trial Version
انک صدیب مت
ری مشت
ارمالي ب ماعت سيست
ول رداشتپ بردهگذاری وجهسپ
قالوجه انت
اعالمموجودی
ور غییررمزعب ت
رداختوجه پتجزیه و تحلیل نکته:
سیستم ها امری سلیقه ای است و
می توان گفت مانند نوشتن انشا می
باشد.
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
226
يك سيستم صدور فاكتور ساده را در نظر بگيريد. •در اين سيستم فروشنده اطالعات فاكتور را وارد مي كند.•و • ك�رده را محاس�به ف�اكتور مبل�غ ك�ل آن سيس�تم از پس
فاكتور را چاپ مي كند و به فروشنده مي دهد.
نمونه اي از يك نمودار مورد كاربرد
Enter Bill Details
Calculate Total Amount
Print Bill
Clerk
Clerk
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
227
کتابخانه
228
نقا
ه د
نسی
حی
سدهن
مو
ی فن
ه دکش
اند
م
ج
Borrow journal
Book BorrowerBorrow copy of book
Return copy of book
Extend loan
Journal BorrowerReserve book
Return journal
Browser
Librarian
Browse
Update catalog
دیاگرام کالس
تحلیل و طراحی
سیستم های شی گرا
حسین دهقاندانشگاه آزاد بوشهر
تعریفارتباطات کالس را در سيستم نشان مي •
دهد.مثال حساب بانکي يک کالس است که •
شامل اطالعات و رفتاري که برروي اطالعات عمل مي کنند.
براي نمايش ساختار كالس هاي موجود در •سيستم، صفات و عمليات آن ها به كار
مي رود.
نقا
ه د
نسی
ح
hd
.deh
ghan
@gm
ail.c
om
230
اجزای دیاگرام کالسکالس: بصورت یک مستطیل که اسم آن 1.
داخل آن نوشته شده است..2Association ارتباط( به صورت یک خط(
راست که نامی برروی آن نوشته شده است.
صفت3.
عملکرد4.
نقا
ه د
نسی
ح
hd
.deh
ghan
@gm
ail.c
om
231
نقا
ه د
نسی
ح
hd
.deh
ghan
@gm
ail.c
om
232
صفاتآن چیزی است که شی می داند.•واحدی از اطالعات که توسط شی نگهداری و مدیریت •
می شود.ساده ترین شیوه ی نمایش صفات، آوردن نام آن هاست •
اجازه می دهد اطالعات بیشتری درج شود.UMLولی آدرس ایمیل 5مثال اگر یک کارگر حداقل یک و حداکثر •
داشته باشد به این صورت نوشته می شود: EmailAddress[1..5]
اگر بخواهیم بگوییم که این آدرسها دارای ترتیب خاصی • EmailAdress[1..5نیستند به این شکل نشان می دهیم:
unordered] اگر بخواهیم نوع داده ی یک صفت و یک مقدار پیش •
فرض )اختیاری( را نشان دهیم، اینگونه نشان می دهیم:EmailAddress[1..5]unordered:string=“No Email Address”
اگربخواهیم مقدار صفت توسط اشیای دیگر قابل •دسترس نباشد، از یک عالمت )-( قبل از تعریف صفت
می آوریم.ن
قاه د
نسی
ح
hd
.deh
ghan
@gm
ail.c
om
233
صفاتVisiblity Name[multiplicity
Ordering]:Type=initial_value•Visibility
استفاده از عالمت +: قابل استفاده ی عمومی، قابل •استفاده از همه ی کالسها
استفاده از عالمت -: قابل استفاده بصورت خصوصی، •قابل استفاده توسط متدهای همان شی
استفاده از عالمت #: قابل استفاده بصورت حفاظت •شده، از زیر کالسها قابل دسترس باشد و از سایر
کالسها غیر قابل دسترس باشد.•Name
نام صفت را مشخص می کند.••Multiplicity
1اختیاری است و دارای مقدار پیش فرض •..* و 1است ولی می توان تعداد را بصورت
1..n.نیز مشخص کرد
نقا
ه د
نسی
ح
hd
.deh
ghan
@gm
ail.c
om
234
صفاتVisiblity Name[multiplicity Ordering]:Type=initial_value
•Orderingمرتب بودن و اولویت را مشخص می کند و اختیاری است. دو •
را می گیرد.unordered و orderedمقدار •Type
, Boolean, Realاختیاری است و نوع صفت را مشخص می کند.•Integer,String
•Initial_value:مقدار پیش فرض برای زمانی که مقداری برای صفت •
مشخص نمی شود.اگر یک صفت مختص فقط یک شی خاص باشد آن را •
Instance Scope یا Object Scope می گویند ولی اگر در همه ی Class Scopeاشیای کالس قابل استفاده باشد، آن را
استفاده UnderLineمی گویند و برای نشان دادن آن از می شود.
نقا
ه د
نسی
ح
hd
.deh
ghan
@gm
ail.c
om
235
صفات )مثال(
نقا
ه د
نسی
ح
hd
.deh
ghan
@gm
ail.c
om
236
عملیاتعملیات•
چیزی که کالس انجام می دهد.•متد•
چگونگی انجام دادن عملیات را مشخص •می کند و در واقع یک پیاده سازی از
عملیات است.
نقا
ه د
نسی
ح
hd
.deh
ghan
@gm
ail.c
om
237
تعریف عملیاتVisibility Operation_name(parameter_list): Return_type
•Visiblityمثل قبل•
•Operation_Nameنام عملیات•
•Parameter_listاین لیست دارای ساختار زیر است که با کاما از هم جدا می •
شوند.Kind Name : type = default_value
•Kind نوع ورودی یا خروجی بودن پارامتر را مشخص می کند و می : باشد.in , out inoutتواند
•Type نوع پارامتر :Boolean , integer , Real , String•Default_valueیک مقدار پیش فرض :
نقا
ه د
نسی
ح
hd
.deh
ghan
@gm
ail.c
om
238
مثال عملیات
نقا
ه د
نسی
ح
hd
.deh
ghan
@gm
ail.c
om
239
روابط
نقا
ه د
نسی
ح
hd
.deh
ghan
@gm
ail.c
om
240
Inheritance relationshipClass 2 and Class 3 derive from Class 1
Class 1
Class 2 Class 3
مثال کالس دیاگرام
نقا
ه د
نسی
ح
hd
.deh
ghan
@gm
ail.c
om
241
SimpleWatch
PushButton Display Battery Time1
1111
1 22
SimpleWatch class contains 2 PushButtons 1 Display 2 Batteries 1 Time
نمودار کالس برداشت پول از ATM
نقا
ه د
نسی
ح
hd
.deh
ghan
@gm
ail.c
om
242
کارت خوانشماره کارت
پذيرش کارتبازگرداندن کارت
خواندن کارت
حساب
شماره حسابرمز
موجوديباز کردنبرداشت
کاهش حسابتاييد مبلغ
دستگاه پرداختمبلغ
تهيه مبلغ
صفحه نمايش
فرمانپذيرش ورودي
نمودار توالی
تحلیل و طراحی
سیستم های شی گرا
حسین دهقاندانشگاه آزاد بوشهر
نقا
ه د
نسی
ح
hd
.deh
ghan
@gm
ail.c
om
244
تعریف useبراي نشان دادن جريان عمليات در يک•
case است. مثال برداشت پول چند توالي دارد: برداشت پول، تالش براي برداشت
بدون موجودي.
نقا
ه د
نسی
ح
hd
.deh
ghan
@gm
ail.c
om
245
نمادها• Classes are represented by columns• Messages are represented by arrows• Activations represented by narrow
rectangles• Lifelines are represented by dashed lines
نقا
ه د
نسی
ح
hd
.deh
ghan
@gm
ail.c
om
246
مثال نمودار توالی برداشت پول ATMاز
نقا
ه د
نسی
ح
hd
.deh
ghan
@gm
ail.c
om
247
مشتري
کارت خوان صفحه نمايش حساب مشتريدستگاه پرداخت
پول
. پذيرش 1کارت
. خواندن کارت2
.شروع به کار صفحه نمايش3
PIN. اجازه ورود 4
PIN. ورود 5 . بازکردن حساب6PIN.بررسي 7
. اجازه تراکنش8
. انتخاب برداشت9. تعيين مبلغ10. وارد کردن مبلغ11 .خارج کردن مبلغ12
از حساب. بررسي مبلغ13
. کم کردن از حساب14
.پرداخت 15پول
.باز گرداندن کارت16