marunomaruno-memo

marunomaruno-memo

ソフトウェア開発201の鉄則

2008年04月20日 | アーキテクチャー
ソフトウェア開発201の鉄則
アラン M. デービス 著、松原友夫 訳 
四六判
240ページ
価格 : 1,631円(税込み)
ISBN : 4-8222-9002-6
発行元 : 日経BP社
発行日 : 1996/03/25

http://ec.nikkeibp.co.jp/item/books/140263.html


第1章 序章

第2章 一般原理
原理1 品質第一
原理2 品質の定義は 見る人によって異なる
原理3  生産性と品質は不可分である
原理4  高品質のソフトウェアは不可分である
原理5 品質を後からとってつけるようなことはするな
原理6  信頼性が低いソフトウェアは性能が悪いソフトウェアより手に負えない
原理7  製品のプロトタイプを早めに顧客に納入せよ
原理8  顧客やユーザーとよく話し合え
原理9  開発者と顧客の見返りを合わせよ
原理10  1つは放棄するつもりでいよ
原理11  適切な型のプロトタイプを開発せよ
原理12  プロトタイプに適切な機能を組み込め
原理13 使い捨て型のプロトタイプは手早く作れ
原理14  システムを斬新的に成長させるように計画せよ
原理15  見れば見るほどもっとよいものが欲しくなる
原理16  開発期間中の変更は避けられない
原理17  可能なら開発するより購入せよ
原理18  ユーザー用のマニュアルが短くて済むようにソフトウェアを作成せよ
原理19  どんな複雑な問題にも解決策はある、と思うのは誤り
原理20  仮定を記録せよ
原理21  異なるフェーズには異なる言語を
原理22  ツールを使う前に技法を学べ
原理23  ツールを使え, ただし現実的に
原理24  ソフトウェア・ツールを優れた技術者に与えよ
原理25  CASEツールは高価である
原理26 「いつ使うかを知る」ことはどう使うかを知ることと同じくらい重要だ
原理27  目標を達成したらそこで止めよ
原理28  形式的手法を知れ
原理29  組織の評価と個人の評価を合わせよ
原理30  レミング(一時の流行)には心して従え
原理31  新技術を無視するな
原理32  文書化規格を使え
原理33  どの文書にも用語集が必要だ
原理34  どの文書にも索引が必要だ
原理35  同じ概念には同じ名称を使え
原理36  研究が終わってからの技術移転はうまくいかない
原理37  責任をとれ

第3章 要求分析の原理
原理38  いいかげんな要求仕様からはいいかげんなコスト見積もりしかできない
原理39  要求仕様を書く前に問題を特定せよ
原理40  要求について今できることは何でもやれ
原理41  今すぐ要求仕様書の誤りを直せ
原理42  プロトタイプはユーザー・インターフェース選択のリスクを減らす
原理43  なぜこの要求項目が含まれたかを記録せよ
原理44  サブセットを識別せよ
原理45  要求を審査せよ
原理46  要求分析段階で設計するな
原理47  正しい技法を使え
原理48  要求を複数の視点から見よ
原理49  要求仕様書を賢く編成せよ
原理50  要求に優先順位をつけよ
原理51  簡明に書け
原理52  どの要求項目にも別々に番号を付けよ
原理53  曖昧な要求記述を減らせ
原理54  自然言語を増やし、決して置き換えるな
原理55  より形式的なモデルを作る前に自然言語で書け
原理56  要求仕様書を常に読みやすくしておけ
原理57  信頼性について特に規定せよ
原理58  環境が「受け入れ可能な」条件を満たさない場合について規定せよ
原理59  未決項目は自己消滅させる注記と共に記述せよ
原理60  要求仕様書をデーターベースに格納せよ

第4章 設計の原理
原理61  要求仕様から設計への移行は容易ではない
原理62  設計から要求項目を追跡せよ
原理63  代替案を評価せよ
原理64  文書のない設計は設計とは言わない
原理65  カプセル化せよ
原理66  同じものを何度も発明するな
原理67  単純に作れ
原理68  特殊なケースをあまりたくさん作るな
原理69  知的な距離を最小にせよ
原理70  設計を知的コントロールの下に置け
原理71  概念の完結性を維持せよ
原理72  概念上の誤りは文脈上の誤りよりも重大である
原理73  カップリングとコヒージョンを使え
原理74  変更が容易なように設計せよ
原理75  保守が容易なように設計せよ
原理76  エラー修正が容易なように設計せよ
原理77  ソフトウェアに普遍性を組み込め
原理78  ソフトウェアに柔軟性を組み込め
原理79  効率のよいアルゴリズムを用いよ
原理80  モジュール仕様書にはユーザーが必要な情報はすべて書き、それ以外は書くな
原理81  設計は多次元的だ
原理82  優れた設計は優れた設計者が創り出す
原理83  アプリケーションを知れ
原理84  巨額の投資をしないでも再利用ができる
原理85  「ガーベッジ・イン、ガーベッジ・アウト」は正しくない
原理86  ソフトウェア信頼性は冗長性を与えることで達成できる

