Mobile/Roadmap: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
(add a note about device standards for interfaces)
(add note about monday brainstorming meetings)
Line 32: Line 32:
* Start work to build an interface that we can use for testing purposes.
* Start work to build an interface that we can use for testing purposes.
* Build XUL-based interfaces for small devices so that we can start testing browser experiences on different sized screens with different input methods.  (For example, the N800 is 800×480 touch screen.  HTC S730 is 320×240 non-touch screen.)
* Build XUL-based interfaces for small devices so that we can start testing browser experiences on different sized screens with different input methods.  (For example, the N800 is 800×480 touch screen.  HTC S730 is 320×240 non-touch screen.)
* Continue with Monday UI brainstorming meetings.
</td>
</td>
</tr>
</tr>

Revision as of 20:16, 13 December 2007

Introduction

Our roadmap for Mobile is a rough guess on what needs to get done at a high level, what order they will be done and how they depend on each other. This document is relatively fluid and is really here for the reference of people who are involved in the project on a day to day basis or those who are interested in learning about what we're going to be doing over the next six months.

Please note that these are not goals, but instead describe the rough periods of time when we will be focused on the tasks listed below.

Want to get involved? Have a specific area of interest? This is a good place to start since it should tell you what we're doing, where you can find more information and who is working on what.

Areas of Work

We're breaking this down into a few areas of work. These include Performance and Size, User Experience, Mozilla Platform, Device Support (where it will run), Build and QA, and Product.

High Level Roadmap

Q1 2008

Performance and Size

  • Building a baseline of metrics so that we can measure progress for future mobile devices.

User Experience

  • Start work to build an interface that we can use for testing purposes.
  • Build XUL-based interfaces for small devices so that we can start testing browser experiences on different sized screens with different input methods. (For example, the N800 is 800×480 touch screen. HTC S730 is 320×240 non-touch screen.)
  • Continue with Monday UI brainstorming meetings.

Device Support

  • Optimize existing support on Windows Mobile 6. (i.e. HTC S730)
  • Optimize existing support for Linux (i.e. the N810.)

Mozilla Platform

  • Track and attempt to measure late breaking changes going in to help the Firefox 3 release. Determine if those changes include tradeoffs (CPU vs. Memory footprint for example) that negatively affect Mobile.
  • Begin to identify areas in the Mozilla Platform that might need changes to support Mobile User Experience or areas where Mobile differs deeply from Desktop systems. (i.e. events for GPS or support for touch interfaces or different focus or window models)
  • Based on possible interfaces for device integration, consider and start standardization work for those interfaces.
  • Build and test everything up to XULRunner on the 1.9 trunk.
  • Document build targets and instructions for building the Mobile code on the N810 platform and Windows Mobile.

Build and QA

  • Start automating the build process for ARM + Mobile as a first tier platform to create predictability in our support for Mobile platforms.

Product

  • Have an understanding of what "Firefox on Mobile" means. Answer questions about how our values would be applied to Mobile and how they might manifest them in terms of experience and expectations.


Q2 2008

Performance and Size

  • Have a full understanding of the baseline for performance metrics and have testing in place to make sure that we don't regress over time.
  • Have several places identified where we are able to increase performance in the Mobile use case.
  • Have several places identified where we are able to reduce memory usage in the Mobile use case.

User Experience

  • Start to explore navigation options e.g. spatial navigation, directional tabbing, panning, mini map, allow extensions to control navigation, software cursor.
  • Evaluate in the context of displays that can rotate.
  • Know what the options are for text input and explore how we can integrate that into the Mobile experience.
  • Explore how we can enable device capabilities through the browser (GPS, Camera) and content loaded on the browser.

Device Support

[ Nothing new in Q2 here. ]

Mozilla Platform

  • Have areas identified and communicated with the platform team where there are new opportunities for optimization or features specific to Mobile. (Trade-offs of memory vs. CPU or not rendering large images or only partially rendering pages as examples.)
  • Understand risks and opportunities with the Mobile 2 platform work and how it will affect Mobile.
  • Identify and scope graphics changes that might be required for mobile devices. (OpenGL ES, make-a-faster-pixman, etc)
  • Continue ongoing standardization work for device interfaces.
  • Understand how we might do offline applications for Mobile and if there's platform work that's needed to make that possible. (i.e. online/offline state related to GPRS or WiFi availability, low-bandwith json transfers, other bandwith-saving methods, etc.)

Build and QA

[ Open to Discussion ]

Product

  • Start on Product plan with identified partners.


Q3+ 2008 (Speculative and future work.)

Performance and Size

[ Open to discussion. ]

User Experience

[ Open to discussion. ]

Device Support

[ Open to discussion. ]

Mozilla Platform

[ Open to discussion. ]

Build and QA

Product

[ Open to discussion. ]