/marcsist

Activity Feed for SMP

Extensible system for development activity updates

The Activity Feed was designed to drive up day-to-day usage of the product.

Engineering leaders and PE partners valued Sema Maintenance Platform for its high-level view of development activity, but because the web app was always paired with printed reports from Professional Services, customers avoided the product and waited for their next report instead.

Because Sema calculated commit-by-commit analytics on repositories, we could show both the activity and its impact. We built a flexible, extensible activity feed to display increasingly detailed activity types.

Version 1

We wanted to launch light with a couple of low-hanging activities, reusing an existing Material Design list component. I mapped out potential activity types from our customer research, interviews and domain knowledge.

mocking up potential activity cards

mocking up potential activity cards

proposed schema

Seeing all the activities laid out with a proposed schema helped to steer conversations between product and the developers about intent of the feature past what we were currently building.

The indicator

Redesigned top nav with indicator, components layed out for handoff

Redesigned top nav with indicator, components layed out for handoff

Placed in the top nav so that it's visible in most screens. Added placement for an avatar which was a future consideration when the activities become more personalized. It was a simple chip that we emphasized with a background color and CTA color icon.

The feed

Activity Feed modal

Activity Feed modal

The activity feed was a modal that could be accessed from most screens in the product. We emphazised text and simplicity to keep it as performant as possible. The backend was designed in such a way that we could accomodate future plans;

  • easily add and adapt new more complex activity types
  • the ability to add more visual detail to the activity cards
  • emphasize activity types as more or less urgent
  • tune it to individual users preferences

Menu

Initial functionality included the ability to search, and show/hide a repository from your main feed.

When the feed was opened from within a project, results would filter to that project only, to remove that filter, users click View All

Menu for the activity feed

Menu for the activity feed

More Features

Future tuneability was important — our users ranged from developers to executives, each prioritizing different information. I explored how future features might work into the design as they came up.

Potential components for future functionality

Potential components for future functionality

Tech Debt $ value tied to activity

Tech Debt $ value tied to activity

Onboarding configuration for first load

Onboarding configuration for first load

Feature Roadmap

Based on early feedback we had a few stories in the backlog

  • Onboarding - customize Activity Feed on first load
  • 'show me less of this' to customize feed & collect user insights
  • Give users the ability to save activities
  • sharing & creating a Jira or GitHub issue from an activity
  • Richer cards with graphs
  • Enable a Slack connection for the repository feed
  • Snooze an activity for a period of time
  • Tie a $ value (tech debt) to all activities, include some visual indicators for these items (shown)