A software maintenance process model with feature-based tool and reliability metrics

العناوين الأخرى

نموذج عملي لادامة البرمجيات مع أداة و قياسات لتحديد الموثوقية اعتمادا على الميزات

مقدم أطروحة جامعية

al-Qaysi, Abd Allah Mustafa

مشرف أطروحة جامعية

Sharih, Ahmad
Salamah, Walid

أعضاء اللجنة

al-Hamami, Ala H.
Zaghul, Fawwaz
Abd al-Sattar, Sad

الجامعة

جامعة عمان العربية

الكلية

كلية العلوم الحاسوبية و المعلوماتية

القسم الأكاديمي

قسم علم الحاسوب

دولة الجامعة

الأردن

الدرجة العلمية

دكتوراه

تاريخ الدرجة العلمية

2008

الملخص الإنجليزي

Software maintenance cost can be significantly higher than the initial development cost.

The high maintenance cost is the result of several inefficiency factors that include: program comprehension, change impact analysis, regression testing, and reliability measurement.

Current maintenance process models are not comprehensive enough to address these problems.

Existing maintenance tools are not easy for the entire maintenance team to fully adopt and use during the various maintenance activities.

Metrics for measuring code reliability during maintenance are very limited in practice.

This research introduces a new tool-based process model to help minimize the cost associated with the maintenance problems identified above.

The process model and tool target the entire development team helping them improve their skills in software maintenance areas, such as: program understanding, change impact analysis, regression testing, documentation, quality assessment, and code complexity metrics.

Several new process-oriented metrics are introduced to help the team measure and track various attributes of the code base at three levels: function, feature, and product.

The new process model is a more detailed version of the IEEE-1219 standard, with emphasis on the major cost factors and the various responsibilities of the maintenance team.

To assist the team in adopting the new process model, a maintenance tool “CMMR” was developed on two platforms: Objective C++ on the Macintosh, and Java on Windows.

CMMR was designed to be easy to use by the entire maintenance team, developers and non-developers alike.

It includes facilities to generate graphical views of the target system’s features based on dynamic analysis of code execution traces.

Multiple graphical views are available at different levels of details to assist the team in various program comprehension activities.

It includes feature-based support for more accurate change impact analysis and more focused regression testing.

It offers an intelligent scheme for early defect detection based on instantaneous tracking of code changes across multiple builds.

CMMR also offers 16 metric measurements of various attributes of the product features and functions, such as complexity, maintainability, and reliability.

The five new metrics introduced in this research are among these built-in metrics, which require breaking down the code base into basic tokens (keywords, operators, operands, etc.).

The new metrics measure the reliability of an individual function based on its Function Maturity (age and number of releases), along with a new maintainability measure known as Feature-Based Function Maintainability.

FBFM takes into account the maintainability of the function along with number of features that use the function.

The other new metrics measure the feature reliability based on the reliability of its functions, and the product reliability based on the reliability of its features.

The proposed process model and tool were used in several case studies, one of which was a commercial Macintosh product.

Initial feedback from participants working on these projects was very encouraging, and actual benefits were immediately observed; such as: faster program comprehension, more focused regression testing, higher team productivity, higher code quality, and lower error injection.

Some of the proposed metrics were refined as a result of actual usage.

However, to see the full benefits of the new process model and tool, a full maintenance release cycle is needed.

As for the metrics, like all other new software metrics, multiple release cycles are needed to refine them.

التخصصات الرئيسية

الرياضيات

عدد الصفحات

188

قائمة المحتويات

Table of contents.

Abstract.

Abstract in Arabic.

Chapter One : Introduction.

Chapter Two : Related work.

Chapter Three : Methodology.

Chapter Four : Case studies.

Chapter Five : Results and discussion.

Chapter Six : Conclusions and suggestions for future work.

References.

نمط استشهاد جمعية علماء النفس الأمريكية (APA)

al-Qaysi, Abd Allah Mustafa. (2008). A software maintenance process model with feature-based tool and reliability metrics. (Doctoral dissertations Theses and Dissertations Master). Amman Arab University, Jordan
https://search.emarefa.net/detail/BIM-528708

نمط استشهاد الجمعية الأمريكية للغات الحديثة (MLA)

al-Qaysi, Abd Allah Mustafa. A software maintenance process model with feature-based tool and reliability metrics. (Doctoral dissertations Theses and Dissertations Master). Amman Arab University. (2008).
https://search.emarefa.net/detail/BIM-528708

نمط استشهاد الجمعية الطبية الأمريكية (AMA)

al-Qaysi, Abd Allah Mustafa. (2008). A software maintenance process model with feature-based tool and reliability metrics. (Doctoral dissertations Theses and Dissertations Master). Amman Arab University, Jordan
https://search.emarefa.net/detail/BIM-528708

لغة النص

الإنجليزية

نوع البيانات

رسائل جامعية

رقم السجل

BIM-528708