Software Center Roadmap for Precise

Registered by Gary Lasker on 2011-10-25

The Ubuntu Software Center version 5.0, introduced in Ubuntu 11.10, features a brand new user interface. For the Precise cycle, we will refine the new Software Center experience to speed things up considerably (in particular, to fix the regression in startup time), to make further improvements to the visual presentation, and to clean up all remaining inconsistencies and rough edges. The goal is a Software Center that is rock-solid, responsive, and a true pleasure to use.

We will also consider new features to be added (particularly, Recommendations), as well as enhancements to existing features.

Unit test coverage is tracked at:

  <http://people.canonical.com/~tremolux/software-center/software-center-test-coverage.png>

The Recommendations feature is covered in a separate blueprint:

  https://blueprints.launchpad.net/ubuntu/+spec/consumer-p-software-center-recommendations

Whiteboard

== GOAL ==
The primary focus for the Ubuntu Software Center during the Precise cycle will be on stability, improving startup time and other performance improvements, as well as cleanup of any remaining rough edges after the move to the new user interface. We will implement new development processes to increase quality and facilitate development velocity, and we will significantly expand and improve our unit test suite. New feature development will be limited and targeted. These will include completing the enhanced Unity launcher integration feature that was begun during the Oneiric cycle, a new recommendations feature (covered in a separate blueprint), as well as various smaller enhancements to the user interface.

Work items (precise-alpha-1):
Create a wiki document describing development processes and policies for Software Center (https://wiki.ubuntu.com/SoftwareCenter/ProjectPolicies): DONE
[mmcg069] Implement support for multiple screenshots in the details view: DONE
[mvo] Implement support for displaying videos in the application details view: DONE

Work items (precise-alpha-2):
[mvo] Analyze startup speed regression hotspots: DONE
Create a unit test coverage trend chart on the web (http://people.canonical.com/~tremolux/software-center/software-center-test-coverage.png): DONE
[mpt] Check if we need new categories like ebooks, lenses <https://wiki.ubuntu.com/SoftwareCenter#lenses>: DONE
Update Unity launcher integration branch for GTK3 and the new UI: DONE
Implement new “New Applications in Launcher” menu item functionality per latest spec: DONE
[mvo] Implement "support" link for apps that have a support URL (see https://wiki.ubuntu.com/SoftwareCenter#isv-support): DONE

Work items:
[mvo] Improve startup speed: DONE
Look into startup mode for local debfile installation that skips some initialization: POSTPONED
[mvo] Look into startup mode detailsview only that skips some initialization: DONE
[software-center-developers] Significantly increase unit test code coverage (currently at 75% coverage): DONE
Refactor installed view so that it no longer refreshes unnecessarily each time it is displayed: DONE
[bilalakhtar] Finish the remaining work on the Unity side implementation for launcher integration (branch at https://code.launchpad.net/~bilalakhtar/unity/software-center-integration-for-o): DONE
[mpt] Design interface for switching between multiple available versions of a package (e.g. backports) <https://wiki.ubuntu.com/SoftwareCenter#multiple-versions>: DONE
[mvo] Add support for multiple versions of the same application (for backports): DONE
In-depth look at the new DB backend design from from kiwinote (AppData): DONE
[mvo] Look at plugin API: POSTPONED
[mpt] specify how the user of USC can easily access their account page (previous purchases, etc.) on apps.ubuntu.com <https://software-center.ubuntu.com/subscriptions/> <https://pay.ubuntu.com/> <https://wiki.ubuntu.com/SoftwareCenter#store-account>: DONE
[mpt] Review the purchase process and report suggestions for improvement: DONE

---

Session notes can be found at <https://wiki.ubuntu.com/SoftwareCenter/UDSPreciseSessionNotes>

(?)

Work Items

Dependency tree

* Blueprints in grey have been implemented.