GAP IN REQUIREMENTS ENGINEERING BETWEEN SCIENTIFIC LITERATURE AND PRACTICE IN THE LATIN-AMERICAN SOFTWARE INDUSTRY

BRECHAS EN INGENIERÍA DE REQUISITOS ENTRE LAS PROPUESTAS CIENTÍFICAS Y LA PRÁCTICA DE LA INDUSTRIA LATINOAMERICANA DEL SOFTWARE

BRECHAS NA ENGENHARIA DE REQUISITOS ENTRE AS PROPOSTAS CIENTÍFICAS E A PRÁTICA DA INDÚSTRIA DE SOFTWARE LATINO AMERICANA

Jorge Rojas
Universidad de Atacama, Chile
Dante Carrizo
Universidad de Concepción, Chile

GAP IN REQUIREMENTS ENGINEERING BETWEEN SCIENTIFIC LITERATURE AND PRACTICE IN THE LATIN-AMERICAN SOFTWARE INDUSTRY

Interciencia, vol. 42, no. 10, pp. 676-682, 2017

Asociación Interciencia

Received: February , 17, 2017

Accepted: May , 10, 2017

Abstract: Requirements engineering is a major challenge for software developers. Interaction with stakeholders to specify the needs that software products must meet requires the adoption of effective and successful practices. Despite the increasing offer of proposals from researchers, the degree of adoption of methodologies, techniques and tools at this stage of the software process is not clear. This study intends to show the reality of the software industry in Latin America regarding the engineering of requirements and to compare it with information set out in the scientific literature. For this, a systematic mapping of the scientific literature and an empirical study of 35 software development companies were carried out, using surveys and interviews. The results show that interviews and use cases are the most frequently used techniques for requirements elicitation and analysis, and that there is a low adoption rate of formal documentation techniques, tools and formal methodologies. Finally, a considerable gap was identified between that which is proposed by researchers in the literature and what is actually adopted by the software development industry.

La ingeniería de requisitos implica un gran desafío para los desarrolladores de software. La interacción con los usuarios/ clientes para especificar las necesidades que el producto software debe satisfacer requiere de un esfuerzo por la adopción de buenas y exitosas prácticas. A pesar de la creciente oferta de propuestas desde los investigadores, no es claro el grado de adopción de metodologías, técnicas y herramientas en esta etapa del proceso software. Este estudio pretende conocer la realidad de la industria del software en Latinoamérica respecto a la ingeniería de requisitos y contrastarla con las propuestas de la literatura científica. Para esto, se llevó a cabo un mapeo sistemático de la literatura científica y un estudio empírico a través de encuestas y entrevistas a 35 empresas de desarrollo de software. Los resultados muestran que las entrevistas y casos de uso son las técnicas de extracción y análisis de requisitos más utilizados. Además, muestran una baja adopción de técnicas formales de documentación, herramientas y metodologías formales. Finalmente, queda manifiesta una brecha considerable entre lo que proponen los investigadores y lo que realmente es adoptado por la industria de desarrollo de software.

Keywords: Requirements Engineering, Software Development, Theory and Practice.

Resumen: La ingeniería de requisitos implica un gran desafío para los desarrolladores de software. La interacción con los usuarios/ clientes para especificar las necesidades que el producto software debe satisfacer requiere de un esfuerzo por la adopción de buenas y exitosas prácticas. A pesar de la creciente oferta de propuestas desde los investigadores, no es claro el grado de adopción de metodologías, técnicas y herramientas en esta etapa del proceso software. Este estudio pretende conocer la realidad de la industria del software en Latinoamérica respecto a la ingeniería de requisitos y contrastarla con las propuestas de la literatura científica. Para esto, se llevó a cabo un mapeo sistemático de la literatura científica y un estudio empírico a través de encuestas y entrevistas a 35 empresas de desarrollo de software. Los resultados muestran que las entrevistas y casos de uso son las técnicas de extracción y análisis de requisitos más utilizados. Además, muestran una baja adopción de técnicas formales de documentación, herramientas y metodologías formales. Finalmente, queda manifiesta una brecha considerable entre lo que proponen los investigadores y lo que realmente es adoptado por la industria de desarrollo de software.

