Purple Rain

Costing and documenting the implementation details for the new brand relaunch Feather to go out with KoЯn.  This costing makes the following assumptions:

  • No backwards compatibility consideration (i.e. no development cost for maintaining backwards compatibility)
  • This is purely reflective of development costs, i.e.:
    • Design (Steve N.) costs aren't factored in
    • QA costs aren't factored in

Stories & Tasks

Total cost for all Purple Rain stories, tasks, bugs: 201

Open bugs: 73

Closed bugs: 128

Priorities

P1 = Currently being worked on for this iteration

P2 = Must have for Phase 1

P3 = Nice to have, but could be bumped for Phase 1

P4 = Punted to later phase

In some cases, the parent story has a P4 while tasks/bugs associated with it are P2.  For these stories, the minimal tasks needed (typically styling/visual only) need to be done as P2 while the overall story (e.g. a new Servicepane or Faceplate) is in reality punted with the bulk of the P4 tasks associated with it.

Create the base Feather

Total cost for this story: 15

IDPriorityCostTitleDescriptionEngineerTestcase
18508P10Create base FeatherCreate the base Feather with correct CSS colors, and replace base elements icons/buttons/etc.stevelN/A
18513P12Change color/CSS valuesChange the base CSS color values to match the new colors as specified in the visual compsstevelN/A
18514P12Replace window frame graphicsReplace the platform-specific window frame graphics. This may be problematic since we use native window handling/drawing for Mac, and I'm unsure how well this will play with us wanting to use a custom window titlebar to render the new colors. Costing at 2 for now, could be a 1 in actuality.stevelN/A
18515P12Replace base element graphicsReplace the various base element graphics with the new graphics as designed/clipped in the visual comps.stevelN/A
18517P11Replace player control graphicsReplace the player control graphics with the new ones.stevelN/A
18518P41Relocate shuffle/repeat buttonsRelocate the shuffle/repeat buttons so they are vertically stacked on top of each other instead of being next to each other like they currently are.feathers
18519P11Visually seamless search engine dropdown buttonCurrently the search engine drop down selection button is visually distinguished from the search field. Make this look like a seamless continuous field per the visual comps.stevelN/A
18520P42Increase size of player control buttons/controlsIncrease the size of the player control buttons per the visual comps.feathers
18521P11Change scrollbar arrow positionsRelocate the arrow controls from being stacked at the end/bottom of scrollbars to being at the top/start and bottom/end per visual comps.stevelN/A
18609P11Default player controls & faceplate to the topCurrently we default player controls to the bottom, we should default them back up to the top.stevelN/A
18652P12Restyle miniplayerStyle the miniplayer to match.stevelN/A

The new faceplate

Total cost for this story: 6

  • If we drop bug 18526, there is additional design work needed to design a thumb graphic.  It might be less work to just take bug 18526 to offset the design cost.
  • For Phase 1 we'll strictly be restyling the existing Faceplate and keeping the same dimensions/layout to minimise engineering cost.

IDPriorityCostTitleDescriptionEngineerTestcase
18522P40New faceplateImplement the new faceplate bindingfeathers
18523P41New track metadata text positionCenter the track title and artist name and move the album title to the second linefeathers
18524P41Relocate Last.fm/Concerts action iconsThe love, ban, & ticket icons are to be relocated to the top left of the faceplatefeathers
18525P41Increase faceplate heightIn order to accomodate the new second line of text, the faceplate height will need to be increased.feathers
18526P11Drop seekbar/position slider thumb controlDrop the existing seekbar/position slider thumb controlstevel
18527P11Replace base graphicsReplace the base graphics (progress slider, Last.fm/Concerts icons, etc.)stevelN/A
18528P11Change faceplate color/CSS valuesUpdate the base CSS color values for the faceplate to match the new design.stevelN/A

Display pane control & management

Total cost for this story: 11

  • One concern I have is with the removal of the display pane toggle buttons.  Currently we use those as a way to load/unload the display pane while the grippy/splitter is used to collapse visibility of a display pane but still leave it running.  Losing the load/unload buttons means we need to change this behaviour possibly.
  • Zaudhaus's original design thoughts were reflective of trying to simplify the way display panes are managed, and shown.  We're punting on that and simply going with visually restyling them to match the rest of the Purple Rain Feather.

