JOKOPOST | עיתון המאמרים והבלוגים המוביל בישראל

facebook twitter linkedin
  • ראשי » 
  • IT
  •  » תהליכים מובנים – מה זה ולמה זה חשוב למנתחי מערכות

תהליכים מובנים – מה זה ולמה זה חשוב למנתחי מערכות

ריקוד המכונה (2)

תהליכים מובנים – מה זה ולמה זה חשוב למנתחי מערכות ארז כספי
אפריל 30
19:30 2019

סדרת מאמרים זו פונה למנתחי מערכות ועוסקת באפיון טכני. המאמר הקודם בסדרה עסק בפסאודו קוד, ואם טרם קראתם אותו מומלץ להעיף בו מבט לפני שתמשיכו. במאמר זה, השני בסדרה, אדון בתהליכים מובנים.

אנחנו, העוסקים יום-יום בניתוח מערכות, יודעים שהתוצר של תהליך הניתוח כולל שני חלקים עיקריים: אפיון פונקציונאלי – מצב קיים, מיפוי משתמשים, דרישות מהמערכת החדשה, תיאור תהליכי העבודה ועוד; ואפיון טכני – ERD, אפיון ישויות, אפיון חוקים עסקיים ועוד. במאמר זה ברצוני לשתף אתכם בניסיוני בתהליכים מובנים ולהסביר איך לדעתי על מאפיין לשלב אותם בתוצר האפיון שלו ואיך בדיוק כותבים אותם.

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

– הגדרת תהליך מובנה ליצירת משימה

– הגדרת תהליך מובנה לחישוב תאריך יעד

– הגדרת חוקים עסקיים להפעלת התהליכים המובנים

בהגדרת התהליכים המובנים אני נותן שם לכל תהליך ומתאר אותו.

תהליך אחד הוא יצירת המשימה: זהו תהליך מובנה ליצירת משימה וקישורה ללקוח. הקלט של התהליך הוא מזהה לקוח (GUID), וזהו קלט חובה. הפלט: Lookup למשימה שנוצרה (GUID), והוא רשות. הלוגיקה של התהליך: יש ליצור משימה ולקשור אותה ללקוח שהתקבל כפרמטר, על פי חוקי ההשמה האלה:

– נושא (subject) = "משימת מעקב"

– לגבי lookup = (RegardingObjectID) לישות לקוח שהתקבלה כפרמטר

– תאריך יעד (dueDate) = יש להפעיל תהליך מובנה "חישוב תאריך יעד" עם הפרמטרים:

מזהה לקוח = lookup  לישות לקוח שהתקבלה כפרמטר

כלול ימי עבודה בלבד = כן

סוג משימה = 1 (מעקב)

סיבת מצב = חדש

תהליך שני הוא חישוב תאריך היעד, שהוא תהליך מובנה לחישוב תאריך יעד על פי מאפייני הלקוח וסוג המשימה. הקלט:

– מזהה לקוח (GUID) – קלט חובה

– כלול ימי עבודה בלבד (כן/לא) – קלט חובה

– סוג המשימה (int) – קלט חובה. ערכים לקלט זה: 1 עבור מעקב, 2 עבור משימה לביצוע

פלט:

– תאריך יעד (DateTime), רשות

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

תחת אפיון כל ישות יש להוסיף טבלת חוקים עסקיים – בדומה לצורת הכתיבה שתיארתי במאמר הקודם. למשל בדוגמה זו עלינו להגדיר חוק עסקי בישות לקוח. שם החוק הוא "יצירת משימת מעקב" והטריגר הוא Post create. תיאור החוק: יצירת משימת מעקב ללקוח. התהליך יכול לעבוד באופן א-סינכרוני. לוגיקה: יש להפעיל תהליך מובנה "יצירת משימה" עם הפרמטרים האלה:

מזהה לקוח = lookup לישות לקוח שהתקבלה כפרמטר

אם הפעולה עברה בהצלחה

Next sentence

אחרת

יש לרשום שגיאה בלוג. לא נדרש להציג הודעת שגיאה למשתמש

סוף אם

כמו כן, יש להוסיף סעיף כללי באפיון "תהליכים מובנים" ובסעיף זה לפרוט את כל התהליכים המובנים בהם נשתמש.

אם כן מהו "תהליך מובנה"? תהליך מובנה הינו קטע לוגיקה המבצע פעולה מוגדרת, קצרה ופשוטה ככל האפשר. הוא הופך את האפיון לפשוט יותר, ומאפשר לנו לקבץ לוגיקה וכך להשתמש בה שוב ושוב, ולכן חוסך לנו כתיבה. הוא גם מאפשר לנו להפעיל לוגיקה אחת ממקורות שונים – פעולות במערכת ואף ממשקים. כמו כן תהליך מובנה מאפשר לנו לעבור בצורה נקייה ומהירה יותר מהאפיון לפיתוח, ולבסוף, הוא מקטין את עבודת התחזוקה שתידרש מאיתנו באפיון.

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

בדוגמה שלנו כל תהליך מובנה כולל את המאפיינים האלה:

– שם: שם קצר ותמציתי לחוק העסקי

– קלט: פרמטרים שהתהליך יקבל. כל פרמטר יקבל שם, פורמט, חובה/לא חובה וערכים לפי הדרוש

– פלט: פרמטרים שהתהליך יחזיר. כל פרמטר יקבל שם, פורמט, חובה/לא חובה וערכים לפי הדרוש

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

במאמר הבא בסדרה אדון באפיון תהליכי אצווה.

על המחבר / המחברת

Avatar

ארז כספי

מנתח מערכות בכיר בחברת "מטריקס".

8 תגובות

  1. נ.
    נ. מאי 01 2019, 08:14
    כל הכבוד ארז

    אתה כמו תמיד עובד מסודר

    השב לתגובה
  2. ח.
    ח. מאי 02 2019, 12:31
    בעצם כללי ניסוח של מלל

    שמשמש מיפרט למתכנת שצריך להפוך את זה לתוכנה.

    השב לתגובה
    • ארז
      ארז מאי 03 2019, 07:02
      תהליך מובנה

      אכן. ואם ניקח את זה צעד קדימה אז תהליך מובנה מאפשר לנו לעשות שימוש חוזר בקטעי אפיון וכך להיות יעילים ומוכוונים יותר לפיתוח

      השב לתגובה
  3. חגי
    חגי מאי 05 2019, 18:34
    למה אין טכניקה ותקן מקצועי מוסכם

    וכולם עובדים לפי תקן זה?

    השב לתגובה
  4. א.
    א. אוגוסט 01 2019, 20:31
    איפה יש קורס טוב לניתוח מערכות?

    ואיזה הסמכה מקבלים?

    השב לתגובה
    • ארז
      ארז אוגוסט 02 2019, 06:47
      הסמכה

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

      השב לתגובה

כתוב תגובה

הוסף תגובה:

<

* אני מתחייב לפעול על פי תנאי השימוש באתר


התגובות יפורסמו לפי שיקול דעת העורך

כתבות נוספות

פוסטים אחרונים בIT

יתר המאמרים במדור
Do NOT follow this link or you will be banned from the site!