different approaches for different scopes: how to tackle a medium-sized drupal project

39
Different approaches for different scopes: How to tackle a medium-sized Drupal project Drupal Camp Ottawa 2016 – Symetris.ca

Upload: symetris

Post on 16-Apr-2017

187 views

Category:

Software


2 download

TRANSCRIPT

Page 1: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Different approaches for different scopes:

How to tackle a medium-sized Drupal project

Drupal Camp Ottawa 2016 – Symetris.ca

Page 2: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Unlock your web potentialwith Symetris

***• Founded in 2004 – already more than 12

years!• 14 web specialists• Experts in open-source CMS platforms

Page 3: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Our team!

Page 4: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Our team!

• 14 Web Specialists• 3 Account Managers• 3 Project Managers• 8 Developers (50% Acquia certified)

Page 5: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Kyle SerebourWeb Developer

Matthieu GadratWeb Developer

About us

Page 6: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Agenda1. Objectives of the conference2. Measuring the scale of a project 3. Impacts of a medium scale project4. Recommendations and best practices5. Questions

Page 7: Different approaches for different scopes: How to tackle a medium-sized Drupal project

1. OBJECTIVES OF THE CONFERENCE

Page 8: Different approaches for different scopes: How to tackle a medium-sized Drupal project

2. MEASURING THE SCALE OF A PROJECT

Page 9: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Measuring the scale of a project 1. Criteria:

• Number of hours: 500 to 1500 hours• Duration: 6 to 12 months• Client Criticalness: Site that is critical to

the clients business operations• Complexity: 3 to 4 (on a scale of 5)• Size of team: 2 to 4 developers• It has to feel medium-sized for your

organization

Page 10: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Measuring the scale of a projectHow are we feeling?

• Going from a small project to a medium scaled one

• Going from a large scale project to medium

Page 11: Different approaches for different scopes: How to tackle a medium-sized Drupal project

3. IMPACTS OF A MEDIUM SCALE PROJECT

Page 12: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Collaboration between developers• More responsibilities for each developer• Need to standardize working methods within

the development team• Incorporating a versioning system becomes

primordial

Page 13: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Duration of mandate• Considerable increase in the number of

deployments • The technical debt is being considered

Page 14: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Impact of the Technical Debt(Absolutely not scientific)

Hou

rs o

f dev

elop

men

t

Time

Page 15: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Quality control• More complex = more testing • More contributors to quality control • Dependance of features within each other

Page 16: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Impacts of a medium scale project for project managers

Page 17: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Number of contributors• The main point of contact may not be the

decision maker• Complex chain of command structure• Inclusion of an external consultant• Change of management to be considered

Page 18: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Importance of mastering the application

• More complex = More requests that could be linked to miscomprehension

• Importance of sharing our control over the application to the client

• Main contact may not be the end user

Page 19: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Management in several phases • Several deployments• Importance of confidence in the deliverables• A lot less test-coverage in a medium-sized

project compared to a large project• Emphasis on client expectations • Protection of the deployed data• Managing the guarantee and support of

Phase 1 during development of Phase 2

Page 20: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Managing “surplus” requests• No product owner for a medium-sized

project.• A Project manager for a medium-sized

project becomes a jack of all trades• Higher complexity which can impact the

transmission and understanding of needs• Mistakes in the estimates and scope

changes can result in a loss of control

Page 21: Different approaches for different scopes: How to tackle a medium-sized Drupal project

4. RECOMMENDATIONS & BEST PRACTICES

Page 22: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Incorporating an automated deployment system

Advantages Disadvantages

● No more need for manual deployments

● Lower risk for errors

● Reduces the time of deployment

● Requires specific training of the team

● Increases the project prep time

Page 23: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Incorporating an automateddeployment system

Page 24: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Defining a clear testing plan

Advantages Disadvantages

● Reduces the amount of client feedbacks

● Ensures that one feature does not break another