Resumo: A engenharia de requisitos implica em um grande desafio para os desenvolvedores de software. A interação com os usuários/clientes para especificar as necessidades que o produto software deve satisfazer requer de um esforço pela adoção de boas e exitosas práticas. Apesar da crescente oferta de propostas por parte dos investigadores, não é claro o grau de adoção de metodologias, técnicas e ferramentas nesta etapa do processo software. Este estudo pretende conhecer a realidade da indústria de software na América Latina em relação à engenharia de requisitos e contrastá-la com as propostas da literatura científica. Para isto, se realizou um mapeamento sistemático da literatura científica e um estudo empírico através de pesquisas e entrevistas a 35 empresas de desenvolvimento de software. Os resultados mostram que as entrevistas e casos de uso, são as técnicas de extração e análise de requisitos mais utilizados. Além disso, mostram uma baixa adoção de técnicas formais de documentação, ferramentas e metodologias formais. Finalmente, fica manifesta uma brecha considerável entre aquilo que propõem os investigadores e aquilo que realmente é adotado pela indústria de desenvolvimento de software.

Introduction

Due to the speed at which information technology is evolving, organizations dedicated to software development are focused on the creation of new functions and work schemes so that they can improve the quality of products delivered to stakeholders. The different characteristics (Maibaum, 1997; Bruegge and Dutoit, 2002) that must be considered in the development of software, such as processing speed, cost vigilance, information security, communication with stakeholders and business dynamics, assign to this discipline a particular complexity that differentiates it from other fields of engineering.

A crucial stage for the success of software development is requirement engineering (RE) management (Bourque and Fairley, 2014). During the stage of RE developers establish the expectations of stakeholders, so that they are able to develop a product that meets their expectations, and this adds complexity to software engineering. RE includes tasks such as elicitation, analysis, specification, validation and requirements management.

Software development has become such a specialized activity that companies have discontinued software production, outsourcing this activity to companies that focus on software engineering. This phenomenon has generated an increase in the economic activity of software worldwide. Different studies have shown this vertiginous growth in the Latin American software industry (Hernández, 2006;Martinez et al., 2016), but little evidence is available of Latin American industrial practices in RE (Toro and Cardona, 2013).

The following study aims to establish a baseline of the requirements activity that enables the analysis software industry practices in RE. This will then generate further research into strategies for the Latin American industry.

Following an account of related work in the area, the methodology used in this research is described, the results obtained through questionnaires and interviews are shown and, finally, conclusions and future work perspectives are presented.

Related Work

Work on the state of practice in RE over the last 15 years has been identified, including a survey based entirely on the literature published in 2000 by Nikula et al. (2000), whose study also included interviews with open questions, oriented to the improvement of processes. The surveys were applied to 12 companies in Finland and 15 employees from the same companies were interviewed. The main problems encountered included how to link development phases with requirements management tools, applying methods to verify the quality of software using a framework and/or best practice guides in RE, and the low level of specialization within the companies.

In 2002, 38 participants were surveyed on how stakeholders’ software requirements were determined by software developers in Argentina (Antonelli and Oliveros, 2002), who used traditional techniques, such as interviews, questionnaires, and form analysis. In addition, 29% of the participants also used group techniques, such as brainstorming, focus groups and prototyping. The interviewees mentioned that the availability of the stakeholders, the number of people and the time of availability were all issues associated when eliciting information. Respondents also said that they were focused on preparation of training sessions of requirement engineers.

In 2003, a questionnaire was distributed to 1519 people (Neill and Laplante, 2003), with 194 responses. It was focused on elicitation techniques, modeling techniques and the life cycle of a project. Results highlighted that one of the most used development methodologies is the cascade, although this can vary depending on the domain of the project. In projects lasting over two years, incremental models were more common. In the requirements elicitation techniques, more than 50% of participants indicated using scenarios and use cases. On the other hand, only 30% reported that they performed an object-oriented analysis, while 33% indicated that they did not use a particular methodology for the analysis and modeling of requirements.

In 2007, a study was conducted that analyzed best practices with data from case studies and questionnaires (Cheng and Atlee, 2007). However, only practices using agile methodologies, specifically XP, were analyzed.

