540 likes | 921 Views
ניתוח ועיצוב מערכות תוכנה אביב 2012. עיצוב הטרנזקציות ועץ הממשקים. שלבים במתודולוגיית ADISSA A rchitectural D esign of I nformation S ystem based on S tructure A nalysis. עיצוב המערכת החדשה. התוצרים של שלב ניתוח המערכת (תרשימי DFD ומילון הנתונים) הם הקלט לשלב עיצוב המערכת.
E N D
ניתוח ועיצוב מערכות תוכנהאביב 2012 עיצוב הטרנזקציות ועץ הממשקים
שלבים במתודולוגיית ADISSAArchitectural Design of Information System based on Structure Analysis
עיצוב המערכת החדשה • התוצרים של שלב ניתוח המערכת (תרשימי DFD ומילון הנתונים) הם הקלט לשלב עיצוב המערכת. • בשלב העיצוב מתכננים "איך" תיושם המערכת, כלומר, מתכננים את מרכיבי תוכנת היישום. • תוצרי שלב העיצוב הם הבסיס להקמת מערכת המידע (או לתכנות המערכת). • שלב עיצוב המערכת מורכב מחמישה שלבי משנה: • עיצוב על (כללי) של הטרנזקציות, שהן תהליכי המחשב של מערכת המידע. • עיצוב הממשק בין מערכת המידע למשתמשים. • עיצוב הקלטים והפלטים (מסכי הקלט, הפלט והדוחות). • עיצוב סכמת בסיס הנתונים. • עיצוב מפורט של התוכניות הקושר בין המרכיבים השונים.
מהי טרנזקציה? • טרנזקציה היא תהליך מחשב עצמאי • טרנזקציה היא רצף של פונקציות יסודיות הקשורות זו לזו ע"י זרמי מידע • טרנזקציה כוללות גם את זרמי המידע, המאגרים, והישויות החיצוניות הקשורות אל הפונקציות שלה. • כל הפונקציות הנכללות בטרנזקציה הן יסודיות. • כל פונקציה יסודית שייכת רק לטרנזקציה אחת • טרנזקציה כוללת לפחות ישות חיצונית אחת – "טריגר" – המאפשרת את הפעלתה לפי הצורך. לפי סוג הישות נקבע סוג הטרנזקציה: • משתמש • זמן • זמן אמת • מעורבת
איתור טרנזקציות • ניתן לאתר טרנזקציה על ידי מעקב אחר פונקציות יסודיות (בתרשים ה- DFD) הקשורות זו לזו. • אפשר שטרנזקציה "תשתרע" על יותר מתרשים DFD אחד. • ישות חיצונית לא מפעילה רק את הפונקציה שאליה היא קשורה, אלא את כל הטרנזקציה. • סדר הפעולות יקבע על ידי הלוגיקה של הטרנזקציה. • את הלוגיקה של כל טרנזקציה יש להגדיר ולתאר באופן מדויק/מובנה, שאם לא כן אפשר להבין את תרשים הטרנזקציה בצורות שונות.
אלגוריתם ADISSA לבניית עץ תפריטים • חלק אלגוריתמי
אלגוריתם ADISSA לבניית עץ תפריטים • חלק אלגוריתמי
אלגוריתם ADISSA לבניית עץ תפריטים • חלק אלגוריתמי
אלגוריתם ADISSA לבניית עץ תפריטים • חלק הידברותי
תרגיל 1 • בשני השקפים הבאים תופיע סדרת תרשימי DFD. • כמה טרנזקציות יש במערכת? רשום את מספרי הפונקציות השייכות לכל אחת מהן. • הצג שרטוט שטוח של הטרנזקציה שבה מצויה פונקציה 3.2. סמן באותיות ה-ABC את זרמי המידע. • הצג תיאור-על ראשוני של הטרנזקציה שבה מצויה פונקציה 3.2, בהתבסס על השרטוט והסימונים מסעיף ב'. • הצג עץ תפריטים ראשוני (לפני כל הצמצומים והביטולים) • הצג עץ תפריטים מעודכן (לאחר צמצומים וביטולים אפשריים)
פתרון סעיף א' - תרגיל 1 • T1: 1.1 • T2: 1.2, 1.3, 1.4, 2.1, 2.2 • T3: 2.3, 2.4 • T4: 3.1 • T5: 3.2, 3.3.1, 3.3.2, 3.3.3, 3.4
פתרון סעיף ב - תרגיל 1 T5: 3.2, 3.3.1, 3.3.2, 3.3.3, 3.4 N E1 3.3.2 D5 D4 D3 D5 M A B E1 E 3.3.1 3.2 C L I OR F 3.3.3 3.4 D J G K H E2
פתרון סעיף ג' - תרגיל 1 קרא ממאגר D3: A בצע פונקציה 3.2 הפק פלט לישות E1: B העבר לפונקציה 3.3.1 : C קרא ממאגר D4: G קרא ממאגר D5: D בצע פונקציה 3.3.1 : אם <תנאי> אז העבר לפונקציה 3.3.2 : E בצע פונקציה 3.3.2 : כתוב למאגר D5: N הפק פלט לישות E1: M אחרת, העבר לפונקציה 3.3.3: F הפק פלט לישות E1 : I העבר לפונקציה 3.4 : J קלוט מישות E2: K בצע פונקציה 3.4 כתוב למאגר D4: H הפק פלט לישות E1: L
פתרון סעיף ד' – תרגיל 1 T1: 1.1 T2: 1.2, 1.3, 1.4, 2.1, 2.2 T3: 2.3, 2.4 T4: 3.1 T5: 3.2, 3.3.1, 3.3.2, 3.3.3, 3.4 תפריט 0 S 1 S 2 S 3 תפריט 1 T 1.1 (1) T 1.2 (2) T 1.4 (2) תפריט 3 T 3.1 (4) T 3.2 (5) S 3.3 (5) T 3.4 (5) תפריט 2 T 2.2 (2) T 2.3 (3) T 2.4 (3) תפריט 3.3 T 3.3.2 (5) T 3.3.3 (5)
פתרון סעיף ה' – תרגיל 1 תפריט 0 S 1 S 2 S 3 תפריט 1 T 1.1 (1) T 1.2 (2) T 1.4 (2) תפריט 3 T 3.1 (4) T 3.2 (5) S 3.3 (5) T 3.4 (5) תפריט 2 T 2.2 (2) T 2.3 (3) T 2.4 (3) תפריט 3.3 T 3.3.2 (5) T 3.3.3 (5)
פתרון סעיף ה' – תרגיל 1 תפריט 0 S 1 S 2 S 3 תפריט 1 T 1.1 (1) T 1.2/1.4/2.2 (2) תפריט 3 T 3.1 (4) T 3.2 (5) S 3.3 (5) T 3.4 (5) תפריט 2 T 2.3 (3) T 2.4 (3) תפריט 3.3 T 3.3.2 (5) T 3.3.3 (5)
פתרון סעיף ה' – תרגיל 1 תפריט 0 S 1 S 2 S 3 תפריט 1 T 1.1 (1) T 1.2/1.4/2.2 (2) תפריט 3 T 3.1 (4) T 3.2 (5) S 3.3 (5) T 3.4 (5) תפריט 2 T 2.3 (3) T 2.4 (3) תפריט 3.3 T 3.3.2 (5) T 3.3.3 (5)
פתרון סעיף ה' – תרגיל 1 תפריט 0 S 1 S 2 S 3 תפריט 1 T 1.1 (1) T 1.2/1.4/2.2 (2) תפריט 3 T 3.1 (4) T 3.2 (5) S 3.3 (5) T 3.4 (5) תפריט 2 T 2.3/2.4 (3) תפריט 3.3 T 3.3.2 (5) T 3.3.3 (5)
פתרון סעיף ה' – תרגיל 1 תפריט 0 S 1 S 2 S 3 תפריט 1 T 1.1 (1) T 1.2/1.4/2.2 (2) תפריט 3 T 3.1 (4) T 3.2 (5) S 3.3 (5) T 3.4 (5) תפריט 2 T 2.3/2.4 (3) תפריט 3.3 T 3.3.2 (5) T 3.3.3 (5)
פתרון סעיף ה' – תרגיל 1 תפריט 0 S 1 S 2 S 3 תפריט 1 T 1.1 (1) T 1.2/1.4/2.2 (2) תפריט 3 T 3.1 (4) T 3.2/3.3.2/3.3.3/3.4 (5) תפריט 2 T 2.3/2.4 (3)
פתרון סעיף ה' – תרגיל 1 תפריט 0 S 1 S 2 S 3 תפריט 1 T 1.1 (1) T 1.2/1.4/2.2 (2) תפריט 3 T 3.1 (4) T 3.2/3.3.2/3.3.3/3.4 (5) תפריט 2 T 2.3/2.4 (3)
פתרון סעיף ה' – תרגיל 1 תפריט 0 S 1 QT 2.3/2.4 (3) S 3 תפריט 1 T 1.1 (1) T 1.2/1.4/2.2 (2) תפריט 3 T 3.1 (4) T 3.2/3.3.2/3.3.3/3.4 (5)
תרגיל 2 • לפניך סדרת תרשימי DFD • כמה טרנזקציות יש במערכת? רשום את מספרי הפונקציות השייכות לכל אחת מהן. • הצג שרטוט של הטרנזקציה שבה מצויה פונקציה 2.5.2. • הצג תיאור-על של טרנזקציה זו. • הצג עץ תפריטים ראשוני (לפני כל הצמצומים והביטולים) • הצג עץ תפריטים מעודכן (לאחר צמצומים וביטולים אפשריים)
פתרון סעיף א' - תרגיל 2 • T1: 1.1, 1.2 • T2: 1.3, 1.4 • T3: 1.5 • T4: 2.1, 2.2 • T5: 2.3, 2.4, 2.5.1, 2.5.2 • T6: 2.5.3, 2.5.4, 3.2.2, 3.2.5, 3.2.1, 3.3.3, 3.3.1, 3.1, 3.4 • T7: 3.5 • T8: 3.2.3, 3.2.4 • T9: 3.2.6 • T10: 3.3.2, 3.3.4
פתרון סעיף ב' - תרגיל 2 T5: 2.3, 2.4, 2.5.1, 2.5.2 J B D4 D1 D4 D5 2.3 2.4 C A E2 I D 2.5.1 2.5.2 F H E2 E G
פתרון סעיף ג' - תרגיל 2 קלוט מישות E2: A בצע פונקציה 2.3 : "שם הפונקציה" כתוב למאגר D4: B העבר לפונקציה 2.4 "שם הפונקציה" : C קלוט מישות E2: D קרא ממאגר D4: E בצע פונקציה 2.5.1 : "שם הפונקציה" העבר לפונקציה 2.5.2 "שם הפונקציה" : F קרא ממאגר D5: G בצע פונקציה 2.5.2 : "שם הפונקציה" הפק פלט לישות E2: H העבר לפונקציה 2.4 "שם הפונקציה" : I בצע פונקציה : 2.4 "שם הפונקציה" כתוב למאגר D1: J
T1: 1.1, 1.2 T2: 1.3, 1.4 T3: 1.5 T4: 2.1, 2.2 T5: 2.3, 2.4, 2.5.1, 2.5.2 T6: 2.5.3, 2.5.4, 3.2.2, 3.2.5, 3.2.1, 3.3.3, 3.3.1, 3.1, 3.4 T7: 3.5 T8: 3.2.3, 3.2.4 T9: 3.2.6 T10: 3.3.2, 3.3.4 פתרון סעיף ד' – תרגיל 2 תפריט 0 S 1 S 2 S 3 תפריט 1 T 1.1 (1) T 1.2 (1) T 1.3 (2) T 1.5 (3) תפריט 3 T 3.1 (6) S 3.2 S 3.3 T 3.5 (7) תפריט 2 T 2.1 (4) T 2.2 (4) T 2.3 (5) S 2.5 תפריט 2.5 T 2.5.1 (5) T 2.5.2 (5) T 2.5.3 (6) T 2.5.4 (6) תפריט 3.3 T 3.3.1 (6) T 3.3.2 (10) T 3.3.3 (6) תפריט 3.2 T 3.2.2 (6) T 3.2.4 (8) T 3.2.6 (9)
פתרון סעיף ה' – תרגיל 2 תפריט 0 S 1 S 2 S 3 תפריט 1 T 1.1 (1) T 1.2 (1) T 1.3 (2) T 1.5 (3) תפריט 3 T 3.1 (6) S 3.2 S 3.3 T 3.5 (7) תפריט 2 T 2.1 (4) T 2.2 (4) T 2.3 (5) S 2.5 תפריט 2.5 T 2.5.1 (5) T 2.5.2 (5) T 2.5.3 (6) T 2.5.4 (6) תפריט 3.3 T 3.3.1 (6) T 3.3.2 (10) T 3.3.3 (6) תפריט 3.2 T 3.2.2 (6) T 3.2.4 (8) T 3.2.6 (9)
פתרון סעיף ה' – תרגיל 2 תפריט 0 S 1 S 2 S 3 תפריט 1 T 1.1 (1) T 1.2 (1) T 1.5 (3) תפריט 3 T 3.1 (6) S 3.2 S 3.3 T 3.5 (7) תפריט 2 T 2.1 (4) T 2.2 (4) T 2.3 (5) S 2.5 תפריט 2.5 T 2.5.1 (5) T 2.5.2 (5) T 2.5.3 (6) T 2.5.4 (6) תפריט 3.3 T 3.3.1 (6) T 3.3.2 (10) T 3.3.3 (6) תפריט 3.2 T 3.2.2 (6) T 3.2.4 (8) T 3.2.6 (9)
פתרון סעיף ה' – תרגיל 2 תפריט 0 S 1 S 2 S 3 תפריט 1 T 1.1 (1) T 1.2 (1) T 1.5 (3) תפריט 3 T 3.1 (6) S 3.2 S 3.3 T 3.5 (7) תפריט 2 T 2.1 (4) T 2.2 (4) T 2.3 (5) S 2.5 תפריט 2.5 T 2.5.1 (5) T 2.5.2 (5) T 2.5.3 (6) T 2.5.4 (6) תפריט 3.3 T 3.3.1 (6) T 3.3.2 (10) T 3.3.3 (6) תפריט 3.2 T 3.2.2 (6) T 3.2.4 (8) T 3.2.6 (9)
פתרון סעיף ה' – תרגיל 2 תפריט 0 S 1 S 2 S 3 תפריט 1 T 1.1/1.2 (1) T 1.5 (3) תפריט 3 T 3.1 (6) S 3.2 S 3.3 T 3.5 (7) תפריט 2 T 2.1 (4) T 2.2 (4) T 2.3 (5) S 2.5 תפריט 2.5 T 2.5.1 (5) T 2.5.2 (5) T 2.5.3 (6) T 2.5.4 (6) תפריט 3.3 T 3.3.1 (6) T 3.3.2 (10) T 3.3.3 (6) תפריט 3.2 T 3.2.2 (6) T 3.2.4 (8) T 3.2.6 (9)
פתרון סעיף ה' – תרגיל 2 תפריט 0 S 1 S 2 S 3 תפריט 1 T 1.1/1.2 (1) T 1.5 (3) תפריט 3 T 3.1 (6) S 3.2 S 3.3 T 3.5 (7) תפריט 2 T 2.1 (4) T 2.2 (4) T 2.3 (5) S 2.5 תפריט 2.5 T 2.5.1 (5) T 2.5.2 (5) T 2.5.3 (6) T 2.5.4 (6) תפריט 3.3 T 3.3.1 (6) T 3.3.2 (10) T 3.3.3 (6) תפריט 3.2 T 3.2.2 (6) T 3.2.4 (8) T 3.2.6 (9)
פתרון סעיף ה' – תרגיל 2 תפריט 0 S 1 S 2 S 3 תפריט 1 T 1.1/1.2 (1) T 1.5 (3) תפריט 3 T 3.1 (6) S 3.2 S 3.3 T 3.5 (7) תפריט 2 T 2.1/2.2 (4) T 2.3 (5) S 2.5 תפריט 2.5 T 2.5.1 (5) T 2.5.2 (5) T 2.5.3 (6) T 2.5.4 (6) תפריט 3.3 T 3.3.1 (6) T 3.3.2 (10) T 3.3.3 (6) תפריט 3.2 T 3.2.2 (6) T 3.2.4 (8) T 3.2.6 (9)
פתרון סעיף ה' – תרגיל 2 תפריט 0 S 1 S 2 S 3 תפריט 1 T 1.1/1.2 (1) T 1.5 (3) תפריט 3 T 3.1 (6) S 3.2 S 3.3 T 3.5 (7) תפריט 2 T 2.1/2.2 (4) T 2.3 (5) S 2.5 תפריט 2.5 T 2.5.1 (5) T 2.5.2 (5) T 2.5.3 (6) T 2.5.4 (6) תפריט 3.3 T 3.3.1 (6) T 3.3.2 (10) T 3.3.3 (6) תפריט 3.2 T 3.2.2 (6) T 3.2.4 (8) T 3.2.6 (9)
פתרון סעיף ה' – תרגיל 2 תפריט 0 S 1 S 2 S 3 תפריט 1 T 1.1/1.2 (1) T 1.5 (3) תפריט 3 T 3.1 (6) S 3.2 S 3.3 T 3.5 (7) תפריט 2 T 2.1/2.2 (4) T 2.3 (5) S 2.5 תפריט 2.5 T 2.5.1/2.5.2 (5) T 2.5.3/2.5.4 (6) תפריט 3.3 T 3.3.1 (6) T 3.3.2 (10) T 3.3.3 (6) תפריט 3.2 T 3.2.2 (6) T 3.2.4 (8) T 3.2.6 (9)
פתרון סעיף ה' – תרגיל 2 תפריט 0 S 1 S 2 S 3 תפריט 1 T 1.1/1.2 (1) T 1.5 (3) תפריט 3 T 3.1 (6) S 3.2 S 3.3 T 3.5 (7) תפריט 2 T 2.1/2.2 (4) T 2.3 (5) S 2.5 תפריט 2.5 T 2.5.1/2.5.2 (5) T 2.5.3/2.5.4 (6) תפריט 3.3 T 3.3.1 (6) T 3.3.2 (10) T 3.3.3 (6) תפריט 3.2 T 3.2.2 (6) T 3.2.4 (8) T 3.2.6 (9)
פתרון סעיף ה' – תרגיל 2 תפריט 0 S 1 S 2 S 3 תפריט 1 T 1.1/1.2 (1) T 1.5 (3) תפריט 3 T 3.1 (6) S 3.2 S 3.3 T 3.5 (7) תפריט 2 T 2.1/2.2 (4) T 2.3 (5) S 2.5 תפריט 2.5 T 2.5.1/2.5.2 (5) T 2.5.3/2.5.4 (6) תפריט 3.3 T 3.3.1/3.3.3 (6) T 3.3.2 (10) תפריט 3.2 T 3.2.2 (6) T 3.2.4 (8) T 3.2.6 (9)
פתרון סעיף ה' – תרגיל 2 תפריט 0 S 1 S 2 S 3 תפריט 1 T 1.1/1.2 (1) T 1.5 (3) תפריט 3 T 3.1 (6) S 3.2 S 3.3 T 3.5 (7) תפריט 2 T 2.1/2.2 (4) T 2.3 (5) S 2.5 תפריט 2.5 T 2.5.1/2.5.2 (5) T 2.5.3/2.5.4 (6) תפריט 3.3 T 3.3.1/3.3.3 (6) T 3.3.2 (10) תפריט 3.2 T 3.2.2 (6) T 3.2.4 (8) T 3.2.6 (9)
פתרון סעיף ה' – תרגיל 2 תפריט 0 S 1 S 2 S 3 תפריט 1 T 1.1/1.2 (1) T 1.5 (3) תפריט 3 S 3.2 S 3.3 T 3.5 (7) תפריט 2 T 2.1/2.2 (4) T 2.3 (5) S 2.5 תפריט 2.5 T 2.5.1/2.5.2 (5) תפריט 3.3 T 3.3.1/3.3.3/3.2.2/2.5.3/2.5.4/3.1 (6) T 3.3.2 (10) תפריט 3.2 T 3.2.4 (8) T 3.2.6 (9)
פתרון סעיף ה' – תרגיל 2 תפריט 0 S 1 S 2 S 3 תפריט 1 T 1.1/1.2 (1) T 1.5 (3) תפריט 3 S 3.2 S 3.3 T 3.5 (7) תפריט 2 T 2.1/2.2 (4) T 2.3 (5) S 2.5 תפריט 2.5 T 2.5.1/2.5.2 (5) תפריט 3.3 T 3.3.1/3.3.3/3.2.2/2.5.3/2.5.4/3.1 (6) T 3.3.2 (10) תפריט 3.2 T 3.2.4 (8) T 3.2.6 (9)
פתרון סעיף ה' – תרגיל 2 תפריט 0 S 1 S 2 S 3 תפריט 1 T 1.1/1.2 (1) T 1.5 (3) תפריט 3 S 3.2 S 3.3 T 3.5 (7) תפריט 2 T 2.1/2.2 (4) QT 2.3/2.5.1/2.5.2 (5) תפריט 3.3 T 3.3.1/3.3.3/3.2.2/2.5.3/2.5.4/3.1 (6) T 3.3.2 (10) תפריט 3.2 T 3.2.4 (8) T 3.2.6 (9)