© 1999-2001, ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 1 הגדרת דרישות וניהולן Requirements Definition and Management מקורות: S. R. Schach: Chapter 9 R.

Slides:



Advertisements
Similar presentations
Object Oriented 33 MCSD DORON AMIR
Advertisements

ממיבחניםC שאלות ++.
תוכנה 1 סמסטר א ' תשע " ב תרגול מס ' 7 * מנשקים, דיאגרמות וביטים * לא בהכרח בסדר הזה.
מבוא למדעי המחשב לתעשייה וניהול
בתרגול הקודם הורשה: –ניתן להרחיב רק מחלקה אחת –כל מה שלא private – עובר בהורשה –המילה השמורה super –יצירת היררכיה –Object היא שורש ההיררכיה –דריסה אופרטור.
1 Formal Specifications for Complex Systems (236368) Tutorial #4 Refinement in Z: data refinement; operations refinement; their combinations.
©Silberschatz, Korth and Sudarshan4.1Database System Concepts סכימה לדוגמא.
טבלאות סמלים נכתב ע"י אלכס קוגן סמסטר חורף, תשס"ח.
© , ד"ר עמיר תומר שיטות בהנדסת תוכנה (234321) אודות הקורס - 1 שיטות בהנדסת תוכנה Introduction to Software Engineering מרצה: פרופ’ שמואל.
מבוא Introduction מקורות: S. R. Schach: Chapters 1-2
כתיבת עבודת גמר מבנה העבודה  מבחינה צורנית - יש להקפיד על אחידות בכתיבה  כותרות אחידות  רווחים זהים, פונט בגודל אחיד (12, רווח וחצי)  הצגת.
A smart phone application for sales agents בס"ד.  סוכני מכירות מגיעים ללקוח ומבצעים הזמנות ע " פ דרישות הלקוח  סוכן המכירות נעזר בקטלוג מוצרים, טלפון.
תכנות מונחה עצמים Object Oriented Programming (OOP) אתגר מחזור ב'
מודלים של מחזור חיי תוכנה Software Life-Cycle Models
חורף - תשס " ג DBMS, Design1 שימור תלויות אינטואיציה : כל תלות פונקציונלית שהתקיימה בסכמה המקורית מתקיימת גם בסכמה המפורקת. מטרה : כאשר מעדכנים.
מכון ויצמן למדע - שמוליק מתוך 8 חישוב מקבילי ומבוזר מה זה יחידה חמישית במדעי המחשב... n ענף מתקדם במדעי המחשב העוסק במערכות ממוחשבות מרובות ישויות.
1 תוכנה 1 לפני שמתחילים תוכנה נדרשת כל התוכנות הנדרשות לקורס מותקנות במעבדות המחשבים בבניין שרייבר המעבדות פתוחות 7 ימים בשבוע, 24 שעות ביממה הכניסה.
שיטות מחקר איכותניות שיעור מס' 8. קריטריונים למהימנות הראיון: 1. רלוונטיות של הנחקר לשדה התרבותי 2. נכונות של המראיין לתרום את ניסיונו, לשתף אותנו 3.
פרויקט מחקרי בנושא יחס הזהב ואסתטיקה של מנשקים ARD מנחה : פרופ ' נעם טרקטינסקי מנחה אקדמי : פרופ ' יובל אלוביץ ' מגישים : אפרת דוד ארסני קרופניק.
חורף - תשס " ג DBMS, צורות נורמליות 1 צורה נורמלית שלישית - 3NF הגדרה : תהי R סכמה רלציונית ותהי F קבוצת תלויות פונקציונליות מעל R. R היא ב -3NF.
מבוא להנדסת תוכנה דרישות - 1 הגדרת דרישות וניהולן Requirements Definition and Management.
1 Formal Specifications for Complex Systems (236368) Tutorial #5 Refinement in Z: data refinement; operations refinement; their combinations.
מטרה: בניית אתר אינטרנט לניהול הפרויקטים במעבדה לתוכנה: 1. ממשק לסטודנט: - הגשת הצעה לפרויקט (כולל בחירת בן זוג). - מעקב אחרי הפרויקטים המבוצעים ע"י הסטודנט.
תוכנית דעת, שנה"ל תשס"ח, מרצה יהודה הופמן1 מערכות מידע ארגוניות מערכות מידע ארגוניות הרצאה מס' 2: מהו מידע ?
בדיקה וגיבוש של רעיון עסקי Jonathan Klahr Associate BRM
ממשק המשתמש שימושיות או בעצם תכליפאניות?. ISO9241 Web usability is the extent to which a web site enables users, in a given context of use, to achieve.
Formal Specifications for Complex Systems (236368) Tutorial #6 appendix Statecharts vs. Raphsody 7 (theory vs. practice)
הבטחת איכות מבוא להנדסת תוכנה
ספריה וירטואלית בטכנולוגית J2EE הטכניון – מכון טכנולוגי לישראל הפקולטה להנדסת חשמל המעבדה למערכות תוכנה עזרן אייל טרבלסי אורדן סמסטר חורף תשס " ד מנחה.
Questions are the Answer Penick&all H ISTORY R ELATIOINSHIPS A PPLICATION S PECULATION E XPLANATION.
SSDL פרויקט שנתי בהנדסת תוכנה שחר דג אודות שירותים מחשבים (מי הכי מהיר) הדפסה תוכנה עזרה שאלות נפוצות באתר המעבדה
איתור ותפיסת כדור לזריקה תוך שיתוף שתי זרועות רובוטיות הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל המעבדה לבקרה ורובוטיקה תופאחה חיסאוי יגאל סיגל.
רישום חומרי למידה והסטנדרט הישראלי: ISRACORE יהודית בר אילן, אוניברסיטת בר-אילן אלי שמואלי, מיט"ל.
1 מפרטים פורמאליים תרגול מספר 1 מהות הקורס:כח ביטוי. בעיות מעשיות (ולא הוכחות) מתרגל אחראי:שחר דג מתרגלת:אמיליה כץ אתר:
מבוא להנדסת תוכנה אימות ותקפות - 1 אימות ובדיקות Verification & Testing מקורות: S. R. Schach: Chapter 6 R. S. Pressman: Chapter ד. גלין ו-ז. בלובבנד,
Data Structures, CS, TAU, Perfect Hashing 1 Perfect Hashing בעיה : נתונה קבוצה S של n מפתחות מתחום U השוואה ל - Hash : * טבלה קבועה (Hash רגיל - דינאמי.
© , ד"ר עמיר תומר מבוא להנדסת תוכנה תחזוקה - 1 תחזוקה והנדסה-מחדש Maintenance and Reengineering מקורות: S. R. Schach: Chapter 15 R. S. Pressman:
1 Data Structures, CS, TAU, Perfect Hashing בעיה: נתונה קבוצה S של n מפתחות מתחום U השוואה ל- Hash : * טבלה קבועה (Hash רגיל - דינאמי) * רוצים זמן קבוע.
משטר דינמי – © Dima Elenbogen :14. הגדרת cd ו -pd cd - הזמן שעובר בין הרגע שראשון אותות הכניסה יוצא מתחום לוגי עד אשר אות המוצא יוצא מתחום.
עקרון ההכלה וההדחה.
מערכות הפעלה ( אביב 2006) חגית עטיה © 1 סיכום הקורס.
תכנות מונחה עצמים Object Oriented Programming (OOP) אתגר מחזור ב' Templates תבניות.
מבוא למדעי המחשב תרגול 3 שעת קבלה : יום שני 11:00-12:00 דוא " ל :
מבוא למדעי המחשב, סמסטר א ', תשע " א תרגול מס ' 1 נושאים  הכרת הקורס  פסאודו - קוד / אלגוריתם 1.
© , ד"ר עמיר תומר שיטות בהנדסת תוכנה (234321) אודות הקורס - 1 שיטות בהנדסת תוכנה Introduction to Software Engineering מרצה : פרופ ’ שמואל.
Markov Decision Processes (MDP) תומר באום Based on ch. 14 in “Probabilistic Robotics” By Thrun et al. ב"הב"ה.
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #3 Internet Control Message Protocol (ICMP)
Safari On-line books. מה זה ספארי ספארי זו ספריה וירטואלית בנושא מחשבים היא כוללת יותר מ כותרים כל הספרים הם בטקסט מלא ניתן לחפש ספר בנושא מסוים.
Structure. מה לומדים היום ? דרך לבנות מבנה נתונים בסיסי – Structure מייצר " טיפוס " חדש מתאים כאשר רוצים לאגד כמה משתנים יחד דוגמאות : עובד : שם, טלפון,
פיתוח מערכות מידע Class diagrams Aggregation, Composition and Generalization.
מחסנית ותור Stacks and Queues. מחסנית Stack מחסנית - Stack ADT סוג של מערך מוגבל מהיר מאוד ותופס מעט זיכרון שימוש ב LIFO – LIFO (Last In, First Out)
Costs and Filters Dr. Avi Rosenfeld Department of Industrial Engineering Jerusalem College of Technology
Yaron Doweck Yael Einziger Supervisor: Mike Sumszyk 1.
מבוא לייצור ממוחשב - CIM מבוא. מטרות הקורס הקורס מיועד להקנות הבנה בטכנולוגיה, תכנון יישום ובקרה של מערכות ייצור ממוחשבות. הקורס ידון ביישום טכנולוגיות.
Visual Studio Team System Visual Studio Team System הילה להב רייס מנהלת תחום Life Cycle Management מנהלת תחום Life Cycle
שיאון שחוריMilOSS-il מוטיבציה  python זה קל ו C זה מהיר. למה לא לשלב?  יש כבר קוד קיים ב C. אנחנו רוצים להשתמש בו, ולבסס מעליו קוד חדש ב python.
דוח אמצע סמסטר אביב תשס"ב 2002 שם הפרויקט :סביבת בדיקה ל PCIX PCIX environment מנחה : איתי אדר מגישים : שמיל ניסימוב גוילי יואב הטכניון.
Formal Specifications for Complex Systems (236368) Tutorial #1
מערכות הפעלה מרצה: ערן טרומר סמסטר א' תשע"ב
מערכות בסיסי נתונים ספרות Database System Concepts/ Korth, Siberschatz
תכן UML in Design מקורות: S. R. Schach: Chapter 12
מבוא ל Maven אליהו חלסצ'י תכנות מתקדם תרגול מספר 3
הגדרת דרישות וניהולן Requirements Definition and Management
מנחה אקדמי : ד"ר יובל אלוביץ
תהליכים-דייאט: חוטים מוטיבציה חוטי משתמש וחוטי מערכת
Shell Scripts בסביבת UNIX
מבוא למערכות מידע פרק 1.
מחסנית ותור Stacks and Queues.
מערכות מידע ניהוליות היבט יישומי: מהי מערכת מידע מהו ארגון
פולימורפיזם מתקדם ממשקים בC# עריכה ועיצוב: קרן הרדי
Presentation transcript:

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 1 הגדרת דרישות וניהולן Requirements Definition and Management מקורות: S. R. Schach: Chapter 9 R. S. Pressman: Chapter 11

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 2 שיטות בהנדסת תוכנה - תוכנית הקורס מבוא מודלים של מחזור חיי תוכנה הגדרת דרישות וניהולן ניתוח מונחה - עצמים תכן אימות ותקפות קידוד ובדיקות יחידה מימוש ושילוב אחזקה והנדסה מחדש הבטחת איכות תוכנה

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 3 מה עומד על הפרק? היכן נמצאות הדרישות, ומה הקשר לאנליזה?היכן נמצאות הדרישות, ומה הקשר לאנליזה? מטרת שלב הדרישותמטרת שלב הדרישות תכונות הדרישותתכונות הדרישות דפוס קבוע לדרישות: Volereדפוס קבוע לדרישות: Volere טכניקות למיצוי דרישותטכניקות למיצוי דרישות אב-טיפוס מהיראב-טיפוס מהיר סיפורי משתמשסיפורי משתמש מדריך למשתמש כמסמך דרישותמדריך למשתמש כמסמך דרישות

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 4 היכן נמצאות הדרישות? הדרישות מתפתחות תוך כדי תכנוןהדרישות מתפתחות תוך כדי תכנון כל שלב בפיתוח:כל שלב בפיתוח: –עונה על דרישות השלבים הקודמים –מציב דרישות לשלבים הבאים תוכנה בונים כמו בית... (ראה להלן)תוכנה בונים כמו בית... (ראה להלן) –דרישות הלקוח –דרישות הארכיטקט –דרישות המהנדס הדרישות נמצאות בתוך התוכניות לביתהדרישות נמצאות בתוך התוכניות לבית –כתובות בשפה המובנת לאנשי המקצוע... –...ולעיתים גם ללקוח בפרק זה נעסוק בעיקר בדרישות הלקוח

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 5 איך בונים בית? דרישות הלקוח : - דרישות מגורים - דרישות שירותים - דרישות חזות - אופציות עתידיות ארכיטקטורה ומפרט : - תכנית קירות, רצפות, גגות - תכנית חזיתות - תכנית נקודות חשמל ומים - תכנית פתחים, מדרגות תכנון : - תכנית קונסטרוקציה - תכניות אינסטלציה ( חשמל, מים, ביוב...) בניה : בית דרישות מענה

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 6 תוכנה בונים כמו בית... דרישות הלקוח : - דרישות פונקציונליות - דרישות ביצועים - דרישות שימוש - אופציות עתידיות מפרט ואנליזה : - מודולים לוגיים - ממשקים - ישויות מידע - קונספט הפעלה תכן : - מודולים פיזיים - מבני נתונים - אלגוריתמים קידוד : תוכנה דרישות מענה

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 7 מטרת שלב הדרישות יצירת תשתית למפרט התוכנה ע"פ צרכי הלקוחיצירת תשתית למפרט התוכנה ע"פ צרכי הלקוח –הגדרת צרכי הלקוח –הגדרת יכולות המוצר והתנאים בהם נדרש לעמוד –הקצאת דרישות המערכת לתוכנה –הבנה משותפת בין הלקוח למפתח יצירת בסיס לניהול ולמעקב אחר הפיתוחיצירת בסיס לניהול ולמעקב אחר הפיתוח –מטריצת מעקב דרישות (Requirement Traceability Matrix) יצירת בסיס לבדיקת המוצר ואיכותויצירת בסיס לבדיקת המוצר ואיכותו

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 8 תכונות הדרישות חד-משמעיות (lack of ambiguity)חד-משמעיות (lack of ambiguity) –לא סביר שמוצר, אשר הדרישות לגביו ניתנות לפירוש באופנים שונים, עונה על דרישות הלקוח. שלמות (completeness)שלמות (completeness) –למרות שאי אפשר לחזות את כל הדרישות העתידיות, יש לפרט לפחות את כל הדרישות הנוכחיות. עקביות (consistency)עקביות (consistency) –לא ניתן לממש מוצר בעל דרישות הסותרות זו את זו –זיהוי של סתירות מאפשר "מסא ומתן" ליישב את הבעיה –יש גם "התנגשויות" בדרישות המחייבות העדפה של דרישה א' על פני ב' והחלשה של ב'

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 9 תכונות הדרישות (המשך) עקבות למקור (traces to origin) וזיהוי ייחודי לדרישהעקבות למקור (traces to origin) וזיהוי ייחודי לדרישה –זיהוי מקורה של כל דרישה דרישות מפורשות (explicit) דרישות נגזרות (derived) הימנעות מתכן (avoid design)הימנעות מתכן (avoid design) –מפורטות ככל שיהיו, הדרישות הן עדיין רק דרישות. כל קביעה מפורשת של רכיב, אלגוריתם וכו' שייכת לתכן. סבירות לממש: ניתן לבניה במשאבים המוצעיםסבירות לממש: ניתן לבניה במשאבים המוצעים

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 10 גישה אפשרית: Volere מה מבנה הדרישות ומה הן מכילות?מה מבנה הדרישות ומה הן מכילות? דפוס קבוע של 26 סעיפים ראשייםדפוס קבוע של 26 סעיפים ראשיים מגבלות (constraints) למוצר: עובדות והנחותמגבלות (constraints) למוצר: עובדות והנחות דרישות פונקציונליותדרישות פונקציונליות דרישות לא-פונקציונליות (איכויות)דרישות לא-פונקציונליות (איכויות) שאלות חשובות לפרויקט (issues)שאלות חשובות לפרויקט (issues)

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 11 מבוא ומגבלות כלליות מבוא ומגבלות כלליות ייעוד המוצרייעוד המוצר –רקע לפרויקט, תיאור הבעיה –מוטיווציה –המטרה (במשפט ) בעלי ענין ומשתמשיםבעלי ענין ומשתמשים –מי ישלם? –מי יאשר את איכות המוצר ועמידה בדרישות? –מי ישתמש במוצר ? –רצוי לדרג סוגי משתמשים

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 12 נקודות מבט (Viewpoints) ובעלי ענין (Stakeholders) ניתן לארגן את הדרישות דרך נקודות מבטניתן לארגן את הדרישות דרך נקודות מבט כוללים לפחות:כוללים לפחות: –לקוח –משתמש –מפתח\ מתחזק עוזר בחלוקה פונקציונלית, וגם הבנה כללית כבסיס לאירגון דרישותעוזר בחלוקה פונקציונלית, וגם הבנה כללית כבסיס לאירגון דרישות דוגמה: מערכת לכספומטדוגמה: מערכת לכספומט –בעל חשבון (של הבנק, של בנק אחר) –פקיד (רגיל, אחראי מחלקה, מנהל סניף,....)

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 13 מגבלות למוצר מערכת ההפעלה וסביבה נתונהמערכת ההפעלה וסביבה נתונה ביזור הנובע מהבעיהביזור הנובע מהבעיה – כספומט ומרכז בקרה לבנק –מונה חשמל בכל בית מערכות COTS קיימות שיש לשלבמערכות COTS קיימות שיש לשלב ציוד: המערכת תותקן על Palmציוד: המערכת תותקן על Palm לוח זמנים: חייב לצאת לשוק לפני החגיםלוח זמנים: חייב לצאת לשוק לפני החגים משאבים: כסף, כוח אדם,....משאבים: כסף, כוח אדם,....

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 14 שמות והגדרות, ועובדות חשובות מילון מונחים מוסכם (על ידי ה-stakeholders )מילון מונחים מוסכם (על ידי ה-stakeholders ) מבוסס על מילון לתחום ( (IEEE standardמבוסס על מילון לתחום ( (IEEE standard בינתיים: רק למונחים בדרישותבינתיים: רק למונחים בדרישות יורחב בשלב התיכנוןיורחב בשלב התיכנון עובדות שיכולות להשפיע, אך אינם בסעיפים אחריםעובדות שיכולות להשפיע, אך אינם בסעיפים אחרים –הפרויקט הקודם למימוש מערכת כזו נכשל ונסגר אחרי חצי שנה

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 15 הנחות וסברות אינן עובדות, אך אולי יהיו נכונות בעתידאינן עובדות, אך אולי יהיו נכונות בעתיד חשוב לגלות ולרשום הנחות "סמויות" כדי למנוע אי-הבנות בפיתוחחשוב לגלות ולרשום הנחות "סמויות" כדי למנוע אי-הבנות בפיתוח –סברות על יכולות המשתמשים –הנחות על יכולות של תוכנות תומכות עתידות

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 16 דרישות פונקציונליות גבולות המוצר: מה בפנים ומה בחוץגבולות המוצר: מה בפנים ומה בחוץ –כולל רשימת מאורעות שהמוצר מגיב אליהם תיאור דרישות לכל פעולה של המוצרתיאור דרישות לכל פעולה של המוצר לכל דרישה כזו יש גם fit criterion המאפשר לבדוק אם נעמוד בדרישה, במימושלכל דרישה כזו יש גם fit criterion המאפשר לבדוק אם נעמוד בדרישה, במימוש –יעמוד בבדיקות מקיפות ובדיקות beta לכל פעולה

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 17 דרישות לא-פונקציונליות דרישות מראה ו"אווירה"דרישות מראה ו"אווירה" –מיועד לילדים: צבעוני וידידותי לגיל המטרה –ישתמש בצבע הרגיל של החברה המזמינה דרישות נוחיות השימושדרישות נוחיות השימוש –מיועד גם למשתמשים שאינם דוברי אנגלית רהוטה –קל ללמידה ראשונית –ה-fit criterion יקבע איך נבדוק (לדוגמה, בניסוי) דרישות ביצועדרישות ביצוע –מהירות תגובה –זמן בין נפילות –דיוק החישובים

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 18 דרישות לא-פונקציונליות (המשך) דרישות הפעלהדרישות הפעלה –תנאים מיוחדים בהפעלה: חוסר אור, יופעל בחוץ –יותאם למגבלות והנחות, ולדרישות נוחיות השימוש דרישות על אחזקה וניידות (portability)דרישות על אחזקה וניידות (portability) –כל כמה זמן צפויה גירסה חדשה? –האם מדובר בקו מוצרים (product line) ? –האם צפויה ורזיה ל-Mac ? בטחון ופרטיותבטחון ופרטיות –למי מותרת גישה לאיזה חלק מהמידע? –דרישות לביקורת כספים חיצונית –האם יש צורך בהגנה מווירוסים וחדירות?

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 19 דרישות לא-פונקציונליות (המשך) דרישות פוליטיות ותרבותיותדרישות פוליטיות ותרבותיות –יחסים בתוך החברה המזמינה –סטנדרטים מחייבים –רגישות לפניה בלשון זכר\נקבה בממשק למשתמש דרישות החוקדרישות החוק –שמירת הפרטיות –גישה למידע ממשלתי –אחריות לנזק אפשרי –דרישות לבדיקה מיוחדת ומעמיקה (פיקוח לכורים גרעיניים, בקרה למיכשור רפואי)

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 20 שאלות חשובות לפרויקט (issues) שאלות פתוחות שיש לברר בהמשךשאלות פתוחות שיש לברר בהמשך COTS קיימים לבעיה או חלקים ממנהCOTS קיימים לבעיה או חלקים ממנה בעיות שיווצרו על ידי המוצרבעיות שיווצרו על ידי המוצר משימות וסוג תהליך הפיתוח הצפוימשימות וסוג תהליך הפיתוח הצפוי מעבר (cutover) : איך נעביר מידע או נוהלים קיימים להקשר המוצר החדש?מעבר (cutover) : איך נעביר מידע או נוהלים קיימים להקשר המוצר החדש? סכנות (risks) : זיהוי, ותוכנית חירום לחלקןסכנות (risks) : זיהוי, ותוכנית חירום לחלקן הערכת מחירהערכת מחיר תיעוד: מה ומתיתיעוד: מה ומתי בהמתנה: דרישות שלא יופיעו במוצר בשלב זהבהמתנה: דרישות שלא יופיעו במוצר בשלב זה

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 21 טכניקות למיצוי דרישות לקוח (requirements elicitation) ראיוןראיון עבודה בצוות משותףעבודה בצוות משותף מיצוי מטקסט כתובמיצוי מטקסט כתוב שימוש ב-CASEשימוש ב-CASE בניית אבטיפוס מהירבניית אבטיפוס מהיר סיפורי משתמשסיפורי משתמש כתיבת "מדריך למשתמש"כתיבת "מדריך למשתמש"

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 22 מיצוי דרישות מתוך טקסט כתוב מסמך בסיסמסמך בסיס –לדוגמה: RFP = Request for Proposal הוצאת משפטי מפתח לתוך רשימההוצאת משפטי מפתח לתוך רשימה פירוק המשפטים לדרישות בדידותפירוק המשפטים לדרישות בדידות קביעת מאפיינים לדרישותקביעת מאפיינים לדרישות מיון והקצאהמיון והקצאה

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 23 CASE לניהול דרישות RequisitePro ® (Rational Software Co.) –מיצוי דרישות מתוך טקסט בעותק-רך –בניית מאגר דרישות –טבלת מעקב לדרישות מקור –עץ דרישות –חיפוש ושליפה לפי שאילתות –ניהול ומעקב אחר מילוי הדרישות - עבודת צוות –שילוב עם כלי ניתוח ותכן

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 24 ® RequisitePro - סימון ויצירת דרישות Administrative Functions Banking Information [ PR6 The QBS system shall allow updates to customer information only in the Customer Information screen. ] [ PR16 All other screens shall have customer information updated from the Customer Information Screen. ] [ PR17 All balance information shall be updated systematically ] Reports [ PR7 The QBS system shall provide the following reports: ] Report: Complete customer history per account. Report: Customer demographic report. Report: Customer listing with options to sort by, name, company, interest rate, and origination date. מתוך “The Learning Project” RequisitePro Evaluation Report: Complete customer history per account.

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 25 ® RequisitePro - רישום דרישה מאפיינים פרטים

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 26 ® RequisitePro - הגדרת סוגי דרישות ומאפייניהם מאפייני דרישותמאפייני דרישות –קדימות (priority) –סטטוס –קושי –יציבות –...

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 27 ® RequisitePro - מטריצת הדרישות - מאפיינים

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 28 ® RequisitePro - מטריצת הדרישות - עץ מעקב

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 29 ® RequisitePro - מעקב דרישות נגזרות

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 30 אבטיפוס מהיר אמצעי לגיבוש ולהדגמת הדרישותאמצעי לגיבוש ולהדגמת הדרישות אינו בא במקום דרישות כתובותאינו בא במקום דרישות כתובות מכיל פונקציות עיקריות הניתנות להדגמהמכיל פונקציות עיקריות הניתנות להדגמה נבנה "בחופזה", בצורה אינטואיטיבית, ללא ניתוח ותכןנבנה "בחופזה", בצורה אינטואיטיבית, ללא ניתוח ותכן נכתב כיישום עובדנכתב כיישום עובד –בשפת היעד (זהירות מפיתוי לשימוש בפיתוח) –בשפה אחרת, קלה לכתיבה (לדוגמה: פרולוג) –במחולל יישומים (זהירות מציפיות-יתר)

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 31 דוגמה: מערכת לכספומט מכיל ממשקי משתמש ומסכי תגובותמכיל ממשקי משתמש ומסכי תגובות אין תקשורתאין תקשורת אין מסד נתונים אמיתיאין מסד נתונים אמיתי יכול לממש חישובים "מעניינים" לצורך הבנתםיכול לממש חישובים "מעניינים" לצורך הבנתם הלקוח "ישחק" ויגיבהלקוח "ישחק" ויגיב

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות עקרונות האבטיפוס המהיר - עקרונות האבטיפוס המהיר בשפת C (למימוש ב- ++C) או בשפת Javaבשפת C (למימוש ב- ++C) או בשפת Java ממשק משתמש אלפאנומרי פשוטממשק משתמש אלפאנומרי פשוט התפריטים כוללים את כל הפונקציותהתפריטים כוללים את כל הפונקציות לא כל הפונקציות ממומשותלא כל הפונקציות ממומשות –אבל התפריט מגיב לכל האופציות! בסיס מידע מתעדכן - ממומש ע"י קבציםבסיס מידע מתעדכן - ממומש ע"י קבצים בסיס מידע קבוע - בתוך התכניתבסיס מידע קבוע - בתוך התכנית

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 33 דרישות דרך סיפורי משתמש סיפור: תרחיש טיפוסי המכיל מספר קטן של פעולות המערכת בפיתוחסיפור: תרחיש טיפוסי המכיל מספר קטן של פעולות המערכת בפיתוח פעולה מובנת בעזרת סה"כ הסיפוריםפעולה מובנת בעזרת סה"כ הסיפורים מתקשר ל-use cases של UMLמתקשר ל-use cases של UML בשימוש נרחב ב-Extreme programmingבשימוש נרחב ב-Extreme programming דוגמה: מהלך של הוצאת סכום מזומנים מכספומט אחרי זיהוי ובירור יתרהדוגמה: מהלך של הוצאת סכום מזומנים מכספומט אחרי זיהוי ובירור יתרה

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 34 דרישות דרך "מדריך למשתמש" כותבים הוראות לשימוש במערכת, לפני שיש מערכת!כותבים הוראות לשימוש במערכת, לפני שיש מערכת! מכיל: תיאור של כל פעולה אפשרית, ותיאור התוצאות של כל פעולה\בקשה.מכיל: תיאור של כל פעולה אפשרית, ותיאור התוצאות של כל פעולה\בקשה. כמה "דוגמאות שימוש" טיפוסיותכמה "דוגמאות שימוש" טיפוסיות נקרא "אבטיפוס לעניים" (מאפשר תגובת הלקוח ותיקון אי-הבנות במחיר נמוך)נקרא "אבטיפוס לעניים" (מאפשר תגובת הלקוח ותיקון אי-הבנות במחיר נמוך) ישמש בסיס למנגנון Help אך בלי חיפושישמש בסיס למנגנון Help אך בלי חיפוש

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 35 היכן נמצאות הדרישות? היכן נמצאות הדרישות? מטרת שלב הדרישות מטרת שלב הדרישות תכונות הדרישות תכונות הדרישות דפוס לדרישות: Volere דפוס לדרישות: Volere טכניקות למיצוי דרישות טכניקות למיצוי דרישות אב-טיפוס מהיר אב-טיפוס מהיר סיפורי משתמש סיפורי משתמש מדריך למשתמש מדריך למשתמש אז מה היה לנו...?

© , ד"ר עמיר תומר מבוא להנדסת תוכנה דרישות - 36 וכעת נעבור ל... ניתוח OO