第5章 コーディングの原理
原理87  トリックを使うな
原理88  グローバル変数を使うな
原理89  トップダウンで読めるように書け
原理90  副作用を避けよ
原理91  意味のある名称を使え
原理92  人のことを第一に考えてプログラムを書け
原理93  最適なデーター構造を使え
原理94  それを速くする前に正しいものにせよ
原理95  コードを仕上げる前にコメントを加えよ
原理96  コーディングを始める前に文書化せよ
原理97  すべてのコンポーネントを机上デバッグせよ
原理98  コードを細かく審査せよ
原理99  構造化機能のない言語でも使うことができる
原理100  構造化されたコードは必ずしもよいコードではない
原理101  深い入れ子を作ってはいけない
原理102  適切な言語を使用せよ
原理103  プログラミング言語を言い訳にしてはならない
原理104  言語についての知識はそれほど重要ではない
原理105  プログラムの体裁を整えよ
原理106  すぐコーディングを始めるな

第6章 テスティングの原理
原理107  テスト項目を要求項目と関係づけよ
原理108  テストを行なう時期よりずっと前にテストを計画せよ
原理109  自分のソフトウェアを自分でテストするな
原理110  自分のソフトウェアのテスト計画を自分で作成するな
原理111  テスティングは欠陥の存在をあらわにする
原理112  エラーだらけのソフトウェアは価値がないことを保証するが、かといってエラーがないこと
原理113  エラーを見つけてこそテストがうまくいったと言える
原理114  半分のエラーは15%のモジュールで発見される
原理115  ブラックボックス及びホワイトボックス両方のテスティングを用いよ
原理116  テストケースには期待される結果を含めよ
原理117  無効な入力をテストせよ
原理118  常に過負荷状態のテストをせよ
原理119  宇宙爆発起源説は当てはまらない
原理120  McCabeの複雑性尺度を使え
原理121  効果的なテスト完了尺度を使え
原理122  テスト・カバレッジを効果的に達成せよ
原理123  単体テスティングが済む前に統合するな
原理124  ソフトウェアに仕掛けを組み込め
原理125  エラーの原因を分析せよ
原理126  エラーを個人のもにするな

第7章 管理の問題
原理127  優れた管理は優れた技術より重要だ。
原理128  適切な解決策を用いよ
原理129  読んだことのすべてを信じるな
原理130  顧客の優先順位を理解せよ
原理131  人材こそ成功の鍵だ
原理132  少数精鋭はスキルの低い人々による人海戦術よりずっとよい  
原理133  部下の話をよく聞け
原理134  部下を信頼せよ
原理135  素晴らしい仕事を期待せよ
原理136  うまく話し合う技術は必須である
原理137  水運びの仕事をせよ
原理138  人は思いもよらない動機で仕事をしている
原理139  オフィスを静かに保て
原理140  人員と時間は交換できない
原理141  ソフトウェア技術者の能力差は大きい
原理142  望んだ目標に最適化できる
原理143  押し付けがましいデータの集め方をするな
原理144  1台あたりのコストは役に立たない
原理145  生産性を計測する完全な方法はない
原理146  特別誂えのコスト見積もりモデルを作れ
原理147  非現実的な完成予定日を設定するな
原理148  不可能なことをするな
原理149  数える前に知れ
原理150  生産性データを収集せよ
原理151  チ ームの生産性を忘れるな
原理152  人月あたり行数は言語に関係しない
原理153  日程を信じよ
原理154  性格に積み上げられたコスト見積もりでも正しいとは限らない
原理155  日程を定期的に見直せ
原理156  少しくらいの過小見積もりは常に悪いとは限らない
原理157  適切な資源を割り当てよ
原理158  プロジェクトを詳細に計画せよ
原理159  計画を常に更新せよ
原理160  増幅する波のような計画変更の繰り返しをするな
原理161  上位10のリスク項目を知れ
原理162  直面するリスクを理解せよ
原理163  適切なプロセス・モデルを使え
原理164  手法はあなたを救いはしない
原理165  奇蹟的な生産性の向上には秘密はない
原理166  進歩が何を意味するかを知れ
原理167  計画とのずれを管理せよ
原理168  ハードウェアに過大な負荷をかけるな
原理169  ハードウェアの進化には楽天的であれ
原理170  ソフトウェアの進化には悲観的であれ
原理171  大混乱など起こるはずがないという考えがしばしば大混乱をもたらす
原理172  プロジェクトの事後検討会(または反省会)を実施せよ

第8章 製品保証の原理
原理173  製品保証は贅沢ではない
原理174  ソフトウェア構成管理手順を早期に確立せよ
原理175  SCMをソフトウェア・プロセスに適応させよ
原理176  SCMをプロジェクト管理を独立になるように組織化せよ
原理177  開発と製品保証の仕事を回転させよ
原理178  すべての中間成果物に名称とバージョン番号を与えよ
原理179  基準品目を制御せよ
原理180  すべてを保存せよ
原理181  すべての変更を追跡し続けよ
原理182  変更制御を抜かしてはいけない
原理183  変更要求にランクをつけ日程を立てよ
原理184  大規模な開発には検証と妥当性の確認(V&V)を用いよ

