Presentation is loading. Please wait.

Presentation is loading. Please wait.

Software Requirements Analysis (SRS)

Similar presentations


Presentation on theme: "Software Requirements Analysis (SRS)"— Presentation transcript:

1 Software Requirements Analysis (SRS)
מטרות: לאפיין מה יבנה מבחינה פונקציונאלית לאפיין אלו בדיקות יאשרו את הפונקציונאליות של המערכת לאפיין מודל תכנון על של המערכת שלושה מסמכים יופקו בתום שלב זה: מסמך אפיון דרישות תוכנה (SRS - Software Requirements Specification) מסמך תכנון על של המערכת (High Level Design) מסמך מבחני קבלה של המערכת (ATP - Acceptance Test Plan) ניתוח מערכות מידע

2 Approaches to Conduction of SRS
ניתוח מובנה: (Structured Systems Analysis and Design - SSAD) רכיבי השיטה: תאור פונקציונלי היררכי באמצעות DFD , תאור ישויות המידע והקשרים ביניהם באמצעות ERD, תאור התנהגויות דינמיות באמצעות דיאגרמות מצבים ושימוש במילון נתונים לתאור המידע המאוחסן במערכת. ניתוח מונחה עצמים: (Object Oriented Analysis and Design - OOAD) ניתוח מערכות מידע

3 Data Flow Diagrams (DFD)
תהליכים (processes) מבצעים טרנספורמציה של המידע. ישויות (entities) הינם אובייקטים חיצוניים (למערכת המידע) המשמשים כמקור או יעד למידע. מאגרי מידע (data stores) הינם עצמים פסיביים השומרים את המידע (למשל, טבלאות או קבצים). זרימות מידע (data flows) מקשרים בין תהליכים וישויות/מאגרי מידע. מודל של מערכת ב- DFD מורכב מהיררכיה של דיאגרמות DFD ומילון נתונים (Data Dictionary). ניתוח מערכות מידע

4 DFD Symbols Processes transform data values
must have inputs and outputs hierarchical (Example: and are two processes under 1.2) specifications of the lowest-level processes are given in the Data Dictionary 1.2 Data Processing ניתוח מערכות מידע

5 DFD Symbols Data Stores Store values for later use
Data that enters a data store must eventually be used Do not change the data Described in the Data Dictionary Data Store read field ‘a’ ניתוח מערכות מידע write into field ‘a’ a a Data Store

6 DFD Symbols Entities External objects that produce/consume data
Entity Entities External objects that produce/consume data Serve as sources and sinks for data Actions of Entities (or between Entities) are outside the scope of the DFD Examples: Users outside systems Providers agencies (e.g., government) external devices ניתוח מערכות מידע

7 DFD Symbols Data flows conduct information Do not change the value passed Data flows: from an Entity/Data store to a Process, or from a Process to an Entity/Data store Described in the Data Dictionary Channel (עורק) is a union of several data flows with the same source, destination, and context. Flow-name ניתוח מערכות מידע channel-name

8 ניתוח מערכת באמצעות DFD
תרשים הקשר (Context Diagram) – משמש לתיאור הקשר של המערכת עם הסביבה (אובייקטים חיצוניים). DFD-0 – חלוקת המערכת לתהליכים עיקריים (תת מערכות). DFD-1 - תהליך ברמת DFD-0 מפוצץ לתתי-תהליכים עיקריים. וכך הלאה DFD-2, DFD-3, … מילון נתונים (Data Dictionary) - תיאור מפורט של מרכיבי המערכת (המופיעים בכל תרשימי ה- DFD), כולל תהליכים ברמתם הנמוכה ביותר, מאגרי מידע, וזרימות. ניתוח מערכות מידע

9 דוגמא לתרשים הקשר (Context Diagram)
מערכת מידע לוועד הבית וועד E2 דייר E1 I1 תעריפים ובקשות דיווח O1 דוחות I2 פרטי קבלן נבחר ותשלומים I3 פרטים ותשלומים O2 קבלות ותזכורות I4 בקשת עבודת תיקון O3 דוח ביצוע עבודה I5 פרטי מועמד והצבעה O4 תוצאות הצבעה I7 הצעת מחיר O5 הסכמי עבודה והודעות תשלום O6 בקשת הצעה I6 בקשת תשלום ניתוח מערכות מידע קבלן E3

