<?xml version="1.0" encoding="UTF-8" ?>
<rss version="0.91">
  <channel>
    <title>最強のソフトウェア開発</title>
    <description>最強のソフトウェア開発を目指した知識等を提供する</description>
    <link>https://softdev20250429.blog.shinobi.jp/</link>
    <language>ja</language>
    <copyright>Copyright (C) NINJATOOLS ALL RIGHTS RESERVED.</copyright>

    <item>
      <title>アジャイル関連の用語</title>
      <description>&lt;h3&gt;ペアプログラミング&lt;/h3&gt;一台のマシンで、２人のプログラマーが、共同でコードを作成する&lt;br /&gt;
&lt;br /&gt;
一人はプログラミングを書き、もう一人は、コードを見て、エラーを発見したり&lt;br /&gt;
&lt;br /&gt;
改善点を発見する&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h3&gt;Test Driven Development (TDD)&lt;/h3&gt;ユニットテストをパスするために、コードを書いていくやりかた&lt;br /&gt;
&lt;br /&gt;
まず、ユニットテストのコードを書き実行する。これは、プログラムが書けていないため、失敗する&lt;br /&gt;
&lt;br /&gt;
そして、ユニットテストにパスするように、コードを書き直す&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h3&gt;継続的な統合&lt;/h3&gt;&lt;br /&gt;
日に数回、プログラマはコードをチェックインし、統合する&lt;br /&gt;
&lt;br /&gt;
システムが、日に数回ビルドされる&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h3&gt;シンプルな設計&lt;/h3&gt;デザインをシンプルに保つ&lt;br /&gt;
&lt;br /&gt;
今のイテレーションで実現するストーリーに集中し&lt;br /&gt;
&lt;br /&gt;
将来のための設計はしない&lt;br /&gt;
&lt;br /&gt;
イテレーションの間にチームは、デザインを見直す&lt;br /&gt;
&lt;br /&gt;
チームは、インフラの設計やデータベースを選択する、ミドルウエアを選択することから&lt;br /&gt;
&lt;br /&gt;
始めるわけではない&lt;br /&gt;
&lt;br /&gt;
もっともシンプルな実現方法からはじめる&lt;br /&gt;
&lt;br /&gt;
インフラは、必要なストーリーが来たときに考える&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h3&gt;Refactoring&lt;/h3&gt;&lt;br /&gt;
コードは、機能を加えるごとに、あるいは、バグを直すたびに、構造が崩れる&lt;br /&gt;
&lt;br /&gt;
これをほっておくと、保守性に問題がでる&lt;br /&gt;
&lt;br /&gt;
リファクタリングは、これを防ぐ方法である&lt;br /&gt;
&lt;br /&gt;
リファクタリングは、システムの振る舞いを変更することなく&lt;br /&gt;
&lt;br /&gt;
内部の構造を改善するものである&lt;br /&gt;
&lt;br /&gt;
リファクタリングを行うことで、コードをクリーンに、シンプルに保つ&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
</description> 
      <link>https://softdev20250429.blog.shinobi.jp/Entry/56/</link> 
    </item>
    <item>
      <title>XPの流れ</title>
      <description>(1)計画ゲーム&lt;br /&gt;
