|
|
|
» Habits of Effective Analysts
Software managers sometimes assume that every skilled programmer is also proficient at interviewing customers and writing requirements specifications, without any training, resources or coaching. This isn't a reasonable assumption. Like testing, estimation and project management, requirements engineering has its own skill set and body of knowledge. Unfortunately, most computer science educational curricula emphasize programming-related knowledge over other software life cycle activities. In addition, many software practitioners—including myself—lack formal education in their field. Self-study and on-the-job learning often neglect softer skills such as those needed in requirements engineering.
The role of the requirements analyst (also called business analyst, systems analyst, requirements engineer or requirements manager) is critical to a software project. Many organizations expect developers or project managers to handle this vital function on their own. And even if a project team does include dedicated analysts, their skills might not be up to the task. Too often, I meet analysts who have had little training in how to perform their job and who have few books, articles or tools available to help them. Analysts who come from a user background may lack technical understanding, while those who migrated from the development world may not understand the user’s business domain.
Every software organization should develop an experienced cadre of trained and knowledgeable requirements analysts, even though analysis might not be a full-time function on every project. An analyst provides a specialized capability that can make the difference between a project that succeeds and one that struggles. Here I describe several characteristics and practices of successful requirements analysts.
Author: Karl Wiegers
Read More ...
| Comments |
Currently, there are no comments. Be the first to post one!
You must be logged in to post a comment. You can login here
|
|