CUBS: Multivariate Sequence Classification Using Bounded Z
Download
Report
Transcript CUBS: Multivariate Sequence Classification Using Bounded Z
ניתוח מערכות מידע א'
הרצאה 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