קורס

ארכיטקטורת תוכנה במערכות מורכבותבהנחה לחברי האיגוד

מרצה‐ פרופ' עמיר תומר
 החל מ- 22/05/2018
3 מפגשים

הסדנא תתקיים ב:
יום ה' ה - 22.5.18
יום ג' ה - 29.5.18
יום ג' ה - 5.6.18

מטרת הסדנה היא להאיר ולחדד את פעילות ארכיטקט התוכנה, הלכה למעשה, ולהתנסות, דרך תרגול של case-studies מציאותיים, בתהליך של בניית ארכיטקטורת תוכנה למערכת מורכבת. הסדנה מורכבת מ-3 ימים (יום בשבוע) בחלוקה הבאה (התוכנית המפורטת – בהמשך):

  1. ארכיטקטורה במחזור החיים – חשיבותה, מהותה, תפקידי הארכיטקט ומהלך הפיתוח והתחזוקה של ארכיטקטורת התוכנה;
  2. בניית ארכיטקטורה פונקציונאלית, מבוססת מודלים, על בסיס מפרטי הדרישות;
  3. התאמת הארכיטקטורה למאפייני איכות מערכתיים (דרישות לא-פונקציונאליות, Quality Attributes), על בסיס תרחישי איכות ודפוסי ארכיטקטורה נבחרים.

הסדנה תלווה ב - case-study  מתגלגל, בתרגילים ייעודיים ובדיונים פתוחים. לפחות 30% מהזמן יוקדש לתרגול.

רקע

התוכנה מהווה כיום את לב-ליבן של מערכות מורכבות בכל התחומים. פרט להיותה התווך המקשר והמתאם בין פונקציות המערכת השונות, על התוכנה מוטלת האחריות לדאוג להיבטים לא-פונקציונאליים (מאפייני איכות) רבים, וביניהם אמינות (reliability), זמינות (availability), בטיחות (safety), בטחון המידע והגנה על הנתונים (cyber security), שימושיות (usability) ועוד. במציאות של פיתוח מוצרים חדשים על בסיס מוצרים קודמים ופיתוח קווי-מוצרים חשיבותה של ארכיטקטורת התוכנה המערכתית גדולה עוד יותר ובנייתה דורשת התייחסות להיבטים נוספים, כגון גידול (scalability), יכולת שינוי (modifiability), תחזוקתיות (maintainability) ועוד. בשנים האחרונות גברה המודעות של התעשייה לצורך במינוי מהנדסי תוכנה בכירים לתפקידי "ארכיטקט תוכנה" או "מהנדס מערכת תוכנה", המלווים את מחזור חיי המוצרים, יחד עם כל צוות הנדסת המערכת. כניסתן של טכנולוגיות מידע, כגון Big Data, Cloud ועוד למערכות מורכבות מחזקת עוד יותר את חשיבותה ומרכזיותה של ארכיטקטורת התוכנה במערכת.

בעולם קיימת פעילות מחקרית ותעשייתית רבה סביב נושא ארכיטקטורות תוכנה וניתן למצוא כיום מגוון של גישות, שיטות, כלים, דפוסי ארכיטקטורה ותכן הנותנים מענה ומסגרות פתרון למגוון רחב של סוגיות רלוונטיות. שפות המידול, ובראשן UML, מגשרות בין שיטות בניית הארכיטקטורה לבין מימושה בפועל.

 

תוכנית הסדנה

היום הראשון

ארכיטקטורה במחזור החיים של המערכת

8:45-9:00

התכנסות ופתיחה

9:00-10:30

  • מהותה וחשיבותה של ארכיטקטורת התוכנה במערכות מורכבות

  • ארכיטקט תוכנה (מהנדס-מערכת תוכנה) – כישורים, תפקידים ואחריות

10:30-11:00

הפסקת קפה

11:00-12:30

  • ההיבטים השונים וההשלכות השונות של ארכיטקטורת תוכנה

  • ארכיטקטורת תוכנה מבוססת-מודלים (Model-Based SW Architecture)

12:30-13:30

