در کل برای طراحی نرم افزار ابتدا باید نیازمندی ها رو شناسایی کنید بعد پروزه رو طراحی و بعد هم پیاده سازی کنید.
بهتر هست ابتدا نیازمندی های اصلی رو شناسایی، طراحی، پیاده سازی و تست کنید و همینطور قدم به قدم جلو برید. توجه کنید که برای انجام این کار باید برنامه رو مولفه گرا یا Component Driven طراحی و پیاده سازی کنید. در هر مرحله هم سعی کنید تا یه بازخوردی از مطلوب بودن یا نبودن پروژه کسب کنید تا اگه تغییری نیاز هست انجام بشه کار به آخر پروژه نیوفته و اگر هم نیازمندی جدیدی اضافه شده متوجه بشید. همینطور که پیش می رید می تونید نیازمندی های جدید و به تع اون مولفه های جدید رو به پروژه اضافه کنید و تست و فید بک گرفتن رو هم به طور مکرر انجام بدید