A Survey of Software Engineering Practices in Turkey (extended version)
Context: Understanding the types of software engineering practices and techniques used in the industry is important. There is a wide spectrum in terms of the types and maturity of software engineering practices conducted in each software team and company. To characterize the type of software engineering practices conducted in software firms, a variety of surveys have been conducted in different countries and regions. Turkey has a vibrant software industry and it is important to characterize and understand the state of software engineering practices in this industry. Objective: Our objective is to characterize and grasp a high-level view on type of software engineering practices in the Turkish software industry. Among the software engineering practices that we have surveyed in this study are the followings: software requirements, design, development, testing, maintenance, configuration management, release planning and support practices. The current survey is the most comprehensive of its type ever conducted in the context of Turkish software industry. Method: To achieve the above objective, we systematically designed an online survey with 46 questions based on our past experience in the Canadian and Turkish contexts and using the Software Engineering Body of Knowledge (SWEBOK). 202 practicing software engineers from the Turkish software industry participated in the survey. We analyze and report in this paper the results of the questions. Whenever possible, we also compare the trends and results of our survey with the results of a similar 2010 survey conducted in the Canadian software industry.
💡 Research Summary
The paper “A Survey of Software Engineering Practices in Turkey (extended version)” presents a comprehensive empirical study aimed at mapping the current state of software engineering (SE) practices across the Turkish software industry. Recognizing the importance of understanding regional variations in SE techniques for both academic research and industry policy, the authors set out to provide a high‑level, yet detailed, view of how Turkish firms conduct requirements engineering, design, implementation, testing, maintenance, configuration management, release planning, and support activities.
Methodologically, the authors designed an online questionnaire consisting of 46 items, grounded in the Software Engineering Body of Knowledge (SWEBOK) and informed by prior surveys conducted in Canada and earlier Turkish contexts. The questionnaire was structured around nine SE knowledge areas, each probing the prevalence of specific techniques, tools, and process maturity levels. To enable cross‑national comparison, many questions were deliberately aligned with those used in a 2010 Canadian survey. The survey was distributed to practicing software engineers in Turkey, yielding 202 valid responses. The respondent pool covered a mix of large enterprises (38 %) and small‑to‑medium enterprises (62 %), with roles ranging from developers (57 %) and test engineers (12 %) to project managers (9 %) and quality assurance specialists.
Key findings can be summarized as follows:
-
Requirements Engineering – While regular customer meetings (71 %) and documented requirements (58 %) are common, only 45 % of respondents use a formal traceability matrix, indicating limited systematic traceability.
-
Design – UML diagram usage stands at 60 %, but comprehensive architectural documentation is produced by fewer than 30 % of teams, suggesting a gap in high‑level design artifacts.
-
Implementation – Object‑oriented programming dominates (85 %). However, code review practices are adopted by only 38 % of respondents, and pair programming by 22 %, reflecting modest adoption of collaborative coding techniques.
-
Testing – Unit testing is performed by 55 % of participants, yet automated testing tools (e.g., JUnit, Selenium) are employed by just 18 %. Test‑coverage measurement is routine for only 27 % of teams, and continuous integration (CI) pipelines are in place for 24 % of respondents. Continuous deployment (CD) is even rarer at 9 %.
-
Configuration Management – Git is the de‑facto version‑control system for 78 % of respondents, while Subversion lags at 12 %.
-
Release Planning & Deployment – Agile sprint‑based planning is used by 41 % of teams, co‑existing with waterfall‑style planning (35 %). Automated release tooling is reported by only 15 % of participants.
-
Maintenance & Support – Ticketing systems are used by 68 % of respondents, but service‑level agreements (SLAs) are formally defined by only 35 %, indicating limited maturity in support processes.
When juxtaposed with the 2010 Canadian survey, Turkish firms show lower adoption rates for requirements traceability, automated testing, CI/CD, and architectural documentation, but comparable or slightly higher usage of Git and agile sprint planning. This pattern suggests that while Turkish organizations have embraced certain agile practices, they lag behind in the automation and continuous delivery aspects that characterize mature DevOps cultures.
The authors discuss several plausible drivers of these gaps: limited access to specialized training, cultural resistance to process change, and the financial constraints of smaller firms. They recommend a staged improvement approach, leveraging maturity models such as CMMI, and call for governmental and academic initiatives to provide targeted DevOps and test‑automation curricula, especially for SMEs.
Threats to validity are acknowledged. The data rely on self‑reported perceptions, which may be biased toward socially desirable answers. The sample is skewed toward SMEs, potentially under‑representing practices in large, multinational subsidiaries. Moreover, the questionnaire, while extensive, cannot capture every nuance of SE practice (e.g., domain‑specific methods).
In conclusion, the study confirms that the Turkish software industry is actively evolving its SE practices, yet significant opportunities remain to increase the adoption of automated testing, continuous integration, and systematic requirements traceability. The authors suggest future work that combines qualitative interviews, longitudinal tracking, and domain‑specific analyses to deepen the understanding of how Turkish firms transition toward higher‑maturity SE processes.
Comments & Academic Discussion
Loading comments...
Leave a Comment