DevTools/Features/ScratchpadReRun

From MozillaWiki
Jump to navigation Jump to search
Please use "Edit with form" above to edit this page.

Status

Scratchpad Rerun
Stage Definition
Status `
Release target `
Health OK
Status note `

{{#set:Feature name=Scratchpad Rerun

|Feature stage=Definition |Feature status=` |Feature version=` |Feature health=OK |Feature status note=` }}

Team

Product manager Kevin Dangoor
Directly Responsible Individual Kevin Dangoor
Lead engineer `
Security lead `
Privacy lead `
Localization lead `
Accessibility lead `
QA lead `
UX lead `
Product marketing lead `
Operations lead `
Additional members `

{{#set:Feature product manager=Kevin Dangoor

|Feature feature manager=Kevin Dangoor |Feature lead engineer=` |Feature security lead=` |Feature privacy lead=` |Feature localization lead=` |Feature accessibility lead=` |Feature qa lead=` |Feature ux lead=` |Feature product marketing lead=` |Feature operations lead=` |Feature additional members=` }}

Open issues/risks

`

Stage 1: Definition

1. Feature overview

The Scratchpad, introduced in Firefox 6, offers a very nice interface for experimenting with JavaScript. Rather than being constrained to a single-line input or having to keep pressing shift-enter, as in the Web Console, the user has a full editor to work with. This allows saving/reloading, easy copying and pasting, and a better view and organization of context.

On the other hand, the Web Console is very good at quickly running a bit of JS, going back in history and re-running that command, possibly with minor modifications. We want to make the Scratchpad just as good at that behavior so that users can comfortably use the Scratchpad rather than the Web Console for those uses.

2. Users & use cases

Writing experimental code

The user is creating a new function in JS. They write the initial version of the function and run it. The results are not what they want, so they go back and make some changes. They want to quickly redefine the function and run their test.

Gathering data via Ajax

The user has functions on their page that collect up information from the server, and they are experimenting with some changes to the page. They need to keep re-running commands that gather the data from the server and perform some action once it has arrived.

3. Dependencies

`

4. Requirements

`

Non-goals

`

Stage 2: Design

5. Functional specification

`

6. User experience design

`

Stage 3: Planning

7. Implementation plan

`

8. Reviews

Security review

`

Privacy review

`

Localization review

`

Accessibility

`

Quality Assurance review

`

Operations review

`

Stage 4: Development

9. Implementation

`

Stage 5: Release

10. Landing criteria

` {{#set:Feature open issues and risks=` |Feature overview=The Scratchpad, introduced in Firefox 6, offers a very nice interface for experimenting with JavaScript. Rather than being constrained to a single-line input or having to keep pressing shift-enter, as in the Web Console, the user has a full editor to work with. This allows saving/reloading, easy copying and pasting, and a better view and organization of context.

On the other hand, the Web Console is very good at quickly running a bit of JS, going back in history and re-running that command, possibly with minor modifications. We want to make the Scratchpad just as good at that behavior so that users can comfortably use the Scratchpad rather than the Web Console for those uses. |Feature users and use cases===== Writing experimental code ====

The user is creating a new function in JS. They write the initial version of the function and run it. The results are not what they want, so they go back and make some changes. They want to quickly redefine the function and run their test.

Gathering data via Ajax

The user has functions on their page that collect up information from the server, and they are experimenting with some changes to the page. They need to keep re-running commands that gather the data from the server and perform some action once it has arrived. |Feature dependencies=` |Feature requirements=` |Feature non-goals=` |Feature functional spec=` |Feature ux design=` |Feature implementation plan=` |Feature security review=` |Feature privacy review=` |Feature localization review=` |Feature accessibility review=` |Feature qa review=` |Feature operations review=` |Feature implementation notes=` |Feature landing criteria=` }}

Feature details

Priority P3
Rank 5
Theme / Goal `
Roadmap Developer Tools
Secondary roadmap `
Feature list Desktop
Project `
Engineering team DevTools

{{#set:Feature priority=P3

|Feature rank=5 |Feature theme=` |Feature roadmap=Developer Tools |Feature secondary roadmap=` |Feature list=Desktop |Feature project=` |Feature engineering team=DevTools }}

Team status notes

  status notes
Products ` `
Engineering ` `
Security ` `
Privacy ` `
Localization ` `
Accessibility ` `
Quality assurance ` `
User experience ` `
Product marketing ` `
Operations ` `

{{#set:Feature products status=`

|Feature products notes=` |Feature engineering status=` |Feature engineering notes=` |Feature security status=` |Feature security health=` |Feature security notes=` |Feature privacy status=` |Feature privacy notes=` |Feature localization status=` |Feature localization notes=` |Feature accessibility status=` |Feature accessibility notes=` |Feature qa status=` |Feature qa notes=` |Feature ux status=` |Feature ux notes=` |Feature product marketing status=` |Feature product marketing notes=` |Feature operations status=` |Feature operations notes=` }}