Excel管理台帳から今時の開発環境へ
大規模SIerの今時の開発環境の記事があったのでメモ。
すごく参考になる。
【元ネタ】
これが大規模SIerな弊社のデファクトスタンダードな開発スタイルだ!! - そこに仁義はあるのか(仮)
受託開発でGitとmavenを使って開発をしている - そこに仁義はあるのか(仮)
はてなブックマーク - これが大規模SIerな弊社のデファクトスタンダードな開発スタイルだ!! - そこに仁義はあるのか(仮)
【1】はてぶが1千以上も付いていて、皆の興味が向いているのが分かる。
環境は、GitBucket+Jenkins+Redmine+SonarQube+Artifactory。
GitHub Enerpriseを使わないなら、自社サーバーでこんな開発環境を作るのだろうと思う。
MS製品なら、TFSでほとんどカバーされるのだろう。
Jiraなら、アトラシアン製品でほとんどカバーされるのだろう。
以前の僕は、Redmine+Subversion+TestLink+StatSVNの環境を作っていたが、今なら、こういう環境の方がはるかに開発効率もいいだろう。
全てオープンソースなので、社内にサーバーさえ用意できれば、開発者自身で開発環境を全て構築できる。
【1-1】developブランチをニアショア・オフショアの開発チームごとに任せて、プルリクで日本拠点のチームが受入するやり方は確かに良い。
今までなら、このやり取りをExcel管理台帳にCVSやSVNリビジョンを指定して、ライブラリアンが管理台帳を参照してマージし、タグ付けする作業が必要だった。
そういう手作業が全てGit上でオンライン化されることで、作業履歴も残るし、プルリクがコードレビューや受入れ検査も兼ねるようになる。
【1-2】SonarQubeというツールも初めて知ったが、昔のSonarのグレードアップ版みたいなものかな。
ソフトウェアのメトリクスは、自動収集・自動集計して、いつでも開発者が見れる状態にした方がいい。
自分のコードがどのように客観的に見られているのか、と日本人の開発者は意外に意識するから。
SonarQubeでプログラムの品質管理をはじめる(概要) - Qiita
ユカイ、ツーカイ、カイハツ環境!(17):コード探知機「Sonar」でプロジェクトの深海を探れ! (1/4) - @IT
【2】もはやチケット駆動は当たり前であり、ソフトウェア開発の3種の神器も全てオープンソースで揃えることもできる。
こういう開発環境のネタは個人的に好き。
なぜなら、アジャイル開発の基本精神は、サーバーントリーダーシップのようなマネジメントよりも、現場でいかにプログラミングしやすくするか、という環境整備にあるような気がするから。
Excelのプロジェクト管理から脱却せよ~SW構成管理を見直そう: プログラマの思索にも書いたけれども、頻繁にリリースできる開発インフラがあれば、プロジェクト管理を意識せずにコーディングだけに専念すればいい。
XPが生み出したソフトウェア技術のプラクティスは、オープンソースの各種ツールの一機能に実装され、最終的には、一つのプロジェクト管理サーバーのようなものに実現されるのだろう。
つまり、ソースの共同所有、継続的インテグレーション、ペアプログラミングによるコードレビュー、コーディングルールの標準化などは、上記の開発環境の一部に含まれることで、開発者はプラクティスを意識しなくても、ツールに慣れることで自然に良い習慣が身に付く。
よりアジャイルに開発していくために、そういう開発基盤が必要。
そこにアジャイル開発が概念的に生み出したプラクティスを注入することで、プログラマにプロジェクト管理が不要な環境を提供する。
Excel管理台帳による煩雑なコミュニケーションはそもそも不要。
その辺りもまとめてみたい。
| 固定リンク
「Redmine」カテゴリの記事
- Redmineのバージョン設定でプロジェクトの設定方法が違う(2024.06.23)
- ウクライナのRedmine開発者が作ったRedmineテーマやプラグイン(2024.06.18)
- 第26回redmine.tokyo勉強会の感想~多様性はコミュニティが成功する重要な要因の一つ #redmineT(2024.06.15)
- Redmineで持ち株管理する事例(2024.04.21)
- チケットはデータでとプロセスの二面性を持つ #redmine(2023.12.24)
「ソフトウェア工学」カテゴリの記事
- 「システムアーキテクチャ構築の原理」の感想part2~非機能要件がシステムのアーキテクチャに影響を与える観点をプロセス化する(2024.05.06)
- 「システムアーキテクチャ構築の原理」の感想(2024.05.06)
- ソフトウェア工学の根本問題から最近のソフトウェア設計を考えてみる(2024.03.03)
- マイクロサービス設計は従来のアーキテクチャ設計と何が違うのか(2024.01.02)
- 「ソフトウェアアーキテクチャ・ハードパーツ」の情報リンク~マイクロサービスの設計技法の課題は何なのか(2023.11.12)
「構成管理・Git」カテゴリの記事
- 「GitLabに学ぶ 世界最先端のリモート組織のつくりかた」の感想(2023.12.10)
- パッケージ設計の原則の意義は変化しているのか(2023.09.30)
- 小説活動にプルリクエスト駆動が必要になってきた(2022.05.08)
- 【資料公開】チケット駆動開発の解説~タスク管理からプロセス改善へ #redmine(2022.01.14)
- プログラミングしてる時はでっかいピタゴラ装置を作ってるみたいな感じ(2022.01.09)
コメント