Who writes functional specification in a software company ? Given a software company typically comprises of Software Engineers, Engineering Managers, Product managers and Directors?

  • Functional specifications are typically created and maintained as a result of lengthy discussions between the stakeholders (basically anyone who chimes in) that happen over a long period of time. Changes happen; sometimes a software feature is partially implemented based on an earlier iteration of functional specification, and then it is revised later due to necessity. – rwong Feb 18 '18 at 10:36
  • 1
    A side note on any exam-related questions. The "correct answer" for an exam-related question is always defined by the organization that defines the exam. The organization is free to define anything as their "correct answer", regardless of how that question would be answered by people in the industry all over the world. In other words, if the exam org defines that the answer is "Lemon officer. The lemon officer of a company writes functional specification." Then this is how the exam org would score its papers. Nobody else would be able to criticize. The only recourse is to abandon the exam org. – rwong Feb 18 '18 at 10:39
  • Anyone writes the technical spec. Sometimes nobody does. Ask “who should write it”, that’s a question that can be answered. – gnasher729 Feb 18 '18 at 16:17
  • Here, there's a role for that job: functional analyst. The technical specifications are gathered and written by the architect and the engineer. – Laiv Feb 20 '18 at 7:32

If it is a you-ask-we-write kind of company, the client does.

If it is a company that thinks it has a great idea and intends to just create something and then try to convince potential clients to buy their product, it may be the entrepeneur himself.

Most often though no one does. Someone just thinks out loud for a moment and another one starts coding.

  • Often the client isn’t very good at this. In these cases the client tells what they want as well as they can, and the company turns it into a functional spec. The client can review that spec which is much easier than writing it from scratch. – gnasher729 Feb 18 '18 at 16:20
  • @Doc Brown If the client's wish list is all there is, then that is the functional specification. My point is that a lot of software is produced without a formal functional specification as defined in academic literature. Which is in line with your own comment so I don't see your point. – Martin Maat Feb 18 '18 at 21:57
  • @DocBrown You don't need to be rude!! and you don't need to show off. Your comments are probably the worst (it doesn't help anyone). you are adding nothing to the discussion! I actually don't need your help! Now, I know you will try and do something coz you got some points...Goodluck! – user1870400 Feb 19 '18 at 10:53

Not the answer you're looking for? Browse other questions tagged or ask your own question.