スキップしてメイン コンテンツに移動

”人が成長して品質になる”と読みました。

原則2:”品質を作りこむ” という言葉が好き。

リリースして、リファクタリングかけて、自動テストして、リリースして。
常にシステムをいい状態においておく。

使う人も、マーケットも、企画も、業務も、
全て流動的で変化し続ける。
だからシステムを時代に追随させていく。

その品質を作りこむことは可能だと思う。

そのために必要な要素は、
人であり、その人の技術力だと思う。

頻繁なリリースを可能にするには、
コードが容易に解読できないと難しいだろうし、
容易なコードにするにはリファクタリングは不可欠だろうし、
リファクタリングをかけるには自動テストは必要だろうし、
自動テストやるには・・・・。

全ての原点には人がいる。
だからその人が知っていて、理解していて、実行できないと、
何もできないのだと思う。

現状を確認して、
方向性を合わせて、
できることを一つずつ増やしていく、
できる人を一人ずつ増やしていく、

それが品質を作りこむことなのだと思う。

(以下抜粋。○:完全抜粋、●:簡略抜粋)
○マネージャとは、その人が監督する分野で名人になった教師なのである。
 新人のエンジニアを訓練し、弟子から職人へ、
 職人から名人エンジニアへと変えていくのだ。(P.19)

○ソフトウェアの機能の半分以上は、最初のリリース以降に開発される(P.25)

○優れたソフトウェアデザインとは、
 妥当な実行性能を実現しながら、
 ソフトウェアの構築・修正・保守にかかる時間を最短にするものである。(P.25)

○ソフトウェア業界では、価値が変わりやすい。
 それはたいてい、顧客自身が、
 自分たちの欲しいと思っているものを本当には知らないからだ。(P.28)

○ソフトウェアのムダを排除する、
 最高のチャンスをもう一度振り返って見よう。
 それは、「コードをできるだけ書かない」ことである。(P.35)

○専門知識をすべて外注に任せている企業は、
 競合他社も同様に外注できる、ということに気づくだろう。
 専門知識など必要ないと考えている企業は、
 維持可能な競争優位を何ひとつ持ち合わせていないことに気づくはずだ。
 聡明な企業なら、確実に、目的に合ったエキスパートエンジニアを育成して、
 目標達成に必要な専門知識を備えた人員を配備しようとする。(P.45)

●コンピュータ化とは、標準化することであり、目標を絞って行う。
 (中略)
 開発者はシステム機能を最大にするのではなく、最小に絞る。(P.85)

○ソフトウェア製品に対して見境なく機能を詰め込むのは、
 マーケティングをサボっている証拠だ。(P.87)

○すべてのコードは、書くのにもお金がかかるが、
 サポートするのにさらにお金がかかる。
 不要なコードを書くぐらいなら、
 開発者にはサーフィンでもしてもらっていたほうがよっぽどいい。(P.87)

○トヨタの真の強みが、『普通の』従業員の知恵を終結する能力にある(P.143)

○本当にコーディングを学びたいのであれば、
 オープンソースプロジェクトに参加するとよい。(P.243)

○最初にテストを書くと、通常は設計がシンプルになる。
 テスト可能なコードを書いていると、コードの結合度が弱くなるからだ。(P.248)

○プロジェクトはそれぞれ1回かぎりの取り組みであるため、
 見積もりは憶測にすぎない。
 つまり、プロジェクトはそもそも、
 未知の要素でいっぱいだということだ。(P.288)

○監督者は自分の監督する作業に関して、
 高度な技術を備えている必要があると考えた。 (P.291)

コメント

このブログの人気の投稿

Excelのマクロの差分もGitHubみたいに見たいよね

なんやかんやでまだ残っているExcelマクロ。修正したはいいが、差分が・・・。 Google先生に聞いてみるとWinMergeでできるらしいが、なぜかうまくいかない。 そう、WinMergeもExcelもバージョンが新しくなっていたのでうまくいかなかったみたい。 前提は Excel 2013 WinMerge 2.14.0-jp63 over です。 以下差分を確認するための手順です。 WinMerge をインストール ここから WinMerge の2.14.0-jp-63 より新しいバージョンをダウンロード 画面に従ってぽちぽち押していけばいい。 ただし・・・このときに必ずカスタムインストールで プラグイン にチェックを入れること!!(このプラグインを利用します) WinMerge のプラグインの設定変更(やらなくてもOK) WinMerge を起動 プラグイン → プラグインの設定 → CompareMSExcelFiles.sct をダブルクリック ”ワークブックの情報を複数ファイルに展開する” にチェックを入れる Excel の設定変更 ファイル → オプション → セキュリティセンター → セキュリティ センターの設定 ボタンを押下 マクロの設定 を選択 ”VBA プロジェクト オブジェクト モデルへのアクセスを信頼する” にチェックを入れる WinMerge で差分を表示する WinMerge を起動して、比較したいファイルを二つ選択する プラグイン → 展開プラグインの選択 → ファイル展開プラグイ に CompareMSExcelFiles.sct を選択して OK ボタンを押下する 各シートの差分と合わせて、*.bas の形式でマクロの差分が表示される(はず)

間違ったフォーマットのプログラムじゃないんだけど

以下エラーに対し、 ファイルまたはアセンブリ 'SSPI'、またはその依存関係の 1 つが読み込めませんでした。間違ったフォーマットのプログラムを読み込もうとしました。 以下環境で対応した話です。 VisualStudio2012(C# ASP.NET MVC4.0) IIS7.5 とあるところのdllを使用中 ASP.NETをIISに発行しようとしたら、上記エラーが発生。 他のプロジェクトでは問題なく発行できているのに、 何かと思ってみたら、google先生に尋ねてみると、 DLLファイルの対象プラットフォーム(32bit/64bit)が異なる とのことでした。 このサイトでは対処方法として、 運用環境のプラットフォームに合わせ、適切なランタイムファイルを配布してください。 と記載されていますが、今回の私のようにとあるところのdllを使用している場合などは、 そうもいかない場合もあるでしょう。 そこでdllを変更できない場合には、 IISのアプリケーションプールの設定で、 32bitアプリケーションを有効化してあげることで対応できます。 以下手順です。 コントロールパネル → 管理ツール → インターネット インフォメーション サービス (IIS) マネージャー を起動します。 変更したいアプリケーションを右クリックして、詳細設定を選択します。 32ビットアプリケーションの有効化をTrueに変更します。 もう一度発行します。 ここまでです。 簡単だけど知らないとなかなかはまるかなって気がしますね。 独特のくせなのかもしれません。 そして、次なるエラー発生中です・・・。

SQLServer2008でのトランザクションログの切り捨て方

SQL Server 2008でとあるDBのトランザクションログが一杯に。 BACKUP LOG DatabaseName WITH TRUNCATE_ONLY を使ってトランケートしようとしたら、 'TRUNCATE_ONLY' はBACKUP オプションとして認識されません。 との冷たい返事。2008で廃止されていたのを忘れていた。 SQL Server 2008 で廃止されたデータベース エンジンの機能@MSDN そこでヌルデバイスを使用してバックアップを取得する方法で、切り捨てを試みる。 BACKUP LOG DatabaseName TO DISK = ‘nul’ GO するとまた冷たい返事。 現在、データベースのバックアップが存在しないので、BACKUP LOG を実行できません。 2008では過去にフルバックアップを取得しておかないと、ランザクションのバックアップが取得できないことを忘れてた。てなわけで、まずはデータベースのフルバックアップを取得して、 BACKUP DATABASE DatabaseName TO DISK = ‘nul’ GO もう一度トランザクションのバックアップをして、やっと切り捨てれた。最初から単純にしておけばよかった・・・。