Sort by - linked count
-
プロンプトエンジニアリングLLMに対して入力(プロンプト)を調整し必要なタスクを実行するようにモデルを条件付けする取り組み
-
モニタリング既知の障害状態に対してメトリクスを設定し、アラートを飛ばすようなリアクティブ(反応的)なシステム
-
ユビキタス言語#Documentation #Software Design DDDにおいて、ドメインエキスパートと開発者、またその周辺のステークホルダーが共有する言語 以下、原著から抽出 モデルを言語の骨格として使用すること。チーム内のすべてのコミュニケーションとコードにおいて、その言語を厳格に用いることを、チームに約束させること。図やドキュメント、そして何より会話の中では同一の言語を使用すること。 ドメインエキスパートは、ドメインについての理解を伝えるには使いにくかったり不適切だったりする用語や構造に異議を唱えるべきであり、開発者は、設計を妨害することになるあいまいさや不整合に目を光らせるべきである。 Eric Evans | エリック・エヴァンスのドメイン駆動設計 | P26-27 また同一の単語でも異なるユビキタス言語として定義するケースもあり、境界づけられたコンテキストを明示にした上で、どのコンテキストで用いる言語なのかを決定する
-
RESTRepresentational State Transfer #API Architecture HTTPを基礎とするアーキテクチャ上の制約、定義 Architectural Styles and the Design of Network-based Software ArchitecturesにRESTfulとみなされるための定義が書かれている 第一にサービス提供者と利用者のやり取りがモデル化されていること、が定義となる
-
APIゲートウェイ#API Architecture #Network 外部トラフィックに対してリバースプロキシ・ロードバランシングが持つようなネットワークのルーティング・セキュリティと可用性の向上に加え、以下のような機能横断的な要件を扱う役割 認証 認可 レートリミット リトライ サーキットブレーカー etc.
-
技術的負債Technical Debt
-
市谷 聡啓
-
TypeScript#Programming #JavaScript
-
Gherkin#Testing #Documentation Chris Mattsによって考えられた、以下のフォーマットでテストシナリオを記述する記法 Scenario: Breaker joins a game Given the Maker has started a game with the word "silky" When the Breaker joins the Maker's game Then the Breaker must guess a word with 5 characters https://cucumber.io/docs/gherkin/reference
-
自己組織化#Team Organization チームまたは個人が外部に依存せず自律して意思決定をし行動できる度合い
-
JWTJSON Web Token #Security #Authentication トークン自体の情報(例: 期限)を自身で構造化して保持することで、共有データベースへ保持・検索をする必要がないトークン。トークンが自身の情報を持つことで外部からのトークン取り消しのような操作はできない JWTは.によって3つのセクションの文字列に分割できる(署名がない場合3つ目のセクションは空) それぞれのセクションの文字列は構造化されたJSONをBase64URLエンコードした結果となっている ヘッダー 1つ目のセクションはヘッダーとして以下のような構造を持つ { "typ": "JWT", "alg": "RSA256" } algで指定する署名アルゴリズムは3つ目の署名セクションの解読にて用いる ペイロード 2つ目のセクションはトークン自体のペイロードになる。ペイロードの中身はJSONであれば自由だが、JWTクレームと呼ばれる役割が明示・明示された項目群が存在する。 例として iss(発行者)、sub(対象者)、exp(有効期限)などがある 署名 3つ目のセクションはHMACやRSAのような署名アルゴリズムを使った結果が保持される RFC 7519 - JSON Web Token (JWT)
-
スプリント#Agile 主にスクラムにおいて扱われる、タイムボックス化されたある期間のこと 1~2週間が多く、長くても1ヶ月にするにする
-
Kubernetes/Nodes
-
Go#Programming
-
プラットフォームチーム#Team Organization Team Topologiesにて紹介される4つのチームタイプの内の1つ 機能横断的なインフラやツール、ライブラリ等をを実装しストリームアラインドチームにAPIを提供する
-
ユーザーストーリーマッピング#Agile #Documentation ユーザーストーリーを洗い出すためのプラクティス 優先度付けや段階的なリリースのスコープ整理を行う Blog / Agile Studio
-
E2EテストEnd to End Testing #Testing 組織のドメイン外にある外部システムを除いて実際に全てのサービスを動作させUIレベルで行うテスト 一般的な形式として1つまたは複数のユーザアクションに基づくシナリオテストがあり、テストコストが増えすぎないよう主要なシナリオにフォーカスして行う
-
リバースプロキシ#API Architecture #Network 外部トラフィックに対して単一のサーバーへルーティングを行い、サーバーの保護や負荷分散を行う役割
-
ストリームアラインドチーム#Continuous Delivery #Team Organization Team Topologiesにおける4つのチームタイプの中で中心となるチーム ビジネス価値を提供するフロー(ストリーム)に従って、クロスファンクショナルチームを形成する 要求の探索から本番環境の運用までの全ての能力を備え、他のチームを待たずにデリバリーができる
-
TCPTransmission Control Protocol #Network L4にあたる通信プロトコル エンドデバイス間でコネクションを確立することで信頼性を向上させる データ送信は複数のパケットをシーケンス番号とともに送信し、パケットロスがないよう再送制御がされる
-
逆コンウェイ戦略#Software Design #Team Organization コンウェイの法則に対して、開発チームの組織構造を変更して、望ましいソフトウェア設計を目指すという考え方 マイクロサービスが注目されるようになった2015年頃にコンウェイの法則が再評価され生まれた
-
ユーザーストーリー#Agile Whoとして、Whatをしたい。なぜならWhyだからだ のように Who What Why を含む形で書かれる、ユーザーにとっての価値を説明する文 INVESTであるストーリーが良いとされる
-
リレーショナルデータベース#Data Store
-
風間 裕也
-
和智 右桂
-
RBACRole-based access control #Security #Authorization ロールごとに許可を定義する認可モデル これによりユーザーの部署異動等の際に即座に権限を変更できる
-
サイドカー#Cloud Native 1つのPod内で複数のコンテナを定義し、メインアプリケーションコンテナとそれを拡張するSidecarコンテナのような関係性を持たせるパターン
-
Swarming#Agile #Team Organization 重要な領域または主要な活動に焦点を置いてチームのエネルギーを集中させる。バックログに課題を積むのは最後の手段である。 障害にチームメンバー複数人で集中して対処するイメージを日々のスプリントにも適用していく。
-
クロスファンクショナルチーム#Team Organization 職能横断型で自己組織化されたチーム
-
ユニットテスト#Testing
-
DDD/エンティティ#Software Design DDDにおいて同一性を持つオブジェクトの呼び名 原文は以下 オブジェクトの中には、主要な定義が属性によってなされないものもある。そういうオブジェクトは同一性のつながりを表現するのであり、その同一性は、時間が経っても、異なるかたちで表現されても変わらない。そういうオブジェクトは属性が異なっていても、他のオブジェクトと一致しなければならないことがある。また、あるオブジェクトは、同じ属性を持っていたとしても、他のオブジェクトと区別しなければならない。同一性を取り違えるとデータの破損につながりかねない。 Eric Evans | エリック・エヴァンスのドメイン駆動設計 | P89
-
DDD/集約#Software Design DDDにおいて不変条件を適用するエンティティや値オブジェクトのようなオブジェクトのグループ単位 原文は以下 エンティティと値オブジェクトを集約の中にまとめ、各集約の周囲に境界を定義すること。各集約に対してルートとなるエンティティを1つ選び、境界の内部に存在するオブジェクトへのアクセスはそのルートを経由して制御すること。外部のオブジェクトが参照を保持できるのは、ルートのみとすること。内部のメンバに対する一時的な参照を渡してよいのは、単一の操作で使用する時だけだ。ルートがアクセスを制御するので、内部が知らないうちに変更されることはなくなる。この取り決めにより、どんな状態変化においても、集約内にあるオブジェクトと集約全体に対して、不変条件をすべて強制することが現実的になる。 Eric Evans | エリック・エヴァンスのドメイン駆動設計 | P127
-
JSON#Programming
-
Kubernetes/CustomResourceDefinition
-
オブジェクト指向プログラミングObject Oriented Programming #Software Design #Programming
-
Markdown#Documentation
-
認知負荷個人やチームの認知容量に対する負荷のこと 認知負荷は3つに分類することができる 課題内在性認知負荷 問題領域のタスクの難易度に関する負荷、研修・技術選定・ペアプログラミング等で解消する 課題外在性認知負荷 タスクを実施する環境に関する負荷、CIによる自動化等で解消する 学習関連負荷 知識の構築に関する負荷、学習によって増やすべき負荷とされる 情報過多にご用心!生産性の低下を招く「認知的過負荷」への対処法 ── 海の向こうからオピニオン その70 (1/2) - チームの教科書|アトラシアン株式会社
-
kube-scheduler
-
Istio
-
Google CloudGoogleが提供するクラウドコンピューティングサービスの名称 その他ソフトウェア開発に関するソリューションをドキュメンテーション等で提供する場でもある
-
Agile Testing#Agile #DevOps #Testing
-
SRESite Reliability Engineering #Reliability
-
SLOService level objectives #Reliability サービスレベル目標の略。 サービスレベル指標(Service level indicators = SLI)に対してターゲットとする値または範囲を目標とする。 サービスレベル指標に用いられるのは主に以下のようなもの 可用性 リクエストレイテンシ エラー率 システムスループット サービスレベルアグリーメント(Service level agreement = SLA)は、SLOを守るまたは守れないケースに関する規定をユーザーと同意するもの。 SLO, SLI, SLAは定義が曖昧になりやすいので注意が必要
-
カナリアリリースCanary Release #Continuous Delivery リリース時に旧環境と新環境を同時に稼働させ、一部のユーザーに絞って新環境を限定公開し徐々に移行していくことでパフォーマンス劣化等の問題がないかをテストするリリース手法 ブルーグリーン戦略との違いはトラフィックを徐々に切り替える点 Canary Release
-
RPCRemote Procedure Call #Network #API Architecture リモート上のリクエスト発行をプログラミング言語の関数呼び出しのように利用できるよう抽象化したもの。 ただし実際に関数呼び出しと同等に利用できるわけではなく、ネットワーク上の様々な不測の事態を考慮する必要がある。
-
実例マッピングExample Mapping #Documentation Agile Testing、BDDで紹介されるプラクティス。Matt Wynneによって考えられた マッピングする付箋の種類には Story Rule Example Question の4種があり、あるStoryにおけるExample(具体例)を軸に、定められるRuleと残論点としてのQuestionをマッピングする
-
アジャイルソフトウェア開発宣言#Agile Agile Manifest(ja) プロセスやツールよりも個人と対話を、 包括的なドキュメントよりも動くソフトウェアを、 契約交渉よりも顧客との協調を、 計画に従うことよりも変化への対応を、 Kent Beck Mike Beedle Arie van Bennekum Alistair Cockburn Ward Cunningham Martin Fowler James Grenning Jim Highsmith Andrew Hunt Ron Jeffries Jon Kern Brian Marick Robert C. Martin Steve Mellor Ken Schwaber Jeff Sutherland Dave Thomas
-
フィーチャーフラグ#Continuous Delivery ソフトウェアの機能のON/OFFを管理するフラグ、機能フラグと呼ばれることもある 簡易的な例だと環境変数を用いて管理される
-
レートリミット#Security #API Architecture 以下のような目的でAPIの使用回数を制限する、制限を超過した時はHTTPの場合一般に429エラーを返す処理 STRIDEにあるようなDenial of Service(サービス拒否)からアプリケーションを保護する カスケード障害の可能性を制限する リソースの使用量を測定し従量課金に利用できる レートリミットの実装アルゴリズムには以下のようなものがある 固定ウインドウ(Fixed window) 固定期間内の制限 スライディングウインドウ(Sliding window) 直近の期間内の制限 トークンバケット方式(Token bucket) 総リクエスト数(トークンのバケツ)を定義しリクエストごとにトークンが利用される。バケツは定期的に充填される リーキーバケット方式(Leaky bucket) リクエストが処理される速度は固定で、バケツから溢れ出るリクエストを漏れ(リーキー)として扱う APIゲートウェイを利用している場合、ゲートウェイに配置するとよい
-
サーキットブレーカー#Reliability アプリケーションが失敗する可能性のある操作を繰り返し試行するのを防ぐ信頼性パターン サーキット ブレーカー パターン - Azure Architecture Center