● More confidence in our product

● Requires more discipline from the team

● Increases the time for development

Page 25: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Defining a clear testing plan

How we do it:

● Using Calendars to prepare Quality Control periods ahead of time

● Staffing more than one developer on the project so they can do the QA of each other’s tasks.

Page 26: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Establishing a code review system

Advantages Disadvantages

● Allows standardization of development methods

● Increases the expertise of less experienced developers

● Increases the quality of the project

● Best way to learn Drupal API

● Means more time to invest for the company

Page 27: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Recommendations & best practicesfor project management

Page 28: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Identify the decision-making structure and involve the decision-makersAdvantages Disadvantages

● Avoid having decisions that were made be revoked in the future

● Facilitates the transmission of messages (no intermediaries)

● Facilitates the creation of a collaborative environment

● More complex management of the schedule

Page 29: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Identify the decision-making structure and involve the decision-makers

● Asking questions at the early stages (Kick-Off) of the project to determine who the decision-makers are sooner than later.

● Frequent meetings and communications with the decision makers themselves

Tips:

Page 30: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Establish weekly meetings and profitfrom them

Advantages Disadvantages

● Facilitates follow-ups on KPIs

● Facilitates follow-ups on tasks

● Contributes to a seamless transmission of information

● Quickly identify issues (challenges)

● Be careful of the “too many meetings” syndrome

● Make sure to implicate only the appropriate people

Page 31: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Establish and profit from weekly meetings

A few tools:

● KPIs○ % completed vs. % of hours○ Client happiness rate

● Slack: https://symetris.slack.com/messages/drupal-north/● Progress report on tasks● Calendars (recurring events)

Page 32: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Establish and profit from weekly meetings

Progress report on tasks

0%10 - 50%60%70%80%90%100%

NewIn ProgressQA-QCQA-QCComm. ClientTo deployClosed / Celebrate

Development hasn’t startedDevelopment in progressThe developer has to do his/her QC / QAThe project manager has to do his/her QC / QAThe client has to do his/her QC / QAClient feedbacks done, ready to deployDone Yay!!! (High five!)

Page 33: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Establish and profit from weekly meetings

The kind of things we do in weekly meetings

● Project manager participates in the preliminary analysis● Review documentation and present to the client in person● Do the quality control with the client● Present a User guide● Offer training directly to the end users

Page 34: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Making sure the project manager masters the application

Advantages Disadvantages

● Filters “code 18”

● Helps with support and change management

● Reduces the amount of client feedbacks

● Requires more technical knowledge for the project manager

● Requires more time for management and training

Page 35: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Making sure the project manager masters the application

How we do it:

● Meetings between the developer and the project manager to explain and properly understand the application.

● Give enough time for the project manager to go hands on. (QA periods planned for them as well).

● The project manager redacts the user guide.

Page 36: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Rigorous management of “surplus” requests

Advantages Disadvantages

● Helps to stay on budget

● Helps in respecting the timeline

● Offers more control on client requests

● Can cause some frustrations for the client

● Source of stress for the production team

Page 37: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Rigorous management of “surplus” requests

A few tools

● Weekly updates on hours● Prioritizing new requests with the lead developer● Bank of hours sold with the project● Excel sheets can do the job for this, especially with

technologicaly challenged clients.

Page 38: Different approaches for different scopes: How to tackle a medium-sized Drupal project

To recap

Dev Recommandations PM Recommandations● Incorporate an automated

deployment system● Define a clear testing plan● Establish a code review

system within the team

● Identify the decision-making structure and involve the decision-makers

● Establish and profit from weekly meetings

● Make sure the project manager masters the application

● Rigorous management of “surplus” requests

Page 39: Different approaches for different scopes: How to tackle a medium-sized Drupal project

Thank you !

Questions?

Contact-us :

[email protected] [email protected]

[email protected]

PPT presentation will be available soon on Slideshare