75
Johannes Brodwall Getting your project off the ground

Getting your project off the ground

  • Upload
    mauve

  • View
    24

  • Download
    0

Embed Size (px)

DESCRIPTION

Getting your project off the ground. Johannes Brodwall. Bootstrapping a team. Raising the team engagement. Turning a corner. Growing the team. Etter 15 års erfaring fra IT bransjen i Norge , innså Johannes Brodwall : “ Det er immari kaldt her!” - PowerPoint PPT Presentation

Citation preview

Page 1: Getting your project off the ground

Johannes Brodwall

Getting yourproject off the

ground

Page 2: Getting your project off the ground

Bootstrapping a team

Page 3: Getting your project off the ground

Raising the team engagement

Page 4: Getting your project off the ground

Turning a corner

Page 5: Getting your project off the ground

Growing the team

Page 6: Getting your project off the ground

Etter 15 års erfaring fra IT bransjen i Norge, innså Johannes Brodwall:

“Det er immari kaldt her!”Nå jobber han for IT bransjen i Sri Lanka.

Men er fortsatt mest i kalde Norge.

Page 7: Getting your project off the ground
Page 8: Getting your project off the ground

“How do you start a project and achieve

understanding at the beginning?”

Page 9: Getting your project off the ground

“How do you {start a project} and achieve understanding at the

beginning?”

Page 10: Getting your project off the ground

Keep it simple

Defer commitment

Inspect and adapt

It depends

Page 11: Getting your project off the ground

Concrete tools fornon-superheroes

Page 12: Getting your project off the ground

3 tools(and 1 bonus)

Page 13: Getting your project off the ground

1. Discuss the problem2. Understand who’s involved3. Describe what it does4. Visualize the context5. Understand the domain6. Lay down the foundation7. Create the roadmap8. Dramatize the demo

Page 14: Getting your project off the ground

When

Page 15: Getting your project off the ground

Monday Tuesday Wednesday Thursday Friday

Elevator pitch,Stakeholders

Usage flow

Dev infrastructure

Dev baselineReview usage

Roadmap Wrap up docsDev baseline

Lunch Lunch Lunch Lunch Lunch

Look at what’s going on today

Tech framework

Usage review,Context,Domain

Refine models

Review,RetrospectivePlan week 2

Typical plan for kickoff

Page 16: Getting your project off the ground

Monday Tuesday Wednesday Thursday Friday

Elevator pitch,Stakeholders

Usage flow

Dev infrastructure

Dev baselineReview usage

Roadmap Wrap up docsDev baseline

Lunch Lunch Lunch Lunch Lunch

Look at what’s going on today

Tech framework

Usage review,Context,Domain

Refine models

Review,RetrospectivePlan week 2

Typical plan for kickoff

Page 17: Getting your project off the ground

Discuss the problem

Page 18: Getting your project off the ground

Form groups of 3 (or 2)You will have five minutes

to discuss

Page 19: Getting your project off the ground

For some user/stakeholderWho wants to achive some goal

The name of the systemIs a type of system

Which lets them perform some operation(s).

Unlike most compelling alternativeThis gives them some advantages.

Page 20: Getting your project off the ground

Sample problem

Page 21: Getting your project off the ground

The problem:“A program to assign a

worker to a client”

Page 22: Getting your project off the ground

The problem:“A program to assign a

worker to a client”(yes, it’s unclear!)

Page 23: Getting your project off the ground

For a temporary employment agent who wants to match candidates

to client needs,the Temporary Staffing System

is aninteractive web application,

which lets them register andmatch candidates and positions.

Unlike competing systemsthis lets us share selective information with our clients.

Page 24: Getting your project off the ground

Who?

Page 25: Getting your project off the ground

Monday Tuesday Wednesday Thursday Friday

Elevator pitch,Stakeholders

Usage flow

Dev infrastructure

Dev baselineReview usage

Roadmap Wrap up docsDev baseline

Lunch Lunch Lunch Lunch Lunch

Look at what’s going on today

Tech framework

Usage review,Context,Domain

Refine models

Review,RetrospectivePlan week 2

Typical plan for kickoff

Page 26: Getting your project off the ground

For a temporary employment agent who wants to match candidates

to client needs,the Temporary Staffing System

is aninteractive web application,

which lets them register andmatch candidates and positions.

Unlike competing systemsthis lets us share selective information with our clients.

Page 27: Getting your project off the ground

Agent

Worker

Client

Page 28: Getting your project off the ground

Who?# Clients do ??? every ??? via ???# Agents do ??? every ??? via ???

# Workers do ??? every ??? via ???

Page 29: Getting your project off the ground

Who?# Clients do ??? every ??? via ???

# Project managers do ??? every ??? via ???# Agents do ??? every ??? via ???

# Applicatants do ??? every ??? via ??? # Workers do ??? every ??? via ???

Page 30: Getting your project off the ground

Who?Tens of Clients sign up for service a few times every year via

meetingsAbout 100 client project managers request workers to match specific

skills every few monthsAround 20 Agents proposes workers to open positions

Several hundred Applicants applies for position once every few months

Hundreds of Workers submit timesheets every (few) days via their mobiles

