プロジェクト運営ガイドライン

このドキュメントは、マスカットプロジェクトの運営ガイドラインを定義します。たとえば、メンバーのさまざまな区分と投票権、議論を投票によって解決する方法、及び提案やプロジェクトのコードベースに変更を加える場合に従う手続きについて定義しています。

変更又は追加がある場合は、その内容をgeneralメーリングリストで討論してから、プロジェクト運営委員会の超多数決による承認で承認します。

目次

役割と責任

このプロジェクトの人々の想定される役割と責任は、実績に基づいています。誰でも、どの役割の人も手助けできます。このプロジェクトに長期間、又は価値ある貢献をおこなった人は、投票権及びソースリポジトリに直接コミットする権利を得ます。

ユーザ (Users)

ユーザは、このプロジェクトのプロダクトを使用する人たちです。この役割の人たちは、直接コードに貢献したりしませんが、プロダクトを使用し、バグを報告し、機能追加を要求したり、他のユーザを手助けしたり、質問や回答がFAQの作成に使用されたりします。これは一番重要な部分であり、ユーザが存在しなければ、このプロジェクトの存在意義もありません。

generalメーリングリストもしくはreportメーリングリストに参加することでユーザとなります。

ユーザがコードに貢献したり、ドキュメントのパッチを投稿しはじめた時に、ユーザは開発者となります。

開発者 (Developers)

開発者は、コードやドキュメントのパッチを書いたり他の方法でこのプロジェクトに積極的に貢献する人たちです。ボランティアによる貢献は量の大小に関わらず常に認められます。あるソースコードファイルに貢献したすべての開発者の名前が、その作者の一覧に追加されます。

developメーリングリストに参加することで開発者となります。

コミッタ (Committers)

このプロジェクトに頻繁に価値ある貢献をおこなった開発者は、「コミッタ」に昇格できます。コミッタは、ソースコードリポジトリに対する書き込み権限を持ち、プロジェクトの将来に関係する事項に関する投票権を得ます。

開発者がコミッタになるためには、他のコミッタから推薦される、又は他のコミッタに自分を推薦してくれるように依頼する必要があります。ある開発者が推薦されたら、すべてのコミッタによる投票をおこないます。

コミッタ候補者は、推薦してくれるコミッタに次のフォーマットで自分に関する情報を送ってください。

氏名 (ふりがな): 山田 太郎 (やまだ たろう)
メールアドレス: yamada@foo.co.jp
今までの貢献内容と抱負: マスカットのCSS拡充に参加しました。
CSS拡充に加えて、今後はCore開発にも協力したいと思っています。

合意による承認が得られれば、その開発者はコミッタに昇格し、プロジェクトのソースコードリポジトリへの書き込み権限が与えられます。書き込み権限を与えられる前に、コミッタはこのガイドラインを読んで理解し、守ることに同意しなければいけません。

また、コミッタが何からの理由で6ヶ月以上活動しなかった、又は活動できないことを申し出た場合、コミッタの地位を失います。さらに、コミッタが当プロジェクトに対して悪影響を与える行動をした場合は、PMCの超多数決による承認によりコミッタの地位を失うことがあります。

現在のコミッタの一覧及びその担当一覧は、メンバー一覧に掲載します。

リリースマネージャ (Release Manager)

リリースマネージャは、プロジェクトでおこなう作業計画を提案し、その管理をおこないます。リリースマネージャは、プロジェクトでおこなう作業ごとに任命されます。

コミッタがリリースマネージャになるためは、他のコミッタから推薦される、又はコミッタ自ら立候補する必要があります。コミッタの推薦又は立候補があった場合には、すべてのコミッタによる投票をおこないます。 合意による承認が得られれば、そのコミッタはリリースマネージャとなります。以後は、担当した作業の具体的な作業計画を作成して投票をおこない、可決された場合には,その作業計画の管理をおこないます。

また、リリースマネージャが何らかの理由で活動できなくなったことを申し出た場合は、リリースマネージャを解任され、必要に応じて新しいリリースマネージャを選出します。

システム管理者 (System Administrators)

システム管理者は、オフィシャルサーバの管理をおこなう人たちであり、オフィシャルサーバに対する特権を持ちます。システム管理者は、PMCによる超多数決による承認に基づいてコミッタから選出されます。

プロジェクト運営委員会 (PMC)

価値ある貢献を頻繁におこなったコミッタは、プロジェクト運営委員会のメンバーに昇格できます。PMCは、ソースコードリポジトリのほかにプロジェクトコンテンツに対する書き込み権限を持ち、マスカットプロジェクトの正式な管理主体であり、プロジェクト全体の方向性の設定に責任を持ちます。

PMCは、pmcメーリングリストに参加します。

PMCについて詳しく知りたければ、プロジェクト運営委員会の規則を見てください。現在のPMCメンバーの一覧は、メンバー一覧に掲載します。

連絡

メンバーがいつでも互いに連絡できるように、いくつかのメーリングリストを運用しています。メーリングリストに参加する方法は、メーリングリストを見てください。

プロジェクトの活動のために新しいメーリングリストが必要になった場合には、コミッタの合意による承認に基づいて、管理者に作成を依頼できます。

このプロジェクトのメーリングリストは、次のように分類されます。ただし、ここに挙げられているのは主要なメーリングリストだけであり、他にもコミッタからの依頼に基づいて実験用、一時連絡用のメーリングリストが設置されています。

generalメーリングリスト

これは、このプロジェクトの一般連絡用メーリングリストです。一般的な事項は、ここでアナウンスします。誰でも参加できます。

