صفحه 1:
صفحه 2:
صفحه 3:
صفحه 4:
سه قسمت مدل سازی عبارتند از :
صفحه 5:
صفحه 6:
صفحه 7:
Huston م مله
Sucl dip cto statue
موسر
وه
و
ed programming
عد
صفحه 8:
صفحه 9:
صفحه 10:
صفحه 11:
صفحه 12:
WED ss
صفحه 13:
شماره گروه داده ای
نام گروه داده ای
صفحه 14:
GAIA gia انلا
صفحه 15:
WED ss
صفحه 16:
ccounts
Dept.
صفحه 17:
OUD eas pepe.
Accounts :
Dept.
صفحه 18:
OO,
صفحه 19:
OO es ep
Picking
Dispatch
note
صفحه 20:
GOES ESE ye
صفحه 21:
صفحه 22:
عمج
Revecr
‘customers.
GroeR
‘ore
PrexIne
PRODUCT
DEAL
Picking
Inventor
صفحه 23:
9
صفحه 24:
0 UR Pe ST cei]
EN ee rece Se Ps ee Oh Pree (a)
۱
او
صفحه 25:
ادزم ]دندء
مدل ساری فرایندی (]
ان سس I ie es بر ترات داشتد پاش
طوح پاپین نر که دیگر قابل تجزیه نیسنند . توابع اولیه نامید
50-5
صفحه 26:
BGM Ghali gj dis
عناصر و المان های کلیدی در 50800) عبار تند از:
eae
جه سم
صفحه 27:
اقل ری CROKE)
صفحه 28:
صفحه 29:
صفحه 30:
BGM Ghali gj dis
STUDENT
صفحه 31:
ذل
مدل
EMPLOYEE AUTO
STUDENT
GRO ol thy js
AUTO-
ASSIGNMENT
مستاجر - خوليكاه
NEM
STUDENT-CLUB
DORMITORY,
pORM TOR > aa
STUDENT
م
صفحه 32:
BGM Ghali gj dis
صفحه 33:
اقل ری CROKE)
Onset ارجا(
CourseOode Core ٩ 0
111ص
صفحه 34:
سيره ا ات ؟ اس
D 0 ۰ 0
0 9 0 1
eee + Doe /D
Dove! ike عست _ د =
Corre (0 + Deve D *
Pera ID Wiese: +
seas م0 ۰ هت ID. ل
جل سوت ۰ ۹ ۳
Daw Pb + Per
+ Boke (2. Custer | Barployer)
صفحه 35:
(همه هل نگ 0 9
صفحه 36:
صفحه 37:
تکنیک های مدل سازی
Modeling Techniques
11
متدلوژی ها و مدل ها
قبل از پرداختن به مدل ها و مدل سازی ها بهتر است یک بار مفاهیم
متدلوژی را مرور کنیم :
متدلوژی ها
* رهنمون های جامعی هستند در جهت انجام و تکمیل تمام فعالیت های
). SDLC (Software Development Life Cycle
* مجموعه ای از مدل ها ،ابزار و تکنیک ها هستند .
مدل ها Models
* نمایش یک ”نمود“ مهم از دنیای واقعی ،نه مشابه اجسام واقعی .
* تجرید استفاده شده برای مجزا کردن ،خارج از ”نمود“ .
* نمودارها و جدول ها .
* برنامه ریزی پروژه و کمک در بودجه بندی .
44
متدلوژی ها و مدل ها
ار تباط میان اجزای
متدلوژی
55
مدل سازی
مدل سازی چیست ؟
یک مدل ،یک انتزاع یا تقریبی است که برای شبیه سازی واقعیات
استفاده می شود .تمرکز مدل سازی روی این است که سیستم ” ،چه
کاری“ انجام می دهد نه ”چگونه“ آن را انجام می دهد .
سه قسمت مدل سازی عبارتند از :
مدل سازی فرایندی (. )DFD / Activity diagrams مدل سازی داده ای (. )ERD / Class diagrams مدل سازی رفتاری(State Transition Diagrams ‘STD’ or Statechart Diagram ,
Decision Table , Decision Trees , Pseudo code , Structured
English ).
مدل سازی
77
نگرش شی گرا
نگرش شیء گرا چشم انداز یک سیستم اطالعاتی است به عنوانمجموعه ای از تعامالت اشیا که برای به انجام رساندن وظایف با هم
کار می کنند .
شیء عنصری است در سیستم کامپییوتر که می تواند به پیام هاواکنش
دهد .
طراحی شی گرا یعنی تعریف تمام انواع اشیا الزم برای برقراری ارتباطبا افراد و دیگر وسایل سیستم و تصحیح تعریف هر نوع شی به نحوی
که با یک زبان یا محیط معین پیاده سازی شود .
برنامه نویسی شی گرا یعنی نوشتن دستورات در یک زبان برنامهنویسی برای تعریف اینکه هر نوع شی چه کاری انجام دهد ،شامل
پیام هایی که اشیا می فرستند یا دریافت می کنند .
88
مدل سازی
اما به عنوان یک نگاه اجمالی در مورد دو نگرش گفته شده می توان
گفت :
آنالیز ساخت یافته منجر می شود به طراحی ساخت یافته و متعاقبا برنامه
نویسی ساخت یافته .موارد زیراز اهداف تکنیک های ساخت یافته است :
* رسیدن به کیفیت باال در برنامه های با رفتار قابل پیش بینی .
* ایجاد برنامه هایی که به راحتی قابل اصالح اند .
* ساده کردن برنامه ها و فرایند توسعه برنامه .
* رسیدن به قدرت پیش گویی و کنترل باالتر در فرایند توسعه .
* سرعت باالتر در فرایند توسعه .
* هزینه کمتر در فرایند توسعه .
99
مدل سازی
10
10
مدل سازی
شی گرا چیست ؟
ساختن بنیادی اشیا ،که ترکیب می کند ساختمان داده ها و رفتار رادر
یک موجودیت واحد .
راه سازمان دهی نرم افزار به عنوان مجموعه ای از اشیا مجزا کهبه هم می پیوندند در هر دو ساختمان داده ها و رفتار .
پس در شی گرا ارتباط و اتصال میان داده و رفتار بسیار قوی است در
حالیکه این اتصال در ساخت یافته بسیار آزادانه و ضعیف است .
11
11
مدل سازی
هر کدام از دو نگرش گفته شده تکنیک های خاص خود را دارند .
مدل سازی فرایندی ،مدل سازی داده ای و مدل سازی رفتاری از جمله
تکنیک های مورد استفاده در هر دو نگرش هستند که نوع عملکرد این
تکنیک ها و پیاده سازی آنها در هر یک از این دو متفاوت است .
تکنیک های ساخت یافته عبارتند از:
مدل سازی فرایندی ( ، )DFDمدل سازی داده ای ( )ERDو مدل
سازی
رفتاری (. )ELH
و تکنیک های شی گرا هم عبارتند از:
Use case diagrams , Class diagrams ,
Interaction digrams .
ما در اینجا به تکنیک های مدل سازی ساخت یافته می پردازیم .
12
12
مدل سازی فرایندی DFD
• یک DFDحرکت داده ها را در سرتاسر یک سیستم اطالعاتی نشان
می دهد ولی منطق برنامه یا مراحل پردازش را نشان نمی دهد .
• مجموعه ای از DFDها یک مدل منطقی را بوجود می آورند که نشان
می دهد سیستم چه کاری انجام می دهد (نه چگونه آن را انجام می
دهد) .
اجزای DFD
̀ای``ما̀یش
̀مت``ا̀یه ̀ای̀اس`تفا̀د̀ه م`یک``نند ب``ر ن
DFDها از چ`هار ع`ال پ
ف`ر̀ا̀یندها ،
جریان داده ها ،گروه های داده ای و موجودیت ها .
13
13
مدل سازی فرایندی DFD
فرایند Process
داده ورودی را دریافت می کند و خروجی را تولید می کند که در شکل یا
محتویات ویا هر دو فرق می کند .
نام فرایند مرجع
شماره فرایند
2.3.4
Process customer
نام فرایند
14
14
مدل سازی فرایندی DFD
جریان داده ها Data flow
یک یا چند آیتم داده ای را نشان می دهد که به شکل زیر است :
پیکان یک جهته در مواردی است که داده ای را فقط وارد یا خارج کنیم
و پیکان دو طرفه برای مواردی است که هم داده را می خوانیم و هم
مجددا
بازنویسی می کنیم .
15
15
مدل سازی فرایندی DFD
گروه های داده ای Data store
داده هایی را نشان می دهد که توسط سیستم ذخیره شده است .
مشخصات
فیزیکی یک گروه داده ای مهم نیست زیرا ما با یک مدل منطقی سرو کار
داریم .یک گروه داده ای به شکل زیر نمایش داده می شود :
نام گروه داده ای
شماره گروه داده ای
16
16
مدل سازی فرایندی DFD
موجودیت Entity
با یک مستطیل نمایش داده می شود که نام موجودیت در داخل ان می
آید
و از آن به عنوان یک منبع و مرجع اصلی استفاده می شود .
نام موجودیت
17
17
مدل سازی فرایندی DFD
قواعد DFDها
1داده ها به طور مستقیم بین فرایند ها جریان پیدا نمی کنند .
2داده ها به طور مستقیم بین گروه های داده ای جریان پیدا نمی کنند .
3داده ها نمی توانند به طور مستقیم از Data storeبه موجودیت ها
یا بر عکس انتقال یابند .
18
18
مدل سازی فرایندی DFD
در ادامه روشی برای تهیه یک DFDآمده است که توسط Geoff Cutts
ارائه شده است .نکاتی هم عالوه بر این روش ذکر شده است .
: Method by Geoff Cutts
1ایجاد کنید یک نمودار ایجاد اسناد فیزیکی را .از بیضی برای نمایش
یک شخص یا قسمت استفاده کنید .
Sales
Dept.
Picking
notes
Warehou
se
Order
form
Custom
er
Dispat
ch
note
Invoic
e
Accounts
Dept.
Chequ
e
مدل سازی فرایندی DFD
19
19
2محدوده سیستم را مشخص کنید .با نقطه چین محدوده نشان
دهید .هر
چیزی گه خارج از نقطه چین باشد ،یک موجودیت خارجی است .
Picking
notes
Sales Dept.
Order form
Customer
Warehouse
Invoice
Dispatch
note
Accounts
Dept.
Cheque
DFD مدل سازی فرایندی
بیضی های درون. ایجاد کنید نمودار جریان داده های فیزیکی کنونی را3
. محدوده را تبدیل به فرایند کنید
Order form
Custome
r
1Sales Dept.
Process Order
Warehou
se
Invoice
Cheq
ue
Picking
notes
Accounts
Accounts Dept.
2
Prepare Invoice
Dispatch
note
20
20
مدل سازی فرایندی DFD
21
21
4ایجاد کنید نمودار سطح صفر را که ارتباطات بیرونی سیستم را نشان
می دهد و در واقع شمای کلی سیستم است .
0
Wareho
use
Picking
notes
Dispatch
note
& Sales
Accountancy
System
Order form
Invoice
Chequ
e
Custom
er
22
22
مدل سازی فرایندی DFD
در موقع ایجاد سطح صفر باید به نکاتی توجه کرد :
* دیاگرام سطح صفر را طوری بکشید که در یک صفحه جا شود .
* برای نامگذاری فرایند ها در سطح صفر از سیستم اطالعاتی استفاده
کنید .
* در نامگذاری از نام های یکتا استفاده کنید .
* خطوط را از روی هم عبور ندهید .
* یک نام اختصاصی و یک شماره ارجاع برای هر فرایند درج کنید .
* به دست بیاورید ورودی و فیدبک کاربر را .
مدل سازی فرایندی DFD
23
23
5ایجاد کنید نمودارهای سطوح پایین تر را .هر فرایند می تواند بسط
پیدا
کند و تجزیه شود به سطوح پایین تر DFD ،های سطوح پایین تر
Level 1
اطالعات جزئی تر و دقیق تری را شامل می شوند .
2
1
پس از رسیدگی های بیشتر
فرایند 1ممکن است تبدیل
شود به :
1.2
مطمئن شوید که
ورودی ها
و خروجی ها با هم
متناسب
هستند .
1.1
1.3
– Level 2
Reference ID is
1.1, 1.2 ….
24
24
مدل سازی فرایندی DFD
مثالی از DFDسطوح پایین تر :
25
25
مدل سازی فرایندی DFD
6مطمئن شوید که به همه جریان داده ها نامی داده شده است .یک
DFD
کامل نمی شود مگر اینکه همه توابع و جریان داده ها نام با معنی داشته
باشند .
7هر جا که گروه های داده ای نیاز است آنها را اضافه کنید .
DFD مدل سازی فرایندی
26
26
: دو نوع دانستDFD از نگاهی دیگر می توان گفت
. `یز̀یکی ک``ه ن``شانم`ی̀دهد ̀اش`یا چ`گو̀نه ر̀ویم`ی̀د̀هند
:
` فDFD
ف``یز̀یکیب``یر̀ونک``شید̀ه م`یش`ود وDFD`نطقی ک``ه از ی`ک
:
مDFD
. `ا̀ری ̀نجام م`ی̀دهد
ن``شان م`ی̀دهد س`یستمچ`ه ک` ̀ا
Physical
Order
form
Dispat
ch
note
Price
file
Clerk
Receive order and
write out an order file
Typist
Type invoice
Orde
r
form
Logical
Order
Order
Receive order
Dispatch
Invoice details
Produce invoice
Price
information
Invoic
e
27
27
مدل سازی فرایندی DFD
در انتهای این بخش ذکر چند نکته ضروری است :
* در رسم سطوح پایین تر باید به هم سطحی فرایند ها و توازن بین آنها توجه کرد .
* یک سیستم ممکن است مجموعه ای از DFDها با سطوح 0تا Nداشته باشد( 3یا 4
سطح رایج است ) .
* هر سطح حداکثر 7فرایند می تواند داشته باشد .
* فرایندهای سطوح پایین تر که دیگر قابل تجزیه نیستند ،توابع اولیه نامیده می شوند .
* یک فرایند باید خروجی داشته باشد :
بدون خروجی
این فرایند نیست
* اگر فقط در فایل ها بنویسیم ،بزرگ شدن فایل ایجاد مشکل می کند .
* از ارتباطات پیچیده باید جلوگیری کرد .
28
28
مدل سازی داده ای ERD
مدل ) ER (ERDتوسط آقای Peter Chenدر سال 1976معرفی شد و اکنون یکی از
اجزای CASEاست .
عناصر و المان های کلیدی در ERDعبارتند از:
موجودیت Entityبه تمام چیزهای قابل تشخیص در محیط کاری کاربر گفته می شود .در پایگاه های داده
ها
هر جدول یک Entityاست.
موجودیت ضعیف :در پایگاه داده ها نمی تواند وجود داشته باشد مگر اینکه نوع دیگری
از موجودیت موجود باشد .
PRESCRIPTION
1:
PATIENT
N
PATPRESCRIPTION
موجودیت وابسته :وجود آنها بسته به وجود موجودیت های دیگر است .
APARTMENT
1:
N
DORMOCCUPANT
BUILDING
29
29
مدل سازی داده ای ERD
-صفت ها Attributes
خصوصیات یک موجودیت را توصیف می کنند .در پایگاه داده ها هر یک
از ستون های جداول یک صفت است .هر سطر در
جداول یک نمونه از آن موجودیت را با صفاتش نشان می دهد .
صفت ها چند نوع اند :
1صفت های ساده :قابل تجزیه نیستند (نام ،جنس ،وضعیت تاهل و . )...
2صفت های مرکب :می توانند تجزیه شوند (تاریخ تولد ،
آدرس و . )...
3صفت های مشتق :که از روی دیگر صفات می توان آنها را به دست
آورد (سن و معدل و . )...
ERD مدل سازی داده ای
Entity Type (Table)
30
30
Attributes
(Columns)
Entity
Instances
(Rows)
31
31
مدل سازی داده ای ERD
-ارتباط Relationship
راهی است که نشان می دهد موجودیت ها چگونه با هم تعامل دارند .در
پایگاه داده ها ارتباط اشاره دارد به اتصاالت بین جداول از طریق کلید
خارجی .
درجه ارتباط Cardinalityتعداد ارتباط های یک موجودیت با دیگر موجودیت ها است .
شکل زیر مینیمم و ماکزیمم درجه ارتباط را نشان می دهد :
STUDENT
1:N
DORM-OCCUPANT
DORMITORY
32
32
مدل سازی داده ای ERD
نوعی از ارتباط ،ارتباط بازگشتی است :
ROOMSWITH
1:N
STUDENT
33
33
مدل سازی داده ای ERD
نوعی از ارتباط ها ارتباط های دودویی هستند که سه نوع این ارتباط در
مثال زیر مشخص شده است :
AUTO
1:1
EMPLOYEE
AUTOASSIGNMENT
STUDENT
1:N
DORMITORY
مستاجر -خوابگاه
CLUB
N:M
STUDENT-CLUB
STUDENT
ERD مدل سازی داده ای
34
34
ERD نمادهای
EntityType
Entity
One-to-Zero-Or-One Relationship (Optionality).
Mandatory One-to-One Relationship
One-to-Zero-Or-More Relationship
One-to-One-Or-More Relationship
ERD مدل سازی داده ای
35
35
: مثال زیر این نمادها را بهتر نشان می دهد
CourseCode
Course
Student
Deliverable
Sitting
GradeAllocation
Cardinality
CourseCodeAllocation
ERD مدل سازی داده ای
36
36
در مثال زیر هم نوع ارتباط موجودیت ها با هم همراه با صفات هر یک از
) (مدل سازی یک ویدئو کلوپ: موجودیت ها آمده است
Rental
RentalItem
• RentalItemID
• RentalID
• MovieCopyID
• RentalID
• PersonID
Person
• PersonID
• Name
• Date of birth
LifeActing
MovieCopy
• MovieCopyID
• MovieID
ScreenActing
MovieTitle
• ScreenActingID
• PersonID
• MovieID
• ScreenRole
• MovieID
• Name
• Description
• LifeActingID
• PersonID
• Role (i.e. Customer / Employee)
مدل سازی داده ای ERD
37
37
به عنوان آخرین مثال نمودار یک ERDبرای دو موجودیت در زیر آمده
است ( :معموال ERDها را به این شکل نمایش می دهند ،که در آن صفات به صورت
یک بیضی نشان داده می شوند و آنها را کنار موجودیت قرار نمی دهند)
DormName
StudentNumber
Rent
STUDENT
1:N
Location
DORMITORY
DORMOCCUPANT
StudentYear
StudentName
Number of Rooms
38
38
مدل سازی رفتاری ELH
سومین تکنیک مدل سازی ELH ،ها هستند که البته در حال حاضر به
عنوان یک تکنیک مدل سازی رایج نیست و می توان گفت منسوخ شده
است .در این تکنیک تغییراتی را که یک موجودیت در کل سیستم
پذیرفته
است را توصیف می کند .در اینجا هم بیش از این به این تکنیک پرداخته
نمی شود .