Leading a project to
successful closure requires right combination of skills, experience and
confidence. Here are some guiding principles to execute projects smoothly :
Why Adopt Best
Practices?
- We want to deliver the right solution within defined timelines
- We want to Identify problem areas at an early stage and take corrective actions
- We want to bring efficiency, effectiveness, standardization, and predictability to our delivery model
Best Practice: Adopt the Agile Mindset
- Create an enabling environment & empower your team members to work independently with responsibility & ownership
- Promote upfront, open communication
- Best output can be achieved only when people enjoy what they are doing , help them understand the value of their work
- Any process which does not add value to project needs to be re-evaluated
- Believe in incremental evolution: to build a perfect artifact it may have to go through several iterations
Best Practice: Understand your project Objective
- What is the main objective of the project? What are the key success criteria for Business?
- What are the current pain points /challenges business is struggling with and how is this project going to help overcome those challenges?
- How does this project deliverable fit into the Business Road map?
Examples for some of the drivers for your
project :
·
Competitive edge, rich
user interface, rich content, quick & easy maintenance of site, real time
content updates
Best Practice: Define your Constraints / Risks
- Do you see a gap in requirements understanding?
- Do you need to deliver in a squeezed timeline? Example: Business demands "Go live" within next 4 months
- Is your team geographically distributed? Are there any challenges within teams? Dependencies within teams. Example: Design team onshore and tech team offshore
- Are there any third-party dependencies? Example: integrations like social plugins, sales force, loyalty, etc
- Do you have the right team structure for each track of activity? Example: Enough QA, design strength
- Are there any activities that are beyond your scope but are going to affect you? Example: Content population, translation, data migration
Best Practice: Plan Upfront
Plan for the following
upfront :
- What are your high-level timelines? How are you going to divide the work in iterations?
- What are the roles and responsibilities of each team member? What are the external dependencies?
- How do you plan to communicate with different stakeholders
- What are the tools that you are going to use and for what purpose? Eg: tools for tracking, bug management, requirement management, project planning, etc
- What are the activities that can be automated? eg: Quality check, deployment, performance analysis, etc
- What best processes and engineering practices can you implement to bring efficiency to the team?
- What are the environments you will require for your project execution and when? eg: dev, qa, prod, staging, etc
- How are you going to track and report progress?
- How will you manage RAID?
- How will the scope be managed?
- How will you track Quality and defects
- How will your user stories flow from inception to completion
- Team Ramp up planning
- Team Building, Feedback & Appreciation Framework
Best Practice: Define Checkpoints at every stage
<<Coming Soon >>
Best Practice: Lookout for warning signs
Lookout for potential
problem areas. The earlier the problems are detected the easier it is to manage
them.
Warning signs may include :
- A small variance in schedule or budget starts to get bigger, especially early in the project
- You discover that activities you think have already been completed are still being worked on
- You need to rely on unscheduled overtime to hit the deadlines, especially early in the project.
- Deliverable quality or service quality starts to deteriorate
- Approvals for deliverable not received on time can impact ongoing work
Best Practice: Define the Review Process
Identify SME for each
track and ensure that the following activities are reviewed & improved at
appropriate times:
- Requirement definition / Story definition
- Ensure that the quality of the story is good. It captures all the information required. Does it specify Acceptance criteria clearly? is it calling out Dependencies or integration Details?
- Review by senior BA, Tech Team for quality of the story
- Review by Product owner
- Visual Designs ( UX /VD)
- Review to ensure technical feasibility & conformity with development standards
- Review by Senior Designer for quality of work
- Review and approval By the client before it's passed on to the development team
- System Architecture & Design
- Review by Senior Architect
- Review & Approval by Client
- QA Activities - Test Cases, Defect Descriptions
- Review of strategy by QA Manager
- Review by the QA Manager for each Sprint
- Is our QA Plan covering all areas: functional, regression, creative, usability, etc
- Development
- Code Review by Architect for each Sprint
- Automation of Code review if possible
- Coding Guidelines: review by Senior Architect
- Functional review by BA for each sprint
- QA review during development to identify gaps upfront
- Creative Review by the Design team for each Sprint
- Full Regression testing ( For all scopes delivered to date ): preferably Automat it
- Build & Release process
- Review the Release process for efficiency
- Review if we have clearly defined branching & merging strategy
Best Practice: Project Tracking
Develop Metrics to
cover the following for each sprint :
·
·
·
Total Estimated effort
VS total burned effort VS total effort required: this will help you predict
·
Number of defects in
each sprint: Area of defects: functional, UI, Code review, etc
These metrics will help in doing objective progress checks
Best Practice: Do Retrospective & improvise
A Retrospective should
be done after each iteration to identify
- Improvements in processes
- Technical Improvements/learnings
- Improvement in testing
- Communication & Planning
These should be used as a guiding principle to improve for
future sprints. Also, these learnings should be passed back at the organizational level for broader benefits.
I'm very glad to see this type of content sharing. I think this would be very useful to me.
ReplyDeleteHtml5 Training in Chennai
Html5 Course
Html5 Training Course
Html5 Training in Tnagar
html5 training in vadapalani
DOT NET Training in Chennai
core java training in chennai
Hibernate Training in Chennai
Mobile Testing Training in Chennai
SAS Training in Chennai
Should there be another persuasive post you can share next time, I’ll be surely waiting for it.
ReplyDeletesoftware development team ukraine
ReplyDeleteThanks for sharing Being a consistent website designing and website development company in Chennai, with a unique piece of work to every client to fulfill their worth to be paid for our website design services in Chennai.