ศึกษาวงจรชีวิตการพัฒนาซอฟแวร์ คำถามนี้ตอบในช่วงสองสัปดาห์แรกของวิศวกรรมซอฟต์แวร์ 101 เป็นคำถามที่เกี่ยวข้องและมีคำตอบที่แน่นอน แต่บางครั้งก็ไม่ชัดเจนนัก
หากคุณสามารถจินตนาการนักวิเคราะห์นักออกแบบผู้จัดการโครงการบทบาทอื่น ๆ เช่นไดอะแกรมเวนน์ขนาดใหญ่นักวิเคราะห์และนักออกแบบเหลื่อมกันอย่างมาก
นักวิเคราะห์มักจะเป็นผู้บุกเบิกในโครงการ พวกเขามักจะใช้ชุดข้อกำหนดพื้นฐานที่ผู้จัดการโครงการและผู้มีส่วนได้ส่วนเสียมอบหมายให้พวกเขาและทำสิ่งต่าง ๆ ด้วยหวีฟันที่ดีเพื่อหาว่าโครงการคืออะไร โดยเฉพาะอย่างยิ่งสิ่งที่เป็นความต้องการที่ไม่ใช่หน้าที่เป็น
นักออกแบบใช้เวลารวบรวมข้อมูลนี้จากนักวิเคราะห์ที่จะรีดออกมาเป็นความต้องการการทำงานพร้อมกับคนอื่น ๆ อาจจะ (หวังว่า) รวมทั้งUML
ในหมายเหตุด้านนักวิเคราะห์มักจะจ่ายมากกว่าโปรแกรมเมอร์