We discussed different ways of talking through conflict, including asking / explaining assumptions, walking through process, and discussing outcomes. The goal here is to take a scenario to practice having different types of discussions working through different opinions. Ask the different questions, working back to assumptions, what outcomes each of you is trying to reach.
Practicing these verbal tools helps make them habit, even if done in easy situations.
Practicing these verbal tools helps make them habit, even if done in easy situations.
EXERCISE 1: Handy-Fit
For this scenario, it may be best to work in pairs as it’s mostly a one-on-one. You can peek at the client motivation if necessary.
Overview:
Handy-Fit is a group fitness start-up that uses woodworking / construction tools as fitness. Need a site that directs people to locations and classes. Allows users to register for a class.
Recommended solution:
Monolith in Ruby for both users and company operations. Management interface will allow editing of locations, class listings. User class registrations can be viewed in management interface. Can be manually edited/deleted in management interface.
View only one of the following and work through the conflict. You can peek at the client if there are questions that need answering.
For this scenario, it may be best to work in pairs as it’s mostly a one-on-one. You can peek at the client motivation if necessary.
Overview:
Handy-Fit is a group fitness start-up that uses woodworking / construction tools as fitness. Need a site that directs people to locations and classes. Allows users to register for a class.
Recommended solution:
Monolith in Ruby for both users and company operations. Management interface will allow editing of locations, class listings. User class registrations can be viewed in management interface. Can be manually edited/deleted in management interface.
View only one of the following and work through the conflict. You can peek at the client if there are questions that need answering.
Team member #1
Assumptions:
- Time-to-market is critical
- No mobile app plans in near future
- Minimal to no state tracking required
- Custom development to best leverage current team skillset
Team Member #2
Difference: Wants all services
Assumptions:
Assumptions:
- Needs flexibility for mobile apps
- Should use modern architecture
Team Member #3
Difference: thinks it should just be a CMS platform implementation, not custom dev.
Assumptions:
Assumptions:
- No commerce, no real interactivity
- Basically a content site
- Simple form management
TEam Member #4
Difference: Shouldn't use database for class registrations. Should use email.
Assumptions:
Assumptions:
- Time-to-market is very, very important
- Low usage initially so shouldn't be hard to manage
TEAM MEMBER #5
Roadblocker. Focused on what this system doesn't do.
This solution doesn’t allow a user to register for classes in bulk or prepay (which competitors have).
Worry that it won't be good enough and we need to do more.
This solution doesn’t allow a user to register for classes in bulk or prepay (which competitors have).
Worry that it won't be good enough and we need to do more.
Client
- Mobile app is not a need in the near future
- Our customers will just search on the web
- Time to market is huge. So many things out there, we need to have our voice heard and be discovered.
- Happy to spend more for new architecture when the business model proves out
- Proof point important for investors to give more funding to do big things
EXERCISE 2:
Use the scenario you used from Problem Solving. One of you represents the architect. Everyone else take a different Team Member description (the Architect doesn't open any of the sections). Take turns working through the different techniques for working through differences.
Use the scenario you used from Problem Solving. One of you represents the architect. Everyone else take a different Team Member description (the Architect doesn't open any of the sections). Take turns working through the different techniques for working through differences.
#1: Furniture Delivery
team member #1
Take a different approach to offline management. Couchbase (or something that syncs automatically) vs. writing your own services. Or if your team did choose an offline approach, argue now that it’s not needed. It’s complex to implement and installers can just download instructions before the go into a building.
team member #2
Take a different approach to visualization. AR vs. downloading PDFs (choose one that your team did not pick). Argue value of full visualization to remove uncertainty vs. cost and time to develop.
TEAM MEMBER #3
Believes we shouldn’t build a mobile app. Should just be a mobile-friendly web app. Or maybe a Progressive Web App. Test out the process and functionality first.
Or...if team's vision was to not have an app, argue for an app. Better for offline behavior. Can enable AR, etc.
Or...if team's vision was to not have an app, argue for an app. Better for offline behavior. Can enable AR, etc.
#2: Waiting Room Entertainment
team member #1
Monolith vs. services. If your team’s vision had a management interface that is service based, decide you support monolith for rapid development. Should be deployed separately and doesn’t require same scalability. If your team’s vision had a management interface that was monolith, push for service-based. Plan for the future, remote management capability through APIs, easier to develop everything in one architecture.
team member #2
Push for different approach in data management (single database vs. separate accounting / tracking database). Single database may be easier to stand up - less complication while getting to market. Separate database because accounting is complex and you want the “read” and streaming info database to be high performing and easily distributed.
TEAM MEMBER #3
Different approach to offline. If offline use wasn’t considered, push to add the extra work to do it (any service outage could jeopardize business). If it was in your vision, push to remove for time-to-market reasons (and any place that wants to use this should have good wifi).