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


מתודולוגית Rumbaugh OMT

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