ניתוח מערכות מידע א' הרצאה 3 מידול תהליך הפיתוח + DFD 1 מידול תהליך הפיתוח (מודלים של זמן החיים) מפל המים ,מודל ספירלי ,מונחה עצמים וכו' 2 )build & fix( בנה ותקן בנה גרסה ראשונה ,ערוך שינויים עד שהלקוח מרוצה If you don't have time to do it right, Where would you take the time to do it again??? הפעלה מבצעית פרישה פיתוח אחזקה 3 בנה ותקן -תכונות רק חסרונות אין מפרט אין תכן מתאים לתוכנה קטנה מאד ( 200-300שורות?) לכל תוכנה בגודל סביר נדרשים ,לפחות: 4 תכנית פעולה (")"game plan שלבים בפיתוח אבני-דרך ()milestones מודל מפל המים ()waterfall Royce, 1970 דרישות אימות שינוי בדרישות אימות ניתוח אימות תכן אימות מימוש אימות שילוב אימות הפעלה מבצעית 5 פרישה פיתוח אחזקה מודל מפל המים -תכונות "feedback" בין שלבים עוקבים תהליך מונחה-תיעוד: המעבר לשלב הבא מותנה (ותלוי!) בתיעוד השלב הקודם יתרונות תהליך מתועד אחזקה קלה יותר חסרונות 6 פורמאליות-יתר (המוצר מאופיין אך ורק באמצעות התיעוד) מציאות רחוקה מהמודל ---אין פיתוח כזה !! בפועל מתעלמים מחזרה לשלב קודם ורצים קדימה... אב-טיפוס מהיר דגם עובד מכיל תת-קבוצה של הפונקציונליות של המוצר דוגמה: המוצר :תוכנה לניהול תקבולים ,תשלומים ואחסנה אב-טיפוס מהיר יכיל: מסכים להכנסת נתונים הדפסת דו"חות אב-טיפוס מהיר לא יכיל: עדכון קבצים הודעות שגיאה נועד לסייע בגיבוש הדרישות לצורך מפרט 7 מודל אב-טיפוס מהיר ()rapid prototype אב-טיפוס אימות שינוי בדרישות אימות ניתוח אימות תכן אימות מימוש אימות שילוב אימות הפעלה מבצעית 8 פרישה פיתוח אחזקה אב-טיפוס מהיר -תכונות אב-טיפוס הוא אב-טיפוס הוא אב-טיפוס! אב-טיפוס נועד להדגים את המוצר הסופי ולא לממש אותו: אין להפוך אב-טיפוס למוצר! 9 אב-טיפוס יכול לשמש כמפרט ,אבל לא כתכן! עדכן ,שנה ,בדוק -אבל בסוף השלך לפח! מודל אינקרמנטלי מבנה 1 ניתוח מבנה 2 ניתוח מבנה n תכן ניתוח תכן מימוש ושילוב מסירה תכן מימוש ושילוב מימוש ושילוב מסירה מסירה קבוצת ניתוח קבוצת תכן 10 קבוצת מימוש מודל אינקרמנטלי -תכונות יתרונות ניתן להתחיל בעבודת הפיתוח מבלי להמתין להשלמת הנדסת המערכת עבודה במקביל ע”י קבוצות מקצועיות חסרונות סיכון גבוה החלטות תכן ומימוש מתבססות על ניתוח חלקי בלבד עלול לגרום סבבי שינויים ארוכים ויקרים זהירות ממהירות מופרזת CABTAB = Code A Bit Test A Bit המלצה :שחרור גירסא ללקוח רק אחרי מספר סבבים 11 Barry Boehm )spiral( המודל הלוליני 12 המודל הלולייני -הסבר משלב בין מודל מפל המים לאב טיפוס בכל סבב נבצע: 13 זיהוי מטרות ,אלטרנטיבות ,ומגבלות בסבב נוכחי בדיקת אלטרנטיבות ופתרון מגבלות פיתוח ובדיקה של השלב הנוכחי תיכנון השלב הבא המודל הלולייני -תכונות יתרונות ניתן להתאים את ההיקף של כל איטרציה לפי: כושר הפיתוח היקפי הבדיקות אילוצי זמנים הסתכלות אחידה על פיתוח /מימוש /אחזקה חסרונות 14 מתאים לתוכנה בהיקף גדול ()large-scale מתאים לפיתוח פנימי ()in-house תכנות קיצוני )(Extreme Programming ריבויי בניה (מספר פעמים ביום!!) עבודת צוות עם נהלים מיוחדים תכנות בזוגות מתחלפים בדיקות רצופות בעזרת כלים ליצירה וניהול מערכת "עובדת" עם יכולות מוגבלות תכנון ומימוש מינימליים –לדרישות עד כה תכנון מחדש )(refactorization 15 פיתוח מונחה-עצמים ()Object-Oriented Development מאפייני פיתוח מונחה-עצמים מידה גבוהה של מודולריות פיתוח במקביל אינקרמטלי ואיטרטיבי מטבעו שימוש חוזר ()reuse מודלים מונחי-עצמים 16 תומכים באיטרטיביות בתוך כל שלב ובין השלבים משלבים מקביליות ופיתוח אינקרמנטלי מידול תהליך הפיתוח -סיכום קיים מגוון גדול של מודלים בפועל על כל חברה לייצר את המודל שמתאים לצרכיה יש להתחשב בגורמים הבאים: הארגון (מטרות ,אילוצים ,תשתיות)... , ההנהלה (פתיחות ,הבנה מקצועית ,גיבוי)... , העובדים (הכשרה מקצועית ,יחסי-אנוש)... , המוצר (מורכבות ,ייחודיות ,מספר וסוג המשתמשים) “ שלב והתאם” ()mix & match 17 מודלים שונים לרמות פיתוח שונות (מקרו ,מיקרו) מודלים שונים למרכיבים שונים שיטות מידול מערכת מידול פרוצדורלי או מונחה עצמים 18 שיטת המידול הפרוצדורלית יתרונות מידול ברור של פעילות המערכת ללא תלות באופן המימוש חסרונות 19 פירוק היררכי של המערכת לרכיבים ,לפי פעילות פונקציונלית מאד מקובל באזור 1980 ( DFD - data flow diagramנלמד עכשיו) ERD - entity relationship diagram פיתוח סדרתי ,אינו מאפשר פיתוח אינקרמנטלי מתאים למערכת נתונה ,קשה להרחיב ולשפר נדרש פיתוח מחדש ,אין שימוש חוזר בחלקים קיימים שיטת המידול מונחה העצמים (נלמד בהמשך) יתרונות פיתוח איטרטיבי ואינקרמנטלי מודולרי ,מתאים להרחבות ,שימוש חוזר בחלקים קיימים מתאים לתוכנה שהיא event driven חסרונות 20 פירוק המערכת לרכיבים עם דגש על המידע והעצמים מאד מקובל החל מ 1990 UML – Unified Modeling Language אנליזה מורכבת של המערכת ,פערים בין המודל למימוש ניהול הפרויקט מורכב ,הגדרת השלבים מטושטשת מורכבות בגלל הקשרים בין העצמים מקשה על פיתוח ותחזוקה – CASE Computer Assisted Software Engineering כלים אוטומטים לתמיכה בתכנון ובפיתוח מערכות מידע מאפשר יצירה שליפה ושמירה של מודלים יתרונות 21 משפר את תהליך הפיתוח מקל על תקשורת בין מנתחי המערכת למשתמשים מאפשר זרימה רציפה בין שלבי הפיתוח מקל על התחזוקה DFD DATA FLOW DIAGRAM 22 DFD- Data Flow Diagram תרשים המתאר את זרימת המידע במערכת מתאים למידול פרוצדורלי נעשה שימוש בסימנים מוסכמים עבור: 23 ישויות חיצוניות תהליכים מאגרי נתונים זרימת מידע .... הסימנים הבסיסיים 1 Add New Customer תהליך D1 Customer Master מאגר מיגע Customer ישות חיצונית Customer Record אפיק נתונים 24 דוגמא. אנחנו נלמד איך "לקרוא" ,DFDולא איך לרשום. 25
© Copyright 2024