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

Post on 16-Apr-2017

187 Views

Category:

Software

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Different approaches for different scopes:

How to tackle a medium-sized Drupal project

Drupal Camp Ottawa 2016 – Symetris.ca

Unlock your web potentialwith Symetris

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

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

Our team!

Our team!

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

Kyle SerebourWeb Developer

Matthieu GadratWeb Developer

About us

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

1. OBJECTIVES OF THE CONFERENCE

2. MEASURING THE SCALE OF A 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

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

3. IMPACTS OF A MEDIUM SCALE PROJECT

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

the development team• Incorporating a versioning system becomes

primordial

Duration of mandate• Considerable increase in the number of

deployments • The technical debt is being considered

Impact of the Technical Debt(Absolutely not scientific)

Hou

rs o

f dev

elop

men

t

Time

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

Impacts of a medium scale project for project managers

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

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

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

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

4. RECOMMENDATIONS & BEST PRACTICES

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

Incorporating an automateddeployment system

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

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.

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

Recommendations & best practicesfor project management

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

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:

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

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)

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!)

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

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

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.

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

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.

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

Thank you !

Questions?

Contact-us :

kyle@symetris.ca matthieu@symetris.ca

info@symetris.ca

PPT presentation will be available soon on Slideshare

top related