750 likes | 847 Views
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!”
E N D
Gettingyourprojectofftheground Johannes Brodwall
Etter15 årserfaringfra IT bransjeniNorge, innsåJohannes Brodwall: “Deterimmarikaldt her!” Nå jobber han for IT bransjeniSri Lanka. Men erfortsattmestikaldeNorge.
“How do you start a project and achieve understanding at the beginning?”
“How do you {start a project}and achieve understanding at the beginning?”
Keep it simple Defer commitment Inspect and adapt It depends
3tools (and 1 bonus)
Discuss the problem Understand who’sinvolved Describewhat it does Visualizethecontext Understand thedomain Laydownthefoundation Createtheroadmap Dramatizethe demo
Form groups of 3 (or 2) You will have five minutes to discuss
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.
The problem: “A program to assign a worker to a client”
The problem: “A program to assign a worker to a client” (yes, it’s unclear!)
For a temporary employment agent who wants to match candidatesto client needs, theTemporary Staffing System isaninteractive web application, which lets them register andmatch candidates and positions. Unlikecompeting systemsthis lets us share selective information with our clients.
For a temporary employment agent who wants to match candidatesto client needs, theTemporary Staffing System isaninteractive web application, which lets them register andmatch candidates and positions. Unlikecompeting systemsthis lets us share selective information with our clients.
Agent Worker Client
Who? # Clients do ??? every ??? via ??? # Agents do ??? every ??? via ??? # Workers do ??? every ??? via ???
Who? # Clients do ??? every ??? via ??? # Project managers do ??? every ??? via ??? # Agents do ??? every ??? via ??? # Applicatantsdo ??? every ??? via ??? # Workers do ??? every ??? via ???
Who? Tens of Clients sign up for service a few times every year via meetings About 100 client project managersrequest workers to match specific skills every few months Around 20 Agents proposes workers to open positions Several hundred Applicantsapplies for position once every few months Hundreds of Workerssubmit timesheets every (few) days via their mobiles
Who else? Payroll
Need: Someone identifies a need Trigger: Someone does something with the system The system responds in some way … … The goal has been fulfilled
A new company wants to hire a skilled worker for a temporary position Administrative user adds the client details and login to the system Client logs into the application and completes new position description, including skill requirements Temp agency adds a worker and proposes the worker to a position registered by a client Client gets notified of new proposals (via email) Client views status of all open positions in the system External to the system: Client interviews candidate, request further information and makes a decision whether to hire or not Client accepts or rejects the worker in the system As worker performs work, they register their time in the system At the end of a billing period, the system generates billing information to accounting system and salary information to salary system
Constraints: Interact per user Portability Supported platform
Example: Agent: ____ Project manager: ____ Applicant: ____ Worker: ____ Supported platform: ____ stack
Example: Agent: Web or desktop Client manager: Web or any mobile Applicant: Web Worker: Mobile Supported platform: Java stack
Example: Agent: Swing Client manager: Spring MVC Applicant: Spring MVC Worker: Android Supported platform: Java stack
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
Frameworks: What can the team support Max one: Project risk or tech risk
Example risky project: New team New supplier New domain New codebase
Example risky tech: New database system New framework New programming language
Solo programming Integration issues Inconsistent coding Merge conflicts