Stakeholder Specification Evaluation for Merge Python Dictionaries
As the stakeholders did not defined the name of the tool / script we have to define it. See output requirement. |
Analytics for above need: Missing name of the tool / script (EVAL_STAKE_MISSING_NAME)
The Merge python dictionaries (CSTRQ_MERGE_DICTS) does define to “merge dictionaries”. So we made it avaialbe it as software requirement, in Merge python dictionaries (SWRQ_MERGE_DICTS). We want to make it more obvious that this means even none, one, two and more dictionaries. Even we improve the description in the Definition: list of dictionaries (SWRQ_LIST_OF_DICTS) to explicit mention a list of dictionaries. |
Analytics for above need: Explicit definition of "dictionaries" (EVAL_STAKE_MANY_DICTS)
The Merge python dictionaries (CSTRQ_MERGE_DICTS) does define a merge conflict as same Key and different Value. So we derive that the same key and same Value is not a merge conflict. |
Analytics for above need: Merge python dictionaries (EVAL_STAKE_DOUBLE_DEFINITON_ALLOWED)
The stakeholder requirements are not defining the behavior in case not valid input is provided. So we define if we get something else than a list or empty list, we ill indicate the appropriate python exception for invalid type: AttributeError |
Analytics for above need: Invalid input (EVAL_STAKE_MISSING_INVALID_INPUT)
In some cases, a merge conflict is not stop sign. It is possible to proceed, if we define the merge behavior in such case: If we have the same key in two dictionaries but different content, the first value shall be in the final dict. |
Analytics for above need: Missing definition for output in case of merge conflict (EVAL_STAKE_OUTPUT_CONFLICT)