Skip to content

Spectrum CSS Engineering Workflow

Aaron edited this page Jun 11, 2020 · 4 revisions

Incoming Tasks

We source work via monitoring the following processes:

  • Prototype tasks that are automatically generated by the design team via Jiratron
  • Parsing each SDL release for potential CSS work
  • Attending regular component review with web framework teams
  • Attending design's regular workshop meetings
  • Responding to customer requests via Slack and github issues

For all monitoring above:

  • Commit at least one engineer in advance
  • Rotate each sprint
  • Ping other engineers as needed to join

Points 9-13 are asynchronous.

Workflow

  1. File issues for upcoming work
    • Jiratron automatically files prototype issues.
    • Issues are filed by engineering in meetings as work arises
    • Issues filed by community
  2. Formalize prototype or scope plan if needed
    • Filter issues from Jiratron, meetings, community
    • Each sprint has a formal backlog grooming and sprint planning exercise
  3. Prototype major changes
    • Codepen
    • Leverage existing packages
  4. Vet prototypes with Design
    • Design workshop is ideal
    • QOTD Slack can supplement needed
  5. Vet with implementations
    • Web frameworks have a per-sprint engineering sync for this
  6. DNA issue for tokens
    • Start conversation with DNA on CSS token needs
    • File issues for token work and reference in CSS work issue
  7. GitHub pull request
    • Expected final CSS/Markup/Metadata
    • Request PR review from engineering peeps via Slack
    • Add or update visual regression tests (VRT) as needed
  8. File Jira issue for design review
    • Use Jira issues to notify Design and track work
    • Discuss in Design Workshop
    • Use generated link from visual regression testing
  9. Visual regression test
    • Automated
    • Generates link for review in browser
    • Must be created or update for work to be complete
  10. Request accessibility audit
    • Use GitHub pull request code review
  11. Update pull request with DNA tokens
    • When DNA is released with updated tokens
    • Lint embedded tokens
  12. Final engineering review
    • Not full browser qa check
    • Sanity check
    • Naming check
    • Check visual regression testing
  13. Release
    • Use Semver, consult peeps if which type of bump is unclear
    • NPM packages
  14. Update/release docs
    • Automatically triggered with GitHub tag
  15. Notify consumers
    • Slack channels
Clone this wiki locally