reportメーリングリスト

これは、このプロジェクト以外の人からの報告を受け取るためのメーリングリストです。このプロジェクトのWebサイトや成果に問題に問題を見つけた場合には、ここに投稿してください。誰でも投稿できます。

developメーリングリスト

これは、開発者の連絡用メーリングリストです。開発に関する情報交換は、developメーリングリストでおこないます。開発者だけが参加できます。

adminメーリングリスト

これは、サーバ管理者の連絡用メーリングリストです。投票が必要になる議論は、generalメーリングリストでおこないます。サーバ管理者だけが参加できます。

pmcメーリングリスト

これは、PMCの連絡用メーリングリストです。基本的に運営に関する議論は、generalメーリングリストでおこないますが、どうしてもPMCの間だけで連絡を取りたい場合だけ使用します。 PMCメンバーだけが参加できます。

意思決定

意志決定に参加することを開発者すべてに対して奨励しますが、議決自体は、コミッタの地位を持っている人たちだけで行われます。つまりこのプロジェクトは、「最低限の人数の実力重視主義(Minimum Threshold Meritocracy)」によって投票を実施します。

アクションアイテム

すべての決定は、「アクションアイテム」を中心におこないます。大部分のアクションアイテムには、賛成の投票が必要です。投票は、多数決による承認又は合意による承認のどちらかによっておこなうことができます。

アクションアイテムは以下の項目を含んでいます。

  • 長期計画 - 投票は不要です。
  • 短期計画 - 投票は不要です。
  • リリース計画 - それぞれの議題に対して、多数決による承認が必要です。
  • パブリックリリース - 多数決による承認が必要です。
  • 変更 (プロダクト変更) - 合意による承認が必要です。

長期計画

長期計画は、グループメンバーがそのプロジェクトでおこなう作業についてのアナウンスであり、投票は不要です。しかし、それに賛同しない、又はよりよい方法があると考えられる場合には、その意見を表明しなければいけません。

短期計画

短期計画は、ある開発者が特定のドキュメント又はコードに対して行っている作業についてのアナウンスです。他の開発者は、それを回避したり、自分の変更と調整する必要があるかもしれません。

リリース計画

リリース計画は、リリースマネージャが、すべての開発者にリリース予定を知らせるためにおこないます。リリース計画は、リリースマネージャが投票を呼びかけます。各事項に対しては、多数決による承認が、プロダクトに関する変更を伴う場合には、合意による承認が必要です。

パブリックリリース

リリースマネージャが完成したと判断した時には、リリースマネージャがパブリックリリースに関する投票の呼び掛けを行います。パブリックリリースをおこなうためには、多数決による承認が必要です。リリースマネージャは、パブリックリリースをおこなう前に、投票結果を集計しなければいけません。

変更

プロジェクトの変更には、合意による承認が必要です。これは、各コミッタが呼びかけることができます。

アクションアイテムの投票

アクションアイテムの投票は、次のようにおこないます。投票者は、賛成か反対だけでなく、その作業をおこなうかどうかについての意志も示さなければいけません。

コミッタ又はリリースマネージャは、メーリングリストでアクションアイテムの投票を呼び掛けることができます。投票を呼び掛けるメッセージは、題名が"[投票]"で始まり、本文に投票のアクションアイテムの要約を一行づつ書きます。

アクションアイテムの投票は、次の4つに分類されます。

+1 「アクションアイテムを実行するべきで、手伝います。」
+0 「棄権」又は「アクションアイテムを支持しますが、手伝えません。」
-0 「棄権」又は「アクションアイテムを支持しませんが、別の案も手伝えません。」
-1 「アクションアイテムを実行すべきではありません。私はその根拠を説明又は別の案を提案します。」

アクションアイテムの承認には、次の2種類のどちらかが必要です。

合意による承認
合意の表明が必要なアクションアイテムは、少なくとも3票の+1の投票と反対票がないことが必要です。
多数決による承認
多数決を必要とするアクションアイテムは、少なくとも3票の+1の投票と-1の投票数より、+1の投票数が多くなければいけません。

誰かが-1を投票するまで待つ必要はありませんが、遅れて投票された場合でも考慮し、投票結果を再集計なければいけません。なお、予定日時が決まっているような場合には、投票期限を設定できます。

開発者とコミッタは、誰でも投票できます。ただし、有効票となるのは、投票権を持つコミッタ以上に限られます。

投票結果

アクションアイテムに関して-1の投票を受け取った場合には、"[投票結果]"から始まる題名のメッセージに、投票結果をまとめて投稿するまでは、承認されたと見なされません。投票をおこなったコミッタは、5日以内に結果を投票してください。

提案方法

提案は正式なアクションアイテムでありませんが、提案のメッセージは、題名が"[提案]"から始まります。正式な投票をおこなう前に、提案をおこなうことを強く奨励します。提案に関してコメントがあったら、それを反映して、投票のドキュメントとして再投稿できます。

開発者リストに投稿されるメッセージの大部分は、短期計画か長期計画のどちらかを含んでいますが、長期計画は提案の形式でおこなわれます。

他の事項に関する投票

アクションアイテム以外の事項に関する投票にも、傾向を知るために同様な方法が使用されます。

+1 「賛成」又は「同意」
+0 「保留」又は「意見なし」
-0 「保留」又は「不確実」
-1 「反対」又は「同意できない」

謝辞

本プロジェクト運営ガイドラインは、Ja-Jakartaプロジェクトの運営ガイドラインを参考に作成しました。この場を借りて感謝を申し上げます。