More Related Content
More from Prof. Amir Tomer (11)
Sw arch-2019-tomer
- 1. מערכות והנדסת תוכנה הנדסת
פרופ'תומר עמיר
תוכנה להנדסת המחלקה ראש
tomera@mx.kinneret.ac.il
תוכנה לארכיטקטורת השישי הישראלי הכנס-2019 1
©Prof.AmirTomer
picture source: http://www.abone.co.il
- 2. מערכות והנדסת תוכנה הנדסת
"גרמושקה"מהי?
•"גרמושקה"מבנים בארכיטקטורת בסיסי מונח מהווה
–להכנתה מפורטות הנחיות קיימות
•ה אישור ללא בניה היתר לקבל ניתן לא בישראל"גרמושקה"ע"לתכנון וועדה י
ובניה
–וצורתו מבנהו את וכשאישרתם הבית של עקרוני תכנון לאחר,האדריכלאמור
מספר להכין זה בשלבתכניותאקורדיון בצורת ומקופלות ביניהן המחוברות
(השם מכאן–גרמושקה)לקבל מנת עלבניה היתר*
©Prof.AmirTomer
תוכנה לארכיטקטורת השישי הישראלי הכנס-2019 2
* http://www.abone.co.il/articles/ גרמושקה-תכנית-הגשה-מהי-ומה-היא-כוללת/
picture source: http://https://chenmizarc.wixsite.com/
- 3. מערכות והנדסת תוכנה הנדסת
עתירת מערכת של ארכיטקטורה-תוכנה
Software-intensive System Architecture
•תכולה בה מהווה התוכנה אשר מערכת היא תוכנה עתירת מערכת
עיקרית
–תוכנהבמערכת
•במערכת כלשהו חלק בהפעלת המסייע מתוכנת מרכיב כל
–התוכנהכמערכת
•המחשב(ים)המרכזי(ים)התקשורת ורשת,לצורך התוכנה רכיבי בין המתאמים
כולה המערכת יעדי מילוי
©Prof.AmirTomer
תוכנה לארכיטקטורת השישי הישראלי הכנס-2019 3
Picture Source: http://www.thetruthaboutcars.com/wp-content/uploads/2011/08/car-network-arch.jpg
- 4. מערכות והנדסת תוכנה הנדסת
מערכת
תוכנה עתירת
ציודאנשים. . .
ארגון/עסק
פריט
חומרה
פריט
חומרה
פריט
תוכנה . . .. . .
מערכת
תוכנה עתירת
רכיב
תוכנה . . .
פריט
תוכנה
יחידת
תוכנה
. . . יחידת
תוכנה
רכיב
תוכנה
משתמשיהארגון
עניין בעלי
אחרים
ארכיטקטורה–איזורלהנדסת המערכת הנדסת בין ההשקה
התוכנה
©Prof.AmirTomer
תוכנה לארכיטקטורת השישי הישראלי הכנס-2019 4
תוכנההנדסת
הנדסתמערכת
איזורהארכיטקטורה
- 5. מערכות והנדסת תוכנה הנדסת
רק איננה ארכיטקטורה"מבנה"
•מהווה ארכיטקטורהעקרוניות החלטות של אוסףהתכן את המכוונות/של הפיתוח
בכללותה המערכת
–מבניות החלטות
•מרכיבים(ופונקציונאליים פיזיים)
•ממשקים(ופונקציונאליים פיזיים)
–התנהגותיות החלטת
•תהליכים/לוגיקה
•מרכיבים בין אינטראקציה(הממשקים באמצעות)
•המערכת של הדינאמית הפונקציונאליות(המערכת תהליכי)ע בעיקר מושגת"י
התוכנה
–חומרה על מותקנת תמיד התוכנה אבל
•תפקידהמבנהלתמוך הואבתהליכים
–היא המוצא נקודת ולכן
•"לעשות צריכה המערכת מה"
–ולא
•"בנויה להיות צריכה המערכת כיצד"
©Prof.AmirTomer
תוכנה לארכיטקטורת השישי הישראלי הכנס-2019 5
- 6. מערכות והנדסת תוכנה הנדסת
זרימה תרשים*מערכתית ארכיטקטורה לבניית
©Prof.AmirTomer
תוכנה לארכיטקטורת השישי הישראלי הכנס-2019 6
דרישות
ואילוצים
הגדרת
מערכת תהליכי
1.תהליכי
מערכת
הגדרת
תוכנה תהליכי
3.תהליכים
פונקציונאליים
הגדרת
פונקציונאליים ממשקים/
לוגי מבנה/פונק.
4.מבנה
פונקציונאלי
הגדרת
משולב מבנה
2.מבנה
פיזי
הגדרת
הפיזי המבנה
5.מבנה
משולב
מקרא
הארכיטקטורה בבניית פעולות
הארכיטקטורה תוצרי:ה מרכיבי"גרמושקה"
ביניים תוצרי
אנליזה
פונקציונאלית
רכיבים
פונקציונאליים
*מידע זרימת=input/output
לפעולות מחייב סדר אין לכך פרט
- 7. מערכות והנדסת תוכנה הנדסת
זרימה תרשים*מערכתית ארכיטקטורה לבניית
©Prof.AmirTomer
תוכנה לארכיטקטורת השישי הישראלי הכנס-2019 7
דרישות
ואילוצים
הגדרת
מערכת תהליכי
1.תהליכי
מערכת
הגדרת
תוכנה תהליכי
3.תהליכים
פונקציונאליים
הגדרת
פונקציונאליים ממשקים/
לוגי מבנה/פונק.
4.מבנה
פונקציונאלי
הגדרת
משולב מבנה
2.מבנה
פיזי
הגדרת
הפיזי המבנה
5.מבנה
משולב
מקרא
הארכיטקטורה בבניית פעולות
הארכיטקטורה תוצרי:ה מרכיבי"גרמושקה"
ביניים תוצרי
אנליזה
פונקציונאלית
רכיבים
פונקציונאליים
*מידע זרימת=input/output
לפעולות מחייב סדר אין לכך פרט
- 8. מערכות והנדסת תוכנה הנדסת
SUC-1מעלית הזמנת
ויעדים שחקניםנוסע:לנסיעה זמינה מעלית לקבל
ב"עואינטרסיםאין
Pre-conditions•מעלית של דלת נמצאת בה כלשהי בקומה נמצא הנוסע
•פעילה המערכת[Post-cond.שלUC"איתחולמערכת]"
Post-Conditions•הנוסע נמצא בה בקומה נמצאת פתוחה מעלית(יעד)
Trigger•הנוסעעליה כפתור על לוחץ/בקומה ירידה
MSS.1המערכתהלחיצה את קולטת
.2הכפתורנדלק
.3המערכתהמבוקש בכיוון הנוסעת מעלית מאתרת
.4המערכתלמעלית העצירה את מקצה
.5המעליתלקומה מגיעה
.6דלתנפתחת המעלית
.7כפתורכבה הקומה
הסתעפותא'חלופהבצעד2שלMSS:דלוק כבר הכפתור(מעלית הוקצתה כבר)
2א1.לצעד מעבר5
לדרישות עקיבות...
Use Case Model:המערכת תהליכי להגדרת מודל
©Prof.AmirTomer
תוכנה לארכיטקטורת השישי הישראלי הכנס-2019 8
Elevator System
«SUC»
1. Call Elevator
«SUC»
2. Ride Elevator
«SUC»
3. Rescue
User
Rescuer
Technician
«SUC»
4. System
Testing
«SUC»
5. Repair
«SUC»
6. Start Up
«SUC»
7. Shut Down Caretaker
«include»
«extend»
«include»
«extend»
Use-case Diagram
Use-case Specification
מערכת תהליכי
-הגדרה
גבולות
המערכת
סביבה
נעזרת/תומכת
"(שחקנים)"
מערכת תהליכי
-תרחישים פירוט
-אינטראקציה
- 9. מערכות והנדסת תוכנה הנדסת
זרימה תרשים*מערכתית ארכיטקטורה לבניית
©Prof.AmirTomer
תוכנה לארכיטקטורת השישי הישראלי הכנס-2019 9
דרישות
ואילוצים
הגדרת
מערכת תהליכי
1.תהליכי
מערכת
הגדרת
תוכנה תהליכי
3.תהליכים
פונקציונאליים
הגדרת
פונקציונאליים ממשקים/
לוגי מבנה/פונק.
4.מבנה
פונקציונאלי
הגדרת
משולב מבנה
2.מבנה
פיזי
הגדרת
הפיזי המבנה
5.מבנה
משולב
מקרא
הארכיטקטורה בבניית פעולות
הארכיטקטורה תוצרי:ה מרכיבי"גרמושקה"
ביניים תוצרי
אנליזה
פונקציונאלית
רכיבים
פונקציונאליים
*מידע זרימת=input/output
לפעולות מחייב סדר אין לכך פרט
- 10. מערכות והנדסת תוכנה הנדסת
Deployment Model:הפיזי המבנה להגדרת מודל
©Prof.AmirTomer
תוכנה לארכיטקטורת השישי הישראלי הכנס-2019 10
Central Server
«CSCI»
Server SW
Elevator Controller
«CSCI»
Elevator SW
«device»
Engine
«device»
Door
«device»
User Panel
«device»
Floor Panel
«device»
Technician Panel
«device»
Rescuer Panel
1..*
1..*
היקפיים התקנים
מחשבים
תווך/פרוטוקול
LAN / TCP/IP
תוכנה פריסת
ריבוי
פיזי ממשק
- 11. מערכות והנדסת תוכנה הנדסת
זרימה תרשים*מערכתית ארכיטקטורה לבניית
©Prof.AmirTomer
תוכנה לארכיטקטורת השישי הישראלי הכנס-2019 11
דרישות
ואילוצים
הגדרת
מערכת תהליכי
1.תהליכי
מערכת
הגדרת
תוכנה תהליכי
3.תהליכים
פונקציונאליים
הגדרת
פונקציונאליים ממשקים/
לוגי מבנה/פונק.
4.מבנה
פונקציונאלי
הגדרת
משולב מבנה
2.מבנה
פיזי
הגדרת
הפיזי המבנה
5.מבנה
משולב
מקרא
הארכיטקטורה בבניית פעולות
הארכיטקטורה תוצרי:ה מרכיבי"גרמושקה"
ביניים תוצרי
אנליזה
פונקציונאלית
רכיבים
פונקציונאליים
*מידע זרימת=input/output
לפעולות מחייב סדר אין לכך פרט
- 12. מערכות והנדסת תוכנה הנדסת
פונקציונאלית אנליזה:והקצאה פונקציות הקבצת
לרכיבים
©Prof.AmirTomer
תוכנה לארכיטקטורת השישי הישראלי הכנס-2019 12
תוכנה פריטי
(פיזיים)
תוכנה רכיבי
(פונקציונאליים)
יכולות מוקצות רכיב לכל/פונקציות
בפעילות המערכת מתהליכי שמוצו
הפונקציונאלית האנליזה
Elevator C&CCentral C&CMaintenanceAdministration
«CSCI»
:Elevator SW
«CSCI»
:Server SW
«manifest» «manifest»«manifest» «manifest»
- 13. מערכות והנדסת תוכנה הנדסת
זרימה תרשים*מערכתית ארכיטקטורה לבניית
©Prof.AmirTomer
תוכנה לארכיטקטורת השישי הישראלי הכנס-2019 13
דרישות
ואילוצים
הגדרת
מערכת תהליכי
1.תהליכי
מערכת
הגדרת
תוכנה תהליכי
3.תהליכים
פונקציונאליים
הגדרת
פונקציונאליים ממשקים/
לוגי מבנה/פונק.
4.מבנה
פונקציונאלי
הגדרת
משולב מבנה
2.מבנה
פיזי
הגדרת
הפיזי המבנה
5.מבנה
משולב
מקרא
הארכיטקטורה בבניית פעולות
הארכיטקטורה תוצרי:ה מרכיבי"גרמושקה"
ביניים תוצרי
אנליזה
פונקציונאלית
רכיבים
פונקציונאליים
*מידע זרימת=input/output
לפעולות מחייב סדר אין לכך פרט
- 14. מערכות והנדסת תוכנה הנדסת
Sequence Diagram:פונקציונאליים לתהליכים מודל
©Prof.AmirTomer
תוכנה לארכיטקטורת השישי הישראלי הכנס-2019 14
C: Central C&C Elev: Elevator C&C
Floor Panel: User
loop
[for all requested floors until MyFloor]
1.3
1.7 notify arrival(MyFloor)
1.0 request(MyFloor, MyDirection)
1.5 drive to(floor)
1.2 allocate(MyFloor)
1.6 open door()
1.8 switch button(off)
1.1 Elev= select elevator
(MyFloor, MyDirection): ElevID
1.4 switch button(on)
תוכנה רכיבי
(פונקציונאליים)
סביבה
חיצונית
אינטראקציה
א-סינכרונית
אינטראקציה
סינכרונית
בקרה מבנה
- 15. מערכות והנדסת תוכנה הנדסת
זרימה תרשים*מערכתית ארכיטקטורה לבניית
©Prof.AmirTomer
תוכנה לארכיטקטורת השישי הישראלי הכנס-2019 15
דרישות
ואילוצים
הגדרת
מערכת תהליכי
1.תהליכי
מערכת
הגדרת
תוכנה תהליכי
3.תהליכים
פונקציונאליים
הגדרת
פונקציונאליים ממשקים/
לוגי מבנה/פונק.
4.מבנה
פונקציונאלי
הגדרת
משולב מבנה
2.מבנה
פיזי
הגדרת
הפיזי המבנה
5.מבנה
משולב
מקרא
הארכיטקטורה בבניית פעולות
הארכיטקטורה תוצרי:ה מרכיבי"גרמושקה"
ביניים תוצרי
אנליזה
פונקציונאלית
רכיבים
פונקציונאליים
*מידע זרימת=input/output
לפעולות מחייב סדר אין לכך פרט
- 16. מערכות והנדסת תוכנה הנדסת
engine
control
door
control
Elevator C&C
elevator button
requests
direct
requests
start-up/shut-
down
engine
control
door
control
direct elevator
requests Central C&C
floor button
requests
direct
requests
direct elevator
requests
start-up/shut-
down
direct floor
requests
direct elevator
requests
Maintenance
Tech. Panel
Commands
direct floor
requests
direct elevator
requests
start-up/shut-down
Administration
caretaker commands
start-up/shut-down
Component Model:לוגי למבנה מודל/פונקציונאלי
©Prof.AmirTomer
תוכנה לארכיטקטורת השישי הישראלי הכנס-2019 16
ממשק
מסופק
ממשק
נדרש
תלות
ממשקים בין
ממשק
חיצוני
- 17. מערכות והנדסת תוכנה הנדסת
זרימה תרשים*מערכתית ארכיטקטורה לבניית
©Prof.AmirTomer
תוכנה לארכיטקטורת השישי הישראלי הכנס-2019 17
דרישות
ואילוצים
הגדרת
מערכת תהליכי
1.תהליכי
מערכת
הגדרת
תוכנה תהליכי
3.תהליכים
פונקציונאליים
הגדרת
פונקציונאליים ממשקים/
לוגי מבנה/פונק.
4.מבנה
פונקציונאלי
הגדרת
משולב מבנה
2.מבנה
פיזי
הגדרת
הפיזי המבנה
5.מבנה
משולב
מקרא
הארכיטקטורה בבניית פעולות
הארכיטקטורה תוצרי:ה מרכיבי"גרמושקה"
ביניים תוצרי
אנליזה
פונקציונאלית
רכיבים
פונקציונאליים
*מידע זרימת=input/output
לפעולות מחייב סדר אין לכך פרט
- 18. מערכות והנדסת תוכנה הנדסת
/Floor Panel
/Technitian Panel
/Rescuer Panel
/Elevator Port
:Central Server
/Floor Panel
/Technitian Panel
/Rescuer Panel
/Elevator Port
start-up/ shut-down
:Administration
caretaker
commandsstart-up/ shut-down
direct floor
requests
direct elevator
requests
:Maintenance
Tech. Panel
Commands
direct floor
requests
direct elevator
requests
direct elevator
requests
:Central C&C
floor button
requests
direct requests
direct elevator
requests
start-up/shut-down
/Engine
/Door
/User Panel
/Server Port
:Elevator Controller
/Engine
/Door
/User Panel
/Server Port
engine control
door control
:Elevator C&Celevator button
requests
direct requests
start-
up/shut-
down
engine control
door control
«delegate»
«delegate»
«delegate»
«delegate»
«delegate»
«delegate»
«delegate»
«delegate»
«delegate»
«delegate»
«delegate»
Composite Model:משולב למבנה מודל
©Prof.AmirTomer
תוכנה לארכיטקטורת השישי הישראלי הכנס-2019 18
חומרה רכיב
פונקציונאלי רכיב
(תוכנה)
חיצוני ממשק
נדרש
חיצוני ממשק
מסופק
Port
פיזי קשר
(חיצוני)
לוגי קשר
(פנימי)
האצלה
delegation
- 19. מערכות והנדסת תוכנה הנדסת
המלאה הגרמושקה
©Prof.AmirTomer
תוכנה לארכיטקטורת השישי הישראלי הכנס-2019 19
Elevator System
«SUC»
1. Call Elevator
«SUC»
2. Ride Elevator
«SUC»
3. Rescue
User
Rescuer
Technician
«SUC»
4. System
Testing
«SUC»
5. Repair
«SUC»
6. Start Up
«SUC»
7. Shut Down Caretaker
«include»
«extend»
«include»
«extend»
Central Server
«CSCI»
Server SW
Elevator Controller
«CSCI»
Elevator SW
«device»
Engine
«device»
Door
«device»
User Panel
«device»
Floor Panel
«device»
Technician Panel
«device»
Rescuer Panel
1..*
1..*
engine
control
door
control
Elevator C&C
elevator button
requests
direct
requests
start-up/shut-
down
engine
control
door
control
direct elevator
requests Central C&C
floor button
requests
direct
requests
direct elevator
requests
start-up/shut-
down
direct floor
requests
direct elevator
requests
Maintenance
Tech. Panel
Commands
direct floor
requests
direct elevator
requests
start-up/shut-down
Administration
caretaker commands
start-up/shut-down
C: Central C&C Elev: Elevator C&C
Floor Panel: User
loop
[for all requested floors until MyFloor]
1.3
1.7 notify arrival(MyFloor)
1.0 request(MyFloor, MyDirection)
1.5 drive to(floor)
1.2 allocate(MyFloor)
1.6 open door()
1.8 switch button(off)
1.1 Elev= select elevator
(MyFloor, MyDirection): ElevID
1.4 switch button(on)
/Floor Panel
/Technitian Panel
/Rescuer Panel
/Elevator Port
:Central Server
/Floor Panel
/Technitian Panel
/Rescuer Panel
/Elevator Port
start-up/ shut-down
:Administration
caretaker
commandsstart-up/ shut-down
direct floor
requests
direct elevator
requests
:Maintenance
Tech. Panel
Commands
direct floor
requests
direct elevator
requests
direct elevator
requests
:Central C&C
floor button
requests
direct requests
direct elevator
requests
start-up/shut-down
/Engine
/Door
/User Panel
/Server Port
:Elevator Controller
/Engine
/Door
/User Panel
/Server Port
engine control
door control
:Elevator C&Celevator button
requests
direct requests
start-
up/shut-
down
engine control
door control
«delegate»
«delegate»
«delegate»
«delegate»
«delegate»
«delegate»
«delegate»
«delegate»
«delegate»
«delegate»
«delegate»
SUC-1מעלית הזמנת
ויעדים שחקניםנוסע:לנסיעה זמינה מעלית לקבל
ב"עואינטרסיםאין
Pre-conditions•מעלית של דלת נמצאת בה כלשהי בקומה נמצא הנוסע
•פעילה המערכת[Post-cond.שלUC"איתחולמערכת]"
Post-Conditions•הנוסע נמצא בה בקומה נמצאת פתוחה מעלית(יעד)
Trigger•הנוסעעליה כפתור על לוחץ/בקומה ירידה
MSS.1המערכתהלחיצה את קולטת
.2הכפתורנדלק
.3המערכתהמבוקש בכיוון הנוסעת מעלית מאתרת
.4המערכתלמעלית העצירה את מקצה
.5המעליתלקומה מגיעה
.6דלתנפתחת המעלית
.7כפתורכבה הקומה
הסתעפותא'חלופהבצעד2שלMSS:דלוק כבר הכפתור(מעלית הוקצתה כבר)
2א1.לצעד מעבר5
לדרישות עקיבות...
התהליכים הגדרת
בתהליכים התומכים המבנים
המבנים באמצעות התהליכים מימוש
- 20. מערכות והנדסת תוכנה הנדסת
ומסקנות סיכום
•של העקרוניות התכן החלטות אוסף את מכילים הגרמושקה רכיבי חמשת
תוכנה עתירת מערכת פיתוח
•גמישות ותאפשר שאפשר ככל יציבה תהיה שהארכיטקטורה רצוי
מקסימלית
–שונות תצורות
–הרחבות
–המשך דורות
–מוצרים קווי
–...
•ברורה להיות צריכה הארכיטקטורה,חד-ועקבית משמעית
–מודלים(שרטוטים)משוכללת בשפה,רק ולאblock diagramsו-flow charts
–מידול בכלי שימוש,ציור בכלי רק ולא
©Prof.AmirTomer
תוכנה לארכיטקטורת השישי הישראלי הכנס-2019 20
Editor's Notes
- אודות הקורס