Yocto Web Hob Design 0.0 — Archived: Difference between revisions
mNo edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
=== User Stories / Requirements === | === User Stories / Requirements === | ||
<div> | |||
<span class="c0 c11"></span> | |||
</div> | |||
<span class="c0 c10"></span> | |||
[# ][# ] | |||
{| class="c15" | |||
| class="c13" | | |||
<span class="c0 c9">Role</span> | |||
| class="c13" | | |||
<span class="c0 c9">Function</span> | |||
| class="c14 c16" | | |||
<span class="c0 c9">Story</span> | |||
| class="c4 c14" | | |||
<span class="c0 c9"></span> | |||
| class="c14 c18" | | |||
<span class="c0 c9">Credit</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Layers</span> | |||
| class="c7" | | |||
<span class="c0">As an experienced image builder</span> | |||
<span class="c0">I want to add my own layers so that I can create heavily customised images to suit my project.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Build an image</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">I want to quickly create an image from default options so that I don't need to worry about customisation.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Projects</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">I want to save my image configurations</span> | |||
<span class="c0">so that I can reuse them at a later stage.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Testing</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">I want to be able to run a qemu* image after the build</span> | |||
<span class="c0">so that I can tell that it works.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Deployment</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">I want to be able to write images to removable media easily</span> | |||
<span class="c0">so that I can test the image on the real hardware (this can be hard to do manually).</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Build an image</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">I want to be able to add things (functionality)</span> | |||
<span class="c0">so that I can customise my image to my needs.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Recipes</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">I want to see the relationships between the recipes/packages</span> | |||
<span class="c0">so that I can better refine the contents of my image.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Dashboard</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">I want to be able to see the status of the build in real time</span> | |||
<span class="c0">so that I know what the progress is at any time.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Deployment</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">I want to download my image files</span> | |||
<span class="c0">so that I can deploy them and/or store them locally.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Projects</span> | |||
| class="c7" | | |||
<span class="c0">As a team member</span> | |||
<span class="c0">I want to share my images and configurations with other team members</span> | |||
<span class="c0">so that we can better collaborate.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Packages</span> | |||
| class="c7" | | |||
<span class="c0">As a team member</span> | |||
<span class="c0">I want to be able to share packages with other team members</span> | |||
<span class="c0">so they don't need to build them again.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Groups</span> | |||
| class="c7" | | |||
<span class="c0">As an engineer</span> | |||
<span class="c0">I want to be able to create package groups by selecting packages individually</span> | |||
<span class="c0">so other team members don't have to.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Dashboard</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">I want to be able to view the result of a build that has completed</span><span class="c0"> </span><span class="c0">in case it ran overnight (log)</span> | |||
<span class="c0">so that I can see if I need to do it again or what went wrong.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Logs</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">if a build fails I want to see the build log with the error clearly highlighted and any relevant info</span> | |||
<span class="c0">so I can figure out what went wrong.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Notifications</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">I want to be able to send failure output (logs, other relevant info) to a 3rd party</span> | |||
<span class="c0">in case I can not fix the problem myself.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Configurations</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">I want to be able to go back after a build completes and edit selections / config</span> | |||
<span class="c0">in case I forgot something.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Notifications</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">I want to be able to get notifications (email?) when a build completes</span> | |||
<span class="c0">so I know when that happens what the result was briefly.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Scheduling</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">I want to be able to schedule builds</span> | |||
<span class="c0">so that I don't have to run them immediately.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Scheduling</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">I want to be able to run or schedule more than one build to run in parallel</span> | |||
<span class="c0">in order to save time and make maximum use of resources.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Dashboard</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">I want to see understandable explanations of machines</span> | |||
<span class="c0">so that I can make the right decisions.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Dashboard</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">I want to see recipe and package descriptions in terms of functionality</span> | |||
<span class="c0">so that I don't need to be a Linux wizard to customise my image.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Build an image</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">I want to be able to choose whether or not to continue when an error occurs</span> | |||
<span class="c0">so I can get as much of the build done as possible ( -k )</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Build history</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">I want to see the history of my builds</span> | |||
<span class="c0">so that I have access to any output I've created in the past - history is classified per project.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Configuration</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">I want to name my images for the same configuration</span> | |||
<span class="c0">so that I can easily identify them (but do not use naming for k</span><span class="c0">eeping separate </span><span class="c0">configs).</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Configuration</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">I want to have multiple configurations within each project</span> | |||
<span class="c0">so I can have similar settings for different target machines for the same project.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Templates</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder I want to be asked to save a template if the build was successful</span> | |||
<span class="c0">So I can save time on my next build</span> | |||
| class="c4" | | |||
<span class="c0">2.c.i.</span> | |||
| class="c6" | | |||
<span class="c0">Shane Wang</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Templates</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder I want to be able to manage (delete) saved templates</span> | |||
<span class="c0">So that I can focus on templates I need</span> | |||
| class="c4" | | |||
<span class="c0">2.c.ii.</span> | |||
| class="c6" | | |||
<span class="c0">Shane Wang</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Build an image</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">I want to start from previous successful steps which does not have a build yet (history max 5)</span> | |||
<span class="c0">So that </span><span class="c0">I don’t waste time on unsuccessful builds.</span> | |||
| class="c4" | | |||
<span class="c0">2.d.</span> | |||
| class="c6" | | |||
<span class="c0">Shane Wang</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Dashboard</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder I want to be able to stop the process of parsing recipes and then select another machine</span> | |||
<span class="c0">So that </span><span class="c0">I don’t waste time on builds I don’t need</span><sup>[#cmnt1 [a]]</sup> | |||
| class="c4" | | |||
<span class="c0">4.a.</span> | |||
| class="c6" | | |||
<span class="c0">Shane Wang</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Dashboard</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">I want to see a progress bar so that I can see how far along I am in the process</span> | |||
<span class="c0">So that I don’t waste time.</span> | |||
| class="c4" | | |||
<span class="c0">4.b.</span> | |||
| class="c6" | | |||
<span class="c0">Shane Wang</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Build an image</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">I want to see an error dialog pop up and be brought back to Build Settings</span> | |||
<span class="c0">So that </span><span class="c0">I can make changes.</span><sup>[#cmnt2 [b]]</sup> | |||
| class="c4" | | |||
<span class="c0">4.c.</span> | |||
| class="c6" | | |||
<span class="c0">Shane Wang</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Build an</span><span class="c0"> image</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">I want to be able to select a base image</span> | |||
<span class="c0">so that I can b</span><span class="c0">uild without any customisation </span><span class="c0">and</span><span class="c0"> go to a complete build directly.</span><sup>[#cmnt3 [c]]</sup> | |||
| class="c4" | | |||
<span class="c0">5.1.</span> | |||
| class="c6" | | |||
<span class="c0">Shane Wang</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Build an image</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">I want to create my own image</span> | |||
<span class="c0">so that I can a</span><span class="c0">dd more recipes on base images (select recipes), then build packages and then select a package.</span><sup>[#cmnt4 [d]]</sup> | |||
| class="c4" | | |||
<span class="c0">5.2.</span> | |||
| class="c6" | | |||
<span class="c0">Shane Wang</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Build an image</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">I want to select a base image, v</span><span class="c0">iew the packages and see a pop up a warning dialog explaining the current available packages if they are not a complete package list and then ask if want to proceed or not</span> | |||
<span class="c0">so that I can create builds</span><sup>[#cmnt5 [e]]</sup> | |||
| class="c4" | | |||
<span class="c0">5.3.</span> | |||
| class="c6" | | |||
<span class="c0">Shane Wang</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Build an</span><span class="c0"> image</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">I want to select a base image to </span><span class="c0">build selected recipes then select package</span> | |||
<span class="c0">so that I can build a package.</span><sup>[#cmnt6 [f]]</sup> | |||
| class="c4" | | |||
<span class="c0">5.3.1.</span> | |||
| class="c6" | | |||
<span class="c0">Shane Wang</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Build an</span><span class="c0"> image</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">if I don’t want to view the package I can go directly to select package</span> | |||
<span class="c0">so that ------</span><sup>[#cmnt7 [g]]</sup> | |||
| class="c4" | | |||
<span class="c0">5.3.2.</span> | |||
| class="c6" | | |||
<span class="c0">Shane Wang</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Build packages</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder</span> | |||
<span class="c0">I want to be able to stop the process of building packages and simply stop at the current page</span> | |||
<span class="c0">so that I don’t get an image I don’t need.</span> | |||
| class="c4" | | |||
<span class="c0">6.a.</span> | |||
| class="c6" | | |||
<span class="c0">Shane Wang</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Image Builder</span> | |||
| class="c3" | | |||
<span class="c0">Build image</span> | |||
| class="c7" | | |||
<span class="c0">As an image builder I want to download the image (URL provided)</span> | |||
<span class="c0">So that I can deploy the image</span> | |||
| class="c4" | | |||
<span class="c0">8.a.</span> | |||
| class="c6" | | |||
<span class="c0">Shane Wang</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0"></span> | |||
| class="c3" | | |||
<span class="c0"></span> | |||
| class="c7" | | |||
<span class="c0"></span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0"></span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Architect</span> | |||
| class="c3" | | |||
<span class="c0">C</span><span class="c0">onfiguration</span> | |||
| class="c7" | | |||
<span class="c0">As an architect</span> | |||
<span class="c0">I want to be able to control the level of customisation available to team members</span> | |||
<span class="c0">so that I have control over the project.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Architect</span> | |||
| class="c3" | | |||
<span class="c0">Create user</span> | |||
| class="c7" | | |||
<span class="c0">As an architect</span> | |||
<span class="c0">I want to create Webhob users and give them access to projects</span> | |||
<span class="c0">so that I can manage my resources.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0"></span> | |||
| class="c3" | | |||
<span class="c0"></span> | |||
| class="c7" | | |||
<span class="c0"></span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0"></span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Team Member</span> | |||
| class="c3" | | |||
<span class="c0">Projects</span> | |||
| class="c7" | | |||
<span class="c0">As a team member</span> | |||
<span class="c0">I want to share my images and configurations with other team members so that we can better collaborate.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Team Member</span> | |||
| class="c3" | | |||
<span class="c0">Groups</span> | |||
<span class="c0"></span> | |||
| class="c7" | | |||
<span class="c0">As a team member I want to be able to share packages with other team members so they don't need to build them again.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Team Member</span> | |||
| class="c3" | | |||
<span class="c0">Login</span> | |||
| class="c7" | | |||
<span class="c0">As an admin</span> | |||
<span class="c0">I want actions to be recorded against individual users</span> | |||
<span class="c0">so that there is an audit trail</span><span class="c0">. </span> | |||
| class="c4" | | |||
<span class="c0">1.</span> | |||
| class="c6" | | |||
<span class="c0">Shane Wang</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0"></span> | |||
| class="c3" | | |||
<span class="c0"></span> | |||
| class="c7" | | |||
<span class="c0"></span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0"></span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Engineer</span> | |||
| class="c3" | | |||
<span class="c0">Groups</span> | |||
| class="c7" | | |||
<span class="c0">As an engineer</span> | |||
<span class="c0">I want to be able to create package groups by selecting packages individually</span> | |||
<span class="c0">so other team members don't have to.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0"></span> | |||
| class="c3" | | |||
<span class="c0"></span> | |||
| class="c7" | | |||
<span class="c0"></span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0"></span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Project Manager</span> | |||
| class="c3" | | |||
<span class="c0">Archiving</span> | |||
| class="c7" | | |||
<span class="c0">As a project manager</span> | |||
<span class="c0">I want to archive a finished projects</span> | |||
<span class="c0">so that work can be preserved and recovered with minimum storage needs.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0"></span> | |||
| class="c3" | | |||
<span class="c0"></span> | |||
| class="c7" | | |||
<span class="c0"></span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0"></span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Sysadmin</span> | |||
| class="c3" | | |||
<span class="c0">Groups</span> | |||
| class="c7" | | |||
<span class="c0">As a sysadmin I want to be able to control how much of the available server resources each user can use so that there is fair sharing. </span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Sysadmin</span> | |||
| class="c3" | | |||
<span class="c0">Groups</span> | |||
| class="c7" | | |||
<span class="c0">As a sysadmin I want to be able to invite guest users so that guests can login.</span> | |||
| class="c4" | | |||
<span class="c0">0.</span> | |||
| class="c6" | | |||
<span class="c0">Shane Wang</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Sysadmin</span> | |||
| class="c3" | | |||
<span class="c0">Groups</span> | |||
| class="c7" | | |||
<span class="c0">As a sysadmin I want to be able to reserve available bitbake for user’s requests</span> | |||
<span class="c0">s</span><span class="c0">o that ------ </span><sup>[#cmnt8 [h]]</sup> | |||
| class="c4" | | |||
<span class="c0">Multi-user 1.</span> | |||
| class="c6" | | |||
<span class="c0">Shane Wang</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0"></span> | |||
| class="c3" | | |||
<span class="c0"></span> | |||
| class="c7" | | |||
<span class="c0"></span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0"></span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Architect</span> | |||
| class="c3" | | |||
<span class="c0">Groups</span> | |||
| class="c7" | | |||
<span class="c0">As an architect I want to be able to control the level of customisation available to team members so that I have control over the project.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|- class="c8" | |||
| class="c3" | | |||
<span class="c0">Architect</span> | |||
| class="c3" | | |||
<span class="c0">Groups</span> | |||
| class="c7" | | |||
<span class="c0">As an architect I want to create Webhob users and give them access to projects so that I can manage my resources.</span> | |||
| class="c4" | | |||
<span class="c0"></span> | |||
| class="c6" | | |||
<span class="c0">London team</span> | |||
|} | |||
<span class="c0"></span> | |||
<span class="c0 c11"></span> | |||
<sup>[#cmnt9 [i]]</sup> | |||
<div> | |||
<span class="c0 c11"></span> | |||
</div><div class="c12"> | |||
[#cmnt_ref1 [a]]<span class="c0 c11">Jim Kosem:</span> | |||
<span class="c0 c11">Better reason?</span> | |||
---- | |||
<span class="c0 c11">bluelightning:</span> | |||
<span class="c0 c11">in case I selected the wrong machine?</span> | |||
---- | |||
<span class="c0 c11">Jim Kosem:</span> | |||
<span class="c0 c11">I'm not sure what that means actually in the original document. Let me know if it comes out or not.</span> | |||
</div><div class="c12"> | |||
[#cmnt_ref2 [b]]<span class="c0 c11">Jim Kosem:</span> | |||
<span class="c0 c11">Better reason?</span> | |||
</div><div class="c12"> | |||
[#cmnt_ref3 [c]]<span class="c0 c11">Jim Kosem:</span> | |||
<span class="c0 c11">Make sense?</span> | |||
---- | |||
<span class="c0 c11">bluelightning:</span> | |||
<span class="c0 c11">Sounds like this is covered by one of the other stories above...</span> | |||
---- | |||
<span class="c0 c11">Jim Kosem:</span> | |||
<span class="c0 c11">Well sort of, but not really. I guess it has a different intent - building without customisation. But you said this shouldn't be in here though right?</span> | |||
</div><div class="c12"> | |||
[#cmnt_ref4 [d]]<span class="c0 c11">Jim Kosem:</span> | |||
<span class="c0 c11">Doesn't really make sense does it?</span> | |||
</div><div class="c12"> | |||
[#cmnt_ref5 [e]]<span class="c0 c11">Jim Kosem:</span> | |||
<span class="c0 c11">Needs work...</span> | |||
</div><div class="c12"> | |||
[#cmnt_ref6 [f]]<span class="c0 c11">Jim Kosem:</span> | |||
<span class="c0 c11">This one is also not great...</span> | |||
</div><div class="c12"> | |||
[#cmnt_ref7 [g]]<span class="c0 c11">Jim Kosem:</span> | |||
<span class="c0 c11">This one doesn't make much sense as a story from the requirements...</span> | |||
</div><div class="c12"> | |||
[#cmnt_ref8 [h]]<span class="c0 c11">Jim Kosem:</span> | |||
<span class="c0 c11">?</span> | |||
</div><div class="c12"> | |||
[#cmnt_ref9 [i]]<span class="c0 c11">Jim Kosem:</span> | |||
<span class="c0 c11">By the way, went back and added reference numbers that match up to Shane's outline.</span> | |||
</div> |
Revision as of 12:03, 2 May 2012
User Stories / Requirements
[# ][# ]
Role |
Function |
Story |
|
Credit |
Image Builder |
Layers |
As an experienced image builder I want to add my own layers so that I can create heavily customised images to suit my project. |
|
London team |
Image Builder |
Build an image |
As an image builder I want to quickly create an image from default options so that I don't need to worry about customisation. |
|
London team |
Image Builder |
Projects |
As an image builder I want to save my image configurations so that I can reuse them at a later stage. |
|
London team |
Image Builder |
Testing |
As an image builder I want to be able to run a qemu* image after the build so that I can tell that it works. |
|
London team |
Image Builder |
Deployment |
As an image builder I want to be able to write images to removable media easily so that I can test the image on the real hardware (this can be hard to do manually). |
|
London team |
Image Builder |
Build an image |
As an image builder I want to be able to add things (functionality) so that I can customise my image to my needs. |
|
London team |
Image Builder |
Recipes |
As an image builder I want to see the relationships between the recipes/packages so that I can better refine the contents of my image. |
|
London team |
Image Builder |
Dashboard |
As an image builder I want to be able to see the status of the build in real time so that I know what the progress is at any time. |
|
London team |
Image Builder |
Deployment |
As an image builder I want to download my image files so that I can deploy them and/or store them locally. |
|
London team |
Image Builder |
Projects |
As a team member I want to share my images and configurations with other team members so that we can better collaborate. |
|
London team |
Image Builder |
Packages |
As a team member I want to be able to share packages with other team members so they don't need to build them again. |
|
London team |
Image Builder |
Groups |
As an engineer I want to be able to create package groups by selecting packages individually so other team members don't have to. |
|
London team |
Image Builder |
Dashboard |
As an image builder I want to be able to view the result of a build that has completed in case it ran overnight (log) so that I can see if I need to do it again or what went wrong. |
|
London team |
Image Builder |
Logs |
As an image builder if a build fails I want to see the build log with the error clearly highlighted and any relevant info so I can figure out what went wrong. |
|
London team |
Image Builder |
Notifications |
As an image builder I want to be able to send failure output (logs, other relevant info) to a 3rd party in case I can not fix the problem myself. |
|
London team |
Image Builder |
Configurations |
As an image builder I want to be able to go back after a build completes and edit selections / config in case I forgot something. |
|
London team |
Image Builder |
Notifications |
As an image builder I want to be able to get notifications (email?) when a build completes so I know when that happens what the result was briefly. |
|
London team |
Image Builder |
Scheduling |
As an image builder I want to be able to schedule builds so that I don't have to run them immediately. |
|
London team |
Image Builder |
Scheduling |
As an image builder I want to be able to run or schedule more than one build to run in parallel in order to save time and make maximum use of resources. |
|
London team |
Image Builder |
Dashboard |
As an image builder I want to see understandable explanations of machines so that I can make the right decisions. |
|
London team |
Image Builder |
Dashboard |
As an image builder I want to see recipe and package descriptions in terms of functionality so that I don't need to be a Linux wizard to customise my image. |
|
London team |
Image Builder |
Build an image |
As an image builder I want to be able to choose whether or not to continue when an error occurs so I can get as much of the build done as possible ( -k ) |
|
London team |
Image Builder |
Build history |
As an image builder I want to see the history of my builds so that I have access to any output I've created in the past - history is classified per project. |
|
London team |
Image Builder |
Configuration |
As an image builder I want to name my images for the same configuration so that I can easily identify them (but do not use naming for keeping separate configs). |
|
London team |
Image Builder |
Configuration |
As an image builder I want to have multiple configurations within each project so I can have similar settings for different target machines for the same project. |
|
London team |
Image Builder |
Templates |
As an image builder I want to be asked to save a template if the build was successful So I can save time on my next build |
2.c.i. |
Shane Wang |
Image Builder |
Templates |
As an image builder I want to be able to manage (delete) saved templates So that I can focus on templates I need |
2.c.ii. |
Shane Wang |
Image Builder |
Build an image |
As an image builder I want to start from previous successful steps which does not have a build yet (history max 5) So that I don’t waste time on unsuccessful builds. |
2.d. |
Shane Wang |
Image Builder |
Dashboard |
As an image builder I want to be able to stop the process of parsing recipes and then select another machine So that I don’t waste time on builds I don’t need[#cmnt1 [a]] |
4.a. |
Shane Wang |
Image Builder |
Dashboard |
As an image builder I want to see a progress bar so that I can see how far along I am in the process So that I don’t waste time. |
4.b. |
Shane Wang |
Image Builder |
Build an image |
As an image builder I want to see an error dialog pop up and be brought back to Build Settings So that I can make changes.[#cmnt2 [b]] |
4.c. |
Shane Wang |
Image Builder |
Build an image |
As an image builder I want to be able to select a base image so that I can build without any customisation and go to a complete build directly.[#cmnt3 [c]] |
5.1. |
Shane Wang |
Image Builder |
Build an image |
As an image builder I want to create my own image so that I can add more recipes on base images (select recipes), then build packages and then select a package.[#cmnt4 [d]] |
5.2. |
Shane Wang |
Image Builder |
Build an image |
As an image builder I want to select a base image, view the packages and see a pop up a warning dialog explaining the current available packages if they are not a complete package list and then ask if want to proceed or not so that I can create builds[#cmnt5 [e]] |
5.3. |
Shane Wang |
Image Builder |
Build an image |
As an image builder I want to select a base image to build selected recipes then select package so that I can build a package.[#cmnt6 [f]] |
5.3.1. |
Shane Wang |
Image Builder |
Build an image |
As an image builder if I don’t want to view the package I can go directly to select package so that ------[#cmnt7 [g]] |
5.3.2. |
Shane Wang |
Image Builder |
Build packages |
As an image builder I want to be able to stop the process of building packages and simply stop at the current page so that I don’t get an image I don’t need. |
6.a. |
Shane Wang |
Image Builder |
Build image |
As an image builder I want to download the image (URL provided) So that I can deploy the image |
8.a. |
Shane Wang |
|
|
|
|
|
Architect |
Configuration |
As an architect I want to be able to control the level of customisation available to team members so that I have control over the project. |
|
London team |
Architect |
Create user |
As an architect I want to create Webhob users and give them access to projects so that I can manage my resources. |
|
London team |
|
|
|
|
|
Team Member |
Projects |
As a team member I want to share my images and configurations with other team members so that we can better collaborate. |
|
London team |
Team Member |
Groups
|
As a team member I want to be able to share packages with other team members so they don't need to build them again. |
|
London team |
Team Member |
Login |
As an admin I want actions to be recorded against individual users so that there is an audit trail. |
1. |
Shane Wang |
|
|
|
|
|
Engineer |
Groups |
As an engineer I want to be able to create package groups by selecting packages individually so other team members don't have to. |
|
London team |
|
|
|
|
|
Project Manager |
Archiving |
As a project manager I want to archive a finished projects so that work can be preserved and recovered with minimum storage needs. |
|
London team |
|
|
|
|
|
Sysadmin |
Groups |
As a sysadmin I want to be able to control how much of the available server resources each user can use so that there is fair sharing. |
|
London team |
Sysadmin |
Groups |
As a sysadmin I want to be able to invite guest users so that guests can login. |
0. |
Shane Wang |
Sysadmin |
Groups |
As a sysadmin I want to be able to reserve available bitbake for user’s requests so that ------ [#cmnt8 [h]] |
Multi-user 1. |
Shane Wang |
|
|
|
|
|
Architect |
Groups |
As an architect I want to be able to control the level of customisation available to team members so that I have control over the project. |
|
London team |
Architect |
Groups |
As an architect I want to create Webhob users and give them access to projects so that I can manage my resources. |
|
London team |
[#cmnt9 [i]]
[#cmnt_ref1 [a]]Jim Kosem:
Better reason?
bluelightning:
in case I selected the wrong machine?
Jim Kosem:
I'm not sure what that means actually in the original document. Let me know if it comes out or not.
[#cmnt_ref2 [b]]Jim Kosem:
Better reason?
[#cmnt_ref3 [c]]Jim Kosem:
Make sense?
bluelightning:
Sounds like this is covered by one of the other stories above...
Jim Kosem:
Well sort of, but not really. I guess it has a different intent - building without customisation. But you said this shouldn't be in here though right?
[#cmnt_ref4 [d]]Jim Kosem:
Doesn't really make sense does it?
[#cmnt_ref5 [e]]Jim Kosem:
Needs work...
[#cmnt_ref6 [f]]Jim Kosem:
This one is also not great...
[#cmnt_ref7 [g]]Jim Kosem:
This one doesn't make much sense as a story from the requirements...
[#cmnt_ref8 [h]]Jim Kosem:
?
[#cmnt_ref9 [i]]Jim Kosem:
By the way, went back and added reference numbers that match up to Shane's outline.