あああ
アジャイル開発とはなにか
Agileとは、「機敏な」「俊敏な」などの意味あいをもつ言葉です。
このシステム開発における「俊敏さ」とはなにかというと、
システム開発における開発とテストの間隔のことです。
つまり、開発してテストしてというスパンを短くするために、
プロジェクトを大きなものから小さなものに分割して、迅速に組み立てていく開発方法といえます。
アジャイル開発は、「素早くシステムを作っていく開発過程」と言ってもいいでしょう。
リファクタリング
リファクタリングとは、外部からの見た目が変わらないように内部設計を変えていく方法です。
外部からの見た目が変わらないということは、使用するユーザー目線の体験は変わらないまま、整理された内部設計へと内容を変更していくことができます。
このリファクタリングはアジャイル開発でも大事なものになります。
B.ソフトウェアの保守性を高めるために,外部仕様を変更することなく,プログラムの内部構造を変更する。
C.動作するソフトウェアを迅速に開発するために,テストケースを先に設定してから,プログラムをコーディングする。
D.利用者からのフィードバックを得るために,提供予定のソフトウェアの試作品を早期に作成する。
ロックの粒度
ロックの粒度とは、データベースへのアクセスをブロックする程度になります。
ブロックというのは、複数のプログラムが同一のデータベースに同時にアクセス(トランザクション)できないようにすることです。
ロックの粒度が粗いというのは、このブロックの範囲が広いことを意味し、逆にロックの粒度が細かいとこのブロックの範囲が狭くなることを意味します。
B.データを更新するときに,粒度を大きくすると,他のトランザクションの待ちが多くなり,全体のスループットが低下する。
C.表の全データを参照するときに,粒度を大きくすると,他のトランザクションのデータ参照を妨げないようにできる。
D.粒度を大きくすると,含まれるデータ数が多くなるので,一つのトランザクションでかけるロックの個数が多くなる。
スタブとドライバ
スタブ
トップダウンテストで上位のモジュールから順にモジュールを結合してテストするときに、未だ完成していない下位のモジュールの代わりにつかわれるものをスタブといいます。
ドライバ
ボトムアップテストにおいて下位のモジュールから順に上位のモジュールを結合していくときに、未だ完成していない上位モジュールの代わりに使われるものをドライバといいます。