最近購入した書籍

[Tsumaki+Shirogane 09] 要求工学概論

要求工学概論―要求工学の基本概念から応用まで (トップエスイー基礎講座)

要求工学概論―要求工学の基本概念から応用まで (トップエスイー基礎講座)

[MEMO]
要求: 問題を解決するためにソフトウェアが装備しなければならない機能や性能。
要求工学: 要求定義にかんする工学。
要求工学のテーマ:

  • 要求獲得: ビジネス活動における問題を認識、解決、そして実現方法を策定するための作業。
  • 要求分析: 問題分析により抽出されたニーズからコンピュータシステムの導入によって実現すべきテーマを抽出し、その方法を詳細に定義する作業。
  • 要求仕様化: 獲得した要求の洗練、文書化のための記述。
  • 要求確認: 要求の検証と妥当性の確認。
  • 要求管理: プロジェクトによって定義された要求を保管、修正の記録、再利用の促進、要求とプロジェクトの目標や、その他成果物との不整合を特定するための作業。

(i) [d.hatena][m-hiyama-memo] http://d.hatena.ne.jp/m-hiyama-memo/20060707/1152239473
↓引用元
[PDF][UML][UML-RT][Selic+Rumbaugh 98]
http://www.ibm.com/developerworks/rational/library/content/03July/1000/1155/1155_umlmodeling.pdf
内容: UML のリアルタイムシステムへの拡張 UML-RT の提案


[PDF][UML][UML-RT][Grosu+Broy+Selic+Stefanescu 98] http://www.cs.sunysb.edu/~grosu/oopsla98.pdf
内容: flow graph とよぶ UML-RT の形式的な基礎付けのための構造の提案


[microsoft academic search][UML][category theory][Grosu+Broy+Selic+Stefanescu]
http://academic.research.microsoft.com/Publication/288264/what-is-behind-uml-rt
↓引用

http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.2.7448
内容: UML-RTと CSP-OZ (注1) を組合わせた利用法の提案

http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.59.3872


(ii) [d.hatena][m-hiyama][digraphs][category theory] http://d.hatena.ne.jp/m-hiyama/20130404/1365042531
内容: 有向グラフがあるモデルには圏論があるというエッセイ
↓引用元
[network theory][category theory][Baez 11] http://math.ucr.edu/home/baez/networks/networks_1.html
内容: ネットワーク理論についてのエッセイ