&lt;br /&gt;
顧客は要求(ユースケース）を、ストーリーカードに書き出す&lt;br /&gt;
&lt;br /&gt;
開発者は、各ストーリーの優先順位づけ、コスト評価を行う&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(2)イテレーション計画&lt;br /&gt;
&lt;br /&gt;
ストーリーを具体的な開発作業に分割し、タスクを人に割り当てる&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(3)イテレーション&lt;br /&gt;
&lt;br /&gt;
テストケースの作成、コードの作成を行う&lt;br /&gt;
&lt;br /&gt;
ストーリー全体を検証し、リリースする&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-----</description> 
      <link>https://softdev20250429.blog.shinobi.jp/Entry/55/</link> 
    </item>
    <item>
      <title>総合テストの代表的な内容</title>
      <description>総合テストの代表的な内容。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;table class=&quot;table  table-hover&quot;&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;名称&lt;/th&gt;&lt;th&gt;概要&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;負荷テスト&lt;/td&gt;&lt;td&gt;短期間に重い負荷をかける&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;大容量テスト&lt;/td&gt;&lt;td&gt;大容量のデータを入力する&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;構成テスト&lt;/td&gt;&lt;td&gt;ハードウェアの構成を確認する&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;互換性テスト&lt;/td&gt;&lt;td&gt;既存の機能が正常に稼働するか&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;機密保護テスト&lt;/td&gt;&lt;td&gt;プログラムなどの機密保護に関する機能のテスト&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;記憶域テスト&lt;/td&gt;&lt;td&gt;主記憶、補助記憶に関わる要件に適合しているか&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;性能テスト&lt;/td&gt;&lt;td&gt;性能に関わる要件に適合しているか&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;信頼性テスト&lt;/td&gt;&lt;td&gt;信頼性（故障時間、エラー数の目標値）&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;境界値テスト&lt;/td&gt;&lt;td&gt;入力データの境界値&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;障害回復テスト&lt;/td&gt;&lt;td&gt;障害発生時の回復&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;保守性テスト&lt;/td&gt;&lt;td&gt;保守に関するツールのテスト&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;使用可能性テスト&lt;/td&gt;&lt;td&gt;使いやすさ&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;説明書テスト&lt;/td&gt;&lt;td&gt;説明書の内容でシステムが利用できるか&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</description> 
      <link>https://softdev20250429.blog.shinobi.jp/Entry/54/</link> 
    </item>
    <item>
      <title>ソフトウェア開発のプラクティス</title>
      <description>&lt;h2&gt;プラクティスとは&lt;/h2&gt;&lt;br /&gt;
ソフトウェア開発を、そして、製品をよりよくするための&lt;br /&gt;
&lt;br /&gt;
概念、手順、手法、ツールなどをさす。（と理解している）&lt;br /&gt;
&lt;br /&gt;
　&lt;h2&gt;いろいろな原則&lt;/h2&gt;&lt;h3&gt;(1)シンプルにする&lt;/h3&gt;&lt;br /&gt;
　　・設計、プログラム、すべてをシンプルにする。&lt;br /&gt;
&lt;br /&gt;
　　・シンプルとは、単に簡単にすることではない。&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 考えを持って、シンプルにすることである。&lt;br /&gt;
&lt;h3&gt;(2)自分が作ったものを、他人が使う、直す&lt;/h3&gt;&lt;br /&gt;
　　・他人に理解してもらわなければならない。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
</description> 
      <link>https://softdev20250429.blog.shinobi.jp/Entry/53/</link> 
    </item>
    <item>
      <title>Waterfallの基本原則</title>
      <description>Waterfallの基本原則&lt;ul&gt;&lt;li&gt;プロジェクトは、順番に実行するフェーズに分割される&lt;/li&gt;&lt;li&gt;フェーズのオーバーラップや後戻りもある程度許容される&lt;/li&gt;&lt;li&gt;計画、スケジュール、予算等に重点が置かれる&lt;/li&gt;&lt;li&gt;システムを一度に実装していく&lt;/li&gt;&lt;li&gt;ドキュメントや公式レビュにより管理される&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;
&lt;br /&gt;
</description> 
      <link>https://softdev20250429.blog.shinobi.jp/Entry/51/</link> 
    </item>
    <item>
      <title>プロトタイプ</title>
      <description>&lt;div&gt;プロトタイプ&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;次のような、イテレイティブなモデル&amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;(1)初期調査&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;--- くりかえし ---&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;(2)要件定義&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;(3)システムデザイン&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;(4)コーディング、テスト&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;--- くりかえし ここまで ---&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;基本的な考え方&amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;・小さく分割することで、リスクを削減することを狙う&amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;・小さく分割して、開発中の変更を容易にする&amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;・開発プロセス全般へユーザを巻き込む&amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;&lt;/div&gt;</description> 
      <link>https://softdev20250429.blog.shinobi.jp/Entry/50/</link> 
    </item>
    <item>
      <title>UI設計のチェックリスト</title>
      <description>・用語は、統一されているか&lt;br /&gt;
&lt;br /&gt;
・アイコンは、統一されているか&lt;br /&gt;
&lt;br /&gt;
・アイコンに、テキストラベルは、ついているか&lt;br /&gt;
&lt;br /&gt;
　アイコンだけでは、わからない場合がある&lt;br /&gt;
&lt;br /&gt;
・ボタンは、クリックしやすい大きさか&lt;br /&gt;
&lt;br /&gt;
・誤った操作を防ぐために、ボタンが並んでいる場合には、ボタンの間隔は、適切か&lt;br /&gt;
&lt;br /&gt;
・パスワードの表示は、*としているか&lt;br /&gt;
&lt;br /&gt;
・下部（フッター）に、メニュはあるか&lt;br /&gt;
&lt;br /&gt;
・デフォルトは、適切な所へ、適切な値が、設定されているか&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
</description> 
      <link>https://softdev20250429.blog.shinobi.jp/Entry/47/</link> 
    </item>
    <item>
      <title>Oracle Cloudの用語</title>
      <description>〇 テナント&lt;br /&gt;
&lt;br /&gt;
契約の単位&lt;br /&gt;
&lt;br /&gt;
〇 リージョン&lt;br /&gt;
&lt;br /&gt;
データセンター群&lt;br /&gt;
&lt;br /&gt;
〇&amp;nbsp;Availability Domain(AD)&lt;br /&gt;
&lt;br /&gt;
リージョンを構成する個々のデータセンター。&lt;br /&gt;
&lt;br /&gt;
リージョンは、基本的には、3つのADで構成。&lt;br /&gt;
&lt;br /&gt;
〇 Fautl Domain(FD)&lt;br /&gt;
&lt;br /&gt;
ADは、3つのFDと呼ばれる単位に分割される。&lt;br /&gt;
&lt;br /&gt;
各FDは、メンテナンスが異なるスケジュールで行われるため、&lt;br /&gt;
&lt;br /&gt;
計画停止を避けることができる。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
</description> 
      <link>https://softdev20250429.blog.shinobi.jp/Entry/43/</link> 
    </item>
    <item>
      <title>アルゴリズム ソートの計算量</title>
      <description>&lt;h3&gt;バブルソート　&lt;/h3&gt;　O(n&lt;sup&gt;2&lt;/sup&gt;)&lt;br /&gt;
&lt;h3&gt;クイックソート　&lt;/h3&gt;　平均 O(nlog n)、&amp;nbsp; &amp;nbsp;最悪 O(n&lt;sup&gt;2&lt;/sup&gt;)&lt;br /&gt;
&lt;h3&gt;マージソート、ヒープソート&lt;/h3&gt;　最悪 O(nlog n)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;</description> 
      <link>https://softdev20250429.blog.shinobi.jp/Entry/41/</link> 
    </item>
    <item>
      <title>要求工学の対象</title>
      <description>要求工学は、次の５つのステップを対象とする。&lt;br /&gt;
&lt;br /&gt;
〇&amp;nbsp;要求の獲得&lt;br /&gt;
&lt;br /&gt;
〇&amp;nbsp;要求の分析と調整&lt;br /&gt;
&lt;br /&gt;
〇&amp;nbsp;要求の仕様化&lt;br /&gt;
&lt;br /&gt;
〇&amp;nbsp;&amp;nbsp;要求の検証&lt;br /&gt;
&lt;br /&gt;
〇&amp;nbsp;&amp;nbsp;要求のマネジメント&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
</description> 
      <link>https://softdev20250429.blog.shinobi.jp/Entry/38/</link> 
    </item>

  </channel>
</rss>