What model of software development process is most used by current companies?

I just graduated from a computer science graduate.
Now I know about all the models of the software development process, i.e.

• Waterfall Model • Spiral Model • Iterative and Incremental Development • Agile Development [I don't know much about this] 

But I want to know what new companies use most?
Is there any new model besides this, which is new, and everyone does not know about it?

+4
source share
7 answers

Agile - SCRUM is widely used today.

+7
source

I would say that the most widely used method is “make it work now, do it well later” (later, as if you no longer work there or the product dies).

Is this the best method? Absolutely not. But you asked to use it most widely.

+13
source

I say that most companies have cowboy coding, because their management just does not care about the development process ... they just want everything to be done quickly.

Of course, the best companies ... and those for which you want to work, must have a process in place. I believe that Agile methodologies and practices, such as Scrum, Test Driven Development, Continuous Integration and Iterative development, are most often used by these companies.

Recently I decided to start working in a large organization with cowboy coding ... and I offer flexible methodologies for changing processes here and improve the quality a bit.

+7
source

Perhaps not what you want to hear, but "Agile" is not a process model, but a set of settings that can, for example, be used even with Waterfall. A software development process model would be similar to eXtreme Programming or Crystal Clear.

The problem is that although the term “Agile” was created to define a set of attributes (see the agile manifest), it was redefined by the community to refer to methodologies. Any technique (for example, Scrum or XP) can be implemented as flexible or impervious.

In addition, methodologies / processes are aimed at solving various problems. Some of them provide processes for software developers (for example, XP defines pair programming and TDD), while others provide processes for project management (for example, Scrum and XP). Therefore, comparison is difficult, and sometimes pointless.

To some extent, everyone is a waterfall, it just depends on the level of focus.

I recommend reading Alistair Cockburn. Different teams and different levels of criticality require different solutions. See Crystal Task Set. Alistair spent almost 20 years studying successful and not-so-successful teams around the world. He found, for example, that in a small team, the actual process is less relevant than attributes such as frequent delivery.

Hope this helps.

+2
source

This is mainly a model of a waterfall.

For process control programs, people go into iterative processes to develop software such as Agile.

I prefer TDD.

+1
source

Any process model is not good, it's not bad. Because it depends on the software that you are going to develop. According to my discovery, the incremental process model is improving.

+1
source

I am afraid that one of the harsh realities of gradation is that “majority” software development takes place in large corporate environments, and most corporate IT departments still use a waterfall (most often called at least in the UK). A structured approach to development.

In short, this is a project -> Build -> Test -> Deployment -> Maintenance

This approach is more driven by the need to manage budgets, delivery, timelines, and maintain audibility, rather than developing great software ... but hey, what is the world we live in ...

0
source

Source: https://habr.com/ru/post/1311826/


All Articles