چکیده:
توسعه نرمافزار بهدلیل تعداد عوامل درگیر از جمله عوامل انسانی، پیچیدگی محصول در حال توسعه، تنوع سطوح توسعه و مشکلات مدیریتی پروژههای بزرگ فرایندی پیچیده است. در پیشبینی هزینه توسعه نرمافزار با تعداد زیادی متغیر مواجه هستیم که در طول زمان تغییر کرده و بر هم تأثیر متقابل دارند و عمل پیشبینی را مشکل میسازند. برای حل این مشکل، در این پژوهش مدلی برای پیشبینی هزینههای توسعه نرمافزار با استفاده از رویکرد پویاییشناسی سیستمها و نرمافزار «ونسیم» طراحی و ارائه گردیده است. در این پژوهش از منطق فازی و رویکرد پویاییشناسی سیستمها برای مدلسازی استفاده شده است. جامعه آماری اول در این پژوهش، مدیران فناوری اطلاعات و مدیران پروژههای توسعه نرمافزار و جامعه آماری دوم، خبرگان شرکت «مگفا» است. ابزار مورد استفاده برای جمعآوری دادهها پرسشنامه است و دادهها و اطلاعات مربوط به پروژه توسعه نرمافزار هوش تجاری در شرکت «مگفا» بوده و اطلاعات آن نیز از افراد دخیل در پروژه جمعآوری شده است. پس از شبیهسازی و تست مدل، سه سناریو برای کاهش هزینههای توسعه نرمافزار تعریف گردید که عبارتاند از: افزایش تجربه پرسنل و افزایش تجربه مدیران پروژه، افزایش قابلیتها و شایستگیهای نیروی انسانی، و تغییر مدل چرخه حیات سیستم از مدل آبشاری به متدولوژی چابک. یافتهها حاکی از آن است که شرکت مورد مطالعه با استفاده از مدل چرخه حیات چابک، کاهش بیشتری در هزینههای توسعه نرمافزار خود شاهد خواهد بود
Software development is a complex and intricate process due to the number of factors involved, such as human factors, the complexity of developing products, the diversity of development levels, and the management problems of large projects. In Software development cost estimation, we are faced with many variables that change over time, interact with each other and make prediction difficult. In order to solve this problem, using systems and software dynamic approach, a model for estimation software development costs has been designed and implemented in this research.
In this research, the system dynamics approach and fuzzy logic are used to modeling. This research consists of two statistical populations. The first statistical population in this research includes IT managers and software development project managers. The second population in this research includes experts of Magfa Company. The tool used to collect data is a questionnaire. The data and information related to the project of development of BI-software (Business intelligence software) were at Magfa Company and has been gathered from the people involved in the project. After simulating and testing the model, three scenarios have been defined to reduce software development costs, which include: increasing personnel experience and increasing the experience of project managers, increasing the capabilities and competencies of manpower and changing the lifecycle of the system from cascading to agile methodology scenario. The findings indicate that the company will see a further reduction in software development costs by using the agile life cycle model.