Once upon a time software development used to follow a very intuitive (often mistaken as common sense) process. Business analysts would talk to people with a problem (client) to get a better sense of the issue at hand. A solution would be brainstormed and presented to the client as requirements…