A successful design framework should have definable steps to guide the way, but also be flexible enough to allow for changes in direction. This is my preferred design framework for most problems:
Get Inspired and Informed
Do we understand the problem and the domain? What do we know about who will use the product and to what end? Do we understand user motivations? What gaps in knowledge exist about user habits and behaviors? What else is going on with competitors and adjacent markets that might influence what we’re doing?
What do we need to create to prove the point? What level of design fidelity is appropriate to sell our concept to end users? The are innumerable ways to create a prototype – the point is make one as soon as you can. Prototyping can be as simple as sketches, or as advanced as a fully coded prototype. There are no rules in prototyping.
Show it to People
Take your prototype and show it to someone. Ask them what they think. Get as close the the real consumer as you can. Based on what you’ve learned, how should the design change? Do we think our feedback means the research was flawed? Where can we proceed with further depth and where do we need to go back and rework?
Each of these phases can include more granular design methods and activities such as participatory workshops, wireframes, UI design, qualitative research etc. These phases are broad and as such can be altered or supplemented as a given problem requires.