בכמה מילים
 אתה נמצא ב   [ דף הבית | למה להשתמש | בכמה מילים ]


הנדסת תוכנה בכמה מילים

 

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

 


הנדסת מערכות ממוחשבות

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

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

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

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

מהנדס המערכות חייב להגדיר:

  • מה מסמן מגש ריק לרובוט.

  • זמן התיחום המדויק (בשניות) שבו צפויה תגובת התוכנה.

  • איזו צורה התגובה חייבת לקבל.

כאשר התפקוד, הביצועים, האילוצים, והמנשקים נתחמים, מהנדס המערכות עובר למטלה שנקראת הקצאה. במצב זה, כל תפקוד מוקצה לאחד או יותר מיסודות המערכת הכוללת (תוכנה, חומרה, אנשים, וכו') לעתים, הקצאות חילופיות מוצעות ומוערכות.

 

הגדרות מקובלות

הגדרת הנדסת תוכנה:

הנדסת תוכנה: כינון- establishment, ושימוש בעקרונות הנדסיים מבוססים, כדי לקבל באופן כלכלי תוכנה אמינה, הפועלת ביעילות על מכונות אמיתיות.

 

הגדרה אחרת (של IEEE):

(1) יישום גישה שיטתית- systematic, מיוסדת על כללים- disciplined, ברת כימות- quantifiable, עבור פיתוח, תפעול ותחזוקה של תוכנה.  

(2) מחקר של גישות, ע"פPressman .

 

יתרונות הנדסת תוכנה

 

חשיבות ייעול הייצור:

  • תעשיית המחשוב היוותה ב1990 8-10% מהתל"ג בארה"ב והצפי הוא ל- 15-20% בשנות ה- 2000 הראשונות.

  • במרבית המוצרים המיוצרים כיום משוכנים מחשבים עתירי תוכנה.

  • פיתוח תוכנה מהווה תעשיית ייצוא במספר רב של ארצות.

  • הפעילות היומיומית של מרבית החברות הגדולות תלויות במחשבים.

 

מאפייני בעיית הייצור:

  • אחוז קטן בלבד, לדעת E. Yourdon כ- 10%, של פיתוח מערכות מסתיים בזמן ובעלות שנקבעו.  

  • מרבית הפרויקטים מסתיימים באיחור של שנה ובעלות יתר של 100%. 25% מפיתוח מערכות גדולות כלל לא מסתיים.

  • תוכניתן ממוצע מייצר ביום רק 10-15 פקודות "מדובגות". פערי הייצור בין תוכניתנים הם ביחס 1:25., התייעלות ייצור התוכנה היא רק 1-2% בשנה, בהרבה פחות מהתייעלות החומרה.

 

להבנת מושגי הזמן והעלות (בפרויקט לא מורכב):

העלות (בדולרים)

הזמן הדרוש

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

10000$

300 שעות

1000

120,000$

4000 שעות

10,000

2,000,000$

65,000 שעות

100,000

25,000,000$

800,000 שעות

1,000,000

 

 סווג פרויקטים (עפ"י B. Boehm):

  • קטן            עד 8,000 פקודות

  • בינוני         8,000-32,000 פקודות

  • גדול           32,000-128,000 פקודות

  • גדול מאוד   512,000 - 128,000 פקודות

  • ענק             מעל 512,000 פקודות

 

 

איכות מערכות תוכנה

חשיבות האיכות:

  • 60-80% מתקציבי מערכות מידע של ארגונים מושקעים כיום בתחזוקה.

  • פערי האיכות בין חברות תוכנה הם בין 1:10 ל- 1:100.

  • רק איכות טובה תאפשר להפוך תוכנה לתעשיית ייצוא.

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

 

 

לסעיף הבא- משבר התוכנה...

רמה למעלה הבא


[דף הבית] [למד עכשיו UML] [למה להשתמש] [שטות תכון ויישום תכנה] [סמונים מקובלים] [כלי פיתוח] [מלון מונחים] [גלריית תמונות] [ספריה אור קולית] [קישורים] [ביבליוגרפיה] [על האתר] [מפת האתר]