Websites/Processes: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
Line 151: Line 151:
12. TPM prepares Bugzilla ticket for Production Push.
12. TPM prepares Bugzilla ticket for Production Push.


== Deployment Phase ==
== Deployment Phase (draft) ==


The process of launching a new web product, or pushing changes to an existing web product, and communicating it to the community.
The process of launching a new web product, or pushing changes to an existing web product, and communicating it to the community.

Revision as of 18:42, 9 May 2011

The following processes are used to cover every aspect of a website's lifespan from beginning to end. The process is a work in progress and will be updated and change over time based on what works best for Mozilla. The goal is to create a simple process that will allow a web project to run smooth and increase the likelihood of achieving the desired goals.

Do you have any thoughts on this procss? Is something unclear or obviously wrong? Please contact Mike Alexis with feedback as we need your help to improve the documentation and overall process.

Project Logistics

Project Lifecycle

Ideation Phase

The ideation phase is the process that includes brainstorming, prototyping, and creating product requirement documentation.

  • Decider: Product Owner
  • Driver: Product Owner

Process

1. Product Owner emails the Web Project Manager to notify that individual of the web project.

2. Product Owner submits project to the Web Dev project manager.

3. Web Project Manager schedules schedules informal discussion with Product Owner.

4. Product Owner schedules brainstorming session to flesh out app.

  • Product Owner and Web Project Manager bring people to brainstorming phase.

5. Product Owner decides what to build.

6. Web Project Manager determines staffing; assigns TPM.

  • Web Project Manager brings development team on board.
    • If external contractor:
      • Web Project Manager gathers documentation on the contractor's development process and expectations.
      • TPM shares Mozilla's infrastructure set up, operational, and development process with contractors.
      • Web Project Manager prepares, reviews and signs contracts for external contractors.

7. Product Owner creates a PRD.

  • Details will be placed on the wiki page specified above. Will include the following:
    • Mockups
    • User stories
      • primary user flows
      • specific admin functionality
    • Technical specifications
    • Wireframes

8. The following teams review the PRD and each gives a time estimate for the amount of time their team will need during the web development process.

  • Infrasec
  • IT
  • L10N
  • Legal
  • QA
  • TPM
  • UX
  • Web Dev

9. If any of the teams find a problem in the PRD, they will notify the Product Owner.

10. Once all teams approve the PRD, the Kickoff phase may begin.

Kickoff Phase

The kickoff phase is the process of forming a technical team and fleshing out details to begin the development phase.

  • Decider: Product Owner
  • Driver: Web Project Manager

Process

1. TPM and Web Project Manager execute tasks in checklists for project instantiation:

2. Web Project Manager schedules Kickoff Meeting.

Bringing New Developers on Board

If web developers are new to Mozilla projects, please use the following:

Implementation Phase

The implementation phase is the process of developing a new web product and getting approval from all teams who have been tasked to review the product.

  • Decider: Product Owner
  • Driver: TPM

Mozilla Web Development Guidelines

During the implementation phase, the Web Dev and UX teams write the website code following Mozilla guidelines:

  • At least 1 Mozilla web developer responsible for the code review of all code committed to the code repository.
  • Bugzilla is the ticket tracking system that will be used to for bug reporting and project overviews. Developers are expected to adhere to the Bugzilla Workflow for tracking tickets.
  • Code will be committed to the designated Mozilla code repository upon development instantiation.
  • Playdoh will be used as the code base unless stated otherwise.

Process

1. TPM schedules and drives the weekly meeting.

Once the initial code base has been created, and the website is functioning as indicated in the specs in a development environment, the remaining process may begin.

2. TPM ensures the stage server is up and running, and the website is functioning as indicated in the specs.

  • Stage server will be set to auto-update from master branch of code repository every 5 minutes.

3. The following processes begin; each team follows Bug Life Cycle process.

  • Accessibility Review begins.
  • SEO Review begins.

4. Web Dev notifies TPM that all required strings and code have been committed to stage.

  • Web Dev continues to fix bugs, but only commits code to a development branch.

5. TPM notifies team that:

  • feature freeze is in effect.
  • string freeze is in effect.

6. The following processes begin; each team follows Bug Life Cycle process.

7. QA signs off on initial round of tests.

8. TPM notifies team that code freeze is in effect.

  • Web Dev continues to fix bugs, but does not commit code to master branch.

9. Infrasec testing begins; team follows Bug Life Cycle process.

10. TPM notifies team that code freeze is no longer in effect.

  • Web Dev may again commit code to master branch.

11. QA signs off on final round of tests.

12. TPM prepares Bugzilla ticket for Production Push.

Deployment Phase (draft)

The process of launching a new web product, or pushing changes to an existing web product, and communicating it to the community.

Process

x. TPM drives deployment (please expand).

x. TPM creates production push ticket in Bugzilla.

x. TPM adds production push to release calendar.

x. Post-launch, Web Project Manager schedules release retrospective meeting.

x. Web Project Manager documents and publishes retrospective results.

Supplementary Documents

End of Life Phase

The end of life phase is the process of retiring a web product or website.

  • Decider: Product Owner
  • Driver: TPM

Process

1. Product Owner contacts Web Project Manager to begin retirement process, or Website Taskforce nominates and approves the retirement of a website.

2. Web Project Manager assigns a TPM to drive the retirement process.

3. TPM retires a page, a section of pages or the entire web site or product.

4. Web Project Manager schedules Website / Campaign Retrospective.

5. Web Project Manager documents results of retrospective.