meyersbs / these-poc

Proof-of-Concept THESE Workflow
MIT License
0 stars 0 forks source link

Illustrative Example 1 #2

Open meyersbs opened 1 year ago

meyersbs commented 1 year ago

TacoSoft is a software company that creates point-of-sale systems, mobile applications, and websites for restaurants that sell tacos. Shell Taco (TacoSoft's biggest customer) has asked for a mobile app that allows customers to order food for pickup and delivery. TacoSoft assigns Michelle, a manager, to oversee a team of ten software engineers developing Shell Taco's mobile app. Paul, one of Michelle's software engineers, has been tasked with integrating the mobile app with car GPS systems, online mapping services, and services that track and report local traffic conditions. Upon finishing his implementation, Paul asks Michelle and two other members of their team to review his code. During code review, Michelle notices that Paul used deprecated API calls that will be removed at the end of the year. Michelle provides feedback to Paul, he apologizes, and he fixes his code before merging it into the production branch.

Paul's next assignment involves securing communications between the mobile app and car GPS systems. Paul identifies a well-known encryption library and begins reading through documentation to find the correct functions for his needs. Paul keeps getting distracted by his coworkers, Jennifer and Emilio, and he misses a warning in the encryption library's documentation. After completing his implementation, Michelle and Paul perform another code review. Again, Michelle notices that Paul has used an improper API call.

Noticing a pattern, Michelle calls Paul into her office for a discussion about his performance. Michelle asks Paul if he has any ideas about why he keeps making these errors, but he is genuinely unsure. Michelle does some searching online and comes across our taxonomy of developers' human errors. The next day, she calls Paul in for another meeting and shows him our taxonomy. Following our classification methodology, Michelle and Paul identify that Paul's errors are slips, failures resulting from inattention. Looking closer at our taxonomy, Paul realizes that he has been distracted by Jennifer and Emilio's loud conversations.

The following week, while trying to decide which function to use from a credit card processing API, Paul finds himself distracted by Jennifer and Emilio once again. Paul politely asks Jennifer and Emilio to take their conversation into the break room and they comply. Returning to his desk, Paul realizes that he initially chose the wrong API call for his needs and fixes his code. During Paul's next code review, Michelle notices that Paul did not make the same kinds of errors she had seen over the past few weeks.