Symetris conference given at DrupalCamp Ottawa 2016 outlining the important things to note when tackling a medium-sized project. Some projects aren't large enough to be considered big/complex, but aren't small enough to be considered easy/simple!
2. Unlock your web potential
with Symetris
***
• Founded in 2004 – already more than 12
years!
• 14 web specialists
• Experts in open-source CMS platforms
6. Agenda
1. Objectives of the conference
2. Measuring the scale of a project
3. Impacts of a medium scale project
4. Recommendations and best practices
5. Questions
9. 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
10. Measuring the scale of a project
How are we feeling?
• Going from a small project to a medium
scaled one
• Going from a large scale project to
medium
12. Collaboration between developers
• More responsibilities for each developer
• Need to standardize working methods
within the development team
• Incorporating a versioning system becomes
primordial
13. Duration of mandate
• Considerable increase in the number of
deployments
• The technical debt is being considered
14. Impact of the Technical Debt
(Absolutely not scientific)
Hoursofdevelopment
Time
15. Quality control
• More complex = more testing
• More contributors to quality control
• Dependance of features within each other
16. Impacts of a medium scale project for
project managers
17. 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
18. 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
19. 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
20. 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
22. 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
24. 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
25. 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.
26. 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
28. Identify the decision-making structure and
involve the decision-makers
Advantages 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
29. 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:
30. Establish weekly meetings and profit
from 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
31. 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)
32. Establish and profit from weekly meetings
Progress report on tasks
0%
10 - 50%
60%
70%
80%
90%
100%
New
In Progress
QA-QC
QA-QC
Comm. Client
To deploy
Closed / Celebrate
Development hasn’t started
Development in progress
The developer has to do his/her QC / QA
The project manager has to do his/her QC /
QA
The client has to do his/her QC / QA
Client feedbacks done, ready to deploy
Done Yay!!! (High five!)
33. 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
34. 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
35. 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.
36. 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
37. 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.
38. 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
39. Thank you !
Questions?
Contact-us :
kyle@symetris.ca
matthieu@symetris.ca
info@symetris.ca
PPT presentation will be available soon on Slideshare
Notas do Editor
Et voila, c’est parti! S’amuser et parler len-te-ment ;)
Présentation globale de Symetris.
Présentation globale de Symetris.
Présentation globale de Symetris.
Présentation des présentateurs! Parcours chez Symetris + expérience avec Drupal (en surface)
Résumé des sujets principaux. Axer le message sur Drupal.
CHaque personne reparte avec un truc ou une idée qui peut aider dans un prochain projet de moyenne envergure
Expliquer notre échelle de complexité
Git :
Save time
Travailler en parallèle
Backup!!
Ex dette technique
Hardcoder quelque chose dans le thème
Format de date avec PHP au lieu d’utiliser Drupal
Merger 2 content-types to save time
Custom template for custom ID
Exemple : Mtl inc
Exemple: Groupe Maurice - MSI
Exemple: Sirop (Designer, SEO, Web) / Consultant: MSI versus Canderel
Exemple: MSI
Exemple: MSI
Exemple: Montréal inc. et MSI
Exemple: Groupe Maurice et projet placé on hold
Exemple: Groupe Maurice et projet placé on hold
Merci Montréal! Venez nous jaser, en personne ou virtuellement ;)