فصلنامه تخصصی فناوری اطلاعات و ارتباطات

بررسی و تحلیل نقش موثر شناسایی عوامل بروز ریسک در پروژه های توسعه نرم افزار در فاز نیازمندیها

نوع مقاله : مقاله پژوهشی

نویسندگان

1 دانشکده مهندسی کامپیوتر، دانشگاه صنعتی شریف، تهران، ایران

2 گروه نرم افزار، دانشکده مهندسی کامپیوتر، موسسه آموزش عالی الکترونیکی ایرانیان، تهران، ایران

3 گروه فناوری اطلاعات، دانشگاه صنعتی خواجه نصیرالدین طوسی ، تهران، ایران

10.22034/apj.2022.704023
چکیده
مهندسی نرم افزار بر همه جنبه های زندگی روزمره ما تاثیرگذار است. توسعه نرم افزار اساس فعالیت در
دنیای مهندسی نرم افزار و فناوری اطلاعات است. توسعه نرم افزار دربرگیرنده مجموعه ای از مراحل است
که به عنوان چرخه ی توسعه نرم افزار نامیده میشود. برای موفقیت هر نرم افزاری قابل توجه است که هر
مرحله از چرخه ی توسعه نرم افزار بدون خطا و عیب باشد. لیکن مایه تاسف است که نمیتوان بدون
هیچگونه عدم قطعیتی در چرخه ی توسعه ی نرم افزار به پیش برویم. بنابراین مهم این است که ما
بتوانیم ریسک های گامهای اولیه ی این چرخه را شناسایی و مورد ارزیابی قراردهیم. مهندسی الزامات
و نیازمندیها، مرحله مقدماتی چرخه توسعه نرم افزار است، که نیازهای اصلی آن از مشتری جمع آوری
میگردد. اگر خطرات در مرحله ی مهندسی نیازمندی ها نادیده گرفته شود، تأثیرات منفی بر توانایی
پروژه ها در دستیابی به اهداف عملکرد و کارایی و نتیجه را در پی خواهد داشت. موضوع اصلی این
مقاله، شناسایی عوامل بروز ریسک در پروژه های توسعه نرم افزار با تمرکز بر روی مرحله ی مهندسی
نیازمندی ها است. همچنین به اثرگذاری نیازمندی ها بر روی نتیجه و عملکرد نهایی محصول اشاره
دارد و اهمیت نقش عدم قطعیت نیازمندی ها بر کیفیت محصول نهایی را بررسی میکند. سپس،
مراحل مدیریت ریسک و نقش آن در تقویت فاز مهندسی نیازمندی ها شرح داده خواهد شد.
نتیجه گیری این مقاله، اهمیت شناسایی عوامل آسیب زا در مراحل آغازین توسعه ی نرم افزار را مرور
میکند و همچنین بر لزوم اجرای مدیریت ریسک در فرآیند مهندسی نیازمندی ها تاکید میکند.

کلیدواژه‌ها


عنوان مقاله English

Review and Analysis of Effective Role of Identifying Risk Factors in Software Development Projects in Requirements Phase

نویسندگان English

Elham Farahani 1
Mahboubeh Shamsjavi 2
Mohammad Hadi Zahedi 3
1 Department of Computer Engineering, Sharif University of Technology, Tehran, Iran
2 Department of Software Engineering, Iranians University, Tehran, Iran
3 Department of Information Technology, K.N. Toosi University of Technology, Tehran, Iran
چکیده English

Software engineering affects all aspects of our daily lives. Software development is the basis of activity in the world of software engineering and information technology. Software development involves a set of steps called the software development cycle.
For the success of any software it is significant that each stage of the software development cycle be without errors and defects. But it is unfortunate that we cannot proceed without any uncertainty in the software development cycle. Therefore, it is important that we can identify and evaluate the risks of the initial steps of this cycle.
Requirements engineering are preliminary stage of software development cycle, that it's basic needs are collected from customer. If the risks are ignored in the requirements engineering stage, it will have negative effects on the ability of projects to achieve performance goals and efficiency and so the results.
The main topic of this article is to identify the risk factors in software development projects focusing on the requirements engineering stage. It also refers to the impact of requirements on the outcome and final product performance and also examine the importance of uncertainty requirements role on the quality of the final product. Then, the risk management steps and its role in strengthening the requirements engineering phase will be described.
Conclusion of this article reviews the importance of identifying harmful factors in the early stage of software development and also emphasizes the need to implement the risk management in the requirements engineering.

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

