Thoughtworks Technology Radar、Volume 29を公開
(thoughtworks.com)テクニック/ツール/プラットフォーム/開発言語およびフレームワーク分野の最新トレンドを、Hold/Assess/Trial/Adoptの4段階で可視化し、解説。
AI支援ソフトウェア開発
- コーディング向けのオープンソースLLMが、開発ツール環境を揺るがすだろう
- また、コーディングを超えて、ユーザーストーリー作成支援、ユーザーリサーチ、エレベーターピッチ、他言語関連の作業などでも大きな可能性がある
- 同時に、開発者はこれらすべてのツールを責任を持って使用する必要があり、パッケージの幻覚的依存関係のような問題にも注意しなければならない
生産性の測定はどれほど生産的なのか?
- ソフトウェア開発は、技術の専門家ではない人々には時に魔法のように見えることがあり、そのため管理者は開発者がどれほど生産的に働いているかを測ろうとしがちである
- マーティン・ファウラーは2003年に「生産性は測定できない」という文章を書いた
- 依然として、SPACEフレームワーク(Satisfaction and well-being, Performance, Activity, Communication and collaboration, Efficiency and flow)のうち、Activityに対する代替指標であるプルリクエスト数や解決したイシュー件数などはあまり良くない
- その代わりに業界では、生産性そのものを測るよりも「フローに寄与または阻害する要素を測る」べきだという「エンジニアリング効率性」に焦点を当て始めている
- 個人の活動に焦点を当てるのではなく、システムにおけるムダの原因や、経験的に示せる条件が開発者の「生産性」認識に影響する点に焦点を当てるべきである
- DX DevEx 360のような新しいツールは、特定の成果物の測定ではなく開発者体験に集中することで、この問題に対処している
- しかし、多くのリーダーはいまだに曖昧で定性的な形で開発者の「生産性」に言及している
- こうした関心の復活の少なくとも一部は、AI支援ソフトウェア開発の影響に関するものと考えられ、「本当に良い影響を与えているのか?」という疑問を提起している
- 生産性の実際の測定は、依然として難しい
数多くのLLM
- LLM(大規模言語モデル)は、AIにおける多くの現代的な革新の基盤を成している
- 現在、多くの実験ではChatGPTやBardのようなチャット型ユーザーインターフェースを提示している
- 広く見れば、LLMはコンテンツ生成(テキスト、画像、動画)からコード生成、要約、翻訳に至るまで、多様な問題を解決できるツールである
- 強力な抽象化レイヤーとして機能する「自然言語」を使うこれらのモデルは、普遍的に魅力的なツールセットを提供するため、多くの情報労働者が利用している
- クラウドホスティングされたLLMよりも、カスタマイズや強力な制御が可能なセルフホスティングを含め、LLMのさまざまな側面について議論が行われている
- LLMの複雑さが増すにつれ、特にエッジデバイスや制約の大きい環境において、小さなフォームファクタでLLMを量子化して実行する機能が考慮されている
- 質問応答のやり取りを超える動的アプリケーションの構築に使えるLLMベースの自律エージェントとともに、性能向上を約束する「ReAct Prompting」についても取り上げている
- また、LLMのおかげで再び注目を集めている複数のベクターデータベース(Pineconeを含む)にも言及している
- 特化機能やセルフホスティング機能を含むLLMの基本機能は、爆発的な成長を続けている
リモートデリバリーの回避策(Workaround)が成熟
- リモートソフトウェア開発チームは、長年にわたり地理的制約を乗り越えるために技術を活用してきたが、パンデミックの影響でこの分野の革新が促進され、完全リモートまたはハイブリッド勤務が継続的なトレンドとして定着した
- 今回のRadarでは、リモートソフトウェア開発の手法とツールがどのように成熟したのか、そしてチームがこれまで以上に分散し動的な環境で効果的な協業を重視しながら、どのように限界を押し広げ続けているのかを議論している
- 一部のチームは、新しいコラボレーションツールを使って引き続き革新的なソリューションを提示している
- 一部では、リアルタイムのペアプログラミングやMobプログラミング、分散ワークショップ(例: リモートイベントストーミング)といった従来の対面プラクティスを継続的に適応・改善している。非同期・同期の両方が可能である
- リモートワークには、より多様な人材プールを含むさまざまな利点がある一方で、対面での相互作用の価値も明らかである
- チームは重要なフィードバックループが失われることを許してはならず、リモート環境への移行時に生じる長所と短所を認識する必要がある
[Techiniques]
Adopt
- Design systems
- Lightweight approach to RFCs
Trial
- Accessibility-aware component test design
- Attack path analysis
- Automatic merging of dependency update PRs
- Data product thinking for FAIR data
- OIDC for GitHub Actions
- Provision monitors and alerts with Terraform
- ReAct prompting
- Retrieval-Augmented Generation (RAG)
- Risk-based failure modeling
- Semi-structured natural language for LLMs
- Tracking health over debt
- Unit testing for alerting rules
- Zero trust security for CI/CD Assess
- Dependency health checks to counter package hallucinations
- Design system decision records
- GitOps
- LLM-powered autonomous agents
- Platform orchestration
- Self-hosted LLMs
Hold
- Ignoring OWASP Top 10 lists
- Web components for server-siderendered (SSR) web apps
[Platforms]
Adopt
- Colima
Trial
- CloudEvents
- DataOps.live
- Google Cloud Vertex AI
- Immuta
- Lokalise
- Orca
- Trino
- Wiz
Assess
- ActivityPub
- Azure Container Apps
- Azure OpenAI Service
- ChatGLM
- Chroma
- Kraftful
- pgvector
- Pinecone
- wazero
[Tools]
Adopt
Trial
- AWS Control Tower
- Bloc
- cdk-nag
- Checkov
- Chromatic
- Cilium
- Cloud Carbon Footprint
- Container Structure Tests
- Devbox
- DX DevEx 360
- GitHub Copilot
- Insomnia
- IntelliJ HTTP Client plugin
- KEDA
- Kubeconform
- mob
- MobSF
- Mocks Server
- Prisma runtime defense
- Terratest
- Thanos
- Yalc
Assess
- ChatGPT
- Codeium
- GitHub merge queue
- Google Bard
- Google Cloud Workstations
- Gradio
- KWOK
- Llama 2
- Maestro
- Open-source LLMs for coding
- OpenCost
- OpenRewrite
- OrbStack
- Pixie
- Tabnine
[Languages and Frameworks]
Adopt
Trial
- .NET Minimal API
- Ajv
- Armeria
- AWS SAM
- Dart
- fast-check
- Kotlin with Spring
- Mockery
- Netflix DGS
- OpenTelemetry
- Polars
- Pushpin
- Snowpark
Assess
- Baseline Profiles
- GGML
- GPTCache
- Grammatical Inflection API
- htmx
- Kotlin Kover
- LangChain
- LlamaIndex
- promptfoo
- Semantic Kernel
- Spring Modulith
1件のコメント
Thoughtworks Technology Radar, Volume 28 公開
Thoughtworks Technology Radar 第27号刊行
Thoughtworks Technology Radar 26号(39p PDF)
ThoughtWorks Technology Radar 第23号刊行
ThoughtWorks Technology Radar 第22号刊行 [32p PDF]
ThoughtWorksが6か月ごとに発行する技術ニュース - Radar Vol.21