مروری بر روش‌های تخمین هزینه نرم‌افزار مبتنی بر یادگیری ماشین

نویسندگان

دانشگاه یزد

چکیده

مدیریت پروژه ی نرم افزاری از مهم ترین فعالیت ها در توسعه ی محصول نرم افزاری است، چرا که تمامی فرآیند توسعه ی نرم افزار، از ابتدا تا انتها را شامل می گردد. تخمین هزینه ی نرم افزار ، یک فعالیت چالشی در مدیریت پروژه ی نرم افزاری می باشد. مفهوم تخمین هزینه ی نرم افزار، همزمان با شروع صنعت کامپیوتر در سال 1940 مورد توجه قرار گرفته و همچنان پژوهش در این حوزه ادامه دارد. با اینکه تلاش، تنها دربرگیرنده ی بخشی از هزینه های توسعه ی یک پروژه ی نرم افزاری است، اما عامل اساسی برای تعیینِ هزینه محسوب می گردد. از این رو در پژوهش های این حوزه، دو اصطلاح تخمینِ تلاش و تخمینِ هزینه به صورت معادل به کار می روند. مدل تخمین هزینه ی نرم افزاری مناسب است، که قبل از عقد قرارداد، دقت و اطمینان بالایی برای پیش بینی هزینه ی پروژه‌های نرم‌افزاری فراهم نماید. به علت ذات غیر قطعیِ تخمین و در جهت افزایش دقت، به مرور توجّه پژوهشگران به استفاده از روش های یادگیری ماشین در این حوزه معطوف گردیده است. در پژوهش حاضر، به بررسی مطالعات صورت گرفته در تخمین هزینه ی نرم افزار با روش های یادگیری ماشین پرداخته و روش های تخمین ارائه شده، معیار های ارزیابی دقت این روش ها و دادگانِ مورد استفاده در کارهای پژوهشی و هم چنین پژوهش های آتی در این حوزه را معرفی نموده ایم.

کلیدواژه‌ها


عنوان مقاله [English]

A Review on Software Cost Estimation Based on Machine Learning

نویسندگان [English]

  • saba beiranvand
  • mohammad ali zare chahooki
چکیده [English]

Software project management software is the most important activity in software development, because it contains the whole software development process, from beginning to end. Software cost estimation is a challenge task in the software project management. It is an old activity in computer industry from 1940s and has been developed many times. Effort, only covers part of the cost of a software project. However, it is an essential factor for determining the cost. Therefore, in researches on software cost estimates, effort estimation and cost estimation are equivalent. A Software cost estimation model is appropriate if provides the accuracy and confidence simultaneously in cost prediction before software project contract. Due to the uncertain nature of cost estimates and in order to increase the accuracy, researchers recently have focused on machine learning techniques. In this paper, we investigated the software cost estimation by machine learning approaches, also, we introduced estimation methods, criterias to assess the accuracy of proposed methods, used datasets for evaluation, and future works in this research area.

کلیدواژه‌ها [English]

  • Software Cost Estimation
  • Software Effort Estimation
  • Machine Learning