IDPriorityCostTitleDescriptionEngineerTestcase
18529P10New display pane controls/managementImplement the new display pane controls and management behaviour.stevelN/A
18530P12Create new display pane splitter + grabber bindingFork the sb-smart-splitter to create a "thick" one used only for display panes incorporating the new grabber icon.stevelN/A
18531P11Replace display pane base graphicsReplace the base graphics for the menu dropdown icon and any other display pane graphics.stevelN/A
18532P11Remove display pane icon & titles from the control barRemove the display pane icon and add-on name/title from the display pane header/control bar.stevelN/A
18533P11Change display pane color/CSS valuesChange the base CSS color values for the various display pane related styles.stevelN/A
18534P11Change background/look of display pane selector drop down menuChange the drop down menu to reflect the new visual style in the comps.stevelN/A
18535P11Restyle "No add-on loaded in this display pane" pane contentRestyle the pane content for when no add-on has been loaded in a visible display pane to match the same look and feel.stevelN/A
18536P12Drop display pane show/hide toggle buttonsRemove the existing show/hide toggle buttons. This will necessitate working with the new splitter to ensure the user has an easy wide to toggle visibility of an add-on.stevelN/A
18789P12Support extension sub-modes in control menuWith the removal of the titlebar buttons and tabs for display panes, we need a way for display panes to support having "sub-modes" and to allow users to choose them from the display pane control menu.stevelN/A

Media View selection controls/widget

Total cost for this story: 11

  • Zaudhaus's design makes a lot of sense.  The individual toggle buttons work really well, but more design thought needs to be put into how this extends dynamically for third party Media Views.  The work we'll be doing for Phase 1 is strictly around styling the existing control to match Purple Rain.

IDPriorityCostTitleDescriptionEngineerTestcase
18538P10New Media View selection controlsImplement the new Media View selection controls per the visual comps (where each media view has its own button rather than having one single drop down menu item)stevelN/A
18539P11API for Media View developers to define a button icon for their add-onDefine an API, probably in install.rdf for Media View developers to define a button icon used to represent their Media View in the selection binding.stevel4626
18540P11Create new base elements/styles/icons for List View & Filter ViewCreate icons to represent the List View & Filter ViewstevelN/A
18541P12Dynamically position new Media ViewsDynamically position new Media Views into the Media View selection binding widgetstevel4627
18542P13Create binding for Media View selection controlsCreate the new binding used to render the Media View selection widget where each Media view is represented by 1 dedicated button.stevelN/A
18543P12Replace old Media View selection control with new bindingRemove the old single button + drop down control and replace it wiht the new binding. May involve trickiness with padding due to going from a static width element to a variable width element.stevel4628
18596P11Restyle Media View drop down menuRestyle the drop down menu to match the Feather (should look like the display pane selector menu in bug 18534)stevelN/A
18597P11Change Media View base graphicsChange any of the base graphics associated with the Media View selection button and drop down menustevelN/A

New Servicepane

Total cost for this story: 26

  • Zaudhaus's new design for the servicepane is definitely the direction we want to head in long term but has high development & QA costs associated with completely reimplementing it in the manner spec'd.  Phase 1 is limited strictly to restyling the colors and icons to match Purple Rain.

IDPriorityCostTitleDescriptionEngineerTestcase
18544P40New ServicepaneImplement the new servicepane.feathers
18545P43Create new servicepane bindingCreate the new servicepane binding.feathers
18546P43Drop old tree renderingRemove the old tree rendering of the servicepane and migrate to the new groupbox rendering.feathers
18547P42Draw groupbox per top level nodeFor each top level node, represent it visually as a groupbox where the title is the top level node text, and the box contents are the children of the node.feathers
18548P43Create hide/show toggle arrow per top level node groupboxEach groupbox representing a top level node needs a hide/show arrow which toggles the collapsed state of the groupboxfeathers
18549P42Style top level node groupboxesStyle each groupbox per the visual comps.feathers
18550P42Style new servicepane bindingStyle the new servicepane bindingfeathers
18551P42Create API for a count indicator per servicepane nodeCreate an interface to allow servicepane nodes to have a count badge displayed next to the node per the visual comps.feathers
18552P42Create API for a generic icon badge per servicepane nodeCreate an interface to allow servicepane nodes to have a generic icon badge displayed next to the node per the visual comps.feathers
204611Change base element/graphicsDrop in the new replacement base element graphics for the servicepane iconsfeathers
204621Change servicepane color/CSS valuesUpdate the base CSS color values for new servicepane model.feathers

