Thursday, 18 September 2014

Which Agile Technique or Tool would be the right fit for software development Projects?

A change in outlook is required in Agile methodologies as compared to other traditional approaches. The fundamental focus in Agile is to achieve maximum business value as compared to the scope in Waterfall methods. In Agile, quality and constraints can be changed to realize the main objective of accomplishing maximum business value  while in Waterfall, cost and schedule are altered to ensure the desired scope is achieved.
The Waterfall model will fit for well-organized and foreseeable projects wherein accurate estimation and well demarcated project requirements are prevalent. However, these types of projects are on the decline in many organizations and industries. Why the decline? Shifting requirements from customers’ impacted businesses to urgently adapt and contemplate objectively the pros and cons of their delivery methods.
In software development projects, Agile techniques and tools matter a lot – in choosing those tools which would be a perfect fit in consonance with their project features and requirements, vision and mission statements, organizational culture and structure.
Kanban accentuates just-in-time (JIT) delivery and strive to prevent overburdening developers. The pull principle is made use of by Kanban in the creation of task queues. The tasks are exhibited using visual aids. On the basis of availability of capacity, the developers pull tasks from the queue. Kanban as a visual management process and the Kanban method, which can be defined as incremental evolutionary process management are the two broad types of Kanban.
Lean Kanban is a set of values and principles summary on how to get success with product development. Whereas, Kanban is a process tool through which these values and principles are put into practice.
Scrum’s adaptability to change that form its core principle benefits intricate projects with uncertainty of a higher magnitude wherein undertaking long-term projections and estimations would definitely entail high risk. Scrum works best for projects wherein project requirements in the longer run are almost uncertain, the projects get impacted by the rapidly fluctuating market dynamics, and where teams would be expected of to have more flexibility.
The prime focus of Crystal family of methodologies toward efficiency, osmotic communication between team members and feedback-based learning for future operations can be adopted by teams if it suits their requirements pertaining to the project.
Extreme Programming is an Agile practice premeditated to improve software quality and responsiveness as per changing customer wants. It is characterized by a flat management structure. It has a few definitive features such as pair programming, unit testing of all code, and frequent communication with customers and programmers.
There is no magic rule that a team needs to use a particular Agile tool ‘only’ as that would depend on the project features and requirements, and how they are going to manage it.

 To know more click on:  http://www.scrumstudy.com/blog/

Thursday, 4 September 2014

Empirical Process in SCRUM

Three pillars in SCRUM:
SCRUM uses an empirical approach in order to adapt to the changing requirements of the customer. Hence this allows in situation when the inputs and outputs are more complex, and when they are not perfectly defined or repeatable.
Empirical process is considered to be more appropriate for such complex situations.
The three pillars of Scrum are transparency, inspection and adaptation as per the empirical process control.
Transparency
Transparency in Scrum can be viewed in the form of Product Backlog, Task Boards and Burndown charts, Daily Stand-ups, Retrospectives, Sprint Reviews. These are used to transfer the flow of work through cross functional team. This is one of the key advantage in SCRUM – allowing visibility with regards to the progress of work and team. This means when the team is achieving its goal, those responsible for it can be recognized and appreciated for the efforts. This works the other way as well, when the team is struggling to achieve its target , stakeholders can help and eliminate obstacles.
Transparency also ensures that the organisation and team is free from political games. In short:
  • Transparency allows in depth use of systemic thinking tools
  • Transparency enables team learning
  • Transparency allows positive management involvement and self-curtails adverse management interference
Inspection:
SCRUM is also helpful in evaluating the current state of the work and provides opportunities to see how the team is using SCRUM. This method provides understanding on the challenges faced by the team, the progress made and also the creativity used by the team to solve problems.
Hence “Inspection” of team’s work ensures that team is not most likely do a “post-mortem” when the project is complete – which rarely changes the way a project is carried out.
Adaptation
If in the process of inspection it is found that there are one or more process that deviate outside the acceptable limits and results in the product being unacceptable then the process must be adjusted. Adaption allows to make changes as per requirement to the new ideas, information and current environment of the work.
Adaptation in Scrum is depicted through:
  • Daily Standup Meetings
  • Constant Risk Identification
  • Change Requests
  • Scrum Guidance Body
  • Retrospect Sprint Meeting
  • Retrospect Project Meeting
In conclusion, transparency is an indispensable pillar of Scrum, and this pillar works hand in hand with two pillars of Scrum which is inspection and adaptation.