The key stages of the software development process include research (to determine the most suitable technology stack for the project), design (this one includes creating a project plan and a functional specification coming up with a time and budget estimate), development, testing, launch, and maintenance.
Depending on a specific project, some of the stages can take more time, or require some additional actions. For example, AI/ML projects require much more research, as compared with mobile application development.