Redmineが家庭菜園の作付け計画にすごく役立つので紹介してみる

この記事は[NTTコムウェア Advent Calendar 2024](https://qiita.com/advent-calendar/2024/nttcomware) 20日目の記事です。

## はじめに

NTTコムウェアの雲雀です。趣味は家庭菜園です。
自分で作った野菜をつまみに嗜む晩酌は格別！自己満足の極みだと思います。

魅力あふれる家庭菜園ですが、同じ場所で同じ科の作物を続けて作ると病気や害虫が発生しやすくなり、生育が悪くなるという問題が出てきます。これを連作障害と言います。

連作障害を起こさないためには、同じ場所で同じ科の作物を続けて作らないように管理することが重要となります。しかし、どの程度の期間をあけた方がよいか（休栽期間）は作物によって異なり、家庭菜園を数年続けると何をどこに植えたらよいか分からなくなってきます。

そんな悩みをRedmineで解決できたので、活用事例のひとつとしてご紹介します。

## Redmineについて

[Redmine](https://redmine.jp/)はオープンソースのプロジェクト管理ソフトウェアです。
弊社でもシステム開発の進捗管理・バグ管理はもちろん、問い合わせ管理や運用業務の効率化など様々なシーンで活用しています。

一見システム開発用のツールで家庭菜園とは関係ないように思えますが、Redmineは汎用性が高く、使い方次第で様々な領域に適用可能です。
この記事ではRedmineで作付け計画を管理する方法を説明していきます。

:::note info
[REDMINE JAPANでの講演概要][link-1]や[redmine.tokyoでの事例紹介][link-2]を公開しています。
こちらもぜひご覧ください。

[link-1]: https://redmine-japan.org/timetable/#a07
[link-2]: https://redmine.tokyo/attachments/download/762/%E7%B6%9A%E3%83%BBRedmine%E3%83%87%E3%83%BC%E3%82%BF%E3%81%AE%E3%82%B0%E3%83%A9%E3%83%95%E3%83%87%E3%83%BC%E3%82%BF%E5%8C%96%E3%81%A8%E3%81%9D%E3%81%AE%E6%B4%BB%E7%94%A8.pdf
:::

## Redmineによる作付け計画管理の概要

下図の畑を例に作付け計画を立てることにします。

![FarmOverView.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3629072/d96af667-6230-25fc-a73e-d914f5d837ec.png)


この畑には畝が５つあり、畝ごとにどんな野菜を植えるか考えていくのですが、Redmineで管理することにより、過去にどんな作物を育てていて何科の野菜が休栽期間中かが一目で分かるようになります！

![FarmChart.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3629072/db92c50f-99a3-aa1a-db55-0a55c6f539f5.png)

このようにガントチャートで表示できるので、休栽期間中の科を避けながらいつ何をどこに植えるか決めることができ、作付け計画を立てるのが捗ります。

以降は上記のガントチャートをRedmineで表示するまでの具体的な手順を解説していきます。

## 作付け計画管理プロジェクトの作成手順

### 前提条件

- 利用可能なRedmineが構築済みであること(本記事ではRedmine 5.1.2を使用しています）
　Redmineの構築手順は検索すると情報が出てくるので、本記事では省略します。
- 作業は管理者権限を持つアカウントで実施する
　権限管理についてはこの記事の趣旨ではないので、簡単のためすべての操作を管理者権限で実施しています。

### プロジェクトの作成

はじめに、家庭菜園のプロジェクトを作成します。

![CreatePJ1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3629072/437f688f-1833-e64e-634a-932a377e6fd6.png)

![CreatePJ2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3629072/a26df400-69ca-0a86-d09d-b5a117395d95.png)

ここでは例として「名称：家庭菜園」「識別子：gardenfarm」としています。名称と識別子は任意の値で構いません。
また、公開設定については家庭内の活動なので無効にしています。
その他、モジュールは下図のものを有効にしています。必須なのはチケットトラッキングとガントチャート、カレンダーです。
Wikiはメモ帳代わりに便利なので有効にしていますが、本記事で扱う範囲では無効にしても問題ありません。これ以外のモジュールについてもお好みで有効・無効を選択してください。
必要事項の入力ができたら「作成」を押下します。

![CreatePJ3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3629072/e0992f8b-9a15-7b68-1099-191ec25d561e.png)

### プロジェクトの設定

作成したプロジェクトを家庭菜園用にカスタマイズしていきます。

#### トラッカーの作成
畑には"畝"があり、そこで"野菜"を育てます。育てた野菜ごとに"休栽期間"があります。
これら"畝"、"野菜"、"休栽期間"をRedmineのチケットで管理できるようにトラッカーを作成します。

管理　＞　トラッカー　を選択します。

![CreateTracker1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3629072/d122ed44-049a-9391-939b-c1d7c1297b24.png)

「新しいトラッカー」を選択します。

![CreateTracker2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3629072/ad9299c9-becf-111f-0d82-39082b386aef.png)

以下は"畝"の作成例です。下図の設定を行い、「作成」を押下します。

![CreateTracker3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3629072/a8666339-28d7-a4b7-fa90-25d5dc03a09b.png)

作成した"畝"のワークフローを定義します。ここでは全ロールに対し、新規・進行中・完了のみでシンプルなものにしています。

![CreateTracker4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3629072/aa00f109-2c14-0d62-e715-d09c9675f1f0.png)

![CreateTracker5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3629072/80532cdb-7708-cae2-1957-51fc2b7e4efa.png)

以下は"野菜"と"休栽期間"の作成例です。ワークフローは畝と同じものを使用します。

![CreateTracker6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3629072/b489fd45-c6ff-d62b-c5cc-f85fdd464dc1.png) ![CreateTracker7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3629072/baccf3f5-8ba3-b22c-65a9-7b7eb8bb457d.png)

プロジェクトの一覧から家庭菜園プロジェクトを選択します。

![CreateTracker8.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3629072/a9bcd3bd-03aa-db76-dace-9ee080e561a3.png)

設定　＞　チケットトラッキング　を開き、先ほど作成したトラッカーのみを有効にします。

![CreateTracker9.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3629072/fee59c10-6eb7-011f-55e3-f3b25ce9112c.png)

#### カテゴリの作成

休栽期間は下表のように野菜ごとに異なります。チケットを作成する際、この野菜の休栽期間は何年だったっけ？と毎回調べなくてもいいように、予めカテゴリとして登録しておきます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3629072/f1b61db7-a33b-605f-c572-99870830bc93.png)

設定　＞　チケットのカテゴリ　を開き、「新しいカテゴリ」を選択します。

![CreateCategory1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3629072/83a9945e-4b15-dbc3-6560-8bb3fae5a43f.png)

下図はオクラを新しいカテゴリとして作成した例です。同様の手順で残りのカテゴリも作成してください。

![CreateCategory2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3629072/365dd8e8-fbad-52b4-cdcb-0c4107bde606.png)

ここに記載の休栽期間は、あくまで目安となります。育てる品種や土壌など様々な条件によって変わってきますので、実際の畑の状況に合わせてカスタマイズしてお使いください。

#### チケットトラッキングの設定

ガントチャートに表示する畝の順番が開始日でソートされるため、子チケットによってソート順が入れ替わらないようにするための設定をしておきます。

管理＞設定＞チケットトラッキング　の「親チケットの値の算出方法」で開始日/期日の設定を「子チケットから独立」にします。
他プロジェクトにも影響が出てしまう設定なので、設定変更が許容できない場合は、開始日固定用にダミーの子チケットを作成することでも対応できます。
ソート順を気にしなければ、本設定を行わずに以降の作業を進めても構いません。

![TicketTracking1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3629072/e79b95db-4121-18b6-4c47-37d045baf7c4.png)

#### 畝立て

さて、作付け計画に入る前の最後の準備です。畝を立てていきます。
「チケット」タブを開き、「新しいチケット」を押下します。

![CreateRidge1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3629072/eb456b0d-6c50-dac2-d8be-52ae0e0fbcd2.png)

以下は"畝１"の作成例です。同様の手順で畝２・３・４…と作っていきます。
開始日は家庭菜園を始めた日、期日は50年後などとりあえず長めで入力しておきます（畝は基本無くならない想定）。
なお、前述の通りガントチャートに表示される畝の順序は開始日でソートされるため、各畝の開始日を1日ずつずらして作成しておくとよいです。

![CreateRidge2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3629072/c1af1389-deb3-1446-2f25-0cde6089742e.png)

## 作付け計画管理プロジェクトの運用手順

ここまでの準備、お疲れ様でした。ガントチャートを開くと以下のような状態になっていると思います。
家庭菜園を始めたばかりだと、前作の野菜が何も無いので好きなところに好きなものを植えられます。
葉もの、実もの、根ものをバランスよくなど定石はあるのですが、ここでは細かいこと抜きで作付け計画を立てていきましょう！

![GanttChart1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3629072/94f6e7e7-6fb6-6545-fa75-fb308a48c8d8.png)

ガントチャートの左側から野菜を育てる畝を選択し、子チケットの追加を押下します。

![CreateVegetables1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3629072/09415011-e06a-fbfe-1d23-8ff454c61f79.png)

トラッカーに「野菜」を選択し、育てる野菜の情報を入れていきます。
ここでは我が家で大人気の"きたあかり"を例に説明します。
題名は"きたあかり"。きたあかりは北海道生まれの美味しいじゃがいもです。なので、カテゴリはジャガイモを選択します。
植え付け予定時期を開始日とし、収穫予定時期を期日にします。
作成したチケットに、成長記録などのデータを残しておくと、後でニヤニヤ眺めたりするのに役に立ちますが、今回は作付け計画が主題なので、そちらはまたの機会に。

![CreateVegetables2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3629072/041a0b53-f0a0-9291-7ee5-37d5252cf707.png)

続けて、休栽期間の情報も入力しておきます。野菜と同様に子チケットとして登録します。

![CreateVegetables3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3629072/88fbf9f8-5464-d9b2-4d51-121f8832f70e.png)

トラッカーに「休栽期間」を選択し、カテゴリに先ほど入力した野菜と同じものを設定します。
カテゴリを見ることでその野菜が何科で休栽期間がどの程度必要か分かるので、題名に科の名前を、開始日は野菜の収穫日あたりを入力し、期日に休栽期間が終わる頃の日付を設定します。

![CreateVegetables4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3629072/3124c701-6676-a4fc-ec55-c09f7cba3536.png)

ガントチャートに戻ると（フィルタは未完了のチケットを表示するようにしてください）、以下のように育成中の野菜や、休栽期間中の科が表示されるようになります。

![GanttChart2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3629072/ae406a89-4172-501c-d727-ca3ca3d19bd5.png)

同様の手順で、他の畝にも育てたい野菜と休栽期間の情報を入力していきます。
収穫が終わった野菜や、休栽期間が終わったチケットはステータスをクローズにすると表示されなくなります。

最初はガントチャートの見応えがありませんが、数年かけて何種類もの野菜を育てていくと以下のような状態になります。
（下図は筆者が実際に利用しているRedmineの画面です。ホスティングサービスを使用しているため、若干画面の色合い等が異なります）

![FarmChart.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3629072/db92c50f-99a3-aa1a-db55-0a55c6f539f5.png)

例えば、春にまたじゃがいもを植えたいのですが、ナス科の休栽期間となっていない畝はどれだろう…と探すと、畝１と２が空いてる！と分かります。

## おわりに
今回はRedmineによる作付け計画の管理を扱いましたが、他にも作物ごとの成長記録をチケットに蓄積していくといった使い方もできます。
データを蓄積しておくことで、上手く育たなかった時の原因分析に役立てることもできそうです。

このようにRedmineは工夫次第でシステム開発以外にも活用することができます。
家庭菜園のようなシステム開発と畑違いなものにも使えるのですから、身近な業務でも活用できるシーンはたくさんあると思います。
本記事がRedmineを使ってみようというきっかけになれば幸いです。

---
※ 記載されている会社名、製品名、サービス名は、各社の商標または登録商標です。