Page 31: Getting your project off the ground

Who else?Payroll

Page 32: Getting your project off the ground

Monday Tuesday Wednesday Thursday Friday

Elevator pitch,Stakeholders

Usage flow

Dev infrastructure

Dev baselineReview usage

Roadmap Wrap up docsDev baseline

Lunch Lunch Lunch Lunch Lunch

Look at what’s going on today

Tech framework

Usage review,Context,Domain

Refine models

Review,RetrospectivePlan week 2

Typical plan for kickoff

Page 33: Getting your project off the ground

Describe the usage

Page 34: Getting your project off the ground

1. Need: Someone identifies a need2. Trigger: Someone does

something with the system3. The system responds in some

way4. …5. …6. The goal has been fulfilled

Page 35: Getting your project off the ground

1. A new company wants to hire a skilled worker for a temporary position

2. Administrative user adds the client details and login to the system

3. Client logs into the application and completes new position description, including skill requirements

4. Temp agency adds a worker and proposes the worker to a position registered by a client

5. Client gets notified of new proposals (via email)6. Client views status of all open positions in the system7. External to the system: Client interviews candidate, request

further information and makes a decision whether to hire or not8. Client accepts or rejects the worker in the system9. As worker performs work, they register their time in the system10. At the end of a billing period, the system generates billing

information to accounting system and salary information to salary system

Page 36: Getting your project off the ground

Monday Tuesday Wednesday Thursday Friday

Elevator pitch,Stakeholders

Usage flow

Dev infrastructure

Dev baselineReview usage

Roadmap Wrap up docsDev baseline

Lunch Lunch Lunch Lunch Lunch

Look at what’s going on today

Tech framework

Usage review,Context,Domain

Refine models

Review,RetrospectivePlan week 2

Typical plan for kickoff

Page 37: Getting your project off the ground
Page 38: Getting your project off the ground

Monday Tuesday Wednesday Thursday Friday

Elevator pitch,Stakeholders

Usage flow

Dev infrastructure

Dev baselineReview usage

Roadmap Wrap up docsDev baseline

Lunch Lunch Lunch Lunch Lunch

Look at what’s going on today

Tech framework

Usage review,Context,Domain

Refine models

Review,RetrospectivePlan week 2

Typical plan for kickoff

Page 39: Getting your project off the ground

Laying down foundation

Page 40: Getting your project off the ground

Constraints:• Interact per user

• Portability• Supported platform

Page 41: Getting your project off the ground

Example:• Agent: ____

• Project manager: ____• Applicant: ____

• Worker: ____

• Supported platform: ____ stack

Page 42: Getting your project off the ground

Example:• Agent: Web or desktop

• Client manager: Web or any mobile• Applicant: Web• Worker: Mobile

• Supported platform: Java stack

Page 43: Getting your project off the ground

Example:• Agent: Swing

• Client manager: Spring MVC• Applicant: Spring MVC

• Worker: Android

• Supported platform: Java stack

Page 44: Getting your project off the ground

Example:• Agent: Responsive JavaScript/Spring MVC

• Client manager: Responsive JavaScript/Spring MVC

• Applicant: Responsive JavaScript/Spring MVC• Worker: Responsive JavaScript/Spring MVC

• Supported platform: Java stack

Page 45: Getting your project off the ground

Frameworks:• What can the team support

• Max one: Project risk or tech risk

Page 46: Getting your project off the ground

Example risky project:• New team

• New supplier• New domain

• New codebase

Page 47: Getting your project off the ground

Example risky tech:• New database system

• New framework• New programming language

Page 48: Getting your project off the ground

Monday Tuesday Wednesday Thursday Friday

Elevator pitch,Stakeholders

Usage flow

Dev infrastructure

Dev baselineReview usage

Roadmap Wrap up docsDev baseline

Lunch Lunch Lunch Lunch Lunch

Look at what’s going on today

Tech framework

Usage review,Context,Domain

Refine models

Review,RetrospectivePlan week 2

Typical plan for kickoff

Page 49: Getting your project off the ground

Solo programming

Page 50: Getting your project off the ground

Solo programming• Integration issues

• Inconsistent coding• Merge conflicts

Page 51: Getting your project off the ground

Mob programming

Page 52: Getting your project off the ground

Pair programming

Page 53: Getting your project off the ground

Resource utilizationvs

Knowledge sharing

Page 54: Getting your project off the ground

Monday Tuesday Wednesday Thursday Friday

Elevator pitch,Stakeholders

Usage flow

Dev infrastructure

Dev baselineReview usage

Roadmap Wrap up docsDev baseline

Lunch Lunch Lunch Lunch Lunch

Look at what’s going on today

Tech framework

Usage review,Context,Domain

Refine models

Review,RetrospectivePlan week 2

Typical plan for kickoff

Page 55: Getting your project off the ground

1. A new company wants to hire a skilled worker for a temporary position

2. Administrative user adds the client details and login to the system

3. Client logs into the application and completes new position description, including skill requirements

4. Temp agency adds a worker and proposes the worker to a position registered by a client

5. Client gets notified of new proposals (via email)6. Client views status of all open positions in the system7. External to the system: Client interviews candidate, request

