Presentation is loading. Please wait.

Presentation is loading. Please wait.

Johannes Brodwall Getting your project off the ground.

Similar presentations


Presentation on theme: "Johannes Brodwall Getting your project off the ground."— Presentation transcript:

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

6

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

61

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


Download ppt "Johannes Brodwall Getting your project off the ground."

Similar presentations


Ads by Google