ManagingBlueprints

Differences between revisions 1 and 17 (spanning 16 versions)
Revision 1 as of 2012-10-25 09:11:56
Size: 243
Editor: 80
Comment:
Revision 17 as of 2013-11-04 07:09:20
Size: 5722
Editor: h-4-180
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
 * Creating a topic (done by a Ubuntu Developer)
 * Creating blueprints (done by the Ubuntu Studio developer in charge of blueprints)
 * Creating workitems (done by any Ubuntu Studio developer)
 * Managing workitems (DONE, POSTPONED, etc)
<<Include(UbuntuStudio/Navigation/Header)>>
<<Include(UbuntuStudio/Navigation/CoreSideBar)>>

<<TableOfContents>>

= Registering a blueprint for a Ubuntu Studio project (anyone) =

 * Register the blueprint within the project it is for. For example, blueprints for [[https://launchpad.net/linux-lowlatency|linux-lowlatency]] go [[https://blueprints.launchpad.net/linux-lowlatency|here]]
 * Use a name that makes sense. If the blueprint is targeted towards a specific release of Ubuntu Studio, one can simply name it something like "linux-lowlatency-t" to show that the blueprint is targeted towards the codename "T" release of Ubuntu Studio, but any name will do.
 * Write shortly about your plans on the ''Whiteboard'', and add your workitems for the blueprint (see the [[UbuntuStudio/ManagingBlueprints#Workitems|Workitems section]] about how to create and manage workitems
 * Set '''Approver''' to [[https://launchpad.net/~ubuntustudio-core|~ubuntustudio-core]].
 * '''Assignee''' and '''Drafter''' should be the LP team that drives the correspondig LP project. For example: ~ubuntustudio-kernel should be assignee and drafter for linux-lowlatency.
 * Is the blueprint going to be targeted for a specific release of [[https://launchpad.net/ubuntustudio|Ubuntu Studio]]? If yes, then add it as a dependency to the correct "topic" blueprint in the [[https://blueprints.launchpad.net/ubuntustudio|ubuntustudio launchpad project blueprints page]]. See the [[UbuntuStudio/ManagingBlueprints#Dependency_structure_for_the_Ubuntu_Studio_topic_blueprints|this section]] about the dependency structure for Ubuntu Studio topics.

= Workitems =

A typical workitem for a blueprint may look something like this:
{{{
[ubuntustudio-dev] Categorize all available audio applications in the Ubuntu repositories: TODO
}}}

[ubuntustudio-dev] means that the LP group [[https://launchpad.net/~ubuntustudio-dev|~ubuntustudio-dev]] is assigned to this particular workitem. One can assign either LP groups or LP users.

TODO is the current implementation.

When starting to work on a workitem, change the assignee to your own LP name, and change the implementation to INPROGRESS.

When the workitem is done, change the implementation to DONE.

Possible implementations are:

|| '''state''' || '''possible aliases''' || ''' description* ''' ||
|| `TODO` || empty string, `INPROGRESS` || Item is expected to be done by the end of the cycle ||
|| `INPROGRESS` || || By default, this is an alias for TODO, but teams can choose to track it separately. ||
|| `BLOCKED` || || Item is still expected to be done by end of cycle, but cannot move forward due to issues outside assignees control ||
|| `DONE` || || ||
|| `POSTPONED` || `POSTPONE` || item will not be done this cycle ||

Read more about workitems [[WorkItemsHowto|here]].

= Managing a blueprint from beginning to end (~ubuntustudio-core) =

 * First, register the blueprint: see above
 * A member of the LP team [[https://launchpad.net~ubuntustudio-core|ubuntustudio-core]] reviews and approves the blueprint, then does the following:
  * Set '''Direction''' to ''Approved''.
  * Set '''Definition''' to ''Approved''.
  * Set '''Implementation''' to ''Started''
 * If the blueprint becomes obsolete:
  * Set '''Definition''' to ''Obsolete'' (unlists the blueprint from project blueprint page)
 * If another blueprint takes over the role the current one has:
  * Set '''Definition''' to ''Superseded'' (unlists the blueprint from project blueprint page)
 * Once all workitems in the blueprint are marked DONE:
  * Set '''Implementation''' to ''Implemented'' (unlists the blueprint from project blueprint page)

= Dependency structure for the Ubuntu Studio topic blueprints =

'''Example of a release targeted blueprints tree for Ubuntu Studio 14.04:''' https://blueprints.launchpad.net/ubuntustudio/+spec/topic-ubuntustudio-flavor-t

Structure for the [[https://blueprints.launchpad.net/ubuntustudio|ubuntustudio project blueprint]] topics

 * '''ubuntustudio-?''' (main topic)
  * '''core-?''' (subtopic)
  * '''applications-?''' (subtopic)
  * '''testing-?''' (subtopic)
  * '''art-?''' (subtopic)
  * '''documentation-?''' (subtopic)
  * '''website-social-?''' (subtopic)

Each subtopic will have dependencies to blueprints from other Ubuntu Studio projects. Next is a table that shows the structure of those dependencies:

|| '''Subtopic name''' || '''Dependecy LP Projects''' ||
|| core-? || [[https://launchpad.net/linux-lowlatency|linux-lowlatency]], [[https://launchpad.net/linux-rt|linux-rt]], [[https://launchpad.net/ubuntustudio-meta|ubuntustudio-meta]], [[https://launchpad.net/ubuntustudio-default-settings|ubuntustudio-default-settings]], [[https://launchpad.net/ubuntustudio-live|ubuntustudio-live]] ||
|| applications-? || [[https://launchpad.net/ubuntustudio-controls|ubuntustudio-controls]], [[https://launchpad.net/ubuntustudio-menu|ubuntustudio-menu]], [[https://launchpad.net/ubuntustudio-installer|ubuntustudio-installer]] ||
|| testing-? || [[https://launchpad.net/ubuntustudio-testing|ubuntustudio-testing]] ||
|| art-? || [[https://launchpad.net/ubuntustudio-icon-theme|ubuntustudio-icon-theme]], [[https://launchpad.net/ubuntustudio-look|ubuntustudio-look]], [[https://launchpad.net/ubuntustudio-lightdm-theme|ubuntustudio-lightdm-theme]], [[https://launchpad.net/usplash-theme-ubuntustudio|usplash-theme-ubuntustudio]] ||
|| documentation-? || [[https://launchpad.net/ubuntustudio-documentation|ubuntustudio-documentation]] ||
|| website-social-? || [[https://launchpad.net/ubuntustudio-website|ubuntustudio-website]] ||

----

CategoryUbuntuStudioPlanning CategoryUbuntuStudio

Registering a blueprint for a Ubuntu Studio project (anyone)

  • Register the blueprint within the project it is for. For example, blueprints for linux-lowlatency go here

  • Use a name that makes sense. If the blueprint is targeted towards a specific release of Ubuntu Studio, one can simply name it something like "linux-lowlatency-t" to show that the blueprint is targeted towards the codename "T" release of Ubuntu Studio, but any name will do.
  • Write shortly about your plans on the Whiteboard, and add your workitems for the blueprint (see the Workitems section about how to create and manage workitems

  • Set Approver to ~ubuntustudio-core.

  • Assignee and Drafter should be the LP team that drives the correspondig LP project. For example: ~ubuntustudio-kernel should be assignee and drafter for linux-lowlatency.

  • Is the blueprint going to be targeted for a specific release of Ubuntu Studio? If yes, then add it as a dependency to the correct "topic" blueprint in the ubuntustudio launchpad project blueprints page. See the this section about the dependency structure for Ubuntu Studio topics.

Workitems

A typical workitem for a blueprint may look something like this:

[ubuntustudio-dev] Categorize all available audio applications in the Ubuntu repositories: TODO

[ubuntustudio-dev] means that the LP group ~ubuntustudio-dev is assigned to this particular workitem. One can assign either LP groups or LP users.

TODO is the current implementation.

When starting to work on a workitem, change the assignee to your own LP name, and change the implementation to INPROGRESS.

When the workitem is done, change the implementation to DONE.

Possible implementations are:

state

possible aliases

description*

TODO

empty string, INPROGRESS

Item is expected to be done by the end of the cycle

INPROGRESS

By default, this is an alias for TODO, but teams can choose to track it separately.

BLOCKED

Item is still expected to be done by end of cycle, but cannot move forward due to issues outside assignees control

DONE

POSTPONED

POSTPONE

item will not be done this cycle

Read more about workitems here.

Managing a blueprint from beginning to end (~ubuntustudio-core)

  • First, register the blueprint: see above
  • A member of the LP team ubuntustudio-core reviews and approves the blueprint, then does the following:

    • Set Direction to Approved.

    • Set Definition to Approved.

    • Set Implementation to Started

  • If the blueprint becomes obsolete:
    • Set Definition to Obsolete (unlists the blueprint from project blueprint page)

  • If another blueprint takes over the role the current one has:
    • Set Definition to Superseded (unlists the blueprint from project blueprint page)

  • Once all workitems in the blueprint are marked DONE:
    • Set Implementation to Implemented (unlists the blueprint from project blueprint page)

Dependency structure for the Ubuntu Studio topic blueprints

Example of a release targeted blueprints tree for Ubuntu Studio 14.04: https://blueprints.launchpad.net/ubuntustudio/+spec/topic-ubuntustudio-flavor-t

Structure for the ubuntustudio project blueprint topics

  • ubuntustudio-? (main topic)

    • core-? (subtopic)

    • applications-? (subtopic)

    • testing-? (subtopic)

    • art-? (subtopic)

    • documentation-? (subtopic)

    • website-social-? (subtopic)

Each subtopic will have dependencies to blueprints from other Ubuntu Studio projects. Next is a table that shows the structure of those dependencies:


CategoryUbuntuStudioPlanning CategoryUbuntuStudio

UbuntuStudio/ManagingBlueprints (last edited 2015-04-26 16:27:35 by h-141-65)