Download presentation
Presentation is loading. Please wait.
Published byDamian Baldwin Logan Modified over 9 years ago
1
Johannes Brodwall Getting your project off the ground
2
Bootstrapping a team
3
Raising the team engagement
4
Turning a corner
5
Growing the team
7
“How do you start a project and achieve understanding at the beginning?”
8
“How do you {start a project} and achieve understanding at the beginning?”
9
Keep it simple Defer commitment Inspect and adapt It depends
10
Concrete tools for non-superheroes
11
3 tools
12
1.Discuss the problem 2.Understand who’s involved 3.Describe what it does 4.Visualize the context 5.Understand the domain 6.Lay down the foundation 7.Dramatize the demo
13
When
14
MondayTuesdayWednesdayThursdayFriday Elevator pitch, Stakeholders Dev baseline Review usage Define progress, Stories Wrap up docs Dev baseline Lunch Look at what’s going on today Usage flow Dev baseline Usage review, Context, Domain, Deployment Refine models Review, Retrospective Plan week 2 Typical plan for kickoff
15
MondayTuesdayWednesdayThursdayFriday Elevator pitch, Stakeholders Dev baseline Review usage Define progress, Stories Wrap up docs Dev baseline Lunch Look at what’s going on today Usage flow Dev baseline Usage review, Context, Domain, Deployment Refine models Review, Retrospective Plan week 2 Typical plan for kickoff
16
Discuss the problem
17
The problem: “A program to assign a worker to a client”
18
The problem: “A program to assign a worker to a client” (yes, it’s unclear!)
19
Form groups of 3 (or 2) You will have five minutes to discuss
20
For some user/stakeholder Who wants to achive some goal The name of the system Is a type of system Which lets them perform some operation(s). Unlike most compelling alternative This gives them some advantages.
21
For some user/stakeholder Who wants to achive some goal The name of the system Is a type of system Which lets them perform some operation(s). Unlike most compelling alternative This gives them some advantages.
22
For our client’s building managers Who wants to wants to keep their property in good working conditions The Mobility Workforce Manager Is a work management system for mobile workers Which lets them book and track rutine and incident based work orders. Unlike the old system This lets workers self-organize around tasks that they can solve, so the work is done faster.
23
Who?
24
For our client’s building managers Who wants to wants to keep their property in good working conditions The Mobility Workforce Manager Is a work management system for mobile workers Which lets them book and track rutine and incident based work orders. Unlike the old system This lets workers self-organize around tasks that they can solve, so the work is done faster.
25
Worker Dispatcher Building manager Client
26
Who? # Clients do ??? every ??? via ??? # Dispatchers do ??? every ??? via ??? # Workers do ??? every ??? via ??? # Building Managers do ??? every ??? via ???
27
Who? Tens of Clients sign up for service a few times every year via meetings Around 20 Dispatchers assign worker teams to maintenance tasks all the time via specialized application Several hundred specialized Workers accept tasks and confirm tasks a few times per day via mobile Hundreds of Building Managers order maintenance tasks for their buildings every few days via web
28
Who else? Payroll
29
MondayTuesdayWednesdayThursdayFriday Elevator pitch, Stakeholders Dev baseline Review usage Define progress, Stories Wrap up docs Dev baseline Lunch Look at what’s going on today Usage flow Dev baseline Usage review, Context, Domain, Deployment Refine models Review, Retrospective Plan week 2 Typical plan for kickoff
30
Describe the usage
31
1.Need: Someone identifies a need 2.Trigger: Someone does something with the system 3.The system responds in some way 4.… 5.… 6.The goal has been fulfilled
32
1.Need: Someone identifies a need 2.Trigger: Someone does something with the system 3.The system responds in some way 4.… 5.… 6.The goal has been fulfilled
33
1.Building manager has works that needs done (e.g. change mats) 1.Alternative: Periodic trigger 2.Building manager register works request on web site 3.Dispatcher lists unhandled work orders 1.Alternative: Dispatcher filters, searches and sorts work orders 4.Dispatcher displays work order 5.Dispatcher assign tasks to workers based on skills registered in training system 6.Worker get notified of task on their mobile 7.Worker acknowledges task 1.Alternative: If worker rejects task, system marks it as unassigned and alerts dispatcher 8.Worker performs task 9.Worker registers the task as done 10.Worker registers time and materials spent on task on mobile 11.System notifies payroll of time spent 12.System submits invoicing data to accounting system 13.Building is in great shape!
34
Worker Mobile Server Payroll Personell Accounting Dispatcher Building manager
35
Worker Mobile Server Payroll Accounting Dispatcher Building manager
36
MondayTuesdayWednesdayThursdayFriday Elevator pitch, Stakeholders Dev baseline Review usage Define progress, Stories Wrap up docs Dev baseline Lunch Look at what’s going on today Usage flow Dev baseline Usage review, Context, Domain, Deployment Refine models Review, Retrospective Plan week 2 Typical plan for kickoff
37
Laying down foundation
38
Constraints: Interact per user Portability Supported platform
39
Example: Dispatcher: ____ Building manager: ____ Worker: ____ Supported platform: Java stack
40
Example: Dispatcher: Web or desktop Building manager: Web or any mobile Worker: Provided mobile Supported platform: Java stack
41
Example: Dispatcher: “HTML5” Building manager: Responsive web Worker: Android Supported platform: Java stack
42
Example: Dispatcher: Responsive web SPA Building manager: Responsive web SPA Worker: Responsive web SPA Supported platform: Java stack
43
Frameworks: What can the team support Max one: Project risk or tech risk
44
Example risky project: New team New supplier New domain New codebase
45
Example risky tech: New database system New framework New programming language
46
Solo programming
47
Integration issues Inconsistent coding Merge conflicts
48
Mob programming
49
Pair programming
50
Resource utilization vs Knowledge sharing
51
MondayTuesdayWednesdayThursdayFriday Elevator pitch, Stakeholders Dev baseline Review usage Define progress, Stories Wrap up docs Dev baseline Lunch Look at what’s going on today Usage flow Dev baseline Usage review, Context, Domain, Deployment Refine models Review, Retrospective Plan week 2 Typical plan for kickoff
52
Plan the show
53
Demo script
54
1.Preconditions 2.Start up the system 3.What do you see? 4.Activate a function 5.What do you see? 6.Activate variations of function 7.Thus we demonstrate that we have delivered x
55
1.Building manager has works that needs done (e.g. change mats) 1.Alternative: Periodic trigger 2.Building manager register works request on web site 3.Dispatcher lists unhandled work orders 1.Alternative: Dispatcher filters, searches and sorts work orders 4.Dispatcher displays work order 5.Dispatcher assign tasks to workers based on skills registered in training system 6.Worker get notified of task on their mobile 7.Worker acknowledges task 1.Alternative: If worker rejects task, system marks it as unassigned and alerts dispatcher 8.Worker performs task 9.Worker registers the task as done 10.Worker registers time and materials spent on task on mobile 11.System notifies payroll of time spent 12.System submits invoicing data to accounting system 13.Building is in great shape!
56
1.Building manager has works that needs done (e.g. change mats) 1.Alternative: Periodic trigger 2.Building manager register work order on web site 3.Dispatcher lists unhandled work orders 1.Alternative: Dispatcher filters, searches and sorts work orders 4.Dispatcher displays work order 5.Dispatcher assign tasks to workers based on skills registered in training system 6.Worker get notified of task on their mobile 7.Worker acknowledges task 1.Alternative: If worker rejects task, system marks it as unassigned and alerts dispatcher 8.Worker performs task 9.Worker registers the task as done 10.Worker registers time and materials spent on task on mobile 11.System notifies payroll of time spent 12.System submits invoicing data to accounting system 13.Building is in great shape!
57
Stories 0. (Mock work orders) 1.Complete list of work orders 2.Simple work order filter 3.Placeholder display work order 4.Placeholder assign task
58
Example: Dispatch a task
59
1.Faked: Building manager registers a work order 2.Dispatcher “logs into” web admin at http://test.workers.com/admin http://test.workers.com/admin 3.Dispatcher sees a list of missions (future: sort, filter list) 4.Dispatcher selects a mission 5.Mission will display the type of tasks associated with the mission type 6.Dispatcher clicks a task 7.Application lists all the workers that can be assigned to the task (for now, all workers are listed) 8.Dispatcher selects a worker 9.Dispatcher is returned to mission screen and the worker is listed next to the task
60
Stories – sprint 2 1.Polished list of work orders 2.Complete display work order 3.(Placeholder worker import) 4.Simple assign task
62
MondayTuesdayWednesdayThursdayFriday Elevator pitch, Stakeholders Dev baseline Review usage Define progress, Stories Wrap up docs Dev baseline Lunch Look at what’s going on today Usage flow Dev baseline Usage review, Context, Domain, Deployment Refine models Review, Retrospective Plan week 2 Typical plan for kickoff
63
3 tools
64
1.Discuss the problem 2.Describe the system 3.Plan the show
65
1.Elevator pitch 2.Context diagram 3.Demo script
66
Conclusion:
67
When you return: Create an elevator pitch with your customer Create a context diagram Create a demo script for next sprint
68
Thank you Johannes Brodwall jbr@exilesoft.com www.exilesoft.com www.johannesbrodwall.com @jhannes
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.