The core of the survey asked about the conceptual meaning of software engineering, the main limitations faced by developers and integrators and the possible solutions they may see. The primary professional demographics were also captured to better interpret the results with appropriate context.
The survey had a total of 42 respondents from a number of professional fields. Interestingly, not just the developers (33%) and researchers (10%) showed an interest in software engineering advances, but also team managers (10%), business consultants (14%) and others more tangential to the field (33%). From this limited, yet generally representative group, we focused on determining their understanding of the concept of Software Engineering. Surprisingly, we discovered that 86% of respondents were familiar with the field, implying that concept of software engineering has permeated through to most professional fields in today’s market. Of this group, we saw a range of interests represented, from those with in-depth knowledge of the field to those with limited general awareness.
When we enquired about the perceived importance and impact of Software Engineering research, a majority of respondents (81%) believed that research lead to "Better Quality Products". Other popular perceptions also included enhancement of industrial processes (64%), and an increase of industrial competitiveness (56%). These two show that the need for better quality software is still present in no small degree.
The next series of questions attempted to prioritise the main challenges and obstacles developers and integrators commonly face. We were not surprised to learn that the vast majority of respondents feel
overwhelmed by challenges surrounding the integration and delivery of software. These obstacles and hurdles cause delays and make predictions and planning of deployment timelines a tricky, frustrating, and ultimately thankless business, bordering on the black arts. The most common management techniques, through which the respondents try to solve these issues, are software modelling and DevOps approaches (roughly 40% each), which are naturally coupled. Additionally, the more traditional waterfall planning and delivery processes are now considered largely obsolete, with more than 70% of respondents stating they expected some sort of agile development methodology instead to help cope with the ever increasing complexity of their jobs.
From our survey, our respondents believed that the most crucial software tools for the improvement of the current state of affairs are, first and foremost, CI/CD systems (60%). This was closely followed by automatic code optimisation for the targeted infrastructure, and support for heterogeneous infrastructure (roughly 50% each). Interestingly, refactoring technologies, such as code smells detection and automatic code generation only received 30% support, which can be attributed to the still relatively unknown approaches (code smells) and lack of trust in automatic code generation.