further information and makes a decision whether to hire or not8. Client accepts or rejects the worker in the system9. As worker performs work, they register their time in the system10. At the end of a billing period, the system generates billing

information to accounting system and salary information to salary system

Page 56: Getting your project off the ground

1. Experimental create open position2. Experimental list positions3. Simplified create open position4. Simplified list positions5. Complete create open positions6. Complete list positions7. …

Page 57: Getting your project off the ground

1. Experimental create open position2. Experimental list positions3. Simplified create open position4. Simplified list positions5. Complete create open positions6. Complete list positions

7. Basic create client account8. Complete create client account9. Basic login admin user10. Basic login client user11. Complete login client user12. Basic add worker13. Complete add worker14. Basic propose worker for position15. Complete propose worker for position16. Complete confirm worker for position17. Basic enter timesheet (in this version temp agency enters on behalf of

worker)18. Experimental billing report19. Basic billing report20. Basic salary report

Page 58: Getting your project off the ground

20. …21. Attend training on CSS22. Basic layout and styling of web pages23. Complete layout and styling of web pages24. Polished layout and styling of web pages25. Locate slowest pages and make some performance

improvements26. Deploy solution to target platform27. Deploy demo version to wider set of stakeholders28. Deploy pilot version29. Exploratory test of complete flow

Page 59: Getting your project off the ground

Week 1: Experimental create open positionWeek 1: Experimental list positionsWeek 1: Attend training on CSSWeek 2: Simplified create open positionWeek 2: Basic layout and styling of web pagesWeek 3: Deploy solution to target platform…Week 4: Complete layout and styling of web pagesWeek 4: Complete create open positionsWeek 4: Complete list positionsWeek 4: Deploy demo version to wider set of stakeholders…Week 6: Exploratory test of complete flow

Page 60: Getting your project off the ground

Monday Tuesday Wednesday Thursday Friday

Elevator pitch,Stakeholders

Usage flow

Dev infrastructure

Dev baselineReview usage

Roadmap Wrap up docsDev baseline

Lunch Lunch Lunch Lunch Lunch

Look at what’s going on today

Tech framework

Usage review,Context,Domain

Refine models

Review,RetrospectivePlan week 2

Typical plan for kickoff

Page 61: Getting your project off the ground

Plan the show

Page 62: Getting your project off the ground

Demo script

Page 63: Getting your project off the ground

1. Preconditions2. Start up the system3. What do you see?4. Activate a function5. What do you see?6. Activate variations of function7. Thus we demonstrate that we have

delivered x

Page 64: Getting your project off the ground

1. A new company wants to hire a skilled worker for a temporary position

2. Administrative user adds the client details and login to the system

3. Client logs into the application and completes new position description, including skill requirements

4. Temp agency adds a worker and proposes the worker to a position registered by a client

5. Client gets notified of new proposals (via email)6. Client views status of all open positions in the system7. External to the system: Client interviews candidate, request

further information and makes a decision whether to hire or not8. Client accepts or rejects the worker in the system9. As worker performs work, they register their time in the system10. At the end of a billing period, the system generates billing

information to accounting system and salary information to salary system

Page 65: Getting your project off the ground

1. A new company wants to hire a skilled worker for a temporary position

2. Administrative user adds the client details and login to the system

3. Client logs into the application and completes new position description, including skill requirements

4. Temp agency adds a worker and proposes the worker to a position registered by a client

5. Client gets notified of new proposals (via email)6. Client views status of all open positions in the system7. External to the system: Client interviews candidate, request

further information and makes a decision whether to hire or not8. Client accepts or rejects the worker in the system9. As worker performs work, they register their time in the system10. At the end of a billing period, the system generates billing

information to accounting system and salary information to salary system

Page 66: Getting your project off the ground
Page 67: Getting your project off the ground

Monday Tuesday Wednesday Thursday Friday

Elevator pitch,Stakeholders

Usage flow

Dev infrastructure

Dev baselineReview usage

Roadmap Wrap up docsDev baseline

Lunch Lunch Lunch Lunch Lunch

Look at what’s going on today

Tech framework

Usage review,Context,Domain

Refine models

Review,RetrospectivePlan week 2

Typical plan for kickoff

Page 68: Getting your project off the ground

3 tools

Page 69: Getting your project off the ground

1. Discuss the problem2. Describe the system3. Plan the show

Page 70: Getting your project off the ground

1. Elevator pitch2. Context diagram3. Demo script

Page 71: Getting your project off the ground

Monday Tuesday Wednesday Thursday Friday

Elevator pitch,Stakeholders

Usage flow

Dev infrastructure

Dev baselineReview usage

Roadmap Wrap up docsDev baseline

Lunch Lunch Lunch Lunch Lunch

Look at what’s going on today

Tech framework

Usage review,Context,Domain

Refine models

Review,RetrospectivePlan week 2

Typical plan for kickoff

Page 72: Getting your project off the ground

Achievements

Actions

Puzzlers

Page 73: Getting your project off the ground

Conclusion:

Page 74: Getting your project off the ground

When you return:Create an elevator pitch with

your customer