VietIndo Team is really fortunate to be selected to develop the Information System Prototype for Rhine IJssel Hospital.

For the first Report that to be handed is Project Planning Documentation.

In this Report VietIndo team have to choose a software development model to manage the project. We have to justify why we think the chosen model is the most appropriate. Then we have to make a plan which consisting project phases, activities, milestones, etc according to selected software development model.

Today I read about Waterfall and IID (Iterative and Incremental Development Model) on the documentation that our supervisor gave in https://online.han.nl/. It consist of:

– IID a brief history

– IID article by Robert C. Martin

– Incremental vs Iterative Development article by Alistair Cockburn

– SDM and Planning Documentation by Marco Engelbart

– Software Development Methods Slide Show by Marco Engelbart

– The Waterfall Model article by Adrian Als & Charles Greenidge

After reading the article I understand that waterfall is the oldest paradigm for developing software, it gives us practice to think before code so we can lying foundation to next phase of software development. IID methodology come to empower the previous methodology, it gives us a big advantage which is the ability to think it through in small increments, and use code to verify that our thinking was correct.

The materials I described above also introduce me to Scrum, which after I googling I found ebook titled: Scrum In Action by Andrew Pham and Phuong-van Pham. These are few quotes that I found interesting from the book:
Change is always difficult unless properly managed. But with good management these difficulties can be turned into opportunities.
….

Agile manifesto:

  •  Individuals and interactions over processes and tools
  • Working software over comprehensive documentation
  • Customer collaboration over contract negotiation
  • Responding to change over following a plan

What is the difference between Agile and Scrum? I found a good article in here: http://www.differencebetween.com/difference-between-agile-and-vs-scrum/

Agile and Scrum are terms used in project management. The Agile methodology employs incremental and iterative work cadences that are also called sprints. Scrum, on the other hand is the type of agile approach that is used in software development.

Agile

The Agile methodology is used in project management and it helps project makers to build software applications that are unpredictable in nature. Iterative and incremental work cadences called sprints are used in this methodology. It is basically inspired from traditional sequential model or the waterfall model.

The benefit of using the Agile methodology is that the direction of the project can be accessed throughout its development cycle. The development is accessed with the help of iterations or sprints. At the end of each sprint, an increment of work is presented by the team developing the project. The focus is mainly on the repetition of work cycles and the product they yield. This is the reason why the agile methodology is also called as incremental and iterative.

In agile approach, the each step of development such as requirements, analysis, design etc are continually monitored through the lifecycle of the project whereas this not the case with the waterfall model. So by using agile approach, the development teams can steer the project in the right direction.

Scrum

Scrum is a type of agile approach that is used in development of software applications. It is just a framework and not a methodology or a full process. It does not provide detailed instructions to what needs to be done rather most of it is dependent on the team that is developing the software. Because the developing the project knows how the problem can be solved that is why much is left on them.

Cross-functional and self-organizing teams are essential in case of scrum. There is no team leader in this case who will assign tasks to the team members rather the whole team addresses the issues or problems. It is cross-functional in a way that everyone is involved in the project right from the idea to the implementation of the project.

As it is an agile methodology, it also makes use of series of iterations or sprints. Some of the features are developed as a part of the sprint and at the end of each sprint; the features are completed right from coding, testing and their integration into the product. A demonstration of the functionality is provided to the owner at the end of each sprint so that feedback can be taken which can be helpful for the next sprint.

The product is the primary object of a scrum project. At the end of each sprint, the system or product is brought to a shippable state by the team members.

I will closed this journal through what Robert C. Martin said in his articles:

If you follow the advice above and begin developing projects in an iterative and incremental way, bluebirds will not fill your sky. Schedules will still be missed, there will still be bugs, problems, and mis-aligned expectations. Software is, after all, software; and software is hard. However, what you will be doing is using a process that produces data; whereas waterfall produces none.
With that data, managers can try to manage the project.

Target for tomorrow is come up with proposed Software Development Model to work on our Hospital Information System Prototype.

Good Day Everyone :)

Advertisements