Download presentation
Presentation is loading. Please wait.
1
ניתוח ועיצוב מערכות תוכנה אביב 2012
ניתוח פונקציונלי, DFD היררכיים ומילון נתונים לפי מתודולוגיית ADISSA
2
חלק שני: ניתוח ועיצוב מערכת מידע לפי מתודולוגיית ADISSA
E1 3 E2
3
ניתוח המערכת החדשה המטרה – לספק אפיון מפורט של מערכת המידע החדשה, כלומר, להגדיר במדויק את ביצועי המערכת תוך התייחסות למרכיבים הבאים: פונקציות המחשב שתבצע המערכת קלטים של המערכת ומקורותיהם פלטים של המערכת ויעדיהם נתונים שייאגרו בבסיס הנתונים של המערכת תוצרי שלב ניתוח מערכת המידע יהיו בסיס לעיצובה ולהקמתה. בשלב זה יוגדרו מרכיבי התוכנה הגדרה פונקציונאלית , הגדרה זו תהיה הבסיס לפיתוח תוכנת היישום.
4
שלבים במתודולוגיית ADISSA Architectural Design of Information System based on Structure Analysis
5
תרשים DFD אמצעי גרפי לתיאור פעילויות (כלומר, תהליכים, פונקציות) וזרימת המידע ביניהן. מטרתו להציג את הפעילויות שהמערכת מבצעת ואת המידע הזורם בין הפעילויות כלומר, הקלט הדרוש כדי לבצע כל פעילות והפלט הנוצר בעקבות ביצועה. מרכיבי תרשים :DFD משולש מציין יחידת זמן או מכשיר הקשור למערכת הפועל בזמן אמת. חץ מציין זרם מידע (אפיק מידע) בין פונקציות למרכיבים אחרים במערכת.
6
דוגמא לתרשים DFD שטוח מההרצאה
7
כללים לכל פונקציה חייב להיות זרם מידע אחד שנכנס אליה (קלט) ולפחות זרם מידע אחד שיוצא ממנה (פלט). בקצהו של כל זרם מידע חייבת להיות לפחות פונקציה אחת – כלומר לא יכול להיות קשר ישיר בין ישויות למאגרי מידע. אין משמעות לזרם מידע היוצא מפונקציה ונכנס לאותה פונקציה. לכל מאגר מידע חייב להיות לפחות זרם מידע אחד שנכנס אליו (עדכון) ולפחות זרם מידע אחד שיוצא ממנו (שליפה). כלל זה אינו חל על מאגר מידע חיצוני השייך למערכת מידע אחרת ומצויר מחוץ למסגרת התרשים. ישויות חיצוניות בצד שמאל של התרשים משמשות מקור לקלט ; ישויות חיצוניות בצד ימין של התרשים משמשות יעד לפלט. ישות זמן (T) יכולה להופיע רק בצד שמאל של התרשים (קלט). פעילות שמתבצעת לא ביוזמת המשתמש אלא ביוזמת המערכת, במועד שנקבע מראש זרם מידע יסודי (שאין בקצהו פונקציה כללית) חייב להיות חד כיווני. ניתן להוסיף קשר לוגי AND/OR בין זרמי מידע
8
גבולות בעת הכנת תרשימי DFD צריך להחליט מה תהיה מידת הפירוט והדיוק שלהם תוך כדי התייחסות לכללים אחדים: להימנע מפירוט יתר להימנע מהתייחסות לפונקציות של בדיקות תקינות ושגויים להימנע מטיפול במִנהל/תחזוקה של קבצים להימנע מפירוט יתר של ישויות חיצוניות להימנע מטיפול בהיבטים פיזיים שמחוץ למערכת התוכנה העתקה אחד-לאחד ממצגת יחידה 5 של ADISSA, עמ' 29. ע"מ להבין את הרעיון מאחורי תרשימי DFD צריך להבין גם במה הם לא מתעסקים, ולמה זה ככה.
9
דוגמא - מערכת מידע (אישית) לסטודנט
יש להקים מערכת מידע לסטודנט, שתסייע לו בכל הקשור ללימודיו ולהישגיו. המערכת תאפשר לסטודנט להזין בתחילת כל סמסטר את פרטי הקורסים שנרשם אליהם ושאושרו לו בזמן הייעוץ, כולל פרטי מורים ומדריכים, זמני לימוד וחדרי לימוד, ולאחר מכן את דרישות הלימוד בכל קורס כולל פרטים מהסילבוסים, מועדי בחינות ומטלות אחרות, משקלות העבודות והמבחנים, שעות קבלה של מרצים ואסיסטנטים וכדומה. הסטודנט יוכל לשלוף מהמערכת מידע, בכל עת שירצה, על מועדי הרצאות ומיקומן, פרטי המטלות ומועדי הגשתן ועוד. במהלך הסמסטר הסטודנט יזין למערכת את סיכומי ההרצאות שכתב ואת סיכומי הקריאות (ספרים/מאמרים). סיכומי ההרצאות והקריאות יכללו את זיהוי הקורס ורשימת נושאים (מילות מפתח) שבהם עוסק החומר, כך שהוא יוכל לשלוף ולקרוא כל חומר מסוכם הדרוש לו לפי קורסים ונושאים, לפי צורכי הלימוד. הוא יוכל גם לשלוף את פרטי המטלות שעליו לבצע בכל קורס. במהלך הסמסטר ובסופו מקבל הסטודנט ציונים על עבודות ובחינות והוא יזין אותם למערכת. המערכת תאפשר לו לראות את ציוניו בקורסים ובעבודות השונות בכל עת. לפי דרישתו, המערכת תחשב את הציון הממוצע (המשוקלל) בכל קורס ואף תשמור אותו.
10
פתרון
11
דוגמא - מערכת מידע לחברת טיולים
יש להקים מערכת מידע עבור חברת טיולים המציעה טיולים באוטובוסים לאתרים שונים בארץ. המערכת תכלול את תכניות סוגי הטיולים השונים. לכל סוג טיול יש מספר זיהוי, שם, תאור קצר, מסלול הנסיעה, משך הטיול, ימי השבוע שבהם הוא נערך בעונות השנה, נקודת מוצא, מסלול איסוף מטיילים (שמות בתי מלון ותחנות איסוף אחרות, ושעות האיסוף), מספר משתתפים מינימלי ומקסימלי, תעריף למשתתף (תוך הבחנה בין קבוצות גיל, מספר אנשים בקבוצה, ימי ועונות השנה), אחוזי הנחה אפשריים שונים, ועוד. בכל טיול ישתתף מדריך מורשה אחד או יותר. מדריכי הטיולים הם עובדי החברה, אך לא כל מדריך מורשה להדריך בכל סוג טיול; מערכת המידע תאפשר לדעת אילו מדריכים מורשים להדריך באילו סוגי טיולים. המערכת תאפשר לבצע הוספות ושינויים בתכנית הטיולים, לפי הצורך. לקוחות (כלומר מטיילים) יכולים להזמין השתתפות בטיולים ע"י פניה בטלפון למרכז החברה או פניה אישית לקופות החברה המצויות בבתי מלון ומרכזי בידור שונים. מערכת המידע תאפשר רישום הזמנות תוך ציון מספר המזמינים, לפי קבוצות גיל. למרות שלכל סוג טיול נקבע תעריף, כנאמר לעיל, יש לאפשר הזמנת טיול בתעריף שונה (כלומר בהנחה) באישור נציג המכירות המטפל בהזמנה. מערכת המידע תאפשר להפיק דוחות על מצב ההזמנות לטיולים השונים, וכן סיכומים על מצב ההזמנות לפי חתכים של סוגי טיולים, אזורים, תחומי תאריכים וכדומה. לכל טיול יש לשבץ מדריך אחראי ומדריכים נוספים מבין המורשים להדריך באותו סוג טיול. השיבוץ נעשה ע"י מנהל התכניות. המערכת תאפשר למנהל התכניות או לאחראי על טיול מסוים לבצע שינוי בשיבוץ (למשל בשל החלפת מדריך שחלה).
12
דוגמא - מערכת מידע לחברת טיולים
האוטובוס נוסע במסלול האיסוף ומעלה לקוחות. הלקוחות יכולים להיות מבין אלה שהזמינו מראש אך גם לקוחות מזדמנים. לגבי הלקוחות שהזמינו מראש המערכת תאתר את הזמנתם ותאפשר לקבל תשלום בתעריף מיוחד שהוסכם עליו בעת ההזמנה. לקוחות מזדמנים יורשו לעלות לאוטובוס רק אם יתרת המקומות גדולה מכמות ההזמנות שטרם בוצעו עד אותו רגע. כל הלקוחות משלמים עבור הטיול עם העלייה לאוטובוס. ניתן לשלם במזומן, בשיק או בכרטיס אשראי. המערכת תאפשר בדיקת אשראי באמצעות קורא כרטיסי אשראי שיותקן באוטובוס או קורא נייד שיהיה אצל אחראי הטיול. הקורא יתקשר למערכת המידע של חברות האשראי כדי לקבל אישור מיידי. כנגד כל תשלום תופק קבלה ללקוח, ובמערכת המידע ירשם הסכום ששולם ומספר המשתתפים שבגינם נעשה התשלום (לפי קבוצות גיל). בתום כל יום עבודה המערכת תסכם את רישומי כל התשלומים שהתקבלו בגין הטיולים שנערכו באותו יום: המערכת תפיק דוח תקבולים יומי, ממוין לפי טיולים, שיועבר להנהלה, ותכין "פקודת יומן" עבור מערכת הנהלת החשבונות של החברה. פקודת היומן תהיה בצורת קובץ המכיל רשומה לכל טיול ובה זיהוי הטיול וסך התקבולים. מספר המשתתפים בכל טיול, מספר ההזמנות שהיו לטיול, פרטי האחראי והמדריכים האחרים וסך התקבולים שהיו בכל טיול ירשמו במאגר טיולים שבוצעו, ואילו פרטי ההזמנות, השיבוצים והתשלומים שנרשמו במערכת בגין אותם טיולים יבוטלו. המערכת תאפשר להפיק דוחות ניהוליים שונים (מודפסים או בתצוגה על המסך) לגבי טיולים מסוימים או סוגי טיולים, כגון: כמה הזמנות וכמה השתתפו בפועל בטיול מסוים, כמה השתתפו בסוג טיול מסוים בתחום תאריכים כלשהו, מי היו האחראים והמדריכים בטיולים, כמה השתתפו בטיולים באזורים שונים, על אילו טיולים היה אחראי מדריך מסוים, וכדומה.
13
פתרון
14
דוגמא לתרשים DFD היררכי מההרצאה
15
כללי פירוק היררכי "חוק שימור המידע" : כל מאגר מידע וישות חיצונית הקשורים לפונק' כללית יופיעו גם בתרשים בן של אותה פונק' . לא תופיע ישות חיצונית בתרשים בן אם לא היתה קשורה לפונק' הכללית בתרשים האב שלה. אפשר לפרק ישות חיצונית כללית לישויות משנה שתפורטנה בתרשים הבן. לא יופיע מאגר מידע בתרשים בן אם הוא כבר הופיע בתרשים האב אך לא היה קשור לפונק' הכללית המתוארת בתרשים הבן. מאגר מידע חדש יופיע לראשונה כאשר הוא משותף לפחות ל- 2 פונק', שאחת לפחות מעדכנת אותו ואחת לפחות קוראת ממנו. אם פונק' כללית קשורה לפונק' אחרת, כללית או יסודית, בתרשים הבן שלה יופיע לפחות עיגול מקשר אחד, בצד המתאים של מסגרת התרשים, ובו יצוין מספר הפונק' הקשורה. עיגול מקשר היוצא מפונק' יסודית או נכנס לפונק' יסודית יכיל מספר זיהוי של פונק' יסודית שאליה הוא יוצא או שממנה נכנס.
16
תרגיל חברת "המתרגם " מציעה שירותי תרגום ועריכה הכוללים: תרגום טקסטים בשפות אנגלית, צרפתית, עברית וגרמנית (מכל שפה ולכל שפה), וכן עריכה של חומרים מדעיים, כגון: מאמרים, כתבי עת ספרים ועוד. לחברה הסכם עם כמה מתרגמים ועורכים אליהם היא שולחת עבודות המתקבלות מלקוחות לתרגום ועריכה. הצג תרשים DFD – 0 לבעיה המתוארת להלן, הכולל את כל הפונקציות המתוארות. הצג את ה"טיפול בעבודה מוזמנת" כפונקציה כללית, ופרט אותה בתרשים DFD נפרד.
17
המשך לקוח יכול לשלוח חומר לתרגום או לעריכה בדואר אלקטרוני בפקס או בדיסק. כאשר לקוח שולח חומר לתרגום או לעריכה, נרשמים במאגר הזמנות פרטי הזמנת העבודה כולל מספר המלים בעבודה, שעות עבודה משוערות, תאריך קבלת העבודה, תאריך מבוקש לסיומה וכן זיהוי הלקוח. עבור לקוחות חדשים מוזנים פרטים שלהם, הכוללים בין היתר, את פרטיהם האישיים, את צורת ההודעה הרצויה להם בנוגע לעבודה מוכנה (טלפון, דואר אלקטרוני או מכתב), וכן הנחות מיוחדות שלהם הלקוח זכאי (הנחת סטודנט 3%, הנחת קשיש 3%, הנחה עפ"י שיוך לארגונים שונים, על פי הסכם עם כל ארגון). עבור לקוחות "ישנים" המערכת בודקת שהם אינם "לקוחות בעייתיים" (כלומר לקוחות שלא שילמו בעבר על עבודות במשך זמן רב). בסיום תהליך ההזמנה, המערכת מפיקה ללקוח "טופס הזמנה" ובו פרטי ההזמנה שהזמין כולל מס' הזמנה. ללקוחות בעייתיים המערכת מפיקה מכתב הדוחה את ההזמנה.
18
DFD-0 לקוח לקוח לקוח כוח אדם בעל הסכם בעל הסכם D1 לקוחות D2 הזמנות 1
קליטת פרטי לקוח 2 הפקת מכתב דחייה לקוח פרטי לקוח והזמנה פרטי לקוח בעייתי מכתב דחיית הזמנה לקוח OR פרטי לקוח D1 לקוחות פרטי לקוח והזמנה 5 הפקת דו"ח הזמנה פרטי לקוח דו"ח הזמנה לקוח 3 עדכון פרטי הזמנה ולקוח פרטי הזמנה פרטי הזמנה D2 הזמנות פרטי הזמנה חדשה פרטי הזמנות כוח אדם 4 טיפול בעבודה מוזמנת פרטי בעלי הסכם פרטי עבודה מוזמנת בעל הסכם פרטי עבודות והסכמים בעל הסכם
19
המשך לקוח יכול לפנות לחברה דרך הטלפון, או דרך אתר האינטרנט של החברה כדי לבדוק האם העבודה (או מספר עבודות) שמסר מוכנות. לאחר סיום תהליך ההזמנה, העבודה המוזמנת נשלחת לאחד המתרגמים או עורכים אשר להם הסכם עם החברה. ה"טיפול בעבודה מוזמנת" יתואר באופן מפורט בהמשך. בכל בוקר המערכת מבצעת בדיקה אוטומטית של עבודות מוכנות. עבור כל עבודה מוכנה, המערכת מחשבת את מחירה. עבור עבודת תרגום מכל השפות למעט גרמנית המחיר הוא 60 ₪ לשעת עבודה, עבור תרגום מגרמנית ולגרמנית מחיר שעת עבודה הוא 70 ₪ , ועבור עריכת חומר (בכל שפה) המחיר הוא 50 ₪ לשעה. המחיר הסופי כולל חישוב הנחה (במידה והלקוח זכאי להנחה כלשהי) ומע"מ. המערכת מפיקה דרישת תשלום שנשלחת ללקוח יחד עם ההודעה על סיום העבודה, על פי צורת ההודעה הרצויה ללקוח (שמוגדרת במאגר הלקוחות). המערכת מעדכנת את חשבון הלקוח במחיר העבודה שהוא חייב. התשלום צריך להגיע מהלקוח תוך שבוע מתאריך סיום העבודה באמצעות כרטיס אשראי, שיק או מזומן. כאשר מתקבל תשלום על עבודה, המערכת מעדכנת את מאגר התשלומים, מעבירה את פרטי העבודה לארכיון, מוחקת את העבודה ממאגר ההזמנות, ומעדכנת את חשבון הלקוח במאגר הלקוחות. אם התשלום מגיע לחברה באיחור (מעל שבוע) , חשבון הלקוח מתעדכן בריבית של 1% לשבוע. ללקוחות קבועים ( שמשתמשים בשירותי החברה מספר פעמים רב בשנה), ניתנת אפשרות לשלם כל רבעון ,כלומר לא בעת סיום כל עבודה, אלא תשלום מצטבר בכל שלושה חודשים.
20
חישוב מחיר עבודה והפקת דרישת תשלום
DFD-0- המשך T1 7 בדיקת עבודות מכונות כל בוקר פרטי עבודה מוכנה 8 חישוב מחיר עבודה והפקת דרישת תשלום דרישת תשלום והודעת סיום עבודה לקוח סטטוס הזמנה פרטי הזמנה פרטי חוב על עבודה D2 הזמנות פרטי לקוח D1 לקוחות D3 תשלומים פרטי הזמנות פרטי עבודה למחיקה פרטי הנחה סטטוס לקוח פרטי תשלום 9 קלוט פרטי תשלום 10 חישוב ריבית לקוח פרטי לקוח ותשלום פרטי הזמנה ולקוח פרטי עבודה שנמחקה ארכיון עבודות
21
המשך המערכת תאפשר להפיק, לפי דרישה, דוחות תשלומים וחיובים לכל לקוח., כלומר המערכת תאפשר להזין את זיהוי הלקוח (לקוחות) ותקופת דו"ח ותפיק עבור הלקוח את פרטי העבודות והתשלומים שהתקבלו ממנו במשך התקופה ויתרת החוב לסופה. בסוף כל רבעון תפיק המערכת דו"ח יתרות חוב של כל הלקוחות . לכל לקוח תופק תזכורת עם יתרת החוב. לקוחות לא קבועים אשר לא שילמו במשך 2 רבעונים על עבודה מסומנים במאגר הלקוחות כ"לקוחות בעייתיים" .
22
הפקת דוח עבודות ותשלומים לתקופה
DFD-0- המשך D2 הזמנות פרטי הזמנות 11 הפקת דוח עבודות ותשלומים לתקופה לקוח זיהוי לקוח ותקופת דו"ח דו"ח עבודות ותשלומים לקוח זיהוי לקוח ותקופת דו"ח פרטי תשלום הנהלה פרטי לקוח D1 לקוחות D3 תשלומים פרטי לקוח פרטי חוב לקוח T1 12 הפקת דו"ח יתרות חוב דו"ח יתרת חוב סוף רבעון 13 עדכון סטטוס לקוח פרטי לקוחות ותשלומים D1 לקוחות לקוחות בעייתיים
23
המשך טיפול בעבודה מוזמנת
החברה מתחזקת מאגר של "בעלי הסכם" – מתורגמנים ועורכים שלהם הסכם עבודה קבלני עם החברה. מדי פעם, מדור כוח אדם של החברה מעדכן את המאגר, כלומר מוסיף בעלי הסכם חדשים, או מבטל הסכמים קיימים. עם קבלת העבודה, נערכת התאמה בין אופי העבודה לבין פרטי המתורגמנים והעורכים שלהם הסכם עם החברה. עבודות עריכה נשלחות לעורכים , עבודות תרגום נשלחות למתורגמנים בהתאמה של שפת העבודה לשפת המתורגמנים. לכל סוג עבודה ( כלומר, לכל העבודות בעלות אותם אפיונים, למשל עבודות תרגום מאנגלית), המערכת מנהלת תור של בעלי הסכם לקבלת עבודות של לקוחות. דרישת העבודה נשלחת בצרוף תאריך סיום דרוש לבעל ההסכם המתאים לאפיוני העבודה שהגיע תורו. במידה ובעל ההסכם לא יכול לעמוד בתאריך היעד, הוא מודיע זאת לחברה ודרישת העבודה נשלחת לבא אחריו בתור, תוך עדכונים מתאימים במאגר "בעלי ההסכם". עם סיום העבודה, בעל ההסכם שטיפל בעבודה, שולח לחברה את התוצאות (של העריכה או התרגום) בצרוף דו"ח שעות עבודה שיהווה בסיס לחישוב מחיר העבודה. המערכת לא מטפלת בתשלומים לבעלי ההסכם.
24
DFD-4- המשך כוח אדם בעל הסכם בעל הסכם בעל הסכם D4 מאגר בעלי הסכם D2
4.1 עדכון פרטי בעלי הסכם כוח אדם פרטי בעלי הסכם פרטי בעלי הסכם D4 מאגר בעלי הסכם פרטי בעלי הסכם 3 פרטי הזמנה חדשה 4.2 התאמת בעלי הסכם להזמנות פרטי עבודה ותאריך נדרש בעל הסכם הודעת דחיית עבודה בעל הסכם פרטי בעל הסכם בתור פרטי עבודה פרטי בלע הסכם בתור D2 הזמנות D5 מאגר תורים של בעלי הסכם 4.3 קליטת ועדכון פרטי סיום עבודה עדכון סטטוס הזמנה ודו"ח שעות בעל הסכם פרטי עבודה שנגמרה ודו"ח שעות
25
מילון הנתונים "מילון הנתונים" משלים את ניתוח מערכת המידע בפרטים שלא טופלו בתרשימי ה- DFD. יחד עם התרשימים נותן תמונה מלאה וריכוז כל ההגדרות והמאפיינים של מערכת המידע. מילון מרכיבי ה-DFD: באמצעותו ניתן לדעת מה מצוי בתרשימים השונים ומי קשור אליהם. מידע על פונקציות, מאגרי מידע, ישויות חיצוניות וזרמי המידע. מילון רכיבי הנתונים: יכיל את הגדרות רכיבי הנתונים המועברים באמצעות זרמי המידע המועברים בין הפונקציות, מאגרי המידע והישויות החיצוניות. רכיב נתונים הוא יחידת המידע הקטנה ביותר המוגדרת במילון. מסייע להתמצאות בתרשימים.
26
מילון מרכיבי ה-DFD טבלת מרכיבי ה- DFD(פונקציות, מאגרי מידע וישויות חיצוניות) זיהוי שם המרכיב תיאור המרכיב סוג מספר F 1 קליטת פרטי לקוח הפונקציה מטפלת בקליטת פרטי לקוח D 2 הזמנות מכיל פרטי הזמנות של לקוחות, פרטי העבודה של כל הזמנה ודו"ח שעות עבודה על הזמנה E לקוח הישות לקוח מייצגת כל אדם אשר מתפקד כלקוח החברה T מועד הפעלה מציין הפעלת פונקציה 7 (בדיקת עבודות מוכנות) פעם אחת כל בוקר
27
מילון מרכיבי ה-DFD טבלת זרמי המידע זיהוי מקור זיהוי יעד סוג שם הזרם
מספר E 1 F י (יסודי) פרטי לקוח והזמנה D 2 6 י סטאטוס הזמנה 4 כ (כללי) פרטי בעלי הסכם T 7 מועד הפעלה – כל בוקר
28
מילון רכיבי הנתונים טבלת רכיבי הנתונים שם הרכיב תיאור סוג נתון אורך
תחום ערכים מילים נרדפות מ"ז ספרות 9 מספר זהות שם לקוח טקסט 30 טלפון 8 טל' מחיר עשרוני
29
רשימת רכיבי וקבוצות נתונים
מילון רכיבי הנתונים קובץ נתונים על זרמי מידע יסודיים זיהוי המקור זיהוי היעד רשימת רכיבי וקבוצות נתונים נפח הנתונים צורת הגעה/מסירה E1 F1 מ"ז, שם לקוח, טלפון sizeof(data) מסך מגע
30
סיכום: טבלאות מילון הנתונים
מילה נרדפת שם הרכיב (תקני) יתרת מלאי כמות במלאי מספר פריט קוד פריט שם קבוצה שם רכיב הנתונים כתובת (ק) מיקוד כתובת(ק) עיר
31
מה בהמשך? זיהוי טרנסאקציות: מסלולים של פונקציות יסודיות ממקורות הקלט (צד שמאל) ליעדי הפלט (צד ימין). תיאור-על של הטרנסאקציות: זיהוי, שם מרכיבי ה-DFD הנכללים בה, תרשים תיאור-על לוגי סוג, תנאי הפעלה, המשתמשים, אמצעי קלט ופלט בסופו של דבר נחזיק ברשותנו תיאור של שכבת ה-Domain. מתודולוגיית ADISSA מתייחסת גם לעיצוב עץ התפריטים של המערכת (Presentation) וסכמת בסיס הנתונים (Persistence).
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.