In the world of softwares, have we ever thought how software companies work ?
Let’s try and understand by looking at a software company like a machine; one that produces code.
First parts
Introduction begins with …
Client
These are the guys who need problems solved. They speak human Language, and don’t know technology. |
Speaks Green and Blue language |
Business Analyst ( Translator )These guys are multilingual. They speak both human and technology. Their job is to translate one language to another. |
20 feet picture
Clients provide business requirements ( in Green language ). Business analysts translate them to technical requirements. ( in Blue language )
Then comes an expert …
Speaks Green and Blue language |
Architect
This guy is also multilingual. He helps create rules so that minimal effort produces the maximum result.
His qualification is that he has made lots of mistakes and knows how NOT to make them. |
The architect creates a template ( or rules ), that give the maximum output with the minimum input.
50 feet picture
Combining what we’ve understood till now, we have:
Clients ( giving requirements ) -> Analyst ( translating ) -> Architect ( making rules )
So far so good ! Next we have ….
Software Engineer
He speaks only technical language ( Blue ), and knows how to write code. |
Tech Lead
With some experience, he knows more about writing code than software engineers do. |
and
|
ManagerResponsible for oiling the machine so all parts smoothly ( and without friction ) |
A Lead will work with a manager and many software engineers ….
… as well as with other leads.
100 feet picture
Leads and engineers use the business requirements and the rules to start producing code.
Moving on ….
Testing team
Responsible for finding mistakes with the code. |
Bugs
Mistakes with the code |
Testing team looks 🔎🔎 for any issues with the code. In case they find issues, they are sent to the Developers and Leads for fixing 🔧🔨🔩.
Cycle repeats until the code is good enough.
500 feet picture
Here is the picture from raw requirements to buggy code.
Finally ….
|
Quality Filter
Verifying whether the code behaves as the client expects it to. |
|
Signoff
Approval from the client that code works as expected. |
1000 feet picture
And this is how a software producing machine works !
Write back, in case you have an opinion. Like what you read – do like, comment and share.
1 thought on “Software Producing Machine”
Comments are closed.