Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
Agile is a well-known software development approach under which requirements and solutions evolve through the collaborative effort of multi-disciplinary teams,
generally staffed by both the supplier and the customer. The management of Agile projects can be challenging for the different stakeholders involved: business, IT,
procurement teams but also for the legal team.
At Taylor Wessing and Ubisoft, we noticed that many preconceived ideas exist with respect to the legal aspects of Agile projects. And contrary to common beliefs, we trust that it is possible to reconcile flexibility and contract certainty with the
legal team having a key role to play in Agile projects. We decided to create this Agile legal quest which compiles recommendations and expertise on this subject.
Your first mission on this quest will be to determine if the project you are working on should use the Agile method or not. In fact, teams sometimes claim they are
working in Agile but are using other development software methodologies (such as the waterfall methodology).
Your second mission will be to identify the key stakeholders of your project and their role. We used the Scrum framework to illustrate this step as it is one of the most
used Agile methodology frameworks. However, be aware that many other methodologies exist.
After successfully passed your two first missions, you will have then to master the Agile stage gate. Be careful not feeling dizzy with all the loops! Your quest will end with the drafting of a contract that fits exactly your project. To help you on the last
mission, we have gathered a few tips based on our previous experiences.
AGILE LEGAL QUEST
Make lawyers key stakeholders in Agile projectsYOUR QUEST
ACCEPT THE QUESTACCEPT THE QUEST
TaylorWessing
Understand main requirements of Agile
Master the Agile stage gate
Know your key stakeholders
Keep in mind a few tips to succeed3
1
4
2
ALQ
How clear are the project’s objectives and requirements?
What are the project’s success criteria?
On some projects, the clients know exactly what they are looking for, and what the success criteria of the project are. On other projects, it can be difficult to pinpoint what the project needs to achieve or what the requirements are. When the requirements for the product features are difficult to define, or likely to change significantly, you need an approach which is relatively experimental and flexible; an approach which allows you to speedily demonstrate and prototype ideas to the customer and incorporate changing requirements, i.e. more Agile.
What is the size of the project?
You may find yourself in a situation where the desired outcome of the project is clear, but where the solution for achieving that outcome is not. When the team faces difficult and risky choices around technology, design and implementation, your software development methodology needs to be flexible enough to cater for this and iterate through various stages of prototyping, development and roll-out, i.e. more Agile.
How clear and well-defined is the solution?
Which is more important for your sponsor and client? Having a relatively firm estimate and time schedule which must be adhered to, or ensuring that the end deliverables add value and match the user’s needs and expectations? Is your client ready to embrace a more flexible and quality-conscious approach at the expense of fixed costs and schedules? If so, then Agile may be the way to go.
Is your project on the larger side or is it reasonably small and lean? The larger the project, the more difficult it might be to incorporate lots of changes at short notice, and to refocus the team in a different direction. Small and tight-knitted teams which work closely with the customer and end users are more flexible and better geared to quickly incorporate changes, i.e. more Agile.
Understand main requirements of AgileARE YOU READY FOR THIS QUEST ?
GATHER YOUR TEAMGATHER YOUR TEAMSEE OTHER METHODOLOGIESSEE OTHER METHODOLOGIES
Legal side : 3 variables may require more flexibility in Agile than in other development projects: money, time and scope. In order to draft a contract that aligns with Agile software development, you might want to include hard constraints for one of them, but not the two others..
Legal side : the journey is as important as the goal! Everything should rely on pacing of operation and iterations: sprints, velocity… The contract may for example indicate the number of hours per sprint or include a roadmap. Also consider having your contract be a “living document” by ensuring that meeting notes can be used in the interpretation of parties’ rights and obligations; don’t be caught off guard by entire agreement-clauses. Of course, this should stay on case by case basis.
To help you to determine if your project should follow an Agile method or a more traditional one, we suggest you take the aspects below into consideration. This quick test will help you decide how flexible your
project needs to be (on a scale that varies from very flexible (agile) on the one hand, to more rigid (waterfall) on the other).
1
FOLLOW YOUR QUESTFOLLOW YOUR QUEST
Knowledge of methodology
Frustrations
Skills
Guardian of the end users needs; evaluates what is done (definition of done), provides input, keeps records of decisions.
When end users change their mind and start complaining.
No tunnel vision impression, always moving forward in the project, ability to change its mind, always having a working software at the end of the development.
Boosts
Influence
Macro vision Micro vision
Knowledge of methodology
Frustrations
Skills
Builders; bring the technical knowledge, transform stories in functionable products and software.
Meeting, administrative things, writing instead of coding, never ending stories.
More simple pipeline, no need to come back to past sprint.
Boosts
Technical wisdom
Macro vision Micro vision
SCRUM MASTER The facilitator
Knowledge of methodology
Frustrations
Skills
Process organizer; manages how the project is handled, brings structured way of getting people on the same page.
Misconceptions of his role (he’s not the leader of the development team, he’s not the voice of the end users).
Less pressure than waterfall (divided responsibility of the project with Product owner), reduce pain points.
Boosts
Communication
Macro vision Micro vision
DEVELOPER The wish maker LAWYER The watcher
Knowledge of methodology
Frustrations
Skills
Keeper of peaceful relations, asks the tough questions to understand the role and responsibilities of each and keep things into perspective.
No precise scope in Agile.
Process based, flexibility, being creative results in more influence in the project.
Boosts
Patience
Macro vision Micro vision
!
New member unlocked !New member unlocked !
Learn more about the key stakeholdersGATHER YOUR TEAM !
SCRUM MASTER The facilitator
DEVELOPER The wish maker LAWYER The watcher
PRODUCT OWNER The visionary PRODUCT OWNER The visionary
2
Start Deliverable
Sprint 0 Sprint 1 Sprint 2
Legal issue
GET SOME TIPS FOR YOUR QUEST GET SOME TIPS FOR YOUR QUEST
Scrum master
Lawyer
Development team
Product owner
Examples of legal issues with Agile contracting:
Hard to pin down scope and cater for scope constantly changing, contract modifying with sprint, compliance by design. If the lawyer understands Agile software development he/she should advise to draft a specialized Agile contract; boilerplate waterfall-contracts will not suffice!
What is a sprint ?
Period of time (in general of several weeks up to a month) during which a “done”, useable, and potentially releasable product increment is created... Thus the contract may for example indicate the number of hours or complexity points per sprint. Then, you need a detailed estimate for each to be finished. When that estimation is done we can select how many story points (an estimate number used by the Agile team that express the difficulty level to user story description of one or more features of a software system rather than the duration ) we can put into a sprint, and by comparing this to the product backlog you can calculate how many sprints you will need to complete. Now you should be able to develop your own product roadmap!
Master the Agile stage gateFOLLOW YOUR QUEST :
Scrum master
Development team
Product owner
Scrum master
Lawyer
Development team
Product owner
!
Estimate unit in Agile :
Agile teams don’t usually use time-honored “man-day” or “man-hour” but rather different estimate unit. One of the reasons for sprints is the use of velocity, a dimensionless quantity used for planning purposes, which allows teams to compute the expected remaining duration of the project. Velocity is translate into a number of iterations, each iteration delivering some amount of features.
3
START THE AGILE QUEST START THE AGILE QUEST
Determine the termination scenarios.The contract may be terminated : - After a specific number of sprints, - When the entire budget has been used up, - After a certain number of sprints/features have been rejected.
It is recommended to include a definition of “fail” and “done” in the contract.
Choose the project governance. Set out in the contrat: - The composition of the teams, - The mission of the teams,- The Escalation process in case of issues (“fix now, settle later”!).
Tips for governance
Bonus unlocked !Bonus unlocked !
Keep in mind a few tips when drafting your Agile contract
AGILE LEGAL QUEST ADVICE !
Tips for termination & disputesTips for termination & disputes
Tips for money
Tips for contract structure
Tips for time ????
??
??
??
Tips for money
Tips for contract structure
Tips for time
Tips for governance
4
Choose a pricing model and calculation rules.Have in mind that fixed price Agile contracts are possible but rather unusual. However, many other options are available. Do not hesitate to be creative.
For example: - You can choose a price per sprint, per point, per hour or per day, - You can include a targeted budget or a capped budget.
Don’t try to fix everything in the contract. Instead, codify the process that will be followed.
For example: - You can set out the frequency of team meetings and ask the team to keep a paper trail (reports, sprint change), - You can annex templates of reports or sprint change to the contract, - You can annex the V.0 of the Product Backlog to the contract and state that any update of this Product Backlog will be deemed to be incorporated in the contract.
Determine the duration of your Agile project. Setting out the duration of an Agile project can be challenging. What you can determine is : - The length of each sprint,- A maximum number of sprints (timeboxing).
If you cannot determine precisely the duration of your project, you can state in the contract that the duration is given only as a reference and add the following clauses: - A "change for free" clause, - A clause that gives you the possibility to change a user story that is done, - A "money for nothing" clause,- An “early termination” clause.
!