
はてなキーワード:アジャイルとは
俺もなんでもかんでも反論するわけじゃない。
「世界を壊した所で、常識や法則までは壊れない。神の領域よりも上の存在だからだ」って、「壊れた世界」で言われても、反論はしないよ。
壊された世界というものを広く世界の終焉まで含めて捉えると、そのときは宇宙の始まりへ巻き戻すようなことが起こるわけで、これに伴って全宇宙はブラックホールよりも(エネルギーの)密度が大きくなる。
ブラックホールですらその内部は今まで解明されている物理の常識には囚われないと推測されているのだから、宇宙の終焉にも常識は適用されないのではないかという推測も立てられる。
かといって実際に壊れた世界を目の当たりにしている状況でこのようなことを言われた場合、このような異常事態では、言ってることの中身が重要なのと、アジャイルな意思決定が重要だから、細かいことはあまり気にならないと思う。
dorawiiより
-----BEGINPGP SIGNEDMESSAGE-----Hash: SHA512https://anond.hatelabo.jp/20251021180556# -----BEGINPGP SIGNATURE-----iHUEARYKAB0WIQTEe8eLwpVRSViDKR5wMdsubs4+SAUCaPdM9AAKCRBwMdsubs4+SNclAQDu9C2MxMUxBcGXwQIrfgVSjjDT48U7fiaKh/yQ5/7IvwD+OrCWKioRixcIuGep032AjyAZGiYU0JSlXte2gvIuyQ8==C0ev-----ENDPGP SIGNATURE-----
手間が増えて、全然楽になってないのなら、それは正しく理解できていず、目的を見失い、手段を目的としているから。
速い話が、
間違えている
からだ。
DDDとかTDDとかDevOpsとかIaCとかクリーンアーキテクチャとかマイクロサービスとかアジャイルとか、とか、とか。
いろんな現場で、責任者は「うちは××を採用して云々」と胸を張って宣言してくれるんだが、「ならなんでそんな状態になってんの?」「なんでそんなにエンジニアがたくさん必要なん?」と聞きたくなる。
今時、SREがいるとか、QAが別にいてE2Eテストとかしてるとか。
まず間違いなく、
間違えている。
んだよね。
TDDをちゃんとしていれば専属QAは不要だし、DevOpsをちゃんとしていれば専属SREは不要。
いやでも「Googleならそうしている」っていうなら、大きな勘違いをしている点を指摘してあげよう。
「君たちはベアメタルサーバを管理していないし、Lanケーブルの取り回しもしていない。GoogleのSREエンジニアが頑張って運用してくれているシステムに乗っかって、アプリケーションに集中できる状態になっているはずだ」
ということ。
職業プログラマになって分かったことは、職業倫理なんてものは "人が死なない限り存在しない" というものだ。
僕らを取り巻くテーゼは、 "プログラムを事前に設計して考えて書くのはバカだ" というもの。
これは、インターネット環境で修正が用意になった結果として、「その場しのぎをすればいい」という場当たり的主義が起きた。
結局のところ、そんな対応をコンシューマも許容せざる得ないのだ。そんなテーマで書いてみる。
アジャイルだとかXPという方法論の理想は認めるし、とても共感する。顧客がソフトウェア開発のプロなら成り立つだろう。
だが、実際の運用はどうだろう。顧客に未完成品を準委任で売りつけて、保守で金をせびる方便になってしまった。
XP という主張も、アジャイルという運動も、未完成品を売りつけるための手法として使われている。
いざとなったら、可能な限り修正はしますよ、という触れ込みで。僕らが頑張ってこれだったんですといえば、故意ではないのだ。
だったら、自分たちのレベルを低くした方が、免責される幅も広がるし、安く人を調達できるし、うれしいことだらけ。わらっちゃうぜ。
TDDという手法がもてはやされたりするのも、やったもん勝ちみたいな精神性があるからなのだ。
そもそもの問題として、本当のテストの設計をするには、プログラムがどのような動作をすべきか考えなくてはならない。
V&Vの妥当性確認をするには、そもそも何をしたいかわかってなくてはならないし、そのためには、上流の設計は必要だ。
そのことを考えるに、TDD を設計しつつ行うことは、上流から下流までの見識を持って行わないといけないはずだ。
しかし、テストファーストといってる人たちは、このことを矮小化して、あらかじめ自分のわかってる範囲でテストを書いておけば問題ないと言っている。
現場で始めるTDDなんていうのは、そんなもんで、そういう場当たり的なことをを持てはやしているわけで、知れたもんだよね。
こいつらバカじゃねーのか、テスト書いてれば、見当違いのことしてもいいって言ってんのかよ、って思うわけだわな。
でも、何やっても、やってよかったと心底思える人達ばかりで、住む世界がちがうわけで。かなりお花畑な人達ばかりなのよ。残念なことに。
そもそもドメインモデリングなんて、いくらでも昔に提唱されていたのに、DDDに含めるのが間違ってるのだ。
そもそも、DDDの本はドメインモデリングについて、あまり語ってないし...。
どうせ、ユースケース層というものをドメインに入れて四苦八苦してるような輩には、なんもわかるまい。
ドメインとドメインがどう使われるかは、そもそも関係にないし、関係あったら問題だろう。
でも、ユースケースをドメイン内に表現したいとかいうのが後を立たないのは、なんもわかってないからだろうな。
わかってないならわかってないで黙っていてくれともうけど、DDDやってみましたっていうよくわからない記事ばかり出てくるし...
正直、AI に命令を出すリード、マネージャ、リーダーの能力が上がらないと、AI でコードを大量生産すると手に負えないスラムが根深く絡み合った構造で広がっていくことになるだろうというのが既に見えている。
というのも、AIほとんど影響ないちょい前の時点ですら「うちはDDD、TDD、クリーンアーキテクチャ、k8s、アジャイル、スクラム等々を採用して云々」ってプロダクトが、リリースから半年、1年で開発がスタックしている、という事例は一般が想像する以上に存在している。
リリース時は、CTOやマネージャが腕組みしてWebページで華々しい成果発表するものだが、その裏で手動運用のオンパレード、一箇所変更したらどこに影響が及ぶかわからない地雷原、不具合障害が発生するたびに増える監視サービス、手動運用マニュアル。
その前で、「圧倒的ではないか、我がプロダクトは」って悦に入る経営陣、の図。
それ見て「SaaS界のネズミー王国や〜」って妄想を迸らせる利用者側経営陣と、ブルシットな手数だけ増えて、業績給与はぴくりくらいしか動かないで悶絶する利用者側従業員。
この状態で、「いや〜、新技術の導入、失敗しましたわ〜。経費が5倍くらいに膨れ上がってます。ごめんちゃい」なんてリリース出せないでしょ。
それ見て教科書ガイドエンジニア、カタログショッピングエンジニアが「世界を変える! 俺(の業務経歴書)が変わる!!」って初見手探りで導入して、連れション地獄。
これが現状よ。
ここにAI が入ってくると、ますます「中身も、他の処理との関係性もよくわからんけどプロダクトに組み込まれた謎プログラムの塊」が、「これ以上機能を載せるとバランスを崩して全体が倒れる」寸前のサイズまで育つわけよ。
ここまで行っちゃったら、どこをどうしたらどうなるか、「AI 使ってふふふふ〜ん」ってレベルのエンジニアでは太刀打ちできなくなってるだろう。
すっと
「動くな!」
となって、対策のための会議とドキュメントづくりが延々と半年とかいうオーダーで繰り広げられることになる。
その間やれること、というかやらなきゃならないことは、障害対応手動運用。
こういう状態に陥らせたリーダーやリードテック、CTOは「新しいことに挑戦したいので」と敵前逃亡、成果発表のWebページを担いで次の犠牲者の元へ。
ちゃんと設計したら、生成AIを駆使する必要、あまりないはずなんだよなー。
で、テストも書いてくれる、っていうけど、AI に全投げ似非エンジニアにその妥当性とか、判断できんのかな?
カバレッジを100%に近づけるためだけのテストを手動で大量に書くのを代替してくれるかもしれないけど、あのテストが品質保証、障害対策になってる現場が一つでもあるか?
今流行りらしい、業務ドメイン分割マイクロサービスだと、AI で辻褄合わせてテストとか、無理やぞ。
という地獄が、2、3年後訪れるだろう。
楽しみやなぁ〜w
という話をすると、AI使いこなせないオールドタイプの負け犬の遠吠え、みたいにいうてくるのがいるんだけど、むしろAI を効果的に活用するための構造、構成とか模索してんのよ。
てか、Web系って少なくとも「ウォーターフォール」じゃ無理な世界なんだよね
かといって「アジャイル」と呼ぶとちょっと違う気もするが、インクリメンタル・イテレーティブモデルではあるので、そういうのをざっくりと「アジャイル」と呼んではいる
ざっくりといえば、SIerと自社開発の差がここに出てくる
うちの部署に配属された新人の後輩女子がいる。22歳、名前は田中(仮名)。
第一印象は「うわ、めんどくさそうな子来たな」だった。
朝一でプロテイン飲んでる。昼休みにはサラダしか食べない。デスクには自己啓発本が3冊積まれてて、休憩時間にはKindleで読んでる。会話の端々に「アップデート」「アジャイル」「エンパワーメント」みたいな横文字が出てくる。
最初は正直、距離を置いていた。こういう子って、すぐに「先輩、もっと効率的なやり方があると思うんですが」とか言ってきそうじゃん?実際、1週間目にして「このExcelシート、もう少しマクロ組んだらもっと楽になりませんか?」って提案してきた時は、心の中で「はいはい、出た出た」って思った。
でも、その提案が的確すぎて。
私が手作業で2時間かけてやってた集計作業が、彼女のマクロで15分で終わるようになった。しかも、ミスもなくなった。
「田中すごいじゃん」って褒めたら、「いえいえ、まだまだです!もっと勉強しないと!」って言いながら、めっちゃ嬉しそうにニコニコしてる。
それからよく観察するようになった。
朝のプロテインは、実は朝食を取る時間がないから。一人暮らしで、朝は6時半に起きて、電車で1時間半かけて通勤してる。だから朝食代わりにプロテインを飲んでるだけだった。
昼のサラダも、お金がないからじゃなくて、単純に野菜が好きだから。「コンビニのサラダって、どれも美味しいんですよね!毎日違うの試してるんです!」って楽しそうに話してる。
自己啓発本も、「将来起業したくて」とか「キャリアアップのため」じゃなくて、「本を読んでる時が一番集中できるんです。通勤時間が長いので、有効活用したくて」という理由だった。
そして横文字も、別にカッコつけてるわけじゃなく、前の大学でそういう授業を受けてたから、自然と口に出るだけだった。
気づいたら、私の方が田中の話を聞くのが楽しみになってた。
「先輩、今度新しいカフェがオープンするらしいです!一緒に行きませんか?」
「先輩こそ、いつも優しく教えてくださってありがとうございます!」
こんな会話を交わしているうちに、ふと気づいた。
田中の「意識高い系」行動の全てが、別に誰かに見せつけるためじゃなく、彼女なりに一生懸命生きてる結果だったんだ。
そして、その一生懸命さが、なんだかとても愛おしく見えてきた。
「先輩、このプロジェクト、一緒にやりませんか?」
「いいよ」
「やったー!頑張ります!」
満面の笑顔でガッツポーズする田中を見ていると、私まで嬉しくなってくる。
最近、定時後に一緒にカフェに行くことが増えた。田中はいつも、今日あったことや、読んだ本の話や、将来の夢について熱心に話してくれる。
「先輩って、すごく聞き上手ですよね。話してると、なんだかすっきりするんです」
「そう?」
この前、田中が風邪で休んだ時、なんだかオフィスがすごく静かに感じた。田中のいない職場って、こんなにも物足りないものなのか。
「ご心配おかけしてすみません!明日には復活予定です!先輩に迷惑かけないよう、しっかり治します!」
こんな時でも、一生懸命で、健気で。
私、この子のこと、いつから「可愛い」って思うようになったんだろう。
最初は「意識高い系のめんどくさい後輩」だったはずなのに、今では「一生懸命で可愛い後輩」になってる。
でも、これって、単純に「後輩として可愛い」ってことだよね?
そうだよね?
そこそこ大企業に勤めてる
ソフトウェアエンジニアをしてるが、彼らはもうダメなのかもしれない。
OSが存在する時点で無駄なウィルススキャンソフトを入れさせられる。
いわゆるサーバーレスが大好きな人たちが集まって作ったゴミシステムの改修をさせられてる。
頭が沸いてるとしか思えない。。
当然NoSQLでは複雑な検索ができないので検索エンジンを使っている。。
彼ら自身が答えを出してるのに素直ではない。
なぜかgraphqlも採用している。
内部を見ても、普通にrestのコントローラーと同じ構造をしていてgraphqlのサービスに依存して返す値を変えてるだけである。。、
で、離職率が90%を超えている
擬似的にリレーションは再現できるであろうが、アプリケーション層での保証なのに問題ない顔している。
今わたしは外注を動かすためにシステムの仕様を作って、渡してる。
サーバーレスなアプリケーションでスマホアプリはそれらを呼び出している。
流石に工数見積もりができないのでスケジュール遅延する可能性が高いとPMに報告したが普通に怒られた。当たり散らされたがまあくだらないので放っておく。
上に相談したが耐えてくれとの話だった。
PMはSIer出身でこのプロジェクトはアジャイルと言い張るがガッツリウォーターフォールである。
このシステムはやばいからユーザー関連部分だけでもRDBMSに移行すべきと言ったが、工数が無いとしか言わない。
現代でソフトウェアを作る上ではもうdevops以前に協働するという基礎の方が大事である。
他社の機能をパクれと言ってもウチ独自の強みがないととか、そのアプリで出せる付加価値があると認められてから投資対象になると説明されるが、こいつらは何を食ってるんだろうか。
壊しやすく自分の手で扱える規模にアプリケーションを組んで激安で運用して当たるのを待てばいいのにそれも出来ない。
このシステムを冷静にレビューしても狂ってるのに誰一人疑問に思わない。。
上は無関心、PMは働かないでASDっぽいし人を詰める、同僚はASD
こんな魔境存在していいのか。。と疑問に思う。
人の入れ替わりも考えると3年ぐらいは同じチームでやってないと、ベロシティが全然読めなくて納期を大外しすると思う。アジャイルを導入してもうまくいかない期間があるから、JTCはそれに耐えられないんじゃないかな?
アジャイルはドキュメントより動くソフトウェア重視ではあるけど、開発者が顧客や営業より優位というわけではなく、動くソフトウェアを触ってもらうことで顧客の意見を取り入れていく手法なんだけどね
SNSで告知見て、内容も「人見知りでもOK」って感じだったし、バージョン合いそうだなーと思って参加。
参加者も「会社の飲み会はSlackのスタンプで済ませてますw」とか
「旅行も一人のほうがメモリ節約できるし、CPU温度上がらないっすよね」みたいなタイプで、序盤は「これは負荷軽めで快適だな」って感じだった。
全体的に、リア充っぽいテンションとは無縁な人ばっかで、「これぞ非同期コミュニケーション」って思ってた。
開始5秒で「僕、RustとGoでマイクロサービス開発してます。友達いないです。恋人いません。親にもブロックされてます。でも、ChatGPTと話してるので大丈夫です」って、超重量級のログが出力されて場がフリーズ。
誰もお前の闇のstacktraceをデバッグしに来てないのよ。
さらに、「僕、AIイラスト描いてるんですけど、著作権とか時代遅れですよね?あんなの老害の仕様でしょ?」って唐突にライセンス違反マウント。
「pixivはオワコン、今はNovelAIとComfyUIが最強」って語りだして、俺のフレームバッファが完全に焼けた。
てか、なんで“ぼっちオフ”に来てまでライセンスバトル始まってんの?
しかも俺のTwitterの昔の投稿を掘って、「○○さんも“孤独で辛い”って言ってましたよね!?同志ですね!」って突っかかってくる始末。
こっちは「休日にひとりでKaggle回すの好き」って話してただけで、お前みたいに「人間関係を全員403 Forbidden」にした結果の孤独じゃないから。
「VS Codeの拡張機能でChatGPTと喋ってると、人間いらなくなる感ありますよね?」
「てか、女ってバグ多くないですか?ロジック破綻してるというか」
って、完全にネット炎上案件レベルの発言をノンブロッキングで垂れ流し。
極めつけは「このあと、Stable Diffusionのプロンプト見せ合いませんか?」って。
こっちは秒でexit 1 叩いて帰ったわ。
人間関係のエラーは他人側のコードミスだと信じて疑わないじゃん?
何でもAIに任せて、「女性は感情的すぎて仕様が読めない」とか言ってんの、
誰かと繋がりたいなら、まずは npm install social_skills してから出直して。
マジで頼む。
「非依存型ソロ行動者限定」って明記しないと、またroot権限で空気を破壊する奴が来るぞ。
ほんとに。
一行のコード変更でも何十ページもの影響分析とテスト計画やってる人がアジャイルがどうかとか知ってるわけがないと思うし技術も正直怪しい気がするが
ちょっと盛ったよね?
最近「テクノロジーで政治をかえる」だの、「デジタル民主主義」だのって、やたらと情報工学系のバズワードを振り回す新党がある。「チームみらい」だ。
正直なところ、俺みたいなお堅い開発やってる情報技術者からすると、最初は「またか」ってのが正直な感想だった。政治家が「IT」って言い出すと、ろくなことにならないってのが経験則だからな。
でもちょっと調べてみたら、「チームみらい」の言ってることには、確かに耳を傾ける価値のある部分と、背筋が凍るような懸念点が同居してるってのがわかってきた。
まず、彼らの主張と、俺がポジティブに受け取った点から見ていこうか。
彼らは日本の政治を「バグってる」と表現し、「行政サービスは相変わらず使いづらい」と現状認識は一致する。
「テクノロジーで、政治の透明化・効率化を実現する。それは今すぐできる。そしてあなたの生活を着実に改善できる」と謳ってる。目標としては「テクノロジーで透明化、効率化、スマート化」を目指すんだと。まぁ、これは誰でも言うよな、って感じだが。
「1議席を得て国政政党になったら、政党交付金で永田町にエンジニアチームをつくる」と明言してるのは驚いた。これが絵空事じゃないなら、これまで口先だけだった「IT化」「DX推進」とは一線を画す。
党首の安野たかひろ氏自身がAIエンジニア・起業家だというし、公認候補者の中にも複数の情報技術者がいるのは確認できた。「手と足を動かす実践型」を標榜してるってのも、従来の政治家とは違う姿勢だな。
「自ら開発した政治資金透明化ツール Polimoney にてすべて公開」してるってのは、実際に手を動かした証拠だ。これは評価できる。
「政策をAIと対話しながら深掘りし、意見や要望も簡単に送れる世界初のチャット機能も搭載」したマニフェスト や、「政治参加を"楽しく"可視化!ゲーミフィケーション導入のアクションボード」なんてのも作ってるらしい。これらは「デジタル民主主義」を単なるスローガンで終わらせないという意欲の表れだろう。
ここからが本題だ。彼らの主張を聞いて、俺の脳内には危険信号が点滅しまくってる。
何故なら「具体的な『(情報工学としての)マニフェスト』も『仕様書』も『実装計画』も決まってない」から。
彼らは「アジャイルに、現場で改善していく」って言いたいんだろうが、「基幹システム」と「Webサービス」を一緒にしてはいけない。
銀行の勘定系なんて、たった一行のコード変更でも何十ページもの影響分析とテスト計画が必要になるんだぜ?国民の税金や個人情報、社会保障に関わる行政システムは、国民全員の生活の基盤だ。それを「バグってるから現場で直す」なんて、詳細な設計書も持たずにメスを入れるようなものだ。そんなリスキーなことを許せるか?
「テクノロジーは、難しい技術のことじゃない。できなかったことを、できるようにする方法のことだ」、って言うが、その「できるようにする方法」をどう「堅牢に」「安全に」「持続可能に」実現するかが、情報工学の肝なんだよ。
彼らが作ったPolimoneyやAIチャットは、あくまでプロトタイプや限定的なツールだ。素晴らしいが、それは「小さなシステム」での成功例に過ぎない。全国民が利用する行政サービスを、あのレベルでアジャイルに改善し続けられるのか?アクセスが集中した時、障害が発生した時、どうする?
勘定系システムなら、トランザクション一つが飛んだら新聞沙汰だ。行政サービスもそれに近い重要性がある。「後から直す」では許されないレベルのシステムを彼らがどう扱うのか、その哲学が全く見えてこない。
日本中の行政システムは、半世紀以上かけて積み上げられたレガシーの塊だ。古いCOBOLやFortran、紙のワークフローがそこら中にある。永田町にエンジニアチームを作ったとして、彼らが直面するのは、壮絶な「負の遺産」との戦いだ。
「既存の枠組みにとらわれることなく活動していきます」というが、既存の枠組みに「縛られまくってる」のが日本の行政システムなんだ。これらをどう「解体」し、「再構築」していくのか。それには膨大な時間、予算、そして何よりも緻密な移行計画が必要不可欠だ。
「エンジニアチームが政治や社会の課題を次々解決」 ってのは聞こえはいいが、誰がその「課題」を定義し、どの「解決策」が正しいと判断するのか?エンジニアが政策立案まで牛耳るのか?
今現在としてマニフェスト(情報工学)や仕様書がないということは、「誰が、何を、どう作ったのか」という明確な責任の所在が曖昧になるリスクもはらむ。国民への説明責任をどう果たすのか?
「チームみらい」がこれまでの政治の慣習を破ろうとしている点は評価する。エンジニアを政治の中枢に入れようとする試みも、既存の政治家が積極的にやろうとしなかったことだ。
しかし、彼らがやろうとしているのは、町中の小さなウェブサイトを作るような話じゃない。国家の基幹システムを「アップデート」する話だ。それには、「バグってるから直す」というシンプルな熱意だけでは足りない。
必要なのは、システムの全体像を見通すアーキテクチャ設計能力、膨大なリスクと向き合うセキュリティ設計、そして長期的な運用を見据えたメンテナンス計画だ。
「アジャイル」は魔法の言葉じゃない。基幹システムにおいては、アジャイルの導入にも緻密な計画と準備、そして極めて高い技術力と経験が求められる。
この党が、本当に日本の未来を明るくできるのか、それとも「デジタルの皮を被った理想論」で終わってしまうのか。今の段階では、期待と不安が五分五分だ。彼らが単なる「手を動かす」だけでなく、「システム全体を見通す頭」と「国家レベルの責任を背負う覚悟」を具体的に示せるかに、全てがかかっていると俺は思うぜ。
はてなーは情報工学にそこそこ詳しい連中が揃ってるんだからコレくらいは言って欲しい。
正直、最も不安を覚えるのはチームみらいへ対しチームみらいに勝るとも劣らないレベルの曖昧でふんわりとした評価しかコメントできないお前らへ対しての不安が大きすぎる。
個人的に、安野氏には今回メチャクチャ惨敗したとしても次回また挑戦して欲しいね。もちろん再挑戦は「何が足りないのか?」を指摘してる連中の意見をしっかりと受け止めてやって欲しいね。
Permalink |記事への反応(15) | 15:11