1 / 53

Smidig arkitektur

Smidig arkitektur. Johannes Brodwall Chief Scientist. “ How do you start a project and achieve flexibility at the beginning ?”. “ How do you {start a project} and achieve flexibility at the beginning ?”. Keep it simple. Defer commitment. Inspect and adapt. It depends. 5 tools.

yardan
Download Presentation

Smidig arkitektur

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Smidigarkitektur Johannes Brodwall Chief Scientist

  2. “How do you start a project and achieve flexibility at the beginning?”

  3. “How do you {start a project}and achieve flexibility at the beginning?”

  4. Keep it simple Defer commitment Inspect and adapt It depends

  5. 5 tools

  6. Discuss the problem Describe the usage Pickthe technologies Plan the show Createthe software

  7. When

  8. Typical plan for kickoff

  9. Discuss the problem

  10. The problem: “A program to assign a worker to a client”

  11. The problem: “A program to assign a worker to a client” (yes, it’s unclear!)

  12. Form groups of 3 (or 2) You will have five minutes to discuss

  13. 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.

  14. For workers Who wants to get paid for good fun work The Awesome work system Is a digitial pimping system Which matchers worker with a client. Unlike the Excel file we’re using now This automateted, online, easy to use and .

  15. Who?

  16. Who? # Clients do ??? every ??? via ??? # Dispatchers do ??? every ??? via ??? # Workers do ??? every ??? via ??? # Building Managers do ??? every ??? via ???

  17. Who? Tens of Clients sign up for service a few times every year via meetings Around 20 Dispatchers assign worker teams to maintainance tasks all the time via specialized application Several hundred Workersaccept tasks and confirm tasks a few times per day via mobile Hundreds of Building Managersorder maintenance tasks for their buildings every few days via web

  18. Who else? Payroll

  19. Describe the usage

  20. Need: Someone identifies a need Trigger: Someone does something with the system The system responds in some way … … The goal has been fulfilled

  21. Building manager has works that needs done (e.g. change mats) Alternative: Periodic trigger Building manager register works request on web site Dispatcher lists unhandled work orders Alternative: Dispatcher filters, searches and sorts work orders Dispatcher displays work order Dispatcher assign tasks to workers based on skills registered in training system Worker get notified of task on their mobile Worker acknowledges task Alternative: If worker rejects task, system marks it as unassigned and alerts dispatcher Worker performs task Worker registers the task as done Worker registers time and materials spent on task on mobile System notifies payroll of time spent System submits invoicing data to accounting system Building is in great shape!

  22. Worker Personell Dispatcher Mobile Accounting Server Building manager Payroll

  23. Worker Personell Dispatcher Mobile Accounting Server Building manager Payroll

  24. Pick the technologies

  25. Constraints: Interact per user Portability Supported platform

  26. Example: Dispatcher: ____ Building manager: ____ Worker: ____ Supported platform: Java stack

  27. Example: Dispatcher: Web or desktop Building manager: Web or any mobile Worker: Provided mobile Supported platform: Java stack

  28. Example: Dispatcher: “HTML5” Building manager: Responsive web Worker: Android Supported platform: Java stack

  29. Example: Dispatcher: Responsive web SPA Building manager: Responsive web SPA Worker: Responsive web SPA Supported platform: Java stack

  30. Frameworks: What can the team support Max one: Project risk or tech risk

  31. Example risky project: New team New supplier New domain New codebase

  32. Example risky tech: New database system New framework New programming language

  33. Plan the show

  34. Building manager has works that needs done (e.g. change mats) Alternative: Periodic trigger Building manager register work order on web site Dispatcher lists unhandled work orders Alternative: Dispatcher filters, searches and sorts work orders Dispatcher displays work order Dispatcher assign tasks to workers based on skills registered in training system Worker get notified of task on their mobile Worker acknowledges task Alternative: If worker rejects task, system marks it as unassigned and alerts dispatcher Worker performs task Worker registers the task as done Worker registers time and materials spent on task on mobile System notifies payroll of time spent System submits invoicing data to accounting system Building is in great shape!

  35. Stories 0. (Mock work orders) Complete list of workorders Simple work order filter Placeholder display work order Placeholder assigntask

  36. Demo script

  37. Preconditions Start up the system What do you see? Activate a function What do you see? Activate variations of function Thus we demonstrate that we have delivered x

  38. Example: Dispatch a task • Faked: Building manager registers a work order • Dispatcher “logs into” web admin at http://test.workers.com/admin • Dispatcher sees a list of missions (future: sort, filter list) • Dispatcher selects a mission • Mission will display the type of tasks associated with the mission type • Dispatcher clicks a task • Application lists all the workers that can be assigned to the task (for now, all workers are listed) • Dispatcher selects a worker • Dispatcher is returned to mission screen and the worker is listed next to the task

  39. Stories – sprint 2 Polished list of work orders Complete display work order (Placeholder worker import) Simple assign task

  40. Create the software

  41. Example: Feature: Dispatch task New codebase 5 developers

  42. Solo programming

  43. Solo programming Integration issues Inconsistent coding Merge conflicts

  44. Mob programming

  45. Pair programming

  46. Resource utilization vs Knowledge sharing

  47. 5 tools

  48. Discuss the problem Describe the usage Pickthetechnologies Plan the show Createthe software

  49. Describe stakeholders Usage flow => context diagram Usetechnologies you know Demo script Mobprogramming

More Related