Requirements Engineering
Software Development Cycle
Requirements Uncertainty
Risk
[1]     M. Haleem, M. F. Farooqui, and M. Faisal, “Cognitive impact validation of requirement uncertainty in software project development,” Int. J. Cogn. Comput. Eng., vol. 2, pp. 1–11, 2021, doi: 10.1016/j.ijcce.2020.12.002.
[2]     N. Singh, D. Pandey, W. Khan, and V. Pandey, “Effective Requirement Engineering Process by incorporating Risk Management Approach,” Solid State Technol., vol. 63, no. Octo5ber, 2020, Accessed: Sep. 01, 2022. [Online]. Available: http://solidstatetechnology.us/index.php/JSST/article/view/1630
[3]     S. N. Bhukya and S. Pabboju, “Software engineering: risk features in requirement engineering,” Cluster Comput., vol. 22, pp. 14789–14801, Nov. 2019, doi: 10.1007/s10586-018-2417-3.
[4]     Y. Asnar and P. Giorgini, “Risk Analysis as part of the Requirements Engineering Process,” 2007, Accessed: Sep. 01, 2022. [Online]. Available: http://eprints.biblio.unitn.it/1180/
[5]     C. Ebert and J. De Man, “Requirements uncertainty: Influencing factor and concrete improvements,” Proc. - 27th Int. Conf. Softw. Eng. ICSE05, pp. 553–560, 2005, doi: 10.1109/icse.2005.1553601.
[6]     S. Ward and C. Chapman, “Stakeholders and uncertainty management in projects,” Constr. Manag. Econ., vol. 26, no. 6, pp. 563–577, Jun. 2008, doi: 10.1080/01446190801998708.
[7]     R. Atkinson, L. Crawford, and S. Ward, “Fundamental uncertainties in projects and the scope of project management,” Int. J. Proj. Manag., vol. 24, no. 8, pp. 687–698, 2006, doi: 10.1016/j.ijproman.2006.09.011.
[8]     H. Hiisilä, M. Kauppinen, and S. Kujala, “Challenges of the customer organization’s requirements engineering process in the outsourced environment –a case study,” Lect. Notes Comput. Sci. (including Subser. Lect. Notes Artif. Intell. Lect. Notes Bioinformatics), vol. 9013, pp. 214–229, 2015, doi: 10.1007/978-3-319-16101-3_14.
[9]     S. N. Bhukya and S. Pabboju, “Software engineering: risk features in requirement engineering,” Clust. Comput. 2018 226, vol. 22, no. 6, pp. 14789–14801, Mar. 2018, doi: 10.1007/S10586-018-2417-3.
[10]  M. Pasha, G. Qaiser, and U. Pasha, “A critical analysis of software risk management techniques in large scale systems,” IEEE Access, vol. 6, pp. 12412–12424, Feb. 2018, doi: 10.1109/ACCESS.2018.2805862.
[11]  M. ARahman, R. Razali, and F. Filzahti Ismail, “Risk Factors for Software Requirements Change Implementation,” IJACSA) Int. J. Adv. Comput. Sci. Appl., vol. 10, no. 3, 2019, Accessed: Sep. 01, 2022. [Online]. Available: www.ijacsa.thesai.org
[12]  P. A. M. Barbosa, P. R. Pinheiro, F. R. V. Silveira, and M. S. Filho, “Selection and Prioritization of Software Requirements Applying Verbal Decision Analysis,” Complexity, vol. 2019, 2019, doi: 10.1155/2019/2306213.
[13]  A. Kobilica, M. Ayub, and J. Hassine, “Automated Identification of Security Requirements: A Machine Learning Approach,” ACM Int. Conf. Proceeding Ser., pp. 475–480, Apr. 2020, doi: 10.1145/3383219.3383288.
[14]  E. Kheirkhah, A. Deraman, and Z. S. Tabatabaie, “A framework for requirements engineering in end-user computing,” 2009 WRI World Congr. Comput. Sci. Inf. Eng. CSIE 2009, vol. 7, pp. 701–705, 2009, doi: 10.1109/CSIE.2009.517.
[15]  M. Faisal, M. Rizwan Beg, and H. Sadia, “An Efficient Approach for Requirement Volatility Identification,” Int. J. Comput. Appl., vol. 101, no. 15, pp. 42–45, Sep. 2014, doi: 10.5120/17767-8884.
[16]  C. Sirias, “Project Metrics for Software Development,” InfoQ. com, July, vol. 14, 2009, [Online]. Available: http://www.infoq.com/articles/project-metrics
[17]  S. Alter and G. J. Browne, “A Broad View of Systems Analysis and Design: Implications for Research,” Commun. Assoc. Inf. Syst., vol. 16, no. 1, p. 50, Dec. 2005, doi: 10.17705/1cais.01650.
[18]  J. Sallim, “Requirement Engineering for Enterprise application development,” World Acad. Sci. Eng. Technol. www. waset. org/journals/waset/v4/v4-27. pdf, 2009.
[19]  B. Burnes, Managing change: A strategic approach to organisational dynamics. Pearson Education, 2004.
[20]  A. Y. Aldaijy and E. H. Sibley, An empirical assessment of the impact of requirements uncertainty on development quality performance, vol. 3068627. George Mason University, 2002. Accessed: Sep. 02, 2022. [Online]. Available: https://vpn.utm.my/docview/305485247?accountid=41678