Wednesday, 31 October 2018

How Lean Product Development help to build successful products and company?

       Lean startup is designed to get you to understand the risk in advance and de-risk those things by applying scientific methodology to building products. Lean Analytics is a way of measuring progress through that process. It is not for the sake of just doing Lean Start-Up, but to build something that the users or customers want. Build, Measure and Learn is at the core of the Lean Start-Up. It's an iterative cycle. In the Lean Startup parlance, that you're trying to iterate through the build, measure, learn as quickly as you possibly can, as frequency as you can get to ultimate success.
     As an entrepreneur, you are creating something that doesn't yet exist. Whether you're selling it or not, you have to convince others that your vision is real and important. It might be for the users or customers. In many ways, you're saying, I am going to create something to solve this problem or realize this vision. Let's all agree, that we don't know if the vision is true. Beyond creativity, every company needs a clear process for taking ideas from concept to profitable business model. One way to frame the conversation is to explore what can cause great ideas fail, then design the innovation frameworks to mitigate those challenges. There are several reasons the innovation fails(e.g, technology failure or team conflict). But, there are 3 main reasons the innovation can fail,

   1. Making stuff that nobody wants to Buy;  Innovators bringing their product ideas into life. They forget the reality that is raised by questions about customer need. All business models are rooted in great value propositions. In order to make the stuff that people want, you have to do the user research and develop empathy. What are they trying to accomplish? what would cause them to grab our product?  What are their jobs to be done? These questions are a foundation for making the stuff that everybody wants.
  2. Selling the Product without Profit: Innovation is not just about making products that will deliver value to the customers. It is also ensuring that we can deliver value in a sustainable way. Sustainable traction means that our products pay for their own existence. We have to ensure that customers are willing to pay a sufficient amount to cover the cost of value creation and delivery. It is important to find the price point that will cover the cost of customer acquisition and retention. Profits can define as how will pay our own bills and sustain the company. We may not need to answer the profit question in the innovation process, but this question we will eventually have to answer.
  3. Profits Without Scaling: It is important to find the growth engine to scale our product beyond the early adopters. This is often the first movers lose their advantage to fast followers. The first mover is the innovator and the fast followers become the masters of business model design and scaling. We have to work twice as hard to scale our products beyond early adopters. If we don't do this, you may lose share in the markets and this type of failure results from making profits without scaling.

Lean Product Development Framework:  The startup use Scrum as their product development methodology. It is iterative and incremental agile software development methodology for managing product development. Sprint is the basic unit of development, is a time-boxed effort( being two weeks in common). The goal of each Sprint is to complete a set of features and ship a working version of the product. Each sprint ends with sprint retrospective and sprint review, where the progress is reviewed and improvement for the next sprints identified.

The Core values of the Lean: Building lean product requires a broad perspective of product development. In order to ensure the convergence of business value, it is important to understand the core values of lean and acts of the following,
     * Create Value by helping clients from their perspective and then delivering high-quality solutions while eliminating waste and reducing cycle time. You can pinpoint the situation where waste is occurring,
     - Company Waste
           1. Waste from overambitious
           2. Waste from building wrong product
           3. Over-processing waste
     - Management Waste
          1. Too many sign-offs
     - Product Waste
           1. Building features in the wrong order
           2. Waste from poor quality
           3. Customers not benefited from completing the work
    - Team Waste
          1. Internal feature scope creep
          2. Waste of coordination
          3. Waste due to distributed teams
          4. Work overloading
          5. Talent waste
          6. Team imbalance
    - Automation Waste
          1. Waste of computing cycles
          2. Automate information distribution
     - Personal Productivity Waste
         1. Waste of focus(context shifting waste)
         2. Waste of knowledge
         3. Demotivational waste

    * Deliver More with Less that allows high-value deliveries at lower costs in a consistent and continuous flow.
   * Deliver Just In Time and Just Enough by creating only what adds value to your business at the right time. It involves being aware of market trends and make sure the product is launched quickly.
   * Empower People and Trust by forward-thinking as well as involving the client in the development of the product.
   * Measure everything by simple and reliable KPI, which increases your transparency and allows you to measure the effects of your actions.

  Requirements Discovery for Lean Product Development: To develop an effective application that optimally supports the business process, developers have to understand the business process thoroughly. Business process analysis identifies bottlenecks, inefficiencies, disconnects, and other problem areas. Developers need solutions as functional and non-functional requirements to develop or modify an application.
        User stories are great when you've got the users. Sometimes, the functionality being described when real users are nowhere to be found that feels artificial. In this situation, the Syntax of Feature-Driven-Development agile process plays a major role. Features are analogous to product backlog items for scrum project. FDD feature can be written in this format,
               (action) the (result) (by|for|of|to) (object)