mashTape visual redesign

Total cost for this story: 7

  • The wireframes only show the Artist Info tab, but the common CSS changes should be applied to all tabs.
  • For the record, I'm opposed to bug 18554 and vehemently opposed to bug 18558

IDPriorityCostTitleDescriptionEngineerTestcase
18553P10mashTape Visual RedesignRedesign the visual look and feel of mashTapefeathersN/A
18554P21Change nameApparently people don't like the name mashTape and want it changed.stevel
18555P12New navigation tabsImplement the in-pane-content navigation tabs as spec'd in the visual compsstevelN/A
18556P11Drop old navigation tabsDrop the old mashTape control tabs that are embedded into the display pane header.stevel
18557P11Change color/CSS values for mashTapeImplement the new colour scheme for mashTape.stevelN/A
18558P21Drop service provider faviconsDrop the service provider favicons per the visual comps.stevel
18559P11New "Nothing Playing" pane contentWhen nothing is playing, mashTape should show a pane similar to the one in the visual comps indicating the user should play a track to see content.stevelN/A

Concerts visual redesign

Total cost for this story: 7

  • Visual design for first run/location-setup page is not changed
  • Visual design for updating tour information/progress page is not yet designed
  • Visual design for listing page as sorted by Concert Date was not designed, but can probably be extended from the existing visual comps for the Artist Name sort

IDPriorityCostTitleDescriptionEngineerTestcase
18560P10Concerts Visual RedesignRedesign the visual look and feel of ConcertsfeathersN/A
18561P11Create header on search results pageThe header should contain the large "Concerts" name and the "Powered by Songkick" badge per the visual compsstevelN/A
18562P12Create subheader blockThe subheader should contain the concert count, location indicator, change location button, and the checkbox for toggling the view of ALL artists vs. just the artists in your library.stevelN/A
18563P11Create alpha-index selection and view-by controlIn the search results page, create a new alphabetical-index selection (to allow the user to jump to results per letter) as well as incorporating the new view-by control to sort by Artist Name or Date.stevelN/A
18564P11Restyle listing rowsRestyle each row in the Concerts search results per visual comps.stevelN/A
18675P12Restyle Concerts first-run/location-change pageRestyle the first-run and location-change pages to look like the design in the visual comps and copy.stevelN/A

Landing page refresh

Total cost for this story: 6

  • bug 18568 could be P3'd to reflect the fact that we could, in a pinch, go out without this since we show the landing page already for the first time a new user launches Songbird.  We can change this for a follow-up release to add more complexity around how we want to show this.

IDPriorityCostTitleDescriptionEngineerTestcase
18565P10First run landing page redesignDesign a new first run landing page for users to be taken tobirdhouseN/A
18566P10Create landing page HTMLCreate the page per visual compsbirdhouseN/A

LyricMaster visual redesign

Total cost for this story: 3

  • Need to get in touch with Ryan to see about licensing LyricMaster
  • There are potential copyright violations with the content of LyricMaster.  Do we want to risk this at this point?
  • QA cost for this is high since QA doesn't test against this add-on currently.  Bringing this into first-run has low development cost (assuming all we want to do is just restyle it), but high QA cost.
    • If QA tests rigorously against LyricMaster and finds issues, there will undoubtedly be additional development cost to fix bugs, etc.

IDPriorityCostTitleDescriptionEngineerTestcase
18569P10LyricMaster Visual RedesignRedesign the visual look and feel of LyricsMasterstevelN/A
18570P11Create new skin/theme for LyricMasterCreate a new skin/theme for LyricsMaster matching the rest of the Purple Rain CSS coloursstevelN/A
18700P42Rewrite HTML output & existing skinsMore extensively rewrite the LyricMaster output HTML and existing skins mechanism to be more flexible and allow for more flexible layouts.feathers

