フロントエンドビジョングループ

3年後に GitLab フロントエンドで実現したいフロントエンドアーキテクチャの実践に関するガイドラインを作成します

属性

プロパティ
作成日2023-03-27
目標終了日未定
Slack#wg_frontend-vision(社内からのみアクセス可能)
Google Docアジェンダ(社内からのみアクセス可能)
概要と状況終了基準の進捗を参照

コンテキスト

現在、私たちのフロントエンド開発ガイドラインは、現在本番環境で使用している機能と実践のみを文書化しています。GitLab のフロントエンドの望ましい状態についての明確な文書化も、非推奨にする予定の実践に関するガイドラインも存在していません。現時点から3年後の範囲でフロントエンドアーキテクチャ、技術スタック、ベストプラクティスに関する高レベルの期待値のセットを定義できると理想的です。議論すべきトピックの非網羅的なリストを以下に示します:

  • シングルページアプリケーション vs マルチページアプリケーション vs ハイブリッドアプローチ(一部の機能を処理する複数の SPA)
  • サーバーサイドレンダリング
  • 技術スタック(フロントエンドフレームワーク、状態管理アプローチ、テストレベルとツール)
  • リアルタイム機能、オプティミスティックアップデート、フロントエンドキャッシング、全体的な「スナッピーな GitLab 体験」
  • メイン戦略から逸脱したツールを必要とするグループの例外プロセス

終了基準

更新は https://gitlab.com/gitlab-org/gitlab/-/issues/419576 内で隔週で追跡されています。

  1. フロントエンドのドキュメントに、方向性とフロントエンドコードベース/アーキテクチャの高レベル概要を説明する導入ページを追加します。
  2. 3年間のコードベースの進化を含めます。
  3. 使用されているフロントエンド技術と、フロントエンドチームの作業を導くデザイン原則を一覧表示します。
  4. 非推奨/削除計画を明確に定義し、これらの機能が非推奨になる理由を含めます。
  5. 成果をより広いフロントエンド機能グループに伝達します。
  6. ワーキンググループからのアップデートの頻度を含む、コミュニケーション計画を議論・文書化します。
  7. GitLab UI 外の再利用可能なコンポーネントの要件を文書化します。
  8. フロントエンドドキュメントの特定部分に関する DRI を決定します。
  9. メイン戦略の例外プロセスの仕組みと、「ワイルド」なアイデアのための別の領域が必要かどうかを決定します。
  10. RFC の評価と意思決定プロセスを決定します。

終了基準の進捗

基準開始日完了日進捗DRI
フロントエンドのドキュメントに、方向性とフロントエンドコードベース/アーキテクチャの高レベル概要を説明する導入ページを追加します。2023-06-28100%@f_caplette
3年間のコードベースの進化を含めます。@ntepluhina
使用されているフロントエンド技術と、フロントエンドチームの作業を導くデザイン原則を一覧表示します。@leipert
非推奨/削除計画を明確に定義し、これらの機能が非推奨になる理由を含めます。
成果をより広いフロントエンド機能グループに伝達します。@donaldcook
ワーキンググループからのアップデートの頻度を含む、コミュニケーション計画を議論・文書化します。2023-08-07100%@donaldcook
GitLab UI 外の再利用可能なコンポーネントの要件を文書化します。@pslaughter
フロントエンドドキュメントの特定部分に関する DRI を決定します。@andrei.zubov
メイン戦略の例外プロセスの仕組みと、「ワイルド」なアイデアのための別の領域が必要かどうかを決定します。@ntepluhina
RFC の評価と意思決定プロセスを決定します。@f_caplette

役割と責任

ワーキンググループの役割人物役職
エグゼクティブスポンサーChristopher LefelhoczVP of Development(Tim Zallmann に委任)
エグゼクティブスポンサーTim ZallmannSenior Director of Engineering
ファシリテーターDonald CookEngineering Manager, Plan:Project Management
機能リードNatalia TepluhinaPrincipal Engineer, Plan
メンバーVitaly SlobodinStaff Frontend Engineer, Fulfillment
メンバーPaul SlaughterStaff Frontend Engineer, Create:Remote Development
メンバーMark FlorianStaff Frontend Engineer, Manage:Foundations
メンバーLukas EipertSenior Frontend Engineer, Manage:Foundations
メンバーFrédéric CapletteSenior Frontend Engineer, Verify:Pipeline Authoring
メンバーAndrei ZubovSenior Frontend Engineer, Release
メンバーStanislav LashmanovSenior Frontend Engineer, Create:Source Code
メンバーFlorie GuibertSenior Frontend Engineer, Plan:Product planning
メンバーPaul Gascou-VaillancourtSenior Frontend Engineer, Manage:Foundations