10 דוגמא ל- DFD 0 דייר וועד קבלן מאגר דיירים D1/ מאגר תשלומים D2 E1 E2 E3
I3 פרטים ותשלומים I1 תעריפים ובקשות דיווח o2קבלות ותזכורות O1.1 דו"ח יתרות חוב O7פרטי דיירים I8 נתוני דיירים O8 פרטי תשלום I9פרטי חוב דייר E1 וועד E2 קבלן E3 1 ניהול תשלומי דיירים 2 ניהול עבודות אחזקה 3 ניהול בחירות לוועד I10 תשלום שבוצע I4בקשת עבודת תיקון O3 דוח ביצוע עבודה I7 הצעת מחיר O5 הסכמי עבודה והודעות תשלום I2 פרטי קבלן נבחר ותשלומים O1.2 דוח הצעות O9 תשלום לקבלן I5.1פרטי מועמד I5.2פרטי הצבעה o4תוצאות הצבעה I11 פרטי מצביע ופרטי מועמד O10 סטטוס הצבעה O6בקשת הצעה O1.3 דוח התקדמות I6 בקשת תשלום ניתוח מערכות מידע

11 כללי DFD - כללי יש להשתמש בשמות משמעותיים לכל רכיבי המערכת.
תהליכים מתוארים ע"י פעלים, לעומת זרימות מידע שהם שמות עצם. זרימות מידע מעבירות מידע, ובפרט אינן פיסיות ואינן מעבירות תווי בקרה. איזון קלט/פלט - יש לוודא שכל נתון שנמסר ליעד חיצוני מעודכן על ידי תהליך כלשהו ושבכל נתון שמתקבל מיעד חיצוני נעשה שימוש (אין קלט מיותר). ניתוח מערכות מידע

12 כללי DFD - ישויות ישויות יופיעו בתרשים כמקורות מידע ו/או כיעדים סופיים למידע. ישות אינה מתחברת ישירות למאגרים או לישויות אחרות. כל הנתונים העוזבים או הנכנסים לישות חייבים להיות מעובדים (לעבור דרך תהליך). ניתן לחזור על שם ישות אם הכוונה לאותה הישות. ישויות חוזרות מסומנות ב- / ניתוח מערכות מידע

13 כללי DFD – זרימות זרימות (עורקים) מייצגים מבנים לוגיים של נתונים (קבוצות של מבנים לוגיים של נתונים) הזורמים אל ומתוך תהליכים. נתונים אינם זורמים ממאגר אחד לשני, ממאגר לישות, או מישות למאגר מבלי שמעבדים אותם. שמות זרימות (עורקי) המידע הינם יחידים ואין לחזור עליהם. ניתן להשתמש בקוד כדי להבחין ביניהם. זרימות (עורקי) נתונים שונים עשויים להיות מתוארים ע"י אותם מבני נתונים. ניתוח מערכות מידע

14 כללי DFD – מאגרי מידע מאגר מתאר מבנה נתונים לוגי
Logical Data Structure)) למבנה הפיסי של מאגר אין מתייחסים בתרשים. מאגר יופיע לראשונה כאשר הוא נדרש לקשר בין תהליכים. ניתן להציב מאגר שוב ושוב כנדרש. מאגרים חוזרים מסומנים ע"י /. ניתוח מערכות מידע

15 כללי DFD - תהליכים תהליך איננו יוצר פלט בלי קלט ואיננו בולע קלט.
תהליך חייב להיות בעל היכולת ליצר את הפלטים מהקלטים הנכנסים אליו. שמות התהליכים הם יחידים ובלתי חוזרים. תהליכים מפרטים מה? (מהם הקלטים?מהם הפלטים? ממי מתקבלים? ועל מה משפיעים?) ולא איך? (כיצד הקלטים הופכים לפלטים? מהי הטרנספורמציה?) ניתוח מערכות מידע

