Suitability of Software Development Methodologies for Greek Software Companies

A software development methodology in software engineering refers to the framework that is used to structure, plan and control the process of developing an information system. Different methodologies and models have been developed in the past decades to optimize and improve the process of software development. The specific development approach that we choose for a project has as much influence over a project's success as any other major planning decision that we make. Selecting an appropriate model can largely increase the possibility for the project to succeed. On the contrary, choosing an unsuitable approach or - even worse - not using any methodology at all, could be a constant source of problems and could eventually make the project fail. Therefore, it is of great importance that we pick a befitting model for our development process and stay consistent with it.

None of the existing methodologies should be considered as a panacea. Each one of them is suitable under different circumstances and aims to solve different kinds of problems. Choosing the appropriate one for each case depends on a large number of factors. Some of the factors that play a pivotal role in such a decision are the size of the development team, the scope of the project and the available resources. Risk involvement, technology used and staff experience are also important to consider. Other methodologies prioritize communication with the customer and revolve around the instability of the requirements. Consequentially, organizations dealing with software development constantly face the problem of selecting an approach that best suits their demands and little academic support exists to aid in that matter.

The purpose of this study is to examine the degree of suitability of the most popular software methodologies to fit the needs of Greek software companies. For measuring suitability we use a large number of different criteria including the factors mentioned in the paragraph above. In order to achieve our goal, we are conducting an online survey amongst several Greek companies, inquiring for key characteristics related to the process of software development.

This paper is organized in the following manner. We initially provide an overview of the main software development methodologies by summarizing their main points. Subsequently, we present a synopsis of their strengths and weaknesses and compare them to one another. After analyzing the survey's replies, we correlate the profile of the respondents to the methodologies introduced in the literature. Finally, we propose approaches that seem to be the most applicable for the average Greek software company.

The results of this research aim to aid software developers and project managers starting new projects in Greek software companies.

Keywords: Software Development Process, Software Development Methodologies, Software Engineering, Greek Software Companies

Άλλο: The results of this research could provide a starting point for software developers and project managers working in Greek software companies to engage in new projects.