第9章 進化の原理
原理185  ソフトウェアは変化し続ける
原理186  ソフトウェアのエントロピーは増加する
原理187  壊れていないのなら直すな
原理188  現象を直すのではなく問題を直せ
原理189  最初に要求仕様を変更せよ
原理190  リリース前のエラーはリリース後のエラーを生む
原理191  プログラムが古ければ古いほど保守するのが難しくなる
原理192  言語は保守性に影響を与える
原理193  ときには始めからやり直す方がいい場合がある
原理194  最悪のコンポーネントを最初に作り直せ
原理195  保守は開発よりも多くのエラーを作り込む
原理196  変更した後には必ず回帰テストを行なえ
原理197  この変更は簡単だという信念が正しくない変更をもたらすことが多い
原理198  構造化されていないコードを構造化してもそれが改善されるとは限らない
原理199  最適化する前にプロファイラーを使え
原理200  親しさを維持せよ
原理201  システムの存在そのものが進化を促進する


Webサービス入門―Javaを使って覚える簡単SOAP、WSDL、UDDIプログラミング

2007年03月31日 | アーキテクチャー
書名:Webサービス入門 - Javaを使って覚える簡単SOAP,WSDL,UDDIプログラミング
著者:グラハム・グラス
翻訳:株式会社カサレアル 尾形 隆彦
監訳:株式会社タスカ 木村 和之+株式会社カサレアル 石井 真
版型:B5変
頁数:290ページ
付録:CD-ROM1枚付 
ISBNコード:4-89471-590-2
価格:3,200円+税
発行:株式会社ピアソン・エデュケーション

第1章 Webサービス
第2章 Webサービスを動かす
第3章 Web Services Description Language(WSDL)
第4章 ネイティブなデータ構造とXMLをマッピングする
第5章 セキュリテイ
第6章 Universal Description, Discovery and Integration(UDDI)
第7章 J2EE Webサービス
第8章  .NET Webサービス
第9章 マルチプラットフォーム間の相互運用性
第10章 P2PとWebサービスの未来
付 録 GLUEと例題をインストールする

Webサービス完全構築ガイド

2007年03月31日 | アーキテクチャー
Webサービス完全構築ガイド
http://bpstore.nikkeibp.co.jp/item/main/148222811670.html
■ 嶋本正、柿木彰、西本進、野間克司、野上忍、亀倉龍、松本健、福原信貴 著
■ B5変型判
■ 304ページ
■ 定価 3,360円(税込み)
■ ISBN 4-8222-8116-7
■ 日経BP社
■ 2001年12月25日発行

第1章 なぜ今、Webサービスなのか

 1.1 Webサービスとは
  ■Webサービスとは
  ■Webサービスの具体例  
  ■WebサービスとWebアプリケーション
  ■Webサービスを支える技術
  ■Webサービスが広げるBtoBマーケット

 1.2 Webサービスの仕組み
  ■Webサービスに必要な3つの役割
  ■Webサービスの電話帳:UDDI
  ■サービスを利用するためのインタフェース情報:WSDL
  ■企業間でのプログラム同士の連携:SOAP 
  ■Webサービスでのデータ形式:XML

 1.3 Webサービスがもたらすこと
  ■Webサービスが変える企業の情報システム 
  ■ポータル機能(Webアグリゲーション)の強化  
  ■e-マーケットプレイスの拡大
  ■ダイナミックなアウトソースの促進
 <Web Focus> アカウント・アグリゲーション・サービス

 1.4 Webサービス導入パターン
  ■Webサービスの5つのパターン
  ■e-マーケットプレイスを活用するための導入(BtoB)
  ■サービス利用企業と提供企業間を接続するための導入(BtoB)
  ■企業間データ交換への導入(BtoB)
  ■BtoCマーケット向けサービスへの導入
  ■イントラネットへの導入 
 <Web Focus> e-マーケットプレイスとは 

 第2章 Webサービスの要素技術

 2.1 Webサービスのアーキテクチャ
  ■Webサービスの基本概念
  ■Webサービスを利用できるようになるまで

 2.2 Webサービスの基礎をなすXML
  ■XMLとは 
  ■XMLの構造
  ■XML文書
  ■整形式XML文書と検証済みXML文書
  ■XMLとスタイルシート
  ■DOMとSAX 
  ■XML名前空間(XML Namespace)
  ■XMLスキーマ
  ■なぜXMLベースなのか
 <Web Focus> EDIにXMLを適用する

 2.3 Webサービスを実現する3つの中核技術①:SOAP
  ■SOAP(Simple Object Access Protocol)とは
  ■SOAPメッセージの構造(エンベローブ)
  ■SOAPメッセージの構造
  ■SOAPで型を表現する
  ■SOAPが利用できる通信プロトコル
  ■SOAPの現状

 2.4 Webサービスを実現する3つの中核技術②:UDDI
  ■UDDI(Universal Description, Discovery, and Integration)とは
  ■UDDIレジストリのデータ構造
  ■UDDI プログラマAPI
  ■UDDIの現状

 2.5 Webサービスを実現する3つの中核技術③:WSDL
  ■WSDL(Web Service Description Language)とは
  ■WSDLの構造
  ■WSDLの現状