ארוחת צהריים

13:30-15:00

  • פעילות היצירה והאחזקה של ארכיטקטורת התוכנה במהלך מחזור חיי המערכת/המוצר:
    דרישות, תכן, מימוש, מסירה ותחזוקה

  • ארכיטקטורה בתהליך פיתוח אג'ילי

  • ארכיטקטורה בקווי-מוצרים

15:00-15:30

הפסקת קפה

15:30-17:00

  • קריטריונים לבחינה ולהערכה של ארכיטקטורה


היום השני

ממפרט דרישות לארכיטקטורה פונקציונאלית

8:45-9:00

התכנסות ופתיחה

9:00-10:30

  • הגדרת דרישות פונקציונאליות ותרחישי פעולה (use cases)

  • מיצוי הפונקציונאליות הנדרשת מתרחישי הפעולה של המערכת

10:30-11:00

הפסקת קפה

11:00-12:30

  • רבדים (tiers) לעומת שכבות (layers)

  • הקצאת פונקציונאליות לרבדים ולשכבות ובניית n-tier architecture

12:30-13:30

ארוחת צהריים

13:30-15:00

  • הגדרת רכיבים פונקציונאליים (component) וממשקיהם הפונקציונאליים (component model)

  • רכיבי שימוש (run-time) לעומת רכיבי מימוש (design-time)

15:00-15:30

הפסקת קפה

15:30-17:00

  • מימוש התרחישים הפונקציונאליים כאינטראקציה בין רכיבים (sequence diagram)

  • הגדרת ארכיטקטורת החומרה והקצאת רכיבים פונקציונאליים לרכיבי חומרה (deployment diagram)


היום השלישי

התאמת הארכיטקטורה למאפייני איכות מערכתיים Quality Attributes

8:45-9:00

התכנסות ופתיחה

9:00-10:30

  • מאפייני איכות מערכתיים ומשמעויותיהם

תרחישים וטקטיקות תגובה למאפייני איכות מערכתיים בשימוש (run-time): Performance, Availability, Security, Usability, Interoperability, ...

10:30-11:00

הפסקת קפה

11:00-12:30

  • תרחישים וטקטיקות תגובה למאפייני איכות מערכתיים במימוש (design-time):

Modifiability, Testability , Maintainability, ...

  • זיהוי הדרישות המשפיעות על הארכיטקטורה (Architecture-Significant Requirements = ASR) ומיצוי מאפיינים מערכתיים ממפרט הדרישות הפונקציונאליות

12:30-13:30

ארוחת צהריים

13:30-15:00

  • דפוסי ארכיטקטורה נבחרים (Architecture patterns) ושימושיהם

Pipes & Filters, MVC, Broker, Peer-to-Peer, Blackboard, Pub/Sub, Map-Reduce

  • ארכיטקטורה בענן (Cloud)

15:00-15:30

הפסקת קפה

15:30-17:00

  • העשרת הארכיטקטורה הפונקציונאלית בדפוסי ארכיטקטורה לצורך מענה ל- Quality Attributes מאפייני איכות מערכתיים

  • סיכום הסדנה

קהל יעד: ארכיטקטי תוכנה, מהנדסי מערכות תוכנה, מהנדסי מערכות רב-תחומיים העוסקים במערכות עתירות-תוכנה, מהנדסי תוכנה העוסקים בתכן.
מחירים ללא מע"מ קהל רחב חברי אילטם
מחיר 2,100 ש"ח 1,600 ש"ח

הרשמה מראש חובה !!!
דמי ההשתתפות כוללים: השתתפות ב - 3 ימי סדנא, תקציר ההרצאות, כיבוד וארוחות צהריים. 
מספר המשתתפים מוגבל. ביטול יתקבל בכתב בלבד. ביטול השתתפות אחרי 8.5.2018 ו/או אי הגעה ביום העיון יחויב בתשלום מלא.

הפעילות בוצעה ב - 22/05/2018

הרשמה אונליין

קהל רחבחברי INCOSE_IL
מחיר (לפני מע"מ) ₪2100 ₪1600