For ex,
   * Generate unique number for the transaction
   * Estimate the closing price of the stock
   * Merge the data for a duplicate transaction

 In each case, the feature description starts with the action and ends with what would be an object within the system. This syntax works well for developing the back-end functionality and API.

The Stages of Product Development: It determines how much to focus on UX or lean design and which stage you are currently in the development cycle. Here are 3 market stages where your focus needs to be,
  1. The Technology Stage: Little UX, all Lean
           Objective: Assembling the plan together and figuring out what the market needs
           Key Points: Focus on MVP. You can't focus on UX because you don't have any users. Get a working prototype together and find out who needs it and how they are using it in the real world.
           Success Criteria: Consumers outside the beta test group needs it.
 2. Feature Stage: Limited UX, Less Lean
           Objective: It is to settle on most important features to develop based on user demand
           Key Points: Start molding the UX as part of the decision process to engender specific emotional responses from users. Keep a close eye on what features competitors offer but don't get to anything until the product works properly with the right UX.
           Success Criteria: User comment about how they are using and feel about it.
3. Experience Stage: All UX, no Lean
          Objective: Research on what users are doing with your product.
          Key Points; Don't add the features unless they are absolutely necessary. what are the biggest pain points customers have when using the product? It is to study the winning UX design around the world and figure out how to apply these insights to your product. Fix your broken UX at this point.
       Success Criteria: Customer Referrals and Viral Adoption

Adopting to Customer Demand:  In Lean, you need to talk a lot about meeting customer demand. The conversation turns to cycle time. What does customer actually want? Following the needs of the customer and testing ideas are the bread and butter of Lean Startups. The pace required for creative development seems to be reaching new heights all the time and emerging technology push this trend forward. The key point is that the pull system extends outside the organization with the customer as the ultimate destination of the value stream. But, what does a pull signal from a customer look like and how do you respond to it? This is a matter of engagement. So, you must constantly seek feedback when developing the product. This 5 step process that any business might find useful,
   1. Emphasize: Get to know your customer through direct interaction so that to understand the customer needs and experiences.
   2. Define: Define the problem of your customer is experiencing that your product could solve or define the unfulfilled need of your product could provide.
   3. Ideate: Explore a wide range of possible product ideas based on what you have learned about your customer. Get a wide range of insight and input from the team.
  4. Prototype: Select one idea from the previous step and turn it into a working prototype. It can be a physical activity or object that the customer can interact with the real world.
  5. Test: Evaluate your assumptions about the customer needs and wants by giving them a chance to interact with a prototype. You can continue development along the current course or change the idea depending on the results of customer interaction.

Stakeholder Mapping: Stakeholders are any group or organization or collection of individuals that have an interest in activities of a business or organizations that are affected by the actions. They have interests and concerns relating to the business. There are Internal and External stakeholders. The internal stakeholders are the employees and the owners. The external stakeholders are those who have contact with business but don't actually work in it(ex, customers, suppliers, government, and others). The stakeholder mapping is a visual way of showing in relation to their power and interest.

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.