2.6 Webサービスに対するベンダーの取り組み
  ■Webサービスをめぐる2大陣営の取り組み
  ■マイクロソフト
  ■IBM
  ■サン・マイクロシステムズ
  ■BEA
  ■その他の製品
<Web Focus> XHTML(The Extensible Hyper Text Markup Language)

 第3章 企業におけるWebサービスの活用:「Web商事」の事例

 3.1 「Web商事」の新システム構想
  ■「Web商事」のシステムの課題
  ■「Web商事」の新受発注システム構想
  ■「Web商事」におけるe-マーケットプレイスの活用
  ■新受発注システム(e-naSAKE)の全体構成

 3.2 販売(受注)システムの概要
  ■システムの機能
  ■システムの構成

 3.3 仕入(発注)システムの概要
  ■システムの機能
  ■システムの構成

 3.4 システム化要件①:イントラネット(営業所)での受注

 3.5 システム化要件②:インターネットでの受発注
  ■インターネットからの受注
  ■インターネットでの発注

 3.6 システム化要件③:EDI経由での受発注
  ■EDI経由での受注
  ■EDI経由での発注

 3.7 システム化要件④:e-マーケットプレイス経由での受注

 3.8 システム化要件⑤:e-マーケットプレイス経由での発注

 3.9 新受発注システムにおけるWebサービスの活用

 第4章 Webサービスの設計および実装

4.1 Webサービスの提供者と利用者
  ■Web商事の事例におけるWebサービスの利用
<Web Focus> Webサービス・リクエスタ

4.2 e-マーケットプレイス経由での受注(Webサービスの提供)
  ■処理形態の概要
  ■留意点
  ■実現方式

4.3 e-マーケットプレイス経由での発注(Webサービスの利用)
  ■処理形態の概要
  ■留意点
  ■実現方式

4.4 Webサービスを利用するたの実装:クライアント側の作成法
  ■WebサービスはSOAPメッセージを介したC/Sシステム
  ■Webサービスのクライアント作成の手順
  ■WSDLがない場合 手順①:Webサービスの仕様を知る
  ■WSDLがない場合 手順②:SOAP通信用オブジェクトを生成する
  ■WSDLがない場合 手順③:SOAPオブジェクトを呼び出す 
           クライアント・アプリケーションを作成する
  ■WSDLがある場合

 4.5 Webサービスを提供するための実装:サーバー側の作成法
  ■Webサービスのサーバー作成の手順
  ■手順①:インタフェースの決定とWSDLの作成
  ■手順②:ビジネスロジック部分のコンポーネントの作成
  ■手順③:Webサービス用のインタフェースとなるコンポーネントの作成
  ■手順④:サーバー・アプリケーションの配置
  ■手順⑤:WSDLの公開、UDDIへの登録
<Web Focus> UDDIへのWebサービスの登録と公開
<Web Focus> UDDI管理者

 4.6 その他の処理形態におけるWebサービス技術が適用と実現方式
  ■システム化要件①:イントラネット(営業所)での受注
  ■システム化要件②:インターネットでの受発注
  ■システム化要件③:EDI経由での受発注
<Web Focus> B2Bサーバー(XMLデータ交換サーバー)

 第5章 Webサービスのインフラの設計

 5.1 Webシステムとは何か
  ■Webシステムの構成要素
  ■C/Sシステムとの違い
  ■Webシステム設計上のポイント
  ■Webアプリケーション・サーバーの役割

 5.2 方式設計とは
  ■方式設計で検討すべき6項目(インフラ要件の抽出)
  ■Webシステムでの方式設計(インフラパターン)
 <Web Focus> MVCモデル

 5.3 方式設計①:処理/機能の実現方法
  ■セッション管理
  ■クライアントの操作性
  ■C/Sシステム同等レベルの帳票印刷の実現
  ■周辺機器とWebブラウザの連携

 5.4 方式設計②:性能
  ■サーバー:多重化、負荷分散
  ■サーバー:機能分散
  ■ネットワーク:トラフィック削減
 <Web Focus> 負荷分散装置(ロードバランサ)とは

 5.5 方式設計③:拡張性
  ■性能:サーバー
  ■性能:ネットワーク
  ■機能:多チャンネル対応
  ■機能:他システム連携
 <Web Focus> トランスコーディング製品

 5.6 方式設計④:信頼性
  ■セッション・クラスタリング

 5.7 方式設計⑤:接続方式
  ■クライアント/サーバー間の接続
  ■サーバー/サーバー間の接続

 5.8 方式設計⑥:セキュリティ
  ■クライアント/サーバー間の接続
 <Web Focus> JCA(J2EE Connector Architecture)

第6章 Webサービスの今後の動向

 6.1 Webサービス技術の動向
  ■Webサービスの課題
  ■注目される技術動向
 <Web Focus> XML signature(XML署名)とは
 <Web Focus> XML encryption(XML暗号化)とは
 <Web Focus> WSFL(Web Service Flow Language)とは

 6.2 Webサービス関連主要ベンダーの今後の動向
  ■マイクロソフト
  ■IBM
  ■サン・マイクロシステムズ
  ■BEA

 6.3 Webサービスを活用した企業システムの動向
 <Web Focus> HTTPR(Reliable HTTP)とは

ソフトウェア アーキテクチャ-ソフトウェア開発のためのパターン体系-

2007年01月23日 | アーキテクチャー
ソフトウェア アーキテクチャ
 --ソフトウェア開発のためのパターン体系--

原書
Pattern-Oriented Software Architecture: A System of Patterns
http://www.kindaikagaku.co.jp/bookdata/ISBN4-7649-0283-4.htm
著者
F.ブッシュマン・R.ムニエ・H.ローネルト・P.ゾンメルラード・M.スタル

訳者
金澤 典子・水野 貴之・桜井 麻里・関 富登志・千葉 寛之
B5変型
480頁
定価 4,830円 (本体 4,600円+税5%)
ISBN4-7649-0283-4


アーキテクチャパターン

2007年01月20日 | アーキテクチャー
[PDF] POSAアーキテクチャパターン一覧
http://www.objectclub.jp/technicaldoc/object-orientation/pdf/chapter-3.pdf

パターンウィーバー
http://pw.tech-arts.co.jp/download/model_library.html

[PDF] ソフトウェアアーキテクチャ論 Software Architecture
http://ochimizu-www.jaist.ac.jp/i435/note/arch07.pdf

[PDF] J2EEのパターンファイルタイプ
http://patterns-wg.fuka.info.waseda.ac.jp/study/14th-yamano.pdf

[PDF] アナパタ再入門
http://patterns-wg.fuka.info.waseda.ac.jp/study/13th-kodama.pdf

Design Patterns
http://homepage3.nifty.com/~masumoto/misc/pattern/index.html

仕様モデル
http://www.metabolics.co.jp/OOTechnology/OOPA/embedded1/specification.html

よくわかるソフトウエア・パターン
http://itpro.nikkeibp.co.jp/article/COLUMN/20061106/252691/?ST=develop&P=2



プロセスモデル

2007年01月19日 | アーキテクチャー
プロセスモデル
http://www.ics.kagoshima-u.ac.jp/edu/SoftwareEngineering/process-model.html

ソフトウェア開発工程
http://ja.wikipedia.org/wiki/%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2%E9%96%8B%E7%99%BA%E5%B7%A5%E7%A8%8B

SPI Japan 2006 - ソフトウェアプロセス改善カンファレンス2006 -
「今、現場が求めるプロセス改善!」
http://www.jaspic.jp/event/2006/SpiJapan/

ソフトウェア開発方法論と プロジェクト管理の融合法に 関する考察
http://www.jaspic.jp/event/2006/SpiJapan/proceedings/1c2.pdf

ソフトウェアプロセス史観の変遷と展望
http://www.jaspic.jp/event/2006/SpiJapan/proceedings/1c1.pdf

MANAGING THE DEVELOPMENT OF LARGE SOFTWARE SYSTEMS
Dr. Winston W. Rovce
http://www.cs.umd.edu/class/spring2003/cmsc838p/Process/waterfall.pdf

DOA+ Consortium Website
http://www.doaplus.com/html/kiji_20031212_02.html

Waterfall 2006
http://www.mogusa.com/waterfall2006/

ウォーターフォール・モデル - @IT情報マネジメント用語事典
http://www.atmarkit.co.jp/aig/04biz/waterfall.html


パターンによるソフトウェア構成管理

2006年12月18日 | アーキテクチャー
パターンによるソフトウェア構成管理
ソフトウェア開発の課題 5

http://www.seshop.com/detail.asp?pid=7250

  著: Stephen P. Berczuk / Brad Appleton
訳: 宗雅彦

ISBN:4798112593
サイズ:A5
ページ:272
販売価格:\2,940(本体\2,800 消費税5%)
発売日:2006/10/23
出版社:株式会社翔泳社
原出版社:Addison Wesley
原著タイトル:Software Configuration Management Patterns: Effective Teamwork, Practical Integration

パート1 バックグラウンド

第1章 システム全体の俯瞰
安定性と進捗の釣り合い
コラム:きわめて遅い開発
アジャイルソフトウェア開発におけるソフトウェア構成管理の役割
ソフトウェア構成管理を取り巻く背景
コラム:シンプルにしよう
チームサポート規範としてのソフトウェア構成管理
ソフトウェア構成管理とは何か
ツールの役割
より広い視野からの考察
本書のアプローチ
検討課題
参考文献

第2章 ソフトウェア環境
一般原則
ソフトウェアが対象とするもの
コラム:ポリシーが作業に与える影響
開発ワークスペース
アーキテクチャ
組織
全体像
参考文献

第3章 パターン
パターンとパターン言語について
ソフトウェアにおけるパターン
構成管理パターン
本書におけるパターンの構造
パターン言語
言語の概観
検討課題
参考文献

パート2 パターン

第4章 Mainline
コラム:ブランチ化への怖れ
ブランチ化モデルの簡略化
検討課題
参考文献

第5章 Active Development Line
コラム:テスト実行の刑
ゴールの定義
検討課題
参考文献

第6章 Private Workspace
コラム:シンプルプラン
自分の作業を分離し、変更を管理する
コラム:ワークスペースを更新して、最新状態を保つ
検討課題
参考文献

第7章 Repository
管理方法の統一
コラム:たくさんあって困る
検討課題
参考文献

第8章 Private System Build
コラム:2通りの真実
大局を見据えた局所的ビルド
検討課題
参考文献

第9章 Integration Build
コラム:非統合的ビルド
集約的ビルドの実行
検討課題
参考文献

第10章 Third Party Codeline
コラム:多少繕ったところで、もう遅い
既存ツールの利用
検討課題
参考文献

第11章 Task Level Commit
コラム:粒度の粗いタスク
細粒度タスクごとのコミット実行
検討課題

第12章 Codeline Policy
コラム:インピーダンス不整合
手順に対するルールの定義
検討課題
参考文献

第13章 Smoke Test
コラム:適切なバランス
基本機能の検証
検討課題
参考文献

第14章 Unit Test
コラム:安全第一
契約に基づくテスト
検討課題
参考文献

第15章 Regression Test
コラム:二歩後退
変更に備えてのテスト
参考文献

第16章 Private Versions
コラム:ツール利用上の注意
プライベートな作業履歴

第17章 Release Line
コラム:単一のコードラインに基づいた開発
リリース前のブランチ化
参考文献

第18章 Release-Prep Code Line
コラム:手持ちぶたさ
コード凍結に代わる方法としてのブランチ化
検討課題

第19章 Task Branch
長期にわたるタスクの取り扱い
コラム:並列開発
分離を目的としたブランチの利用

第20章 参考としたパターン
Named Stable Bases
Daily Build and Smoke Test

付録 A インターネット上のソフトウェア構成管理関連情報

付録 B SCMパターンに対するツールサポート

VSS―Visual Source Safe
CVS―The Concurrent Versions System
PERFORCE
BitKeeper
AccuRev
ClearCase―基本機能(非UCM)
ClearCase―Unified Change Management(UCM)
CM Synergy
StarTeam
PVCS Dimensions
PVCS Version Manager
MKS Integrity(Enterprise Edition)

プログラミング作法

2006年12月11日 | アーキテクチャー
プログラミング作法
http://www.ascii.co.jp/books/books/detail/4-7561-3649-4.shtml

Brian W.Kernighan・Rob Pike著/福崎俊博訳
シリーズ:アスキー・アジソンウェスレイシリーズ
定価:2,940円 (税込)
発売日:2000/11/28
形態:A5 (344ページ)
ISBN:4-7561-3649-4

■目次
第1章 スタイル
名前
式と文
一貫性と慣用句
関数マクロ
マジックナンバー
コメント
なぜ手間をかけるのか
参考文献

第2章 アルゴリズムとデータ構造
探索
ソーティング
ライブラリ
Java版クイックソート
O記法
配列の伸張
リスト
ツリー
ハッシュテーブル
まとめ
参考文献

第3章 設計と実装
マルコフ連鎖アルゴリズム
データ構造の選択
Cによるデータ構造の作成
出力の生成
Java
C++
AwkとPerl
性能
教訓
参考文献

第4章 インターフェイス
カンマ区切り値
プロトタイプライブラリ
他人の使うライブラリ
C++による実装
インターフェイスの原則
リソース管理
中止しますか、再試行しますか、失敗させますか?
ユーザーインターフェイス
参考文献

第5章 デバッグ
デバッガ
有力な手がかりのある簡単なバグ
手がかりのない困難なバグ
最後の手段
再現不能のバグ
デバッグツール
他人のバグ
まとめ
参考文献

第6章 テスト
コーディング時のテスト
系統的なテスト
テストの自動化
テスト機構
ストレステスト
テストのコツ
誰がテストを担当するのか?
マルコフプログラムのテスト
まとめ
参考文献

第7章 性能
ボトルネック
時間計測とプロファイリング
高速化の戦略
コードのチューニング
メモリ効率
性能の見積もり
まとめ
参考文献

第8章 移植性
言語
ヘッダとライブラリ
プログラムの構成
隔離
データ交換
バイト順
移植性とバージョンアップ
国際化
まとめ
参考文献

第9章 記法
データの書式化
正規表現
プログラマブルツール
インタープリタ、コンパイラ、仮想マシン
プログラムを記述するプログラム
マクロによるコード生成
オンザフライコンパイル
参考文献

エピローグ
Appendix:ルール集

第3回ボーランドデベロッパーキャンプ

2006年11月28日 | アーキテクチャー


http://bdn.borland.com/article/33750



【A3】Javaテクニカルセッション
「これで解決、Webサービス相互運用性 WindowsとJava」
 サン・マイクロシステムズ株式会社 ソフトウエア・ビジネス統括本部
 ソリューション・アーキテクト 岡崎 隆之

【B4】テクニカルケーススタディ
「パターン化されたロジックのコンポーネント化」
 株式会社シーソフト 内山 康広

【A5】Javaテクニカルセッション
「Javaで体験するスクリプト言語の威力」
 鈴木 雄介

---------------------------------------------

【A1】C++テクニカルセッション
「gSOAP, OpenSSL, pthreadsを使ったSOAP C/Sアプリ開発」
 ボーランド株式会社 デベロッパーツールズ事業本部 高橋 智宏

【B1】InterBaseテクニカルセッション
「InterBaseツール・ユティリティ大全」
 キムラデービー 木村 明治

【A2】Delphiテクニカルセッション
「InstantObjects 2.0によるWin32モデルドリブン開発」
 ボーランド株式会社 デベロッパーツールズ事業本部 高橋 智宏

【B2】C++テクニカルセッション
「C++ TR1 / Boost C++ Library 概要」
 ボーランド株式会社 デベロッパーツールズ事業本部 岩本 博幸

【B3】InterBaseテクニカルセッション
「InterBaseイン・アクション」
 キムラデービー 木村 明治

【A4】テクノロジープレビュー
「次期Java開発環境Pelotonプレビュー/製品ロードマップアップデート」
 講師未定

【B5】Delphiテクニカルセッション
「BDS 2006でQuickReport 4を使う」
 ボーランド株式会社 デベロッパーツールズ事業本部 岩本 博幸


品質向上ソリューションフレームワーク紹介セミナー

2006年11月22日 | アーキテクチャー
第1回 品質向上ソリューションフレームワーク紹介セミナー

http://www.sios.com/product/QUICS/seminar/QuICKS.html

14:00~15:00 「OSS活用の開発プロセス及び開発における品質とは」
概要 : 近年、OSS(オープンソースソフトウェア)を活用し、開発の期間やコストの逓減を図り成功を収めている製品、サービスが増えている一方で知財リスクや 品質の管理が不明瞭なことから導入をためらうケースも少なくありません。セッションでは、製品開発をテーマにOSS導入ニーズ実態やリスク分析あるいは品質の評価について、事例等を交えながらOSSを活用できるヒントを 探ります。
講演者 : 株式会社イーエルティ
コンサルティング・教育事業部 ディレクタ 江端俊昭

15:15~16:15 「品質向上ソリューションフレームワークのご紹介」
~実現する「防御」そして「コストダウン」の秘密とは~
概要 : 品質向上ソリューションフレームワークを活用し、ソフトウェア開発における高負荷時のシステムダウン、プログラム内の誤り、脆弱性そしてOSSソフトウェアコードの混入出を「防御」し、最終的に「コストダウン」を実現する秘訣を紹介します。
講演者 : サイオステクノロジー株式会社 Webソリューション部
エンジニアリンググループ 松井安則


丸山先生 エンタープライズシステムのデザインパターン

2006年11月20日 | アーキテクチャー
http://www.c-sq.com/modules/article/article107.html

●‥‥‥‥○丸山先生レクチャーシリーズ in 東京 2006-2007○‥‥‥‥●
● 第1回テーマ「エンタープライズシステムのデザインパターン」
● http://www.c-sq.com/modules/article/article107.html
●‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥

◆プログラム:(13:30開始 18:00終了予定)
-----------------------------------------------------------------------
ご挨拶 13:30~13:40 株式会社コンポーネントスクエア

第1セッション<丸山先生セッション>
 タイトル:Webサービスの新仕様:WS-ResourceTransfer
 講演者:稚内北星学園大学
     学長 丸山 不二夫氏
 講演時間:13:40~15:00

第2セッション<開発論セッション>
 タイトル:Relaxer5
 講演者:稚内北星学園大学 東京サテライト校
     教授 浅海 智晴氏
 講演時間:15:10~16:00

第3セッション
 タイトル:ステートレス/ステートフルな視点で眺める JBoss Seam と
      Ruby on Rails
 講演者:(株)日本総研ソリューションズ
     技術本部 Java/.NET 技術クラスター 橋本 吉治氏
 講演時間:16:10~17:00

第4セッション
 タイトル:SOAとコンポーネント技術 --- SCA入門
 講演者:Seasarプロジェクト チーフコミッタ
     稚内北星学園大学東京サテライト校 客員教授
     ひが やすを氏
 講演時間:17:10~18:00

-----------------------------------------------------------------------

初めてのアジャイル開発

2006年11月11日 | アーキテクチャー
初めてのアジャイル開発

http://store.nikkeibp.co.jp/item/main/148222819140.html

クレーグ・ラーマン著 ウルシステムズ 児高慎治郎、松田直樹 監訳 越智典子 訳
Agile & Iterative Development
A5判
440ページ
定価 2,520円(税込み)
ISBN 4-8222-8191-4
日経BP社
2004年9月21日発行


第1章 はじめに

■ソフトウエアは新製品開発である

第2章 反復型と進化型

■反復型開発
■リスク駆動とクライアント駆動の反復型開発
■タイムボックスを使った反復型開発
■進化型開発と適応型開発
■進化型要求分析
■進化型計画と適応型計画
■インクリメンタルな出荷
■進化型出荷
■具体的な反復型・進化型手法

第3章 アジャイル

■アジャイル開発
■手法の分類
■アジャイル宣言とアジャイル原則
■アジャイルプロジェクトマネジメント
■コミュニケーションとフィードバックを受け入れる
■人が重要であるというプログラミング
■シンプルなプラクティスとプロジェクトのツール
■経験的プロセスと定義・規定されたプロセス
■原則ベースとルールベース
■持続可能な規律:人間的側面
■複雑適応系としてのチーム
■アジャイルは誇大広告か
■具体的なアジャイル手法

第4章 物語

第5章 導入理由

■ソフトウエアプロジェクトには変化がつきもの
■反復型開発を導入する主な理由
■タイムボックスの利点
■要求に関する問題への反復的な対処
■ウォーターフォールの問題点
■問題:事前に承認まで済んだ「完全な」仕様の作成
■問題:プロジェクト後半での統合とテスト
■問題:「信頼性の高い」事前のスケジュールと見積もりの作成
■問題:「仕事を計画し、計画を実行する」価値

第6章 根拠

■調査による根拠
・反復型・進化型に関する調査
・規模に関する調査
・変更に関する研究
・ウォーターフォールの失敗に関する調査
・生産性に関する調査
・品質および欠陥に関する調査
■歴史的に有名な初期のプロジェクトによる根拠
■標準団体に関する根拠
■専門家および指導者による根拠
・ハーラン・ミルズ
・トム・ギルブ
・フレデリック・ブルックス
・バリー・ベーム
・ジェームス・マーチン
・トム・デマルコ
・エド・ヨードン
■ウォーターフォールの有効性に関する歴史的偶然
・ウォーターフォールが推奨し続けられている理由

第7章 スクラム

■手法概要
■ライフサイクル
■作業成果物、ロール、プラクティス
・スクラムミーティングの価値
■価値
■ありがちな間違いと誤解
■プロジェクト例
■プロセスの組み合わせ
・スクラム+Evo
・スクラム+UP
・スクラム+XP
■採用戦略
■現実と幻想
■長所および「その他」

第8章 エクストリーム・プログラミング

■手法の概要
■ライフサイクル
■作業成果物、ロール、プラクティス
■価値
■ありがちな間違いと誤解  
■プロジェクト例
■プロセスの組み合わせ
・XP+Evo
・XP+スクラム
・XP+UP
■採用戦略
■現実と幻想
■長所および「その他」

第9章 統一プロセス

■手法概要
■ライフサイクル
■作業成果物、ロール、プラクティス
・六つのベストプラクティス
■価値
■ありがちな間違いと誤解  
■プロジェクト例
■プロセスの組み合わせ
・UP+Evo
・UP+スクラム
・UP+XP
■採用戦略
■現実と幻想
■長所および「その他」

第10章 Evo

■手法概要
■ライフサイクル
■作業成果物、ロール、プラクティス
・Planguage
■価値
■ありがちな間違いと誤解
■プロジェクト例
■プロセスの組み合わせ
・Evo+スクラム
・Evo+UP
・Evo+XP
■採用戦略
■現実と幻想
■長所および「その他」

第11章 プラクティスのヒント

■プロジェクトマネジメント
・複数チームや複数サイトで実施する場合の初期の開発
・イテレーションをまたがった作業のオーバーラップあるいは「パイプライン」
・ローリングウェーブ式の適応型計画と予測型計画
・計画:「水曜日」に終了することを検討する
・計画:作業担当者の見積もり
・計画:広帯域デルファイ法を使った見積もり改善
・計画:複数のイテレーション計画ミーティング
・計画:アジャイルなタスクの洗い出し
・計画:イテレーションの間接的タスクを計画に組み込むこと
・計画:イテレーションごとに自分が使える時間を見積もる
・イテレーションの目標:リスク、カバレッジ、危険度、スキル開発
・イテレーションの目標:何に順位づけするか
・イテレーションの目標:どうやって順位づけするか - ドット投票
・イテレーションの目標:どうやって順位づけするか - 定量化手法
・イテレーションの目標:関連するイテレーションの長さは?
・イテレーションの目標:最初の開発イテレーションの前
・イテレーションの目標:最初の開発イテレーション
・イテレーションの目標:ユースケースとシナリオ
・イテレーションの目標:一次的/二次的依頼事項
・イテレーションの目標:イテレーションには依頼事項を追加しない
・イテレーションの進捗の追跡
・リスクの順位づけ
・リスクマネジメント
■環境
・継続した結合
・CASEツールとリバースエンジニアリング
・洞穴と共通の部屋
■要求
・アジャイルモデリング
・ビジョンの定義と維持
・進化型要求ワークショップ
・イテレーションをまたがった要求の追跡
■テスト
・テスト駆動型開発

第12章 FAQ