In 2008 a qualitative study was developed (Cao and Ramesh, 2008) to understand how and why agile methodologies in RE differ from traditional methodologies. Information was collected from 16 organizations, obtaining a set of agile practices that demonstrated that intensive communication with stakeholders is the most important in RE practices.

In 2014, a survey focused on project characteristics, organizational practices and professional practices in RE was carried out (Kassab et al., 2014). This survey was distributed to 3000 professionals, of whom 250 responded. Respondents were programmers, system engineers, project managers, analysts and consultants, with 46% indicating that they used an agile methodology (e.g., SCRUM, extreme programming, feature driven development). Regarding elicitation and modeling techniques, 65% of respondents use brainstorming, 38% use scenarios as use cases and 61% stated that they express the requirements in natural language. This survey was an extension to the survey applied by Neill and Laplante (2003). A more recent study was carried out in Ecuador (Simbaña and Simbaña, 2015), where a questionnaire was applied to 51 companies. The questionnaire focused on the running time of the company, certifications, size of development teams, RE processes, techniques used and main problems. It was found that companies have very few people specialized in the area of requirements. Specifically, only 29% of companies had a professional in requirements. In addition, 98% of these companies had no certification in their development processes, such as CMMI, and only 10% had an ISO certification. In RE processes, 88% of the requirements organizations did not manage the requirements, and 45% did not understand the documentation phase, a factor that has a negative impact on project planning and management.

In 2015, an investigation was carried out in RE that sought to provide a broad vision of the techniques of common use and also to know if there is a correlation between the success of practices in a software project (Fricker et al., 2015). A survey was applied to 625 people, obtaining 419 responses. This study was also carried out with data from other investigations (Neill and Laplante, 2003) and was based mainly on Swiss companies. Results showed that the most commonly used practices to determine stakeholder needs were related to workshops with stakeholders, analysis of existing systems and reuse of requirements. They also used mixtures of informal modeling, prototyping, and object-oriented analysis. But no modeling technique was dominant. Formal techniques, agents and goals were little used. Finally, it was not possible to judge the dominant success of RE practices.

Methodology

To assist in understanding the research undertaken, Figure 1 shows the processes that were followed. This research aimed to answer the question: What is the real state of practice in RE in Latin America, taking into account methodologies, techniques and tools available?

Research design.
Figure 1
Research design.

First, a systematic mapping study (SMS) was performed to collect the scientific proposals in RE, and surveys and interviews were used to gather information from Latin American companies. Finally, a theoretical/empirical contrast was made to generate theoretical foundations for the identification of gaps and the generation of improving requirements process of requirements.

As a research methodology, a systematic review of the literature was undertaken to obtain and evaluate evidence that is pertinent on a specific topic, and to obtain as much information as possible that can be processed in the form of a body of knowledge, based on empirical evidence with certain degrees of reliability. This is used in many areas of study, and it is also appropriate to apply it in software engineering. However, in this study we used a systematic mapping, a less exhaustive review method than a complete systematic review, where the objective is to have a broad vision of the field of research and to identify the trends of the focused research (Kitchenham and Charters, 2007;Carrizo, 2015). The database of the Web of Science (WOS) was used for the search of articles.

A survey is an empirical method commonly used to identify characteristics of a broad population of individuals. It is generally associated with the use of questionnaires for data collection. However, it can also be conducted through structured interviews or data logging techniques (Shull et al., 2008). This method was used to collect information from software developers. The information captured includes demographic data such as identification, location, organizational, and financial data. Also, detailed aspects of methodologies, techniques, tools and experience in software requirements were determined. Most of this information was collected through questionnaires, with questions based on the literature (Sommerville, 2011;Bourque and Fairley, 2014). Interviews were also conducted to acquire qualitative references and validation information. Respondents were project managers, managers or owners of software development companies in Latin American countries.

Finally, a theoretical-empirical contrast was made for the identification of gaps and the generation of strategies to requirements process of requirements.

Scientific Literature

The study aims to identify more evidence on methodologies, techniques and tools in the RE process of software development. It is for this reason that a systematic mapping study (SMS) was chosen (Carrizo and Rojas, 2016).

Execution of the systematic mapping study

