In this article, I model how a problem-posing framework can be used to enhance our abilities to systematically generate mathematical problems by modifying the attributes of a given problem. The problem-posing model calls for the application of the following fundamental mathematical processes: proving, reversing, specializing, generalizing, and extending. The given problem turned out to be a rich source of interesting, worthwhile mathematical problems appropriate for secondary mathematics teachers and high school students. As a student and teacher of mathematics, I was intrigued about the origin of mathematical problems, especially nontrivial problems whose solutions are not obtained by a formula or algorithm, problems that somehow extend the frontiers of our personal mathematical knowledge. When, as a student, I solved nonroutine textbook problems, I thought, not only of devising a plan or a solution, but also of how the textbook authors and mathematicians generated mathematical problems. Their origin remained an enigma to me until later when, as a teacher, my curiosity led me to read The Art of Problem Posing (Brown & Walter, 1990). This book provided insights into the origin of mathematical problems and motivated me to examine more closely the relationships among related problems. In their book, Brown and Walter propose the "What-if" strategy as a generic means to modify a given problem to create additional related problems. Because I am a geometry lover, I first applied Brown and Walter's "What-if" problem-posing strategy to geometric problems. As a result, I developed a problem-posing framework that has guided my students and me to pose mathematical problems systematically. This problem-posing framework calls for the application of the following prototypical problem-posing strategies: proof problems, converse problems, special problems, general problems, and extended problems. I often use the Geometer's Sketchpad (GSP) (Jackiw, 2001) to verify the reasonability of the resulting conjectures. The main purpose of this article is twofold. First, I model how the framework can be used to generate nonroutine mathematical problems from a given problem and, as a consequence, to discover mathematical patterns and relationships. Second, I discuss some of the difficulties that my students, prospective secondary mathematics teachers, experience when generating mathematical problems. The approach described below reflects the approach that I have followed in class. Because the focus of this article is on problem posing, proofs for most of the resulting theorems are not provided.