Monday, 15 October 2018

What is Scrum and Agile Project Management that works for the Business?

   
   
           Agile is a perfect fit for organizations looking to transform how they manage project and operate as a whole. Agile project management methodology that uses short development cycles called "Sprints" which are focusing on continuous improvement in the development of a product or service. Agile developed for the software industry to streamline and improve the development process in an effort to identify and adjust for issues and defects.
              Agile PM is a highly iterative process that allows for rapid adjustments throughout the project for better performance and agility by project teams.  It provides a way for developers and teams to deliver a better product, in a faster manner, through short, iterative and interactive sprints. Agile can help company-wide process and methodological alignment. There are various agile frameworks including scrum, lean, Extreme Programming and SAFe. It typically includes the tasks that are broken into small increments with minimal planning in order to allow for increased agility. Agile PM referred to the movement, development, method or more commonly used the methodology in the software industry.

     The most IT project managers and software developers are familiar with Agile Manifesto. The evolutionary model of software development methods outlines the history of IT development technique and includes these models,
   * Waterfall - Follows the sequential process and maintains the document trail
   * Rapid Prototyping - Creates a disposable prototype to establish customer preferences
   * Spiral - Serious of prototypes that incrementally incorporate user requirements
   * Incremental delivery - Delivers a system to the consumer in chunks of functional programs that are integrated incrementally to create a complete system.
   * Evolutionary Delivery - It is an iterative approach in which customers test an actual version of the software.

Scrum and Agile: Agile is a a set of methods and practices based on the values and principles expressed in the agile manifesto which includes things like collaboration, self-organization, and cross-functionality of teams.  To understand the scrum, you have to know the people and parts of the framework and need a place to organize your thoughts or your backlog that could be the software like Trello or whiteboard. Also, you need the roles like Product Owner and Scrum Master. These are the essential parts that make the scrum happen,
    * Scrum starts with a Product Owner. This person represents the user's interest and authority to say what goes into the final product.
    * The Product Owner is in charge of making the Backlog, a list of tasks and requirements the final product needs. The backlog must be prioritized. For ex, If you use scrum to design a car, items like " must have an engine" would be the top of the priority list because a car can not run without it. "Must be painted red" would be low priority list. Because it is not much important to run the car.
  * Next is Sprint. Sprint is the predetermined time frame within which the team completes set of the task from the Backlog.
   * Every day, the team meets to give progress updates in the Daily Scrum. It is also called as "Daily Stand-ups".
   * Each team ends with review or Retrospective, where the team reviews their work and discuss a way to improve the next Sprint.
 

Here are the steps to get started, 
       Step1: Pick your Roles - Product Owner who is responsible for the project need of the user. Scrum Master who helps the team move along based on the principles of the scrum. Scrum runs on a Servant-Leader model.
       Step2: Create Product Backlog - The backlog is where you list out everything the project needs and prioritized. The backlog is never complete. As the project takes shape and new needs emerge, you will need to add. The product owner responsible for this work.
      Step3: Plan Sprint - It is to pick the tasks from the backlog to completed Sprint. Sprints are time-limited. Decide on the time length that works for you, but they are always less than a month.
     Step4: Get to Work - Start to work on the Sprint. Team members work on the tasks and everybody checks in on their progress at the Daily Scrum Meeting. The meeting lasts no more than 15 minutes and answers 3 questions like what did you work on yesterday? what will you work today? Is there anything blocking your work today that need the help?
    Step5: Review the Work - At the end of the Sprint, the team reviews the work accomplished and presents their completed tasks.
     Step6: Review your Process - In the retrospective meeting, you'll need to review how the actual work process went and plan ways to improve and work efficiently next time.
    Step7: Repeat -  With the first Sprint Complete, it is time to start over again. Pick the tasks from the backlog and repeat the process.

Software Costs and Pricing: Cost is the Product of time and Peoples. It depends on the stakeholder confidence for the fixed cost or variable cost. The following steps are taken into consideration for an estimate and fixed price project,
 1. Initial High-Level Scope - At the beginning of the project, it is important to know about its eventual outcome and to know exactly what features our customers and users need. So, it can break down the tasks as,
  a. Project Vision and Objective Setting: It is to decide on what are the business objective and what you need to achieve and build? Understanding these questions allow you to scale the project. Do you need a prototype to test the idea or concept? Have you Identified the clear Value Proposition that has been tested with your market and ready to build your Minimum Viable Product(MVP)? Are you scaling your existing product or business to take it to the next level?
 b. Epic Features: Define the features that the projects need to fulfill the customer needs. It is called user stories that are the backbone of the product.
c. Analysis of Product:  The Maslow analysis technique helps to identify what is really necessary to make the product viable. The items that are identified as "Must" satisfy what will encourage users to engage and adopt your product. The features that are identified as "Should" will delight the customer but could be built later. The "could" items can add significant value to the business, may not increase the return and lowest priority. The feature identified as "Won't" are out of scope for the project iteration.
2. Creating the Proposals: The proposals provide information to create the product you want?  Does this align with the business strategy and finance? When will we launch the project?  With this information, We can derive one technical solution that delivers the known scope and estimated cost to complete the project. At the outset of the project, we know what will be delivered.

3. Release Planning: The next level of estimation is a release plan that will deliver the range of features in a given timeframe. The release plan has the list of features, size of the project, how quickly the team can develop the software that meets customer expectations and techniques for managing the risk of uncertainty. It has the following information,
   a. Product Backlog: It is simply an ordered list of "user stories" or "epics" that represents the features required for the product. The epics can break down into meaningful items. Each item represents a portion of the business value to the customer.
  b. Estimation: There are agile estimation techniques like Ideal Days, Planning Poker. The Planning Poker technique ensures quick, reliable results based on expert opinions and analogous sizing. It assigns an agreed number to each item representing size and complexity. This is called a story point.
The Story Point is the unit of measure that expresses the overall size of the user story. The size of the story includes all aspects of design, engineering, testing, code review, and integration etc., Each size of the story relative to another story. For ex, Story A may be sized as one point. Here, the story C is three times the size of story A. And, the total size of the project is 15 story points.

     Ideal Days is a measure of size expressed on days. It removes the overhead such as interruptions, agile planning activities, reading emails, and other non-project related activities. It concentrates on how long it would take if you were to work on something continuously without interruption rather than the elapsed time from start to finish.
 c. Prioritization: This is really about what is being most valuable to the customer in order to achieve the desired results. The item at the top of the list considered the most important, the second item is less important than the first and so on to the list.
     The Release Planning can define as how long it will take to deliver a releasable product to the customer and the team including the designers, engineers, testers, project manager, scrum master work together to identify what can be achieved and how quickly work can be done to create a release plan. The release plan gives the insight into how the project will align with the customer strategic plan. It ensures the project team has a guiding light that leads the way and defines the logical endpoint to development. It is important to ensure the agreed definition of "done". These are the given set of criterias that a customer will accept as complete and also meets all of the engineering requirements to be considered releasable.

No comments:

Post a Comment