Aspiration and Advisory

View Original

Technical Advisory Best Practices

This article contains best practices for technical advisory on software development projects. No matter if you are the experienced advisor or just starting work in this area — you may use these recommendations every day on every project.

Understand The Use Case

Every time the advisor starting work on some project, he has to have a full and clear understanding of the domain model and the use case. It usually also includes an understanding of both business and technical requirements and the overall structure of the whole project.

Another good recommendation is to think about the things not mentioned in requirements or bot discussed with a customer. Some features or configuration options may not be mentioned while they are needed. Such cases have to be highlighted and discussed to save time and effort in the future.

Keep It Simple

When advisor gives some recommendations they have to be simple, clear, and do not contain ambiguities. This way all persons who read them are going to have exactly the same picture in mind. Advisor has to share additional information or knowledge required to understand the recommendations, however is it better to minimize it if possible.

It is crucial to write recommendation is such a way that both business and technical persons can understand it correctly. Such recommendation may contain additional explanations for different groups of readers, but overall understanding has to be the same.

There is a best practice to avoid writing a lot of text and use graphical elements instead. Advisor may use tables, lists, graphs, images and other ways to show what to do and how to do it. Such mixed content is much easier to read and understand.

Provide Examples

Every recommendation has to have a good explanation and example to demonstrate how to use it. There is a best practice to use real-life data or be as close to it as possible. Fake or random data may be OK in some technical aspects, but not in the business use cases.

It is important to provide examples of both positive and negative use cases. Everybody has to understand how to use the feature, how not to use it, and what the consequences are. This way, the advisor can decrease the number of errors both during the developments and usage phases.

Write Documentation

Finally, all the recommendations, descriptions, examples and any other useful information has to be written and sent to all interested persons. If there was a discussion and some actions taken as a result then this documentation has to contain this information. If there was an inconsistency in the feature description or lack of requirements then need to mention that and mention possible scenarios with recommendation for each scenario.

As you can see, doing technical advisory properly is not a simple task. It requires good understanding of all related aspects, but first of all business and technical areas. Advisor has to give a relevant recommendation for each requested use case and explain it in details to guarantee the best possible results.