Sunday, April 14, 2013

Requirement Artifacts by Business Analysts

QuestionWhat artifacts you would produce to satisfy developers and business stakeholder’s need?

Response: 
The way I approach is that I do a brief assessment of technical and business needs of the project. I also look for any environmental factors such as already existing templates, tools used, and so on.

My main aim is to decide a format/template in which I can put the requirements so that both the parties agree; we can stabilize the requirements and move forward in the acceptance and development process. The target is to generate accurate and concise artifacts.

I also try to understand the assumptions and constraints while eliciting the requirements.

If it is a functional requirement (like System Requirements Specifications (SRS), Business Requirement/Specification Document (BRD or BSD)) then I usually produce a flow diagram and use case document with screen shots. The document also contains UML diagrams, data dictionary assumptions, business rules, related reports, error handling, testing strategy, etc. If we have an existing system, then I would also include configuration changes, and data changes.

If it is a process requirement I would dissect each part of the process into various steps. For each step I would talk about the input and output data. What processing or decision will occur at each step? We can put a context diagram and then explode it into data flow diagram showing each level. We can also use Business process modeling.

If it is an interface requirement (like Interface Control Document (ICD)) I will mention technical details on frequency, format, fields, field length, mapping with existing data dictionary, Service Level Agreement (SLA),  along with the steps involved in how the interface will work. We will attach XSD or XML sample if possible.
This document could also include the non-functional requirements then I include performance, security standards, data migration and conversion needs, availability required, and interface needs (batch or messages).