Back in the days, during this time, each part of the SDLC (Software Development Lifecycle) was segregated into distinct teams. You have analysis & requirements gathering which consists mainly of SMEs (Subject Matter Experts) and/or BAs (Business Analysts). Architects would do the design. Development teams houses developers who implement the software by writing code. Testing teams perform System Testing. Operations manages the deployment onto production and is responsible for the general support & maintenance of the released software. All is well then.
Then came the time when people start to realise we need to do Agile for the benefices of all involved stakeholders, for the good and for the better of software development industry. We start to see Cross-Functional feature teams. Not much more segregated teams (although depending on circumstances, these still exists probably due to the nature of some business). However, this was mainly just the combination of development & testing teams. And then we start to add in some BAs. The whole development process from the traditional waterfall model starting from Analysis down to Testing have been streamlined.
But. A massive But.
Operations team (Ops) were still mostly a separate department. What has become so common is that these Cross-Functional (features team) teams tend to throw tested software ‘over the wall’ to the other side — the Operations team for them to deploy, and then manage, support, and maintain. Far from ideal. There have been lots of well documented articles on the problem so i’m not going to repeat here in my post.
And then, people start to bang on about DevOps. An even bigger revolution in my opinion. DevOps is massive.
I first came to the term DevOps back in early 2014 and i know DevOps existed well before then. But i can definitely say it wasn’t mainstream back then as it is now. Nowadays, DevOps is taking for granted wherever you go; from large enterprises to even very small startups.
DevOps is the coming together of Development & Operations together, working as one single unit, collaborating closely with each other and not doing…