2016年10月9日

「はじめよう! 要件定義」を読んだ

はじめよう! 要件定義 ~ビギナーからベテランまで」(技術評論社)を読みました。

プログラミングの技法やフレームワークなどを使って「どうやって作るか」については知見が急激に増加してきている一方、そもそも「何を作るか」については取り残され気味であったとの著者の課題意識から出発している書籍です。
「UI」「機能」「データ」の3つにポイントを絞って平易な文章で書かれており、少しずつ順番に説明が進むため、2〜3時間くらいでスッと読める一冊でした。
特に、準備編と助走編まで(ページ数としては半分くらい)は、システム開発やプログラミングの経験があまりない人にも読んでもらえると、基本的な認識を揃えることができてコミュニケーションが少し円滑になるのではないかと思います。

2015年2月15日

Making Software を読んだ

O'Reillyから出版されている Making Software を読みました。 ソフトウェア工学研究者たちのエッセイ集になっており、Beautiful Code: Leading Programmers Explain How They Think のような書籍です。 内容はソースコードの書き方の話ではなく、プロジェクトマネジメント寄りの話題と言えます。 即効性は期待できませんが、知っておくと見通しがよくなることが多い印象です。 具体的にどの指標を参考にするかは、本書を読んで自分のプロジェクトのコンテキストに合わせて調整すると良いでしょう。

推測や思いつきではなく、現場における実際のデータや実験によるデータに基づいて、実証的にソフトウェア開発のあり方を改良しようとする立場に立ったソフトウェア工学のことを実証的ソフトウェア工学(empirical software engineering)と呼びます。 ソフトウェア開発の現場で感覚的に語られていることに対して、できる限りのデータを収集して定量的に分析している点が特徴です。 例えば、ソースコード管理システムに巨大なコミットがあるとレビューが大変ですが、具体的に何行を越えると不具合の可能性が高まるのかを各種の統計量を用いて調査しています。 すべてのエビデンスが万人受けすることはありませんので、結果を提示する人はそのときの想定読者に合わせて内容を調整します。 研究者と読み手のコンテキストの共有が不十分だと「でも一体、それの何が良いの?」となりますので、観測したものを法則として認識し、それを説明する理論を構築できるかどうかが、この分野での挑戦となります。 詳細は A Handbook of Software and Systems Engineering: Empirical Observations, Laws and Theories を参照してください。

書籍は2部構成で、最初は一般的な原理、次に個別の話題を扱います。 各部とも割と独立した章から構成されますので、目次と図表をパラパラと眺めて興味を持てそうなところを読むと良いと思いました。

2014年10月16日

CentOS 7 と Docker のメモ

さくらインターネットの VPS で OS を CentOS 7 にしたのでメモしておきます。 VPS のデフォルトは CentOS 6 なので、手動でカスタム OS を選択しています。 ディスクのパーティション設定や管理者ユーザーの設定はインストーラーで終わっているものとします。