With the purpose of knowing the view of the scientific literature in RE regarding methodologies, techniques and tools, this mapping tried to answer the following question: What are the proposals concerning requirements engineering from in the scientific literature? It also seeks to identify the scientific interest through the percentage of publications in techniques, methodologies and tools proposed or analyzed in the literature.

Currently, there is an extensive list of databases of publications related to this issue, but in this study we have focused the main source of research in the area of software engineering. The appropriate database to find the largest number of related mainstream publications is the Web of Science (Granda and Alonso, 2010; Jiménez and Perianes, 2014). Opportunistic searches, such as references of related articles, articles recommended by specialists, and other previously identified articles were also made.

The search period includes publications from the internet boom in 1990 through to December 2015. The search string used in the public database is: (methodology OR techniques OR tools) AND requirements AND engineering.

Results of the SMS

The results of the search can be observed in Figure 2. After applying the first filter (abstract) and second filter (complete article), 55 primary articles were selected.

Research result of primary studies.
Figure 2
Research result of primary studies.

For the analysis of each primary study, a set of criteria was defined that served as a classification scheme to obtain a focused view of SR, such as: year of publication, type of proposal (methodology, technique or tool/framework), and activity (elicitation, analysis, specification or validation).

In Figure 3, a more complete view of the results of SMS, represented by a bubble graph, is presented. In it, the primary studies were classified according to the analysis criteria mentioned above. In addition, it can be seen that there is attention on the development of techniques and tools to support the activity of elicitation and analysis of software requirements.

Mapping of primary studies.
Figure 3
Mapping of primary studies.

Industrial Practice

To carry out the relevant data collection, questionnaires and interviews were conducted, based on the advanced empirical software engineering guide (Shull et al., 2008).

These instruments were applied to companies developing software in Argentina, Brazil, Chile, Colombia, Costa Rica, Ecuador, Mexico and Peru. The selection criteria of these companies depended on which countries registered the greatest increases of websites and use of information and communications technology (ICT) between 2006 and 2010 (OECD, 2016). The data collection period was made during the second half of 2015 and early 2016.

Execution of the survey

The development of the questionnaire was based on recommendations outlined in the guide to design questionnaires (Burgess, 2001), with questions formulated according to the RE literature (Sommerville, 2011;Bourque and Fairley, 2014). To avoid a low response rate, an introduction had been previously made to reduce uncertainties or surprises and encourage greater cooperation among participants (Malhotra, 2008).

The questionnaire was designed to be answered within 10 minutes, with clear questions focused on three main areas: demographic data (such as identification, location, organizational, financial), practices in RE and software development tools. The questionnaires were applied to professionals working as project managers, software engineers, programmers, CEOs and CIOs. The professionals who were surveyed were not part of the sample of participants in the interviews.

Sampling was non-probabilistic, since stakeholders were, generally, selected by the researcher’s personal criterion; that is, by convenience. This method was chosen due to the lack of updated information on the population of software producers in Latin America. The size of the sample is 240 companies and the size of the population is unknown.

On the other hand, the interviews were semi-structured. These interviews allowed knowing the vision and characteristics of the interviewee, the problems they face in the RE, and the uses of techniques, methodologies and tools in the development of projects.

Each interview was conducted by an interviewer at the developer’s workplace. Each interview had an average duration of 35 minutes and was recorded with audio only.

A Google search of software development companies in Argentina and Brazil was carried out, mainly due to the lower rate of responses in the surveys and the budget limitations of this study. In total, five interviews were carried out between November and December of 2015.

Survey results

The results of this study are compared with studies carried out in 2000 and 2003, since there are no articles with similar study objectives published in the meantime. Regarding the methodologies used by Latin American developers, ~80% of them recognized using SCRUM, unlike studies in the US (Neill and Laplante, 2003) and Finland (Nikula et al., 2000), which indicate that the methodology most used was Waterfall. Although the choice of a methodology is mainly conditioned by the complexity and duration of the project, as one of the interviewees pointed out: “If the project is large, we go for a traditional methodology. Methodologies are a little more agile for smaller projects”. It should be emphasized that the companies surveyed use their own adaptation of the selected methodology, whether traditional or agile.

Regarding the requirements elicitation techniques, 80% of respondents indicated that they use interviews and use cases. However, when applying interviews, they do not use a guideline or key questions for the understanding of the field, the system or the actors. Another problem detected in the use cases is that software engineers are not taking the time to describe the requirements in depth. These failures generate misunderstanding of the requirements and the elicitation process must be restarted.

