Tái sử dụng các yêu cầu phần mềm chức năng trong các doanh nghiệp phần mềm quy mô nhỏ: một mô hình định hướng đến danh mục yêu cầu

Springer Science and Business Media LLC - Tập 22 - Trang 275-287 - 2016
C. Pacheco1, I. Garcia1, J. A. Calvo-Manzano2, M. Arcilla3
1Universidad Tecnologica de la Mixteca, Huajuapan de León, Mexico
2Universidad Politecnica de Madrid, Madrid, Spain
3Universidad Nacional de Educacion a Distancia, Madrid, Spain

Tóm tắt

Tái sử dụng phần mềm có thể được định nghĩa là quá trình tạo ra các sản phẩm phần mềm từ những sản phẩm hiện có thay vì phát triển phần mềm từ đầu. Do đó, tái sử dụng phần mềm thường được đề xuất nhằm nâng cao năng suất và chất lượng phần mềm, dẫn đến lợi ích kinh tế. Trong bối cảnh này, việc tái sử dụng các yêu cầu phần mềm đã nhận được sự chú ý quan trọng vì nó cung cấp hỗ trợ vững chắc để phát triển phần mềm chất lượng thông qua việc thu thập và tái sử dụng các yêu cầu phần mềm chất lượng (tức là, phương pháp dòng sản phẩm phần mềm (SPL) được sử dụng trong các doanh nghiệp phần mềm quy mô lớn). Tuy nhiên, các doanh nghiệp quy mô nhỏ—đại diện cho tới 85% tất cả các tổ chức phần mềm ở nhiều quốc gia trên thế giới—không thể thực hiện phương pháp SPL vì nó không phù hợp với bối cảnh, đặc điểm và độ phức tạp của các dự án phần mềm của họ. Hơn nữa, cộng đồng kỹ thuật phần mềm chưa khám phá đầy đủ một phương pháp phù hợp hơn trong bối cảnh của các doanh nghiệp phần mềm quy mô nhỏ. Việc sử dụng danh mục yêu cầu phần mềm có thể là phương pháp phù hợp này. Trong bối cảnh đó, mục tiêu của bài báo này là giới thiệu mô hình tái sử dụng yêu cầu cho danh mục yêu cầu phần mềm (RRMSRC). Ngoài ra, một tập hợp các hướng dẫn để thực hiện các hoạt động chính được xác định cho việc tái sử dụng các yêu cầu chức năng trong các doanh nghiệp phần mềm quy mô nhỏ được cung cấp. Như là bằng chứng cho tính khả thi của nó, RRMSRC đã được sử dụng trong bối cảnh công nghiệp, và các kết quả obtained và bài học đã học được tóm tắt.

Từ khóa

#tái sử dụng phần mềm #yêu cầu phần mềm #danh mục yêu cầu #doanh nghiệp phần mềm quy mô nhỏ #mô hình tái sử dụng yêu cầu

Tài liệu tham khảo

Benitti FBV, da Silva RC (2013) Evaluation of a systematic approach to requirements reuse. J Univers Comput Sci 19(2):254–280 Chernak Y (2012) Requirements reuse: the state of the practice. Proceedings of 2012 IEEE international conference on software science, technology and engineering. IEEE Computer Society Press, Herzlia, pp 46–53 CMMI Product Team (2010) CMMI for Development (CMMI-DEV) (version 1.3), CMU/SEI-2010-TR-033, Software Engineering Institute, Carnegie Mellon University Cybulski JL (1996) Reusing requirements specifications: review of methods and techniques. In: Proceedings of 1st Australian requirements engineering workshop. Melbourne, Australia, pp 2.1–2.17 De Gea JMC, Nicolás J, Fernández JL, Toval A, Ebert C, Vizcaíno A (2011) Requirements engineering tools. IEEE Softw 28(4):86–91 De Gea JMC, Nicolás J, Fernández JL, Toval A, Ebert C, Vizcaíno A (2012) Requirements engineering tools: capabilities, survey and assessment. Inf Softw Technol 54(10):1142–1157 De Gea JMC, Nicolás J, Fernández JL, Toval A, Vizcaíno A, Ebert C (2013) Reusing requirements in global software engineering. In: Maalej W, Thurimella AK (eds) Managing requirements knowledge. Springer, Berlin, pp 171–197 De Lucia A, Qusef A (2010) Requirements engineering in agile software development. J Emerg Technol Web Intell 2(3):212–220 Goldin L, Berry DM (2015) Reuse of requirements reduced time to market at one industrial shop: a case study. Requir Eng 20(1):23–44 Hauksdóttir D, Mortensen NH, Nielsen PE (2014) Identified adjustability dimensions when generating a product specific requirements specification by requirements reuse. Comput Ind 65(6):952–966 Hummel O, Atkinson C (2007) Supporting agile reuse through extreme harvesting. In: Concas G, Damiani E, Scotto M, Succi G (eds) Agile processes in software engineering and extreme programming. Springer, Berlin, pp 28–37 IEEE (1990) Standard glossary of software engineering terminology. In: IEEE Std. 610.12-1990. IEEE Press, Piscataway, NJ IEEE (1998a) Recommended practice for software requirements specifications. In: IEEE Std. 830-1998. IEEE Press, Piscataway, NJ IEEE (1998b) Guide for developing system requirements specifications. In: IEEE Std. 1233-1998. IEEE Press, Piscataway, NJ Insfran E, Chastek G, Donohoe P, Leite JC (2014) Requirements engineering in software product line engineering. Requir Eng 19(4):331–332 Kassab M, Neill C, Laplante P (2013) State of practice in requirements engineering: contemporary data. Innov Syst Softw Eng 10(4):235–241 Krueger CW (1992) Software reuse. ACM Comput Surv 24(2):131–183 Laguna MA, García FJ, López O (2002) Reutilización de requisitos de usuario: El modelo mecano [User requirements reuse: Meccano model]. Rev Colomb Comput 3(2):45–62 Lam W, McDermid JA, Vickers AJ (1997) Ten steps towards systematic requirements reuse. Requir Eng 2(2):102–113 Lauesen S (2002) Software requirements, styles and techniques. Pearson Education, Harlow Leite JC, Yu Y, Liu L, Yu E, Mylopoulos J (2005) Quality-based software reuse. In: Pastor O, Cunha FJ (eds) Advanced information systems engineering. Springer, Berlin, pp 535–550 Lethbridge T, Sim SE, Singer J (2005) Studying software engineers: data collection techniques for software field studies. Empir Softw Eng 10(3):311–341 Mannion M, Kaindl H (2008) Using parameters and discriminants for product line requirements. Syst Eng 11(1):61–80 McCarey F, Cinnéide MÓ, Kushmerick N (2005) Rascal: a recommender agent for agile reuse. Artif Intell Rev 24(3–4):253–276 Miles MB, Huberman AM (1994) Qualitative data analysis: an expanded sourcebook. Sage, CA, USA Ministerio de las Administraciones Públicas. (2005). METRICAV.3 Metodología de Planificación, Desarrollo y Mantenimiento de Sistemas de Información [Methodology of planning, development and maintenance of information system]. Madrid, España Moros B, Vicente-Chicote C, Toval A (2008) Metamodeling variability to enable requirements reuse. In: Proceedings of 13th international workshop on exploring modeling methods for systems analysis and design. Montpellier, France, pp 140–154 Moros B, Toval A, Rosique F, Sánchez P (2013) Transforming and tracing reused requirements models to home automation models. Inf Softw Technol 55(6):941–965 Nicolás J (2010) Una propuesta de gestión integrada de modelos y requisitos en líneas de productos software [A proposal for integrated management of models and requirements in software product lines]. Tesis Doctoral, Facultad de informática, Universidad de Murcia Northrop L, Clements P (2007) A framework for software product line practice (version 5.0). Carnegie Mellon University, Pittsburgh, USA, Software Engineering Institute O’Leary P, McCaffery F, Thiel S, Richardson I (2012) An agile process model for product derivation in software product line engineering. J Softw Evolut Process 24(5):561–571 Palomares C, Franch X, Quer C (2014) Requirements reuse and patterns: a survey. In: Salinesis C, van de Weerd I (eds) Requirements engineering: foundation for software quality. Springer, Berlin, pp 301–308 Perry JM (1998) Perspective on software reuse (Technical report CMU/SEI-88-TR-22). Carnegie-Mellon University Pittsburgh, USA, Software Engineering Institute Ramesh B, Jarke M (2001) Toward reference models for requirements traceability. IEEE Trans Softw Eng 27(1):57–93 Robertson J (2006) Mastering the requirements process, 6th edn. Pearson Education, USA Runeson P, Höst M (2009) Guidelines for conducting and reporting case study research in software engineering. Empir Softw Eng 14(2):131–164 Sommerville I, Sawyer P (1997) Requirements engineering. A good practice guide. Wiley, London Toval A, Moros B, Nicolás J, Lasheras J (2008) Eight key issues for an effective reuse-based requirements process. J Comput Syst Sci Eng 23(5):1–13 Wiegers K (1999) First things first: prioritizing requirements. Softw Dev 7(9):48–53 Wohlin C, Höst M, Henningsson K (2003) Empirical research methods in software engineering. In: Conradi R, Wang AI (eds) Empirical methods and studies in software engineering—experiences from ESERNET. Springer, Berlin, pp 7–23