Requirements discovery

Work in progress!!! Please come back after few weeks.

Discovery is process of working with customer to understand their need, blueprint the solution, gather detailed requirements, design technical aspects and prepare for the implementation.  Typically discovery contributes to 35-40% of the project duration and has critical influence on the success of the project.
In my point of view, based on the core subject of discussion, a typical discovery process for a software system involves the following 4 aspects – Business discovery, Functional discovery, Technical discovery, Content (data) discovery. Practically, all these have overlaps and happens in the overlaid fashion. However, an Architect has to keep all these 4 aspects in mind while driving the discovery phase.

Business discovery

Functional discovery

Technical discovery

Content (Data) discovery