Object oriented paradigm
Long time ago, structured programming was the only paradigm in programming but things changed… With the new object oriented programming developpers lived a new philosophy of software.
Programs, procedures, funcions, …. now with the object oriented programming were not as important as objects, methods, properties, messages, etc.
Lots of senior programmers were astonished with the object oriented programming principles. All programs now are objects with a set of properties and a behaviour called methods… The objects will interact with other objects and so on in order to build a program.
Nowadays is almost impossible to program without using objects. That kind of programming is closer to real life and junior programmers prefer this paradigm because is easier to understand and to design.
As you can see in the former picture, all OOP stages are overlapped. The first stage is to analize the real world. This stage leads to design the program and after that, the developer write the code of the software.
As you can guess, there are no borders in between stages. The beginning of a new stage and the end of the former sometimes are overlapped.