Iteration one will put the foundation of all activities that depend on it. Just like building a house, putting a strong foundation is very important. The sustainability of anything we build on top of it directly depends on the strength of the foundation. The quality of the products built on subsequent phases also relies on this foundation.
Based on those factors, I decided to make the duration of the first phase a little longer from subsequent phases. The first iteration will take three weeks, while other subsequent iterations will take two weeks.
The first phase will be started by defining requirements and modeling use-case. Many subsequent activities from design phase until testing phase will be conducted in order. This first phase will end when the product is ready to be reviewed by customers, subject to scope defined in the requirement phase. The result of this first phase is production quality software, not just a throw away prototype.
The focus of this first phase is to make sure that the overall architecture can be established. In other words, it will be proved to work. The first phase also will tackle the core or basic requirements of a blogging system, i.e.: viewing the homepage which consists of recent posts, and viewing a single post in a page.
Some architectural decisions will be put into work here: MVC, repositories, and service layer. Dependency injection will also be applied in this early phase. TDD style programming will also be started. It seems to be a lot of work in the beginning.
OK, I'm starting now...


