This paper presents a programming education support method based on Agile Development that encourages and builds on communication between students. Through mutual discussion, students using our approach transform their ideas into software and cooperate to write a program. The students complete the software through repetition and programming. Before completing the software program, the students learn to solve problems by working together. The students are encouraged to think and share ideas, and gain experience writing software. With this approach, students not only learn how to write programs, but also increase their logical thinking, problem-solving, and communication skills.