3.14 Source and sink analysis
Once requirements are documented using any of these analysis models, an independent verification is needed to verify completeness and consistency of requirements captured through these models. The process of verifying requirements involves careful analysis of sources as well as the sinks of information.
Source
A stakeholder describes requirements (needs, constraints) to be included as system
functionality. These can be processes that generate certain information that the system
may have to process or maintain. Sources of requirements are the origins from where the
corresponding business process is initiated. By this concept, one has to trace from a
requirement back to its origins to see who is involved in its initiation. Be it a person, an
organization or an external entity that initiate some action and system responds back by
completing that action.
Sink
Sink is the consumer of certain information. It is that entity which provides a logical end to a business process. Thus, ‘sinks of requirements’ is a concept that helps in identifying persons, organizations or external systems that gets certain functionality from the system. These are logical ends of requirements, or where all the requirements are consumed. For example, we may consider a user of a software application that retrieves a report from the system. In this case, user when reviews the report, becomes the sink of that report. Thus when analyzing the sink of the requirement of implementing a report, the analyst would naturally point towards the user who would get that report.
In source and sink analysis the analyst determines all the sources of requirements and where do these requirements consume (sinks). Now evaluate a report which displays certain information, the source of this report is the data (and who enters it) that is input to be retrieved later in the form of the report. Similarly, whoever needs this report become the sink of the report.
In a similar manner, at times we gather data in our application that is not used anywhere. So the question really is what to do with that kind of unused data or the missing requirement. Is it really redundant or is something really missing from these requirements? How to figure it out?
For example, we are having certain inputs (sources) to a process against which we do not know about the corresponding outputs (sinks). Such inputs are redundant if there is found no corresponding outputs. Thus these inputs can be removed as redundant. If we probe out corresponding outputs, which could not be recorded initially, that mean these inputs were not redundant rather a few (output related) requirements were missing that we discovered during the sink analysis.
A stakeholder may have required the development team to develop certain report for his use. It means we are sure of its use (sink) but not about its sources, from where the required information will be provided? Who will input that information and using what mechanism?
A requirement statement that describe the report but do not list down its sources, will be an incomplete statement and the software engineer who is involved in validating such requirements, should identify all the sources against sinks or vice versa to determine complete end-to-end requirements
Our next post will be Process Models.Once requirements are documented using any of these analysis models, an independent verification is needed to verify completeness and consistency of requirements captured through these models. The process of verifying requirements involves careful analysis of sources as well as the sinks of information.
Source
A stakeholder describes requirements (needs, constraints) to be included as system
functionality. These can be processes that generate certain information that the system
may have to process or maintain. Sources of requirements are the origins from where the
corresponding business process is initiated. By this concept, one has to trace from a
requirement back to its origins to see who is involved in its initiation. Be it a person, an
organization or an external entity that initiate some action and system responds back by
completing that action.
Sink
Sink is the consumer of certain information. It is that entity which provides a logical end to a business process. Thus, ‘sinks of requirements’ is a concept that helps in identifying persons, organizations or external systems that gets certain functionality from the system. These are logical ends of requirements, or where all the requirements are consumed. For example, we may consider a user of a software application that retrieves a report from the system. In this case, user when reviews the report, becomes the sink of that report. Thus when analyzing the sink of the requirement of implementing a report, the analyst would naturally point towards the user who would get that report.
In source and sink analysis the analyst determines all the sources of requirements and where do these requirements consume (sinks). Now evaluate a report which displays certain information, the source of this report is the data (and who enters it) that is input to be retrieved later in the form of the report. Similarly, whoever needs this report become the sink of the report.
In a similar manner, at times we gather data in our application that is not used anywhere. So the question really is what to do with that kind of unused data or the missing requirement. Is it really redundant or is something really missing from these requirements? How to figure it out?
For example, we are having certain inputs (sources) to a process against which we do not know about the corresponding outputs (sinks). Such inputs are redundant if there is found no corresponding outputs. Thus these inputs can be removed as redundant. If we probe out corresponding outputs, which could not be recorded initially, that mean these inputs were not redundant rather a few (output related) requirements were missing that we discovered during the sink analysis.
A stakeholder may have required the development team to develop certain report for his use. It means we are sure of its use (sink) but not about its sources, from where the required information will be provided? Who will input that information and using what mechanism?
A requirement statement that describe the report but do not list down its sources, will be an incomplete statement and the software engineer who is involved in validating such requirements, should identify all the sources against sinks or vice versa to determine complete end-to-end requirements
can u give any example of source and sink analysis
ReplyDeleteI also need
DeleteI also need
DeleteEvery good business must have a roadmap that tells exactly how the company is, its potentials and makeup. This important document serves as a guarantee for assistance by any technical or financial institution. It is thus imperative that young entrepreneurs consider developing their own business plan for their enterprises. https://1cad.cheapsoftwaredownload.net/autocad-civil-3d.html
ReplyDeleteAdobe has compiled many of its best-known programs along with several programs that it recently acquired from Macromedia into Adobe CS3. The suite includes original Adobe programs Photoshop and Illustrator as well as Fireworks, Flash, and Dreamweaver. All of the programs have been upgraded with new features and all are now fully compatible with one another. Learn more about the features and benefits of Adobe CS3. how to buy coreldraw online
ReplyDeleteYou have performed a great job on this article. It’s very precise and highly qualitative. You have even managed to make it readable and easy to read. You have some real writing talent. Thank you so much. Salesflow reviews
ReplyDeletewhat is good programming practices and guideline?
ReplyDeletewhat is file handling tips for c++ and java?
ReplyDelete