Robert Niggebrugge CofC CSCI 362 Fall 2020 Blog

HW9: Chapter 8 and reflections on testing

8.7) Write a scenario that could be used to help design tests for the wilderness weather station system.

  • John is a maintenance technician for wilderness weather stations. He generally services stations remotely but recently a station is experiencing hardware failure so he must make a physical visit. Before arriving John gathers as much error information remotely from the logs of the station. He also stays updated on weather information from surrounding stations for saftey and to cross reference information with the station experiencing hardware failure to also gather more information about the issue. As he arrives at the station he inspects all parts of the property that store or relay information. Here he finds an issue with a satellite dish being out of alignment. He corrects this and moves on with his inspection. John surveys the general electronics and other parts of the property to find issues. After this he verifies that the issue is fixed and exits the property.

  • 8.10. A common approach to system testing is to test the more important functionalities of a system first, followed by the less important functionalities until the testing budget is exhausted. Discuss the ethics involved in identifying what “more important” means.
  • The issue with this common approach is two fold. The only time that an engineer would establish what is more important is before hand in earlier phases of planning and development. This is a huge issue because while an engineer could be very experienced and understand a project well, they are still only human. They could not only incorrectly identify what is important vs not important in a certain sense, they could be completely right to identify something as not important and still miss a bug/unintended use case because they did not interact with this less important piece of the system. Secondly, there should not uncovered test cases due to budget restraints. Testing is a necessity for a system and is not a luxury. Concerning the ethical implication of "more important" there is a very clear undetone in the modern day. For most people working on projects for buisinesses what "more important" means is what they think will generate the most revenue. So many entities will cut corners on necessary things like testing in order put a product into production. However this can potentially have ethical implications for the users or could even end up hurting the buisiness itself. This means that "more important" has many more factors than can be anticipated and should be regularly revisited and restablished.