From the course: Critical Thinking for Software Engineers: Practical Approach to Complex Software Engineering Challenges
Analyze problem statements
From the course: Critical Thinking for Software Engineers: Practical Approach to Complex Software Engineering Challenges
Analyze problem statements
- In 1997, Steve Jobs had just returned to Apple as CEO and the company was teetering on the edge of bankruptcy. The Macintosh's market share was plummeting and fewer computers were using its OS. To counter this, previous management decided to license the OS to other companies. While this strategy increased OS profits slightly, much fewer people bought Apple computers. This one small fix made things worse. The previous Apple management had analyzed its statement of the company's problems in a way that put the company in danger of bankruptcy. Being able to accurately analyze any problem statement is important to being an effective software engineer. So what goes into analyzing problem statements? Fundamentally, it's the questions you learn to ask as a kid. Who, what, where, when, why, and how. Let's break down the problem statement Apple Executives might have confronted. How do we make Apple's product lineup appeal to more computer buyers in the short term so that we can avoid bankruptcy? Who? The computer buyer. But don't assume, explore all avenues. For Apple, who was the enterprise customer? But Steve Jobs also considered the home consumer wanting to get online. For you, the who may be a teammate or a stakeholder, or perhaps you in two years supporting what you're writing now. What? The entire product lineup. Steve Jobs redefined this with a complete product strategy. Thinking more micro, what may be choosing between features or interfaces, or prioritizing some aspect of performance over another. Where? This is often implied by who. Corporate buyers looked in catalogs while home consumers shopped at big box stores. A common where in engineering teams is at what level in the architecture you build and support for a new change. When? Now. Apple needed immediate results, not a 10 year plan. You are more likely looking at sprints or quarters. Why? To avoid bankruptcy. Most projects won't be this critical, but it's important to be honest about the why. You probably have something in your goals for this. How? The outcome needed was a varied product lineup. Pre-Jobs, this meant several product lines. Jobs streamlined it to offer one product in many eye-catching colors. For you, part of the challenge is probably to define the how's available to you. Steve Jobs's problem statement analysis allowed him to begin a development process ending in the iMac, a candy colored computer that caught eyes in big box stores and was the best selling personal computer in America, saving apple, and leading to the smartphone world we live in today. Your problem statement analysis will help you and your team find and implement your best options.
Practice while you learn with exercise files
Download the files the instructor uses to teach the course. Follow along and learn by watching, listening and practicing.