The survey results showed that 20% of companies acknowledge that they do not use tools to manage the requirements of a project. Currently, Word and Excel documents are used mainly manually, but several tools have already appeared for both specification and requirements management, for example ANote, ASYNC, secure SR framework, metaEdit+, and ADVISOR SUITE. The use of these tools aims to improve productivity and quality in the development of software projects, as they facilitate the availability of information from different projects, facilitating the reuse of requirements and the control of changes. One of the interviewees pointed out some advantages in the tool used (Microsoft Team Foundation Server): “It has everything integrated; the best is its traceability and that it is bidirectional. From requirements, proposal, towards source code, and for changes the same: source code touched, I know what requirement belong.” They recognize that before, when they did not use management tools, they had a mess, resulting in more time spent in project development and increasing the workload of their employees.

Discussion

The following presents the contrast between the results obtained in the scientific literature and in Latin American industrial practice as a response to the research question: What is the real state of practice in RE in Latin America, considering methodologies, techniques and tools?

Requirement engineering techniques

In Figure 4 the interest of the scientific community in the requirements elicitation techniques is compared with the degree of adoption by the industry in each of these techniques. Note that several of the techniques registered in the scientific literature are variations of the main focus of the technique. These modified techniques were then considered as the main focus, in order to compare them with the elicitation techniques selected by the Latin American companies.

As shown in Figure 4, there is a clear difference between the techniques proposed in the literature and what is used in industrial practice. Techniques such as use cases and interviews are the favorites in industrial practice, with 80% of preferences, whereas in the literature only 24% of registered articles use them. With a lower percentage of use, the techniques of document analysis, data collection of an existing system, brainstorming and observation appear in the literature, but are rarely mentioned in interviews.

Comparison of requirements elicitation techniques in industrial practice and the scientific literature.
Figure 4
Comparison of requirements elicitation techniques in industrial practice and the scientific literature.

However, in relation to elicitation techniques, other types of techniques were gathered in the scientific literature, such as elicitation requirements through machine learning (Perini et al., 2013), cases of misuse for safety requirements (Mellado et al., 2010;El-Attar, 2012), elicitation requirements for social network analysis, and reuse of requirements (Benitti and da Silva, 2013), among other nonconventional techniques. These account for ~59% of the sample, while, in industry practice their use is ~3%.

Methodology used in requirement engineering

To be able to compare the methodologies proposed in the scientific literature, they were grouped according to their main focus, that is, each of the method variants was considered according to the base methodology.

Figure 5 shows the great interest in industrial practice of using Scrum (77%) and Waterfall (27%) methodologies, whereas in the scientific literature, in recent years, 82% of the methodologies registered in the area of requirements are focused mainly as goal-oriented (GORE) and agent-oriented (AORE) methodologies.

Comparison of proposed methodologies in scientific literature and industrial practice.
Figure 5
Comparison of proposed methodologies in scientific literature and industrial practice.

Requirements engineering tolos

Figure 6 presents a comparison of the interest of using tools as support in the different phases of RE proposed in the scientific literature and industrial practice. As can be observed, ~60% of the companies that recognized using tools, said they used them for project management and traceability of requirements, whereas in the scientific literature, the proposals and records of tools or frameworks are <10%.

For the elicitation and analysis phases, a large number of tools are proposed in the scientific literature (50 and 75%, respectively), whereas in industrial practice only 13% use tools for analysis and 7% in elicitation.

Tools that support the different phases of RE reported in the literature vs those used in industrial practice.
Figure 6
Tools that support the different phases of RE reported in the literature vs those used in industrial practice.

Summary of the discussion

In order to better visualize the behavior of the scientific literature and the industrial practice, Figure 7 presents a graph, with the red line showing the interest in scientific research in tools, methodologies and techniques, and the blue line showing the degree of adoption of the industrial practice in the areas already mentioned. In the figure we can appreciate the interest of the scientific community in the development of tools or frameworks that facilitate the different processes of the RE, while the use of tools in business practice moves away from these.