Preferences redesign

Total cost for this story: 3

IDPriorityCostTitleDescriptionEngineerTestcase
18571P10Preferences Visual RedesignUpdate the preferences dialogs to reflect the new Purple Rain stylesfeathersN/A
18572P11Update base CSS colorsUpdate the CSS colors to matchstevelN/A
18573P11Replace base element graphicsReplace the base element graphics for elements such as buttons, checkboxes, etc.stevelN/A
18741P11Make preferences window resizableDue to increased font sizes and visual styling, the preferences window should really be made resizable.stevelN/A

First run setup redesign

Total cost for this story: 15

  • Note that the visual comps reflect removing the first run add-ons page.  This has all sorts of hairy ramifications.

IDPriorityCostTitleDescriptionEngineerTestcase
18574P40Redesign first run setup wizard pagesRedesign the first run setup wizard steps per the visual compsfeathers
18575P42Remove language drop down from EULA acceptance stepRemove the language drop down and go back to automatically guessing and not allowing the user to override the detected language.feathers
18576P41Auto-detect languageAuto detect the user's language settings from the platformfeathers
18577P11Update text/copy on "Welcome to Songbird" stepUpdate the text and visual look on the "Welcome to Songbird" pagestevelN/A
18578P43In-wizard import of iTunes library or media scanCurrently iTunes import or media scanning is left until after the wizard has finished where the main Songbird window is drawn and a modal dialog is popped up to process the import job. Move this to doing it inside the wizard.feathers
18579P43Time estimate for import/scan jobGive the user a progress indicator with time estimate for how long the import/scan job will takefeathers
18580P42Show user the # of tracks imported successfullyPresent the user with a wizard page after the import is done informing them of how many tracks were imported successfully.feathers
18581P11Redesign "Help Make Songbird Better" stepRedesign the "Help Make Songbird Better" step to match the new visual comps.stevelN/A
18582P42Remove first run add-ons stepRemove the first run add-ons step in the wizardfeathers

 

Bookmarks system

  • Phase 1 simply involves removing the UI elements of bookmarks.  It does not take into account any of the following:
    • Removing the API services surrounding bookmarks (e.g. sbIBookmarksServicePane & friends)
    • Existing profiles with Bookmark nodes... the behaviour here is undefined

IDPriorityCostTitleDescriptionEngineerTestcase
18600P40Remove bookmarks systemRemove the bookmarks system for being able to create arbitrary bookmarks for webpages.feathers
18601P12Remove bookmarks servicepane nodeRemove the bookmarks node and sub-tree from the servicepane.stevel
18602P11Remove bookmarks context menu action & menu itemRemove the ability to add bookmarks from the context menu and menu.stevel
18603P42Remove bookmarks APIs & servicesRemove the ability for add-ons to use the various bookmarks services and APIs.feathers

 

New Media View: "Album List View"

Total cost for this story: 24

IDPriorityCostTitleDescriptionEngineerTestcase
18583P415Album List View Media ViewImplement a new media view incorporating Album Artwork similar to stevo (now Moshy)'s old Album List View media view:
http://addons.songbirdnest.com/addon/1309
feathers
18584P43Incorporate album artwork in viewIncorporate album artwork into the viewfeathers
18585P43Group mediaitems together by common metadataGroup tracks which are in the same album name and artist name into broken down sb-playlist widgetsfeathers
18586P42Separator between each albumIncorporate a separator/padding between each album grouping in the album viewfeathers
18587P41New Media View selection icon buttonWe'll need a new media view selection button to represent this view in the new widget.feathers

 

Branding

Total cost for this story: 2

IDPriorityCostTitleDescriptionEngineerTestcase
18604P10Re-brand applicationVarious branding related changesstevelN/A
18605P11Update application iconUpdate the application icon. See bug 13209 for when we last did this to see the various places it should be changed.stevel
18606P11Update various bird artwork piecesBird artwork is currently shown in the first run wizard, if it needs updating, we should update that too. Likewise for help dialogs and help:about, help:credits, etc.stevel

Tag page
You must login to post a comment.