תכנון, ניתוח ועיצוב מערכות מידע
Transcription
תכנון, ניתוח ועיצוב מערכות מידע
תכנון ,ניתוח ועיצוב מערכות מידע פרץ שובל כרך א תכנון מערכות מידע תוכן העניינים פתח דבר15 תיאור הספר17 יחידה :1מבוא לפיתוח מערכות מידע25 נושאי היחידה27 פרק 1.1מערכות מידע בארגון29 1.1.1מהי מערכת מידע?29 1.1.1.1מערכת29 1.1.1.2מערכת מידע30 1.1.1.3מערכת מידע ממוחשבת31 1.1.1.4מערכת מידע בארגון32 1.1.1.5מערכת מידע כמערכת ִמשנֶ ה בארגון34 1.1.1.6קשרי מערכת המידע עם סביבתה35 1.1.1.7דוגמה למערכת מידע ולתכונותיה37 1.1.1.8מערכות המשנה המרכיבות את מערכת המידע40 1.1.2מאפייני מידע44 1.1.2.1מאפייני איכות המידע45 1.1.2.2מאפייני נפח המידע וצורת מסירתו46 1.1.2.3מאפייני דרך הפקת המידע47 1.1.2.4דוגמה לבחינת מאפייני המידע49 1.1.3צורכי המידע ברמות ניהול שונות של הארגון50 1.1.3.1מבנים ארגוניים50 1.1.3.2משתמשים ומנהלים52 1.1.3.3סוגי המידע ומאפייני המידע הנדרשים למנהלים בדרגים השונים55 1.1.4סוגי מערכות מידע בארגונים59 1.1.4.1מערכת לעיבוד תנועות60 TPS , 1.1.4.2מערכת מידע ניהולי62 MIS , 1.1.4.3מערכת תומכת החלטות64 DSS , 1.1.4.4מערכת מידע להנהלה הבכירה65 EIS , 1.1.4.5מערכת עובדי ידע66 KWS , 1.1.4.6מערכת מומחה67 ES , 1.1.4.7מערכת מידע משרדית67 OIS , 5 ת כנ ו ן ,ני ת וח ועיצ וב מע ר כ ו ת מידע שאלות חזרה ושינון6 9 שאלות לעבודה עצמית69 פרק 1.2שלבים בפיתוח מערכת מידע71 1.2.1מחזור החיים של מערכת מידע71 1.2.2השלבים בפיתוח מערכת מידע75 1.2.2.1ייזום76 1.2.2.2חקר המצב הקיים ואפיון ראשוני של המערכת החדשה77 1.2.2.3חקר ישימּות78 1.2.2.4ניתוח המערכת79 1.2.2.5עיצוב המערכת80 1.2.2.6הקמה81 1.2.2.7הטמעה83 1.2.2.8המגבלות של פיתוח תוכנה בשלבים84 1.2.3בעלי מקצוע בפיתוח מערכות מידע85 1.2.3.1מנתח מערכות85 1.2.3.2מתכנת87 1.2.3.3מנהל פרויקט הפיתוח88 1.2.3.4בעלי מקצועות נוספים88 שאלות חזרה ושינון90 שאלות לעבודה עצמית90 פרק 1.3מתודולוגיות פיתוח ,כלי פיתוח ונוהלי פיתוח92 1.3.1מתודולוגיות ,שיטות וטכניקות פיתוח92 1.3.1.1מתודולוגיית פיתוח92 1.3.2כלי פיתוח :תוכנה להנדסת תוכנה95 1.3.2.1מהם כלי הנדסת תוכנה95 1.3.2.2התכונות של כלי 96 CASE 1.3.2.3סוגים של כלי 97 CASE 1.3.2.4קבוצות של כלי פיתוח :שולחנות עבודה99 1.3.3נהלים ותקנים בפיתוח מערכות103 1.3.3.1נוהלי פיתוח ותקנים103 1.3.3.2תקנים בפיתוח תוכנה ותקן 104 ISO 9000.3 1.3.3.3נוהל מפת"ח109 1.3.3.4מודל של יכולת ובשלות112 CMMI , 6 ת ו כן הע נ י י נ י ם שאלות חזרה ושינון1 16 שאלות לעבודה עצמית117 פרק 1.4גישות לפיתוח מערכות מידע119 1.4.1גישת "בנה ותקן"119 1.4.2מודל "מפל המים"122 1.4.3גישת ה"אב־טיפוס"124 1.4.3.1מהו אב־טיפוס בתוכנה?124 1.4.3.2יתרונות גישת האב־טיפוס125 1.4.3.3מערכת דמה127 1.4.3.4אב־טיפוס שנועד ל"לזריקה"128 1.4.3.5אב־טיפוס "מתפתח"130 1.4.3.6אב־טיפוס מבצעי (אופרטיבי)131 1.4.4המודל הספירלי133 1.4.5פיתוח תוספתי־מחזורי135 1.4.6סיכום הגישות לפיתוח מערכות מידע138 שאלות חזרה ושינון140 שאלות לעבודה עצמית141 פרק 1.5הגישה הזריזה (1 42 )Agile 1.5.1התפתחות הגישה ועקרונותיה142 1.5.1.1בעיות ביישום גישת 145 Agile 1.5.2שיטת 147 Scrum 1.5.2.1מבוא לשיטה147 1.5.2.2תיאור השיטה148 1.5.2.3אנשי צוות הפרויקט בשיטת 152 Scrum שאלות חזרה ושינון155 שאלות לעבודה עצמית155 ביבליוגרפיה156 7 ת כנ ו ן ,ני ת וח ועיצ וב מע ר כ ו ת מידע יחידה :2ייזום מערכת מידע ,חקר המצב הקיים ואפיון ראשוני של המערכת159 נושאי היחידה161 פרק 2.1ייזום הצטיידות במערכת מידע חדשה163 2.1.1הגורמים לייזום מערכת מידע חדשה163 2.1.1.1אי־שביעות רצון ממערכת המידע הקיימת164 2.1.1.2שינויים בארגון ובסביבה167 2.1.2הפעולות הנעשות בשלב הייזום של מערכת מידע168 2.1.2.1ביצוע סקר ראשוני168 2.1.2.2הכנת מסמך ייזום169 דוגמה א :מערכת ״בנק הדם״170 שאלות חזרה ושינון175 שאלות לעבודה עצמית175 פרק 2.2חקר המצב הקיים176 2.2.1מבוא לחקר המצב הקיים ואפיון ראשוני176 2.2.2התארגנות לביצוע חקר המצב הקיים והאפיון הראשוני179 2.2.2.1ועדת מערכות מידע179 2.2.2.2ועדת היגוי180 2.2.2.3צוות מקצועי181 2.2.2.4הגדרת המשימה לצוות המקצועי183 2.2.3חקר המצב הקיים וצורכי המידע185 2.2.3.1מטרת חקר המצב הקיים וגישות להגדרת צורכי המידע185 2.2.3.2לימוד המצב הקיים ,הבעיות והצרכים187 2.2.4תיעוד חקר המצב הקיים190 דוגמה ב :מערכת "בנק הדם" :התארגנות לביצוע חקר מצב קיים ואפיון ראשוני192 שאלות חזרה ושינון194 שאלות לעבודה עצמית194 פרק 2.3שיטות לאיסוף נתונים ולתיעוד המצב הקיים והאפיון הראשוני196 2.3.1ניתוח מסמכים196 ִ 2.3.2ראיּון משתמשים197 2.3.2.1דגימת מרואיינים197 2.3.2.2תכנון סדר הראיונות199 8 ת ו כן הע נ י י נ י ם 2.3.2.3הכנת ריאיון200 2.3.2.4ניהול ריאיון וסיכומו203 2.3.3סיעור מוחות — שיטת 204 JAD 2.3.3.1הסבר כללי על השיטה204 2.3.3.2המשתתפים בסדנה205 2.3.3.3מנחה הסדנה205 2.3.3.4משך הסדנה ומקומה206 2.3.3.5חסרונות השיטה206 2.3.4שאלונים207 2.3.4.1אופן הפצת השאלונים ואיסופם208 2.3.4.2אופן הצגת השאלות208 2.3.4.3בעיות בניסוח שאלות209 2.3.4.4תכנון וביצוע של איסוף הנתונים באמצעות שאלונים ועיבודם211 2.3.5תצפיות213 2.3.5.1סוגי תצפיות213 2.3.5.2תכנון תצפיות215 2.3.5.3ביצוע תצפיות215 2.3.6טכניקות לתיאור לוגי של תהליכים216 2.3.6.1כתיבה בשפה מובנית216 2.3.6.2תרשים זרימת תכנית222 דוגמה ג :מערכת ״בנק הדם״ :תכנית לאיסוף נתונים223 דוגמה ד :מערכת "בנק הדם" :מסמך חקר המצב הקיים228 שאלות חזרה ושינון243 שאלות לעבודה עצמית243 פרק 2.4אפיון ראשוני של מערכת מידע חדשה246 2.4.1מהו אפיון ראשוני?246 2.4.2הגדרת מטרות מערכת המידע החדשה ואילוצי הארגון248 2.4.2.1הגדרת מטרות מערכת המידע248 (ת ְעדּוף)250 2.4.2.2קביעת סדר עדיפויות ִ 2.4.2.3קביעת גבולות מערכת המידע250 2.4.2.4אילוצי הארגון251 2.4.3תהליכים עסקיים ותהליכי מחשב253 2.4.3.1הבחנה בין תהליך עסקי לתהליך מחשב253 2.4.3.2היקף תהליך המחשב ומרכיביו255 9 ת כנ ו ן ,ני ת וח ועיצ וב מע ר כ ו ת מידע 2.4.4הגדרת תהליכי המחשב :הדרישות הפונקציונליות256 2.4.4.1שם התהליך257 2.4.4.2המשתמשים בתהליך257 2.4.4.3האירוע שיגרום להפעלת התהליך257 2.4.4.4תדירות האירוע או הפעלת התהליך258 2.4.4.5הקלט של התהליך258 2.4.4.6הפלט של התהליך260 2.4.4.7הנתונים הנשמרים במאגרי הנתונים והנשלפים מהם260 2.4.4.8תיאור לוגיקת התהליך261 2.4.5הגדרת דרישות לא־פונקציונליות263 2.4.5.1מהן דרישות לא־פונקציונליות263 2.4.5.2סיווגים של דרישות לא־פונקציונליות264 2.4.5.3הגדרת הדרישות הלא־פונקציונליות266 2.4.5.4אומדני כמויות267 2.4.5.5מתי יטופלו הדרישות הלא־פונקציונליות267 2.4.6השימוש באב־טיפוס לאפיון ראשוני268 דוגמה ה :מערכת ״בנק הדם״ :אפיון ראשוני של מערכת המידע הרצויה269 שאלות חזרה ושינון284 שאלות לעבודה עצמית284 ביבליוגרפיה286 יחידה :3חקר ישֹימות289 נושאי היחידה2 91 פרק 3.1ניתוח דרכי פעולה אפשריות (דפ"א)293 3.1.1מבוא לשלב חקר הישימות293 3.1.1.1בחינת דרכי פעולה אפשריות (דפ"א)293 3.1.1.2הכנת דרישה לקבלת הצעות (293 )RFP 3.1.1.3הערכות והשוואות294 3.1.1.4התקשרות ותכנית פיתוח294 3.1.1.5מי יבצע את חקר הישימות?294 3.1.2מהן דרכי פעולה אפשריות?294 3.1.2.1דרכי פעולה אפשריות הנבדלות על־פי שיטת הרכישה או הפיתוח296 10 ת ו כן הע נ י י נ י ם 3.1.2.2דוגמאות לדרכי פעולה אפשריות הנבדלות על־פי סוג מערכת המחשב297 3.1.3איתור דרכי פעולה אפשריות298 3.1.4ניתוח דרכי פעולה אפשריות ובחירת דרך פעולה נבחרת299 דוגמה א :מערכת ״בנק הדם״ :ניתוח דפ״א302 שאלות חזרה ושינון308 שאלות לעבודה עצמית308 פרק 3.2דרישה לקבלת הצעות3 09 RFP , 3.2.1מהי דרישה לקבלת הצעות ולמי היא מופנית?309 3.2.1.1דרישה לקבל הצעות בשני שלבים310 3.2.2תוכן מסמך ה־311 RFP 3.2.2.1נושאים מנהליים311 3.2.2.2תיאור הארגון ומערכת המידע הקיימת312 ִ 3.2.2.3מפרט הדרישות ממערכת מידע חדשה313 3.2.2.4הדרישות מהספק :מה עליו להגיש?317 3.2.3הכנת הצעות מטעם הספקים324 דוגמה ב :מערכת ״בנק הדם״ :מסמך 326 RFP שאלות חזרה ושינון332 שאלות לעבודה עצמית332 פרק 3.3הערכת ההצעות :עלויות333 3.3.1קבלת הצעות הספקים וניפוי ראשוני3 33 3.3.1.1מדדים להערכת הצעות ולהשוואתן334 3.3.1.2התייחסות לסיכון334 3.3.2דרכים להתקשרות כספית בין ספק ללקוח336 3.3.2.1מחיר קבוע336 3.3.2.2זמן וחומרים337 3.3.2.3זמן וחומרים עם תקרת מחיר338 3.3.2.4פיתוח בשלבים339 3.3.2.5סעיף פרס או קנס339 3.3.2.6רווח קבוע339 3.3.2.7השקעה משותפת340 3.3.3חישוב העלויות והיוונן341 3.3.3.1דוגמאות להיוון342 11 ת כנ ו ן ,ני ת וח ועיצ וב מע ר כ ו ת מידע 3.3.4עלויות נוספות וחסכונות עקב שימוש במערכת3 44 3.3.4.1עלויות נוספות בגין פיתוח ואחזקת המערכת344 3.3.4.2עלויות נוספות בתקופת תפעול מערכת המידע345 3.3.4.3חסכונות אפשריים עקב השימוש במערכת המידע346 דוגמה ג :מערכת ״בנק הדם״ :הצעות הספקים וחישוב העלויות347 שאלות חזרה ושינון355 פרק 3.4הערכת ההצעות :תועלות3 56 3.4.1איך להעריך תועלת של מערכת מידע?356 3.4.1.1הערכת תועלת בכסף356 3.4.1.2הערכת תועלת במדדים כמותיים שווי כסף357 3.4.1.3הערכת תועלת במדדים כמותיים שאינם שווי כסף358 3.4.1.4הערכת תועלות שאינן מוחשיות358 3.4.2התכונות והמרכיבים שבאמצעותם מעריכים תועלת359 3.4.2.1הכנת רשימת תכונות ומרכיבים361 3.4.2.2קביעת משקלות החשיבות362 3.4.2.3דוגמאות של תכונות ומרכיבים שבאמצעותם מעריכים תועלת362 3.4.3הערכת תועלות ההצעות באמצעות מודל השקלול366 3.4.3.1עריכת טבלאות להשוואה366 3.4.3.2מתן ציונים וחישוב ציונים משוקללים367 דוגמה ד :מערכת ״בנק הדם״ :הערכת תועלות ההצעות371 נספח א :מודל הווקטור העצמי של 373 Saaty נספח ב :מודל התועלת של 376 Keeney שאלות חזרה ושינון380 שאלות לעבודה עצמית380 פרק 3.5השוואות עלות-תועלת ובחירת הצעה אופטימלית382 3.5.1ניפוי הצעות נחותות382 3.5.2השוואה על־פי דירוג העלויות או התועלות383 3.5.3השוואה על־פי היחס עלות/תועלת383 3.5.4השוואה על־פי שקלול העלות והתועלת384 3.5.4.1שיטות לנרמול עלויות385 3.5.4.2חישוב תוחלת התועלת388 3.5.5גרף עלות-תועלת390 12 ת ו כן הע נ י י נ י ם 3.5.6התקשרות עם הספק הנבחר3 93 דוגמה ה :מערכת ״בנק הדם״ :השוואת הצעות באמצעות גרף עלות-תועלת395 דוגמה ו :מערכת ״בנק הדם״ :חוזה התקשרות עם הספק הנבחר396 שאלות חזרה ושינון402 שאלות לעבודה עצמית402 תשובות לשאלות החזרה והשינון 404 8-3 ביבליוגרפיה406 13 פתח דבר פתח דבר הספר ״תכנון ,ניתוח ועיצוב מערכות מידע״ נועד להכשיר את הלומדים לבצע את הפעולות הנחשבות לחשובות ביותר בתהליך רב־השלבים של פיתוח מערכות מידע, דהיינו תכנון ,ניתוח ועיצוב מערכות מידע .נושאי הספר כוללים בין היתר חקר המצב והבעיות בארגון ובמערכת המידע הקיימת ,אפיון ראשוני של מערכת המידע החדשה, בחינת דרכי פעולה והצעות לפיתוח מערכת המידע ,בחירת הצעה אופטימלית ,ניתוח והגדרה מפורטת של הפונקציות והמרכיבים של מערכת המידע ועיצוב מרכיבי התוכנה השונים שלה .לאור כל אלה מקימים את מערכת המידע ומטמיעים אותה בארגון .הצלחת מערכת המידע או כישלונה תלויים בין היתר באיכות התכנון ,הניתוח והעיצוב. המונחים "תכנון" ,״ניתוח״ ו״עיצוב״ אינם מוגדרים היטב ויש להם הגדרות ומשמעויות שונות; בפרט ,לא תמיד ברור ההבדל בין ״ניתוח״ לבין ״עיצוב״ המערכת ולא תמיד מוסכם מה בדיוק נכלל בכל אחד מהם( .הדבר נכון במידה זו או אחרת גם לגבי פעולות אחרות בתהליך פיתוח מערכות מידע ).בכל אופן ,עבודת מנתח מערכות המידע אינה מצטמצמת רק לפעולות של ניתוח ועיצוב אלא מקיפה פעולות רבות נוספות בתהליך פיתוח המערכת .מי שמכשירים את עצמם לעסוק בניתוח ובעיצוב של מערכות מידע צריכים להצטייד בידע הן בתחומים הטכניים של מחשבים ומערכות מידע והן במדעי ההתנהגות והניהול .קורס זה הוא נדבך יסודי בידע הנדרש לתכנון ,ניתוח ועיצוב מערכות מידע. מובנות ( )unstructuredולא פורמליות פעילויות ניתוח ועיצוב מערכות מידע הן מטבען לא ְ (מבחינה מתמטית) .יש בעבודת המנתח והמעצב מרחב גדול ליצירתיות ,לאינטואיציה, לניסיון מקצועי וכדומה .אף־על־פי־כן ,המגמה היא לפתח מערכות מידע בתהליך ומובנים ככל האפשר .לכן ְ ״הנדסי״ ,כלומר באמצעות שיטות ,טכניקות וכלים מדויקים כשעוסקים בשיטות לפיתוח מערכות מידע משתמשים לעתים במונח ״הנדסת תוכנה״ (.)software engineering תחומי המחשבים ומערכות המידע עוברים כל הזמן חידושים ושינויים הן בטכנולוגיות והן בשיטות ובטכניקות לפיתוח המערכות .יש גישות ,שיטות וטכניקות שונות לפיתוח מערכות מידע ,ובכלל זה לניתוחן ולעיצובן .קצרה היריעה של קורס אחד מלהכיל את כולן .ואולם יש לקוות שהחומר הנלמד בקורס יספק ידע בסיסי על עקרונות הניתוח והעיצוב ועל כמה גישות ,שיטות וטכניקות נפוצות ,ועל סמך זה יוכל הלומד להתמודד בעתיד עם גישות ושיטות נוספות ,בין שהן קיימות ובין שיפותחו בעתיד. 15 ת כנ ו ן ,ני ת וח ועיצ וב מע ר כ ו ת מידע בקורס זה נלמדות שיטות וטכניקות שונות לניתוח ועיצוב של מערכות מידע ,הן בגישה הפונקציונלית המתרכזת בניתוח ובהגדרה של הפונקציות (התהליכים) שמערכת המידע בעצמי הנתונים שמערכת המידע ֵ צריכה לבצע ,והן בגישה המונחית עצמים המתרכזת צריכה לכלול ובפונקציות שאמורות לבצע פעולות עליהם .באשר לגישה הפונקציונלית, מתודולוגיית הניתוח והעיצוב העיקרית הנלמדת היא ADISSAשפותחה בידי כותב ספר זה .באשר לגישה המונחית עצמים ,מתודולוגיית הניתוח והעיצוב מתבססת על שפת המידול .UMLאפשר להניח שסטודנטים שילמדו ויתרגלו ניתוח ועיצוב של מערכות מידע בקורס זה יוכלו להתמודד גם עם שיטות פיתוח אחרות. תהליך הניתוח והעיצוב של מערכות מידע נעשה לעתים בסיוע כלי תוכנה ייעודיים המכונים .)Computer Aided Software Engineering( CASEיש כלי תוכנה רבים ושונים המיישמים שיטות וטכניקות לפיתוח מערכות .גם הכלים האלה מתיישנים ומתחדשים כל הזמן יחד עם השינויים הטכנולוגיים האחרים .ספר הקורס מתייחס לכלים כאלה ולשימושים בהם בשלבי הפיתוח השונים ,אך אינו כולל לימוד מפורט או תרגול באמצעות כלי CASEמסוים. 16 פתח דבר תיאור הספר בספר עשר יחידות לימוד המאורגנות בשלושה כרכים ,ובכל יחידה פרקים אחדים .חומר הלימוד בכל פרק כולל דוגמאות רבות ובסוף הפרק יש שאלות ,בדרך כלל משני סוגים: שאלות חזרה ושינון ושאלות לעבודה עצמית .השאלות לחזרה ולשינון מיועדות לסייע לתלמיד לשנן ולהבין את חומר הקריאה .בסוף כל שאלה יש הפניה לסעיף המתאים בפרק שנושא השאלה נלמד בו ואפשר למצוא בו את התשובה .במקרים אחדים יש גם תשובות צמודות לשאלות .השאלות לעבודה עצמית מחייבות ברוב המקרים לבצע עבודה מעשית כגון לתכנן ,לנתח או לעצב חלק כלשהו של מערכת מידע או לבצע סקר בבית תוכנה או בארגון כדי ללמוד איך הדברים שנלמדו בפרק נעשים בפועל .אפשר להתייחס לשאלות האלה כאל שאלות רשות ואין זה הכרחי ומעשי שהלומד יבצע את כל העבודות .בכל אופן ,השאלות לעבודה עצמית מדגימות את רמת הידע ואת סוג העבודה שהלומד אמור לדעת לבצע בעקבות לימוד הפרק .יתרה מזו ,מקצת המטלות יכולות להיחשב למטלות הניתנות בפרויקט המלווה את הקורס. בכרך א (תכנון מערכות מידע) שלוש יחידות לימוד (.)3-1 יחידה ( 1מבוא לפיתוח מערכות מידע) סוקרת כמה נושאי מבוא לתכנון ,ניתוח ועיצוב של מערכות מידע .ביחידה חמישה פרקים: פרק ( 1.1מערכות מידע בארגון) מגדיר מהי מערכת מידע ,סוקר מאפיינים של מידע ,מציג את המשתמשים ,דהיינו עובדים ומנהלים בדרגים שונים בארגון ואת מאפייני המידע שהם זקוקים לו .כמו כן מוצגים סוגים שונים של מערכות מידע בארגונים .הנושאים האלה נלמדים גם בקורס המקדים ׳׳מערכות מידע ומחשב בניהול״ ,או בקורס "עקרונות פיתוח מערכות מידע" או בקורס בעל שם דומה המוצע בדרך כלל בתכניות לימוד בתחום זה לכן הם מובאים בקיצור ,מעין חזרה על החומר. פרק ( 1.2שלבים בפיתוח מערכת מידע) מסביר מהו ״מחזור החיים״ של מערכת מידע, ובעיקר סוקר את שלבי פיתוחה ואת הפעילויות העיקריות והתוצרים של כל אחד משלבי הפיתוח .כן מוצגים בעלי המקצועות השונים המשתתפים בתהליך הפיתוח ובפרט מנתח המערכות. פרק ( 1.3מתודולוגיות פיתוח ,כלי פיתוח ונוהלי פיתוח) פותח בהסבר של המונחים מתודולוגיית פיתוח ,שיטה וטכניקה .לאחר מכן מובא סיווג של כלי פיתוח (כלי הנדסת תוכנה) ,ולבסוף מתוארים כמה נהלים ותקנים בפיתוח מערכות מידע ותוכנה. 17 ת כנ ו ן ,ני ת וח ועיצ וב מע ר כ ו ת מידע פרק ( 1.4גישות לפיתוח מערכות מידע) סוקר גישות שונות לניהול תהליך הפיתוח של מערכות מידע .נסקרות הגישות" :בנה ותקן"" ,מפל המים"" ,אב־טיפוס" לצורותיו השונות, המודל הספירלי ופיתוח תוספתי־מחזורי .)Incremental Iterative Development( IID פרק ( 1.5הגישה הזריזה )agile ,ממשיך בנושא הקודם ומתמקד בגישת הפיתוח ה"זריזה". הוא מתאר את התפתחות הגישה ואת עקרונותיה תוך השוואה לגישות קודמות וכן בעיות אופייניות הכרוכות ביישום הגישה .לאחר מכן הפרק מתאר במפורט את שיטת ,Scrumאחת השיטות הנפוצות ביותר בגישה הזריזה ,תוך פירוט שלבי הפיתוח ובעלי התפקידים המוגדרים על־פיה. יחידה ( 2ייזום מערכת מידע ,חקר המצב הקיים ואפיון ראשוני של המערכת) עוסקת בשלבים הראשונים של תהליך ההצטיידות במערכת מידע .הצטיידות יכולה להיות רכישה של מערכת מידע מוכנה או פיתוח מערכת מידע חדשה ולכלול הן תוכנה והן חומרה. ביחידה ארבעה פרקים: פרק ( 2.1ייזום הצטיידות במערכת מידע חדשה) מתאר את הנסיבות האפשריות שבגללן ארגון שוקל להצטייד במערכת מידע חדשה ואת הפעולות המבוצעות בשלב זה. פרק ( 2.2חקר המצב הקיים) מתחיל בסקירה קצרה של שלב חקר המצב הקיים והאפיון הראשוני .לאחר מכן הפרק מתאר כיצד ארגון נערך לנהל שלב זה ולבצעו ,ובכלל זה כינון ועדת היגוי לניהול התהליך וצוות מקצועי שיבצע את העבודה .הפרק מתאר את עבודת הצוות המקצועי ואת התוצר של שלב משנה זה — "דוח על מצב קיים". פרק ( 2.3שיטות לאיסוף נתונים ולתיעוד המצב הקיים והאפיון הראשוני) עוסק בשיטות שונות לאיסוף נתונים ובהן ניתוח מסמכים ,ריאיון משתמשים ,סיעור מוחות בשיטת ,JADשאלונים ותצפיות וכן טכניקות לתיאור לוגי של תהליכים .טכניקות אלה יכולות לשמש הן לתיעוד המצב הקיים והן לאפיון הראשוני של המערכת שיתואר בפרק הבא. פרק ( 2.4אפיון ראשוני של מערכת מידע חדשה) עוסק בהגדרת דרישות המשתמשים, שכוללת את הגדרת מטרות המערכת וגבולותיה ,הגדרת אילוצים ,ובעיקר אפיון של הדרישות הפונקציונליות מן המערכת וביטוין באמצעות תיאור של תהליכי המחשב הרצויים .כן יש להגדיר דרישות לא־פונקציונליות שנועדו להבטיח שהמערכת שתפותח תהיה איכותית ותעמוד באילוצים שונים כגון ביצועים ,זמני תגובה ,אבטחה ועוד. יחידה ( 3חקר ישימות) עוסקת בשלב חקר הישימות של מערכת המידע הדרושה לאור האפיון הראשוני שבוצע .בעקבות שלב חקר הישימות תחליט ההנהלה על דרך הפעולה 18 פתח דבר הנבחרת כגון לרכוש תוכנה מוכנה או לפתח מערכת באמצעות בית תוכנה או בפיתוח עצמי .ביחידה חמישה פרקים: פרק ( 3.1ניתוח דרכי פעולה אפשריות [דפ"א]) פותח במבוא לשלב חקר הישימות. לאחר מכן מוצגים בפרק סוגי דפ״א והדרכים לאיתורן וכן דרכי הניתוח של יתרונותיהן וחסרונותיהן במטרה לבחור את דרך הפעולה הנבחרת (דפ"ן). פרק ( 3.2דרישה לקבלת הצעות )RFP ,עוסק בהכנת דרישה ִמ ַספקים להגיש הצעות לפיתוח או לרכישה של מערכת מידע .נלמד מהו מסמך דרישה ,למי היא מופנית ,מה תוכן המסמך וכיצד מקבל הדרישה (הספק) מכין את ההצעה לאספקת המערכת המבוקשת. פרק ( 3.3הערכת ההצעות :עלויות) דן תחילה בניפוי ראשוני של הצעות שהתקבלו מספקים ומנתח אמות מידה להערכה ולהשוואה בין הצעות .לאחר מכן מוצגות שיטות אופייניות להתקשרות כספית בין הלקוח (הארגון) לבין הספק (בית התוכנה) .עיקר הפרק מוקדש לחישוב עלויות ההצעות. פרק ( 3.4הערכת ההצעות :תועלות) עוסק בהערכת תועלות ההצעות תוך דיון בתכונות ובמרכיבים שעל־פיהם מעריכים תועלת .הפרק מתאר את יישום מודל השקלול להערכת תועלות ההצעות; הנספחים לפרק מציגים מודלים כמותיים נוספים. פרק ( 3.5השוואות עלות-תועלת ובחירה הצעה אופטימלית) מציג שיטות שונות להשוואת העלויות והתועלות של הצעות ולבחירת ההצעה האופטימלית .דגש מושם בהשוואות בשיטת גרף עלות-תועלת .כן עוסק הפרק בהתקשרות עם הספק הזוכה. כרך ב (ניתוח ועיצוב של מערכות מידע בגישה הפונקציונלית) כולל ארבע יחידות לימוד ( .)7-4יחידות 4ו־ 5עוסקות בניתוח המערכת ויחידות 6ו־ — 7בעיצוב המערכת. יחידה ( 4ניתוח המערכת ובניית מודל פונקציונלי באמצעות תרשימי )DFDכוללת ארבעה פרקים. פרק ( 4.1מבוא לניתוח ולעיצוב של מערכות מידע בגישה הפונקציונלית) כשמו כן הוא .ראשית ,נדון בקשר בין הגישות לפיתוח לבין שלבי הניתוח והעיצוב ונבחין בין מתודולוגיות לניתוח ועיצוב בגישה הפונקציונלית לעומת הגישה המונחית עצמים .לאחר מכן נביא אזכור קצר של מה שכלול בשלבי הניתוח והעיצוב .הפרק מסתיים באזכור שיטות נוספות לניתוח פונקציונלי שנלמדו ושעוד יילמדו ביחידות אחרות. פרק ( 4.2תרשים זרימת מידע [ )]DFDמוקדש ללימוד מרכיבי תרשים DFDיחיד וכללי יצירתו. 19 ת כנ ו ן ,ני ת וח ועיצ וב מע ר כ ו ת מידע פרק ( 4.3פירוק פונקציונלי־היררכי של תרשימי )DFDמלמד כיצד לבנות מודל פונקציונלי המורכב מתרשימי DFDהיררכיים. פרק ( 4.4מילון הנתונים [ )]Data Dictionaryמסביר מהי מטרת מילון הנתונים ,מבנה המילון ,אופן בנייתו והשימוש בו בשלבי הפיתוח של המערכת. יחידה ( 5ניתוח מבנה הנתונים ובניית מודל נתונים באמצעות תרשים )ERDכוללת שני פרקים. פרק ( 5.1מודל הנתונים ישויות וקשרים )Entity-Relationship, ERמלמד את שיטת המידול ישויות וקשרים ERשבאמצעותה בונים מודל נתונים של המערכת המוצג בצורת תרשים ישויות וקשרים .ERD פרק ( 5.2מיפוי מאגרי נתונים מתרשימי DFDלתרשים )ERDמקשר בין המודל הפונקציונלי ומודל הנתונים ,ובו נלמד כיצד ניתן לבנות את מודל הנתונים ,היינו תרשים ,ERDעל סמך מאגרי הנתונים שהוגדרו בתרשימי ה־.DFD יחידה ( 6עיצוב מערכת מידע — תהליכי המחשב ,המנשקים ,הקלטים והפלטים) כוללת שלושה פרקים. פרק ( 6.1עיצוב תהליכי המחשב [הטרנזקציות]) פותח במבוא על שלב העיצוב ועל מתודולוגיית ADISSAשעל־פיה יבוצע שלב העיצוב .לאחר מכן מוסבר מהי טרנזקציה ומהם מרכיביה ומוצגת שיטה לאיתור הטרנזקציות של מערכת המידע על סמך תרשימי ה־ DFDשנוצרו בשלב ניתוח המערכת .כל טרנזקציה מבוטאת באמצעות תרשים המלווה בתיאור כללי של התהליך הלוגי שלה .בסוף הפרק נלמדת גם שיטה נוספת לניתוח פונקציונלי של מערכת מידע באמצעות תרשימי טרנזקציות ותיאוריהן כתחליף לשיטת תרשימי ה־ DFDשנלמדה ביחידה .4 פרק ( 6.2עיצוב המנשקים) מתחיל בהצגת עקרונות וסוגים של מנשקים בין משתמשים למערכות מידע .הפרק מתמקד בעיצוב מנשק עץ תפריטים על סמך תרשימי ה־DFD והטרנזקציות של מערכת המידע .כן נלמד על התאמת מנשקים לצורכי משתמשים שונים במערכת. פרק ( 6.3עיצוב הקלטים והפלטים) פותח במבוא על עיצוב קלטים ופלטים ובו מובהר מקומו של שלב זה בכלל שלבי עיצוב המערכת .לאחר מכן הפרק עוסק בעיצוב הקלטים ובכלל זה מטרות בעיצוב הקלטים ,סוגים של אמצעי קלט וכללים לעיצוב טופסי קלט ומסכי קלט .מוסבר כיצד תהליך עיצוב הקלטים משתלב בעיצוב הטרנזקציות של מערכת המידע .המשך הפרק עוסק בעיצוב הפלטים של המערכת ובכלל זה מטרות בעיצוב 20 פתח דבר הפלטים ,סוגים של אמצעי פלט וכללים לעיצוב דוחות ומסכי פלט .כן מוסבר כיצד תהליך עיצוב הפלטים משתלב בעיצוב הטרנזקציות של מערכת המידע. יחידה ( 7עיצוב סכמת בסיס הנתונים ועיצוב מפורט של תהליכי המחשב) כוללת ארבעה פרקים. פרק ( 7.1המודל הרלציוני ונרמול נתונים) פותח במבוא כללי על בסיסי נתונים ,מודלים וסכמות של נתונים ,ומציג את עיקרי המודל הרלציוני .עיקר הפרק מוקדש לנושאים: תלויות בין נתונים ,כללי נרמול נתונים והרכבה של רלציות( .למי שכבר למד קורס על בסיסי נתונים החומר בפרק זה הוא חזרה מועילה). פרק ( 7.2עיצוב סכמת בסיס נתונים רלציוני) עוסק בעיצוב סכמת בסיס נתונים רלציוני במסגרת שלב העיצוב של מערכת המידע ,ומלמד איך לעשות זאת בשתי דרכים: (א) על־ידי הגדרת תלויות בין השדות במאגרי הנתונים של תרשימי DFDאו טרנזקציות והפעלת כללי נורמליזציה; (ב) על־ידי מיפוי תרשים ה־ ERDשנוצר בשלב ניתוח המערכת. בשתי הדרכים נוצרת סכמת בסיס נתונים רלציוני מנורמלת. פרק ( 7.3הגדרת פעולות שליפה ועדכון של בסיס הנתונים) עוסק בהגדרת פעולות שליפה מבסיס הנתונים ועדכון בסיס הנתונים במסגרת הטרנזקציות של מערכת המידע. פעולות אלה נובעות מפעולות הקריאה והכתיבה במאגרי נתונים שנכללות במסגרת הטרנזקציות .פעולות השליפה והעדכון מוגדרות בצורה מילולית או באמצעות פקודות בשפה הרלציונית .SQLהפרק מסתיים בהצגת שיטה לעיצוב סכמות משנה של בסיס הנתונים. פרק ( 7.4עיצוב מפורט של תהליכי המחשב [הטרנזקציות]) חותם את שלב העיצוב של מערכת מידע בגישה הפונקציונלית ועוסק בעיצוב מפורט של תהליכי המחשב ,כלומר הטרנזקציות ,שבסופו של דבר יהיו תכניות המחשב המיישמות את מערכת המידע. העיצוב המפורט מתבסס על המרכיבים השונים של המערכת שעוצבו בשלבים הקודמים, כפי שלמדתם ביחידות 5ו־.6 כרך ג (ניתוח ועיצוב מערכות מידע בגישה המונחית עצמים) כולל שלוש יחידות לימוד המתחלקות לשני חלקים מבחינת התוכן :בחלק האחד יחידות 9-8ובחלק השני יחידה .10 בחלק הראשון יחידה 8עוסקת בניתוח המערכת ויחידה 9בעיצוב המערכת. 21 ת כנ ו ן ,ני ת וח ועיצ וב מע ר כ ו ת מידע יחידה ( 8ניתוח מערכת מידע בגישה המונחית עצמים ו־ )UMLכוללת שלושה פרקים. פרק ( 8.1מבוא לגישה המונחית עצמים בניתוח ועיצוב של מערכות מידע) מציג עקרונות ותכונות של הגישה המונחית עצמים ,מסביר מונחים בתכנות מונחה עצמים ומציג מבוא על מתודולוגיות הפיתוח של מערכות מידע בגישה המונחית עצמים ועל שפת המידול )Unified Modeling Language( UMLשהיא אוסף של טכניקות למידול מערכות המפותחות בגישה זו. פרק ( 8.2מידול נתונים באמצעות תרשים מחלקות — )class diagramעוסק בניתוח ומידול של מבנה הנתונים של מערכת מידע באמצעות תרשים מחלקות .לאחר הקדמה על תרשים מחלקות מובאים הסברים על עצמים ומחלקות ,תכונות וקשרים מסוגים שונים בין מחלקות. פרק ( 8.3מידול פונקציונלי באמצעות תרחישי שימוש ,תרשימי פעילות ותרחישי טרנזקציות) עוסק בטכניקות של UMLלמידול הפונקציונלי של מערכת :תרחיש שימוש ( )use caseותרשים פעילויות ( .)activity diagramכמו כן נלמדת שיטת ניתוח פונקציונלי נוספת — תרחישי טרנזקציות — המבוססת על תרשימי טרנזקציות שהותאמו לגישה המונחית עצמים .הפרק מסתיים בהשוואה בין החלופות השונות לניתוח מערכת בגישה המונחית עצמים. יחידה ( 9עיצוב מערכת מידע בגישה המונחית עצמים ו־ )UMLכוללת שלושה פרקים. פרק ( 9.1תרשים מחלקות לעיצוב ומחלקות מנשק) מתחיל במבוא לשלב עיצוב המערכת ועוסק בין היתר בהבדלים בין תרשים מחלקות לניתוח לתרשים מחלקות לעיצוב וכן סוקר את הפעילויות השונות הנכללות בשלב זה .בהמשך הפרק עוסק בטיפוסי נתונים ( )data typesובנראּות ( )visibilityשל תכונות וכן בהגדרת תכונות ייחוס (reference )attributesעל סמך הקשרים השונים שבין מחלקות הנתונים .לאחר מכן הפרק דן בפונקציות בסיסיות ובפונקציות יישום ייחודיות של המחלקות .חלק עיקרי נוסף של הפרק עוסק בעיצוב מנשקי התפריטים ובעיצוב הקלטים והפלטים של המערכת על סמך תרחישי השימוש שהוגדרו בשלב ניתוח המערכת. פרק ( 9.2מידול התנהגות המערכת — תרשימי רצף ,תקשורת ומצבים) מתחיל במבוא על מידול התנהגות המערכת שנעשה על סמך תרחישי השימוש או הטרנזקציות ותרשים המחלקות שהוגדרו בשלב ניתוח המערכת ,תהליך שבעקבותיו מוגדרות הפונקציות של המחלקות השונות .בין היתר הפרק דן בבעיה כיצד לאתר פונקציות בתרחישי השימוש או בטרנזקציות שניתן להגדירן כפונקציות של מחלקות ,ולאילו מחלקות לשייך אותן. חלק עיקרי של הפרק מוקדש ללימוד הטכניקה של תרשימי רצף ()sequence diagrams שבאמצעותם מתרגמים כל תרחיש שימוש לרצף של מסרים המועברים בין עצמים 22 פתח דבר ומפעילים פונקציות של המחלקות המתאימות .לאחר מכן נלמדות טכניקות נוספות למידול התנהגות — תרשימי תקשורת ( )communication diagramsשיש להם אותה מטרה כמו לתרשימי רצף ותרשימי מצבים ( )state chartsשבאמצעותם אפשר למדל את המצבים השונים של כל עצם והמעברים האפשריים ביניהם. פרק ( 9.3מיפוי תרשים מחלקות לסכמת בסיס נתונים רלציוני) מתחיל ברציונל :מדוע צריך למפות את תרשים המחלקות לסכמה רלציונית? עיקר הפרק מוקדש ללימוד כללי המיפוי .בסופו של תהליך המיפוי מתקבלת סכמת בסיס נתונים רלציוני המורכבת מרלציות מנורמלות עם קשרים מתאימים בין מפתחות ומפתחות זרים של הטבלאות. יחידה ( 10מעיצוב המערכת להקמתה והטמעתה) המרכיבה את החלק השני של כרך ג עוסקת בעיצוב ארכיטקטורת המערכת ובשלבים האחרונים של פיתוח מערכת מידע, דהיינו הטמעת המערכת ואחזקתה במשך תקופת השירות שלה .ביחידה ארבעה פרקים. פרק ( 10.1עיצוב ארכיטקטורת המערכת) מתחיל בהקדמה על עיצוב ארכיטקטורת מערכת ולאחר מכן מובאים סיווג והשוואה של ארכיטקטורות מחשב תוך הבחנה בין ארכיטקטורות שרת ,לקוח ושרת־לקוח .בהמשך הפרק דן בדרישות לא־פונקציונליות ממערכת המידע והשפעתן על בחירת ארכיטקטורה מתאימה .הפרק מסתיים בתפקידו של ארכיטקט המערכת ומקומו בארגון ובתהליך הפיתוח של מערכת מידע. הפרקים הבאים עוסקים בשלבים האחרונים של פיתוח מערכת מידע ,היינו הקמה והטמעה ,ובאחזקת המערכת במשך תקופת השירות שלה .הנושאים הנכללים בפרקים אלה נידונים בצורה כללית יותר מאשר בפרקים קודמים של הספר. פרק ( 10.2תהליך התכנות ,בחינת התוכנה ותיעוד המערכת) עוסק בכמה נושאים .הנושא הראשון הוא תהליך התכנות ,כולל ארגון צוותי תכנות והפעלתם ,מדדי תפוקה וגורמים המשפיעים על תפוקת מתכנתים .הנושא השני הוא בדיקות תוכנה ובו מתוארים סוגים שונים של בדיקות שנעשות כחלק משלב התכנות .הנושא השלישי הוא תיעוד המערכת הכולל את המסמכים השונים שהופקו בשלבי הפיתוח הקודמים ופירוט התיעוד שנוסף בשלב ההקמה. פרק ( 10.3מבחני קבלה והסבה למערכת החדשה) פותח בהצגת מטרות מבחני הקבלה של מערכת ומפרט סוגי מבחנים שונים .החלק השני של הפרק מציג סקירה של ההסבה והתחומים הנכללים בה ומפרט פעילויות של הכשרת עובדים ,הסבת נתונים ,הסבת חומרה והסבת תוכנה ותהליכים. פרק ( 10.4ביקורת ,אחזקה וניהול תצורה של המערכת) עוסק בתפעול השוטף של מערכת המידע ובו שלושה עניינים :ראשית ,ביקורת של מערכת המידע תוך הבחנה בין ביקורת 23 תהליך הפיתוח לביקורת התפעול השוטף .שנית ,אחזקת מערכת המידע תוך הבחנה בין סוגים שונים של אחזקה והסברים על תפקידי עובדי האחזקה ,הגורמים המשפיעים על עלויות האחזקה ,נוהלי ביצוע האחזקה ותהליכי הנדסה לאחור והנדסה מחדש של תוכנה. שלישית ,דיון בניהול תצורה הכולל הסבר על חשיבותו של תכנון ניהול תצורת מערכת המידע ,הצגת נוהל בקרת שינויים בתוכנה והעלאת בעיות בבניית גרסאות תוכנה וניהולן.