The use of different methodologies and techniques in business practice is greater, compared to those recorded in the scientific literature. This phenomenon can be moderated by factors such as the size of the sample in both business practice and in the quantity of articles registered in WOS, or in business practice, generate their own techniques and methodologies.

Summary of the contrast between scientific literature and industrial practice.
Figure 7
Summary of the contrast between scientific literature and industrial practice.

Conclusions

This study provides information on industrial practice and the scientific community in order to answer the research question: What is the real state of practice in Requirement Engineering in Latin America, regarding techniques, methodologies and tools? The study also identified the main gaps within the scientific literature.

The state of industrial practice in software development companies in Latin America and what the research literature asserts are very distant, even in common themes of RE, as in the use of interviews, use cases and scenarios. This may be since the Latin American industry is a young industry, where 70% of organizations have been operating for no more than 10 years.

On the one hand, in software development enterprises, it is recognized that the main problem is communication with stakeholders in the elicitation of requirements; but even so, little time is spent in this phase of the project, using elicitation techniques such as interviews and use cases, in which the application of a formal method is scarce. On the other hand, in the literature one can find several techniques proposed to mitigate this problem, such as interviews with key questions for the understanding of the field, which already depend on the initiative of the software development companies to devote more time in the improvement of its processes.

In industrial practice, support is required to improve the phases of elicitation, specification and management of requirements, while the literature provides knowledge in elicitation, analysis and specification, disregarding management issues. That is, although the literature offers help to improve processes, there is little adoption in industrial practice. Due to this scenario, it is suggested that businesses should approach the scientific community to discuss business practices and engineering problems. This recommendation is not only the result of our research; Beecham et al. (2014) obtained the same result.

Due to the detection of these gaps, it is proposed that the scientific community and business practices be approached by carrying out more meetings where the target public is the software industry. It is also necessary to develop action research in which the problems of the software industry are identified and solved; that is, researchers must work along with practitioners. The development of guides to best or ad-hoc practices, with their respective dissemination, would be of great help to the software industry. Finally, it is suggested that universities should be more focused in RE issues to train future developers.

There are several limitations of this research: only the Web of Science database was used for the search of scientific articles during the search period; only 35 Latin American companies were included as it was not possible to obtain greater collaboration from the original 240 firms considered. This implies that the sample was non-probabilistic and therefore the quantitative analysis can not be generalized; also, the lack of use of synonyms in the search string could limit the number of items reported.

As a continuation of the reported research, we hope to accurately record the experience of professionals in the requirements elicitation phase, taking into account issues such as the type of tasks they perform, duration, actors involved and areas of application. This is because several practices used in the industry are innovations of the own company and this would facilitate the development of the theory. In addition, it is advisable to evaluate the tools that facilitate the different processes of the RE, and thus guide their selection and use.

Acknowledgements

This work was funded by the Research fund of the University of Atacama, project DIUDA 22276.

REFERENCES