16 כללי DFD - פיצוץ ניתן לפצל תהליך למספר תתי תהליכים ע"י פיצוץ.
בעת ביצוע פיצוץ יש לדאוג לאיזון בקלטים ובפלטים ברמות השונות. מפוצצים תהליך כדי לתארו ביתר פרוט. בעזרת פיצוץ תהליכים מייצרים היררכיה של תרשימים מהכלל אל הפרט (Top Down). תהליך הפיצוץ נמשך עד שמגיעים לפירוט הרצוי. בעת בצוע פיצוץ תהליך ניתן לפצל עורק לזרימותיו. ניתוח מערכות מידע

17 1 DFD של ניהול תשלומי דיירים
מערכת וועד הבית 1 DFD של ניהול תשלומי דיירים מאגר דיירים D1/ מאגר תשלומים D2 I3.1פרטי דייר I1.1 תעריף O7 פרטי דיירים דייר E1 וועד E2 1.1 קלוט פרטי 1.2 קלוט תשלום 1.3 הפק דוח תקופתי I3.2 פרטי תשלום O2.1קבלה O2.2תזכורת I8.2שם חייב I8.1תעריף I9.1 חוב O8פרטי תשלום I1.2 בקשת דווח תקופתי O1.1דו"ח יתרות חוב I9.2חובות ניתוח מערכות מידע

18 1 DFD של ניהול עבודות אחזקה
מערכת וועד הבית 1 DFD של ניהול עבודות אחזקה הצעות עבודה I16 פרטי O13פרטי הצעת עבודה מאגר עבודות D3 מאגר קבלנים D4 I4בקשת עבודת תיקון O11פרטי בקשה דייר E1 וועד /E2 2.1 קלוט בקשה לביצוע עבודה 2.2 קלוט הצעות 2.4 בצע עבודה O3דוח ביצוע עבודה מאגר תשלומים D2 I15נתוני בקשה קבלן E3 O6 בקשת הצעה I7 הצעת מחיר 2.3 בחירת קבלן I12עבודות שטרם בוצעו O1.2 דוח הצעות I2.1 פרטי קבלן נבחר O1.3דוח התקדמות I2.2פרטי תשלום O5.2הודעת תשלום O5.1 הסכם עבודה O9תשלום לקבלן O12 קבלן נבחר I14קבלן מבצע I6בקשת תשלום I10תשלום שבוצע I14מחיר העבודה I13כתובת ניתוח מערכות מידע

19 מילון נתונים מילון הנתונים מתאר את: התהליכים ברמה הנמוכה ביותר, זרימות (אפיקי) המידע, מאגרי המידע והנתונים. מאגרי מידע – ניתן לתארם בצורת טבלאות 3NF. לדוגמא: דיירים: מס' דירה, תעריף, ת.ז., תאריך הצבעה אחרון. ת.ז., שם פרטי, שם משפחה. תשלומי דיירים: מס' דירה, חודש, סכום, ת. תשלום. תשלומי קבלנים: מס' תשלום, מס' עבודה, תאריך, סכום, תאור תשלום. עבודות: מס’ עבודה, תאור, מס' דירה, מס' קבלן. קבלנים: מס' קבלן, שם קבלן, כתובת. מס' קבלן, מס' עבודה, מחיר, מס' עבודה. מועמדים: ת.ז., תאריך בחירות, מס. תומכים, סטטוס בחירה. מפתח סומן ע"י קו תחתון, אינדקס - ע"י אותיות מודגשות. ניתוח מערכות מידע

20 מילון נתונים זרימות מידע – יופיעו השדות שמרכיבים את הזרימה (שדה יכול להופיע במספר זרימות). דוגמאות: פרטי דייר: מס' דירה, שם משפחה, שם פרטי, ת.ז. פרטי דיירים: ת.ז., מס' דירה, שם משפחה, שם פרטי, תעריף. אם ניתן לקלוט למאגר בבת אחת מספר דיירים נסמן מספר דיירים נסמן בתוך סוגריים את הנתונים החוזרים {....}. פרטי תשלום: מס' דירה, {חודש, סכום}. נתון (שדה) – שם, הגדרה (הסבר), שם חלופי, אורך, סוג, תחום. ניתוח מערכות מידע

21 מילון נתונים (המשך) תהליכים – פרוט הרמה הנמוכה ביותר של תהליכים.
בשפה מובנית, לדוגמה: קלוט פרטי דייר (תהליך 1.1): קלוט פרטי דייר (ת.ז., מס' דירה, שם משפחה, שם פרטי) מהדייר. קלוט תעריף מהוועד. צור רשומות חדשות במאגר דיירים עם הערכים מס' דירה, ת.ז., שם משפחה, שם פרטי ותעריף. קלוט תשלום (תהליך 1.2): קלוט פרטי תשלום (מס' דירה + חודש + סכום) מהדייר אם הדייר לא שילם את החוב לפי מאגר תשלומים: שלוף את התעריף המתאים לדייר (לפי מס' דירה) ממאגר דיירים אם תעריף = סכום בצע: צור רשומה חדשה בתשלומים עם הערכים מס' דירה חודש וסכום, והדפס קבלה ללקוח. ניתוח מערכות מידע

22 מילון נתונים (המשך) תהליכים – פרוט הרמה הנמוכה ביותר של תהליכים.
עץ החלטה Pub. Discount Gross Order Value LT Min GE Min Earliest Order GT 12 Days Old Order LE No Pub. Write Purch. Req. No Action Calc. Discount Write Purch. Req. ניתוח מערכות מידע

23 מילון נתונים (המשך) תהליכים – פרוט הרמה הנמוכה ביותר של תהליכים.
תאור טבלאי של עץ החלטה Publisher Discount Type Gross Order Value Earliest Order Date Action D: Gives Discount N: No Discount Available LT Min Order- Value GT 12 Days Old LE 12 N/A GE Min- Write Purch. Req. No Action Calc. Discount ניתוח מערכות מידע

24 מילון נתונים (המשך) D N LT GE - GT LE X
תהליכים – פרוט הרמה הנמוכה ביותר של תהליכים. טבלת החלטה C1: Publisher Disc. Type D N C2: Order Val. V. Minimum LT GE - C3: Earliest Order GT 12 Days GT LE A1: Calculate Discount X A2: Write Purchase Req. A3: No Action ניתוח מערכות מידע

25 חסרונות שיטת DFD התרשים מתאר תהליכים וזרימות נתונים - הוא נועד לעזור בניתוח המערכת, אך מוגבל בשלב התכן. אין מתייחסים בתרשים לתדירות בה מתרחשים התהליכים או לסדרם. אין התייחסות למזניק (trigger) התהליכים ולתנאי הביצוע. יש ליצור מילון הנתונים לכל התהליכים, המאגרים וזרימות המידע. אין פירוט של מבנה המערכת (קשרי הגומלין בין ישויות במערכת), אלא דרך טבלאות. ניתוח מערכות מידע => שימוש ב- DFD (בשילוב ERD) בשלבי האפיון והניתוח

26 Entity Relationship Diagram (ERD)
ישות (entity) ב- ERD הינה דבר מוחשי או תפיסתי שיש לו קיום בפני עצמו. לישות ישנן תכונות (attributes) שמאפיינות אותה. חלק מתכונות אלו מהוות מפתח (מזהות יישות ספציפית באופן חד ערכי). קשר (relationship) מבטא תלות סמנטית בין ישויות. הוא יכול להתאפיין ע"י תכונות ו/או ריבוי (עם כמה ישויות ספציפיות מסוג 1 יכולה ישות ספציפית מסוג 2 להיות מקושרת באמצעות קשר זה?) ניתן להשתמש ב- ERD כדי לאפיין את מאגרי המידע של ה- DFD והקשרים ביניהם (מפתחות זרים). ניתוח מערכות מידע


Download ppt "Software Requirements Analysis (SRS)"

Similar presentations


Ads by Google