Last time, I wrote about how the reductionist logic I used when studying science has benefitted my work as a requirements analyst. However, the benefits of a scientific background in this field don’t stop there. My studies also have also helped me understand how crucial communication and relationships are in requirements elicitation.
The importance of communication in software requirements is obvious, especially if you are eliciting information from stakeholders. If I’m going to write requirements for a million dollar project, where the implementation is crucial to your company’s future success, then you better hope that I understand what you need.
During my time at Seilevel, the thing that has become most obvious to me is the value of using visual models. By adding a visual layer of communication, I can significantly reduce the possibility that I miss an important piece of information in my requirements. Eliciting information from someone becomes a lot easier once you put something in front of them; it gives them a place to start the conversation and a path to completion. The team here at Seilevel has written extensively on the use of visual models, some of which you can find here.
I believe that my background in science has helped me with this type of communication. If you take multiple courses in psychology and biology, sooner or later you’ll start to apply that knowledge to both yourself and others. My science background has given me significant experience in the analysis and understanding of the communication between two entities.
An organism is truly an incredible and complex thing. At all levels, whether the organism or molecular levels, there will always be some sort of communication in order to carry out functions necessary for survival.
One concept that illustrates this communication is the concept of gene regulation. In gene regulation, certain proteins are produced based on a variety of different factors. For example, in the lac operon, certain proteins are regulated in response to a cell’s need to catabolize lactose. This is influenced by a number of factors, two of most influential being the abundance of both lactose and glucose. The operon determines the availability of both energy sources through a series of mechanisms, and decides whether or not it will spend resources creating proteins to import and catabolize the lactose.
The two energy sources have a relationship when it comes to the regulation of the lac operon. The goal of a student who studies gene regulation is to understand these relationships and the effect they have on one another, while understanding how the information is communicated. This “goal” is very similar to a goal I had on a recent project.
We needed to build requirements for a system that would be implemented to report a bank’s projected financial data. The first part of this exercise was to understand why it was being done, which was easy enough. The next part was figuring what needed to be done. Soon enough, it became obvious that this was not as simple as “take data object X and project it out nine quarters.”
Some data objects were influenced by others, the result of a whole report sub-schedule would be dependent on what happened in another. We also had the added challenge of aggregating data from multiple entities to a single holding company. Because of my background in science, I understood that there were relationships that had to be defined, and that I had to figure out what would happen to data object X if data object Y had been put under certain conditions.
Understanding some of the interconnectivity of nature has been one of the more beneficial results of my education. Fortunately, if the past is any indication of the future, it will be beneficial in my career as well.