Antonelli L, Oliveros A (2002) Fuentes utilizadas por desarrolladores de software en Argentina para elicitar requerimientos. V Workshop on Requirements EngineeringWER`2002, pp. 1-19, 106116.

Beecham S, O’Leary P, Baker S, Richardson I, Nol J (2014) Making software engineering research relevant. Computer 47(4): 80-83. doi:10.1109/MC.2014.92.

Benitti FBV, Da Silva RC (2013) Evaluation of a systematic approach to requirements reuse. J. Univ. Comput. Sci. 19: 254-280.

Bourque P, Fairley RE (2014) Guide to the Software Engineering - Body of Knowledge. IEEE Computer Society. Piscataway, NJ, USA. 191 pp. https://dl.acm.org/citation.cfm?id=2616205

Bruegge B, Dutoit AH (2002) Ingenieria de Software Orientado a Objetos. Prentice Hall, México. 578 pp.

Burgess TF (2001) Guide to the Design of Questionnaires: A General Introduction to the Design of Questionnaires for Survey Research. Information Systems Services. University of Leeds, UK. pp. 1-27.

Cao L, Ramesh B (2008) Agile requirements engineering practices: An empirical study. IEEE Software 25: 60-67. http://doi.org/10.1109/MS.2008.1

Carrizo D (2015) Influential contextual attributes in the requirements elicitation process: a comprehensive literature review. Ingeniare 23: 208-218. http://dx.doi.org/10.4067/S071833052015000200006.

Carrizo D, Rojas J (2016) Clasificación de prácticas de educción de requisitos en desarrollos ágiles: Un mapeo sistemático. Ingeniare 24: 654-662.http://dx.doi.org/10.4067/S071833052016000400010

Cheng BHC, Atlee JM (2007) Research directions in requirements engineering. Future of Software Engineering (FOSE ’07). pp. 285-303. http://doi.org/10.1109/FOSE.2007.17

El-Attar M (2012) Towards developing consistent misuse case models. J. Syst. Softw. 85: 323-339. http://doi.org/10.1016/j.jss.2011. 08.023

Fricker SA, Grau R, Zwingli A (2015) Requirements Engineering: Best Practice. In Requirements Engineering for Digital Health. Springer. pp. 25-46.

Granda J, Alonso A (2010) ¿Que bases de datos debemos emplear para nuestros análisis bibliográficos? Web of science vs scopus. http://doi.org/10.1186/1742-5581

Hernández VS (2006) La Industria del Software, Estudio a Nivel Global y América Latina. Observatorio de la Economía Latinoamericana. 116 pp. http://es.calameo.com/read/000068238b672ae379f32

Jiménez C, Perianes A (2014) Recuperación y visualización de información en Web of Science y Scopus: una aproximación práctica. Inv. Bibliotecol. 28(64): 15-31.

Kassab M, Neill C, Laplante P, Neill C (2014) State of practice in requirements engineering: contemporary data. Innov Syst. Softw. Eng, 10(4): 235-241. http://doi.org/10.1007/s113340140232-4

Kitchenham B, Charters S (2007) Guidelines for performing Systematic Literature Reviews in Software Engineering. Technical Report. Keele University and Durham University. UK 44 pp. http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.117.471

Maibaum T (1997) What we teach sofware engineers in the university: Do we take engineering seriously? In Jazayeri M, Schauer H (Eds.) Software Engineering -Esec/Fse’97. Lect. Notes Comput. Sci. 22(6): 40-50.

Malhotra NK (2008) Investigación de Mercados. Pearson. Mexico. 919 pp.

Martinez S, Arango S, Robledo J (2016) The growth of the colombian software industry: o crescimento da indústria do software na colômbia. Rev. EIA 57: 95-106.

Mellado D, Blanco C, Sánchez LE, Fernández-Medina E (2010) A systematic review of security requirements engineering. Comput. Stand. Interf. 32(4): 153-165. http://doi.org/10.1016/j.csi.2010.01.006

Neill CJ, Laplante PA (2003) Requirements engineering: the state of the practice. IEEE Software 20(6): 40-45.

Nikula U, Sajaniemi J, Kälviäinen H (2000) A State of the Practice Survey on Requirements Engineering in Small and Medium Sized Enterprises. Tehcnical Report 1. Telecom Business Research Center Lappeenranta. Finland. 26 pp.

OECD (2016) Políticas de Banda Ancha para América Latina y El Caribe: Un Manual para la Economía Digital. OECD Publishing. Paris, France. http://doi.org/http://dx.doi.org/10.1787/9789264259027-es

Perini A, Susi A, Avesani P (2013) A machine learning approach to software requirements prioritization. IEEE Trans. Softw. Eng. 39: 445.461. http://doi.org/10.1109/TSE.2012.52

Shull F, Singer J, Sjøberg K (2008) Guide to Advanced Empirical Software Engineering. Springer. London UK.

Simbaña WJ, Simbaña JG (2015) Investigación de las Prácticas de la Ingeniería de Requisitos en las Empresas de Desarrollo de Software de la Ciudad de Quito. Tesis. Universidad de las Fuerzas Armadas. Ecuador. 108 pp.

Sommerville I (2011) Software Engineering. Pearson. Education, Hoboken, NJ, USA. Pp. 792 https://dl.acm.org/citation.cfm?id=1841764

Toro A, Cardona L (2013) Estado del Arte de la Ingeniería del Software en el Ámbito Nacional e Internacional de Acuerdo a Organizaciones que Tratan la Disciplina. Tesis. Universidad Católica Popular del Risaralda. Colombia. 188 pp.

HTML generated from XML JATS4R by