抽象によるソフトウェア設計 第2章 ざっと一巡り その6

今日は第2章のまとめです。

  • やらなかったこと
    • 最初から完全なモデルを書いて解析しなかった(インクリメンタルな構築ができると言いたい?)
    • 複雑な数学や記号を使わなかった(使わなくてすむと言いたい?)
    • 「実行可能なコード」を書く必要がなかった
      • トレースのためには操作を宣言的に記述した
    • テストケースを書かなかった(指定された探索空間内を自動的に網羅される)

第2章で Alloy がどんなことをするものかおおざっぱな感覚を掴めたと思います。設計をしている時の考慮漏れを明らかにするツールという感じでしょうか。 Alloy の記述方法はまだよくわかりませんが、この記述と実装言語にはかなりギャップがあると思うので、せっかくモデルを精査したのにコードに落しこむときにバグが入り込むことがおきそうです。コードの自動生成をしてくれるといいんでしょうけど。