[d.m-hiyama][category theory][functor data model][introduction]
内容: Spivak (http://math.mit.edu/~dspivak/) の関手データモデルの入門

  1. http://d.hatena.ne.jp/m-hiyama/20130211/1360577040
  2. http://d.hatena.ne.jp/m-hiyama/20130218/1361145879
  3. http://d.hatena.ne.jp/m-hiyama/20130222/1361493734
  4. http://d.hatena.ne.jp/m-hiyama/20130408/1365394485

(iii) [d.hatena][salmonsnare][digraphs] http://d.hatena.ne.jp/salmonsnare/20100830/1283154201
内容: 有向グラフについてのオープンアクセスの教科書の紹介


注1 CSP: 並行システムにおける相互作用のパターンを記述する仕様記述言語
[wikipedia] https://ja.wikipedia.org/wiki/Communicating_Sequential_Processes
https://ja.wikipedia.org/wiki/%E3%83%97%E3%83%AD%E3%82%BB%E3%82%B9%E8%A8%88%E7%AE%97
Object-Z: 形式仕様記述言語である Z 言語のオブジェクト指向
[wikipedia] Z言語: https://ja.wikipedia.org/wiki/Z%E8%A8%80%E8%AA%9E
[CiteSeer][CSP][Fischer 97] http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.35.5983
内容: Objext-Z と CSP の組合わせ CSP-OZ を提案

スーパーの一袋19円のうどんアドベントカレンダー, 締めは高野豆腐

はじめに

アドベントカレンダーの趣旨は過去エントリを参照してください。



飽きたらやめます。 (3)


本題

ある日、満足げにうどんをおいしくいただきました。



だけど…。あれあれ?スープが残ってしまった。そのまま飲み干す以外に方法はないのかな。どうしましょう。



高野豆腐を、入れるんです。



旭松製の高野豆腐を使っております。ある時期に、「これはうどんと合うんじゃないか。」と思い、うどんを食した後に高野豆腐を一個放り込んでみると、みるみるうちに戻りました。

これは、是非みなさんにも味わっていただきたいです。



高野豆腐は1箱 198 円 (追記: 1箱に10個です) だったので、
うどん一食当たり約 20 円でコストパフォーマンスも大変すぐれております。



備考

高野豆腐は、以前のエントリで紹介した辛ラーメンのスープと組合わせると大変おいしくいただけます。

Processingのサンプルを参考にコードを書いた。(立方体: 回転、拡大、照明の調整、ポリモーフィズム)

追記: 2012/12/20

現在、processing の最新版が Ver 2.0b7 です。
バージョンアップに伴い、いくつか変更があるようです。

本エントリのコード「textureMode(NORMALIZED);」は
"NORMALIZED"を"NORMAL"に読み替えてください。

追記: 2012/12/21

本エントリのサンプルをキャプチャしたものを
youtube にアップしました。


改良点

ポリモーフィズムを利用した。class TexturedCubeを書いて、if文を消した。

コード

//変数の宣言
PImage tex;
float rotx = PI/4;
float roty = PI/4;
int valuex = 0;
int valuey = 1;

//初期設定
void setup() 
{
  size(809, 500, P3D);
  tex = loadImage("01.JPG");
  textureMode(NORMALIZED);
  fill(255);
  stroke(color(44,48,32));
}

//描画
void draw() 
{
  int ColorValue = #dddddd;
  background(ColorValue);
  noStroke();
  directionalLight(126, 126, 126, 0, 0, -1);
  ambientLight(10+valuex, 10+valuex, 10+valuex);

  translate(width/2.0, height/2.0, -100);
  rotateX(rotx);
  rotateY(roty);
  scale(90);
  TexturedCube t = new TexturedCube();
  t.Type1(1+mouseY * 0.002);
  autorotate();
}

//自動回転のための関数
void autorotate()
{
  float rate = 0.01;
  float speed = mouseX * 0.02;
  rotx += speed * rate;
  roty += speed * rate;;
}

//出力する図形の種類について記述したクラス(6面ある立方体と、3面だけのものを2個を用意した。)
class TexturedCube {
  void Type1(float i){
    beginShape(QUADS);
    texture(tex);
    CubeFace c1 = new CubeFace();
    c1.PZface(i);
    c1.MZface(i);
    c1.BYface(i);
    c1.TYface(i);
    c1.RXface(i);
    c1.LXface(i);
    endShape();
    }
  void Type2(float i){
    beginShape(QUADS);
    texture(tex);
    CubeFace c1 = new CubeFace();
    c1.PZface(i);
    c1.BYface(i);
    c1.RXface(i);
    endShape();
  }
  void Type3(float i){
    beginShape(QUADS);
    texture(tex);
    CubeFace c1 = new CubeFace();
    c1.MZface(i);
    c1.BYface(i);
    c1.LXface(i);
    endShape();
  }
}

//出力する図形の面を記述したクラス
class CubeFace {
  void PZface(float i) {
   vertex(-i, -i,  i, 0, 0);
   vertex( i, -i,  i, i, 0);
   vertex( i,  i,  i, i, i);
   vertex(-i,  i,  i, 0, i);
 }

 void MZface(float i) {
  vertex( i, -i, -i, 0, 0);
  vertex(-i, -i, -i, i, 0);
  vertex(-i,  i, -i, i, i);
  vertex( i,  i, -i, 0, i);
 }

 void BYface(float i) {
  vertex(-i,  i,  i, 0, 0);
  vertex( i,  i,  i, i, 0);
  vertex( i,  i, -i, i, i);
  vertex(-i,  i, -i, 0, i);
 }

 void TYface(float i) {
  vertex(-i, -i, -i, 0, 0);
  vertex( i, -i, -i, i, 0);
  vertex( i, -i,  i, i, i);
  vertex(-i, -i,  i, 0, i);
 }

 void RXface(float i) {
  vertex( i, -i,  i, 0, 0);
  vertex( i, -i, -i, i, 0);
  vertex( i,  i, -i, i, i);
  vertex( i,  i,  i, 0, i);
}

 void LXface(float i) {
  vertex(-i, -i, -i, 0, 0);
  vertex(-i, -i,  i, i, 0);
  vertex(-i,  i,  i, i, i);
  vertex(-i,  i, -i, 0, i);
 }
}

//マウスのドラッグを、値に反映させる関数。
void mouseDragged(){
  valuex += (mouseX-pmouseX)*0.25; 
  valuey += (mouseY-pmouseY)*0.25; 
}

スーパーの一袋19円のうどんアドベントカレンダー, ちゃんぽんスープで

はじめに

アドベントカレンダーの趣旨は
下記エントリを参照してください。
http://d.hatena.ne.jp/salmonsnare/20121220/1355982049



飽きたらやめます。 (2)


本題

昨晩は、ちゃんぽんスープ+うどんでした。



ちゃんぽんスープは、宮島醤油製の粉末スープで、
ダシが効いてます。



ある日、「もっとうどんのスープを安く上げる方法はないだろうか。」と思い、
ちゃんぽんスープにうどんを一玉放り込んでみると、
素晴らしい相乗効果が起きました。
これは、是非みなさんにも味わっていただきたいです。



うどんは一玉 19 円、ちゃんぽんスープは 1 袋 約 120 円 (1 袋に5包の 5 袋がありますです) だったので、
1 食当たり約 50 円でコストパフォーマンスも大変すぐれております。



備考

スーパーで売っている乾燥しいたけを入れると、
さらにおいしくいただけました。
味に深みが出ます。



追記: 乾燥しいたけは利用前に軽く水洗いしましょう。

スーパーの一袋19円のうどんアドベントカレンダー, 辛ラーメンのスープで

はじめに

アドベントカレンダーとは、Wikipedia によると
クリスマスまでの期間に日数を数えるために使用されるカレンダーのことを指すようです。
巷では、技術系アドベントカレンダーというものが流行っているようですが、
残念ながら、僕はそういうの読み書きすることに何ら食指が動かないので、
スーパーの一袋19円のうどん (以下、うどんと省略) アドベントカレンダーを作成することにしました。



飽きたらやめます。


本題

今日の朝は、辛ラーメンのスープ+うどんでした。



辛ラーメンは、農心製のインスタントラーメンで、
唐辛子が効いたすっきりとした味わいのスープが同梱されています。



ある時期に、「これはうどんと合うんじゃないか。」と思い、
辛ラーメンを食した後にうどんを一玉放り込んでみると、
素晴らしい相乗効果が起きました。
これは、是非みなさんにも味わっていただきたいです。



うどんは一玉 19 円、辛ラーメンは一袋 298 円 (追記: 1袋に4食です) だったので、
一食当たり約 100 円でコストパフォーマンスも大変すぐれております。



備考

スーパーで売っているピザ用チーズを入れると、
さらにおいしくいただけました。
このアイデアは、数年前、近所から撤退したラーメン屋で良く食べていた
「チーズ担々麺」のアイデアを利用しました。

Latex beamer

追記: 2012/10/05

今の私のプレゼンツールはPPTに落ち着いております。
自分の用途以上に TeX Live が巨大だったため、
現在は W32 TeX (TeX の Win32 関連のバイナリ) のみインストールしております。
W32 TeX, http://w32tex.org/index-ja.html

LaTeX beamer

Latex beamer 便利ですね。

texlive(注1)を導入→付属のマニュアルを読みながら、サンプルを修正。
って感じでさくっとスライドができました。

texliveごと、是非とも。

texlive, http://tug.org/texlive/

(注1)texlive: texのあれこれが揃う凄いやつ

ソースコード

\documentclass[xcolor]{beamer}


\mode<presentation>
{
  %\usetheme{Warsaw}
  \usetheme{Rochester}
  
  % or ...
  \usecolortheme{dolphin}
  % or whatever (possibly just delete it)
}


\usepackage[english]{babel}
% or whatever

\usepackage[latin1]{inputenc}

%\setbeamercolor{title}{fg=black!80!black}

\title
{yaa.} % (optional)

\author[Author, Another] % (optional, use only with lots of authors)
{salmonsnare\inst{1}}

\date[Short Occasion] % (optional)
{2010/9/3 / @salmonsnare}

\subject{Talks}

\AtBeginSubsection[]
{
  \begin{frame}<beamer>{Outline}
    \tableofcontents[currentsection,currentsubsection]
  \end{frame}
}

\begin{document}

\begin{frame}
  \titlepage
\end{frame}

\begin{frame}{Outline}
  \tableofcontents
  % You might wish to add the option [pausesections]
\end{frame}


\section{Introduction}

\subsection[What is yaa?]{What is yaa?}

\begin{frame}{What is yaa?}
 
\begin{itemize}
    \item Yaa is yaa.
    \item Yaa is a simple greeting. 
    \begin{figure}[tb]\centering
\includegraphics[scale=.43]{./salmoncube01.JPG}
\caption{salmoncube}
\end{figure}


\end{itemize}
\end{frame}

\end{document}