goo blog サービス終了のお知らせ 

ウィリアムのいたずらの、まちあるき、たべあるき

ウィリアムのいたずらが、街歩き、食べ物、音楽等の個人的見解を主に書くブログです(たま~にコンピューター関係も)

「標準ソフトウエア工学教科書」を作ってみたいと思います-その4 1.2 ソフトウエア工学とは

2011-09-11 22:13:58 | 土日シリーズ
 シリーズ「標準ソフトウエア工学教科書」を作ってみたいと思います

今回は「1.2 ソフトウエア工学とは」です。




1.2 ソフトウエア工学とは

 私たちは、毎日、コンピューターに様々な情報処理をさせています。
 計算もそうですし、文書を作成したり、インターネットで検索したり・・・
 しかし、そのたびに、「電子卓上計算機」「文書作成機」など、それ専用のコンピューターをもっていたら、大変なことになってしまいます(そういう時代もあったのですが・・・)
 そこで、今では、プログラムという、コンピューターに処理させる内容を(電気的に)書いて、それを入れ替えるようなことによって、様々な処理を行っています。
 このプログラムがソフトウエアということになります。そして、処理するコンピューターがハードウエアです。

 学問的にコンピューターを扱う場合、コンピューターそのものを科学するということもできます。プログラムとは何か、ソフトウエアとは何か、コンピューター上にプログラムをどのように表現したらよいのかなどなどです。
 そういうコンピューターを科学することを、「コンピューターサイエンス」といいます(まんまやん)。

 一方、ソフトウエアというのは、何か情報処理させるために作られるモノなので、情報処理したい要求に応じて、コンピューターやコンピューターサイエンスの成果を駆使して、どのようにソフトウエアを上手に作るかという工学的アプローチもあります。これが、ソフトウエア工学です。

 つまり、ソフトウエア工学とは、

 顧客の要望に応じたソフトウエアを上手に作るために、コンピューターサイエンスを基礎として、コンピューターを使いこなすソフトウエアを作るための工学

 です。

 では、ソフトウエアを上手に作るには、どうしたらよいのでしょう。
 それには、手順があります。




 次回は、「1.3 ソフトウエアプロセスとは」です。

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

「標準ソフトウエア工学教科書」を作ってみたいと思います-その3 1.1 情報処理とは

2011-09-10 11:02:14 | 土日シリーズ
シリーズ「標準ソフトウエア工学教科書」を作ってみたいと思います
 という話を前回書きました。

今回は「1.1 情報処理とは」です。




■1.1 情報処理とは


 人々は毎日、いろんな活動をしています。ご飯を食べたり、寝たり、ご飯を食べたり・・あれ?
 ま、とにかく、ご飯を食べることを考えましょう。
 給料日、お金を下ろしてきて、お昼ご飯を食べることを考えます。
 そうすると、こんな活動をします。

  会社の事務のおねえさんが、銀行に給料を振り込む
  私が、銀行でお金を下ろす
  私が、松屋にいく(吉野家でもすき屋でもいいんだけど)
  松屋で、食券を買う
  松屋で、牛丼をたべる

 このうち、「松屋で牛丼を食べる」場合、牛丼はモノなので、私の代わりにあなたが食べたとしても、活動目的は達成されません。活動目的は、「私のおなかを満たすこと」ですが、あなたが食べたら、私は、まだおなかがすいたままです。

 ところが、銀行に給料を振り込む場合、最近は、モノが動いているのではないです。
 お札を持っていって、銀行に振り込んでいるわけではなく、「いくら、だれかさんに振り込んでください」という情報を銀行に伝えて、銀行は、それを受け取って処理しています。




 このように、モノではなく、モノの一部の特性(数量とか)を取り出すと、それは、データ、情報ということになります。
 そして、このデータを入力とし、なんらかの処理(変換・計算)をして、目的となる出力を得ることが情報処理ということになります。

 この情報処理、モノが動いているわけではないので、実は、他の人がやってもOKです。
 振込みは、事務のおねえさんでなく、おにいさんがやってもいいし、ロボットがやってもいいかもしれません。
 となると、そういうことを電気的にしてくれる機械を作っちゃえということになります。
 この機械が、電子・計算・機「コンピューター」になります。




 なので、現在では、情報処理というと

  何らかの入力をもとに、コンピューターがさまざまな処理を行い、結果としての出力を得ること

 ということになります。
 
 そしてこの、入力→処理→出力の一連の行為を、「アクティビティ」と呼びます。

 なお、コンピューターは、目に見えて使うこともありますが、「松屋で、食券を買う」のときのように、見た目は食券を売っている機械なのですが、中で、コンピューターに相当するものが入っている場合があります。この場合、コンピューターが「組み込まれている」ということで、「組み込み」といいます。




次回は、「1.2 ソフトウエア工学とは」

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

PMBOKのお勉強 その9 - 1.8

2011-09-09 20:05:22 | そのほか
今、

プロジェクトマネジメント 知識体系ガイド(PMBOKガイド)第4版
http://www.amazon.co.jp/dp/1933890681

のお勉強をしています。

前回1.7まで行ったので、今回は、1.8をやります。




■1.8 組織体の環境要因

・組織体の環境要因とは
 プロジェクトを取り巻き、
 プロジェクトの成功に影響を与える
 内部と外部の環境要因

・組織体の環境要因は、ほとんどの計画プロセスに対する
 インプットとなる

・組織体の環境要因の例
  組織の文化、体制、プロセス
  国家標準又は業界標準
  インフラストラクチャー
  既存の人的資源
  人事管理
  企業の作業認可システム
  市場の状況
  ステークホルダーのリスク許容度
  政治情勢
  組織で確立しているコミュニケーション・チャネル
  商用データベース
  プロジェクトマネジメント情報システム




1章はこれで終わり。
次回から2章


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

初めてのRubyを読む その8 2.2

2011-09-09 15:40:37 | Ruby
「初めてのRuby」を読むの続き
今回は、


2章 配列とハッシュ
2.2 ハッシュ




■2.2 ハッシュ

・任意のオブジェクトをキーとして、
 別のオブジェクトに対応付ける
 コンテナオブジェクト

・C++,Javaのマップ
 Perlの連想配列




■2.2.1 ハッシュの構築

・リテラル記法で構築するのが一般的
  params={
    "hatsune" => "miku",
    "kagamine" => "rin",
    "megurine" => "ruka"
}

(>は、本当は半角)

・Ruby1.9では、:を使った短いリテラルも




■2.2.2 添字演算子

・キーと成るオブジェクトを渡して値を返す1種類しかない
・添字代入も同じ

・存在しないキーを与えてもnilを返すだけ




■2.2.3 ハッシュの比較

・全ての対応する要素ペアの
 キーが等しく値が等しいとき同値




■2.2.4 さまざまなメソッド

・要素の数を返すsize
・全てのキーの配列を返すkeys
・each,mapでは、ブロック引数として、キーと値の2つの値が渡される






  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

アプリ開発者が抱く不安と課題とは

2011-09-09 13:56:46 | ケータイ

Android アプリについては、無料アプリの比率が圧倒的に高く、それらのアプリは広告モデルに依存せざるを得ない状態だという。ユーザー数はまだ iOS ほど多くはなく、また iPhone ユーザーに比べてトレンドに流されて機種変更をしたユーザーが多い Android では「ユーザーが能動的ではない」点もあり、まだ市場は発展途上といった状態だ。このような現状について中塚氏は、「資金力、コンテンツ力の弱いアプリ開発者は、Android での展開に尻込みしてしまっている状態


とのことで、


アプリ開発者70社にとったアンケートによると、2010年に「アプリ開発で儲かっている」と回答したのはわずかに2%。2011年7月の最新のアンケートでもその数は14%に留まる。「儲かっている」と回答したアプリは多くのユーザーを確保できた有料課金モデルやアプリ内広告の高収益化の達成、またアプリ内課金モデルなどの成長により収益をあげている


とのこと

アイデアと開発力があっても「なかなか儲からない」-- アプリ開発者が抱く不安と課題とは
http://headlines.yahoo.co.jp/hl?a=20110908-00000007-inet-mobi

より(このエントリ内の斜体は上記サイトより引用)


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

PMBOKのお勉強 その8 - 1.7

2011-09-08 20:01:52 | そのほか
今、

プロジェクトマネジメント 知識体系ガイド(PMBOKガイド)第4版
http://www.amazon.co.jp/dp/1933890681

のお勉強をしています。

前回1.6まで行ったので、今回は、1.7をやります。




■1.7 プロジェクトマネジメント知識体系

・PMBOKガイド
 多くの業種にわたり、
 ほとんどの場合に
 ほとんどのプロジェクトを
 マネジメントするための標準

 プロジェクトマネジメントの
   プロセス
   ツール
   技法等
 を記述したもの

・単一プロジェクトだけを取り上げ、良い実務慣行として一般に認められる
 プロジェクトマネジメントのプロセスを示している

・プログラムのマネジメントに関してはプログラムマネジメント標準で
 ポートフォリオのマネジメントに関してはポートフォリオマネジメント標準で
 組織体のプロジェクトマネジメントプロセスの実行能力の査定は
    OPM3基本知識で取り上げている


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

初めてのRubyを読む その7 2.1

2011-09-08 17:11:19 | Ruby
初めてのRuby」を読むの続き
今回は、


2章 配列とハッシュ
2.1 配列




■2章 配列とハッシュ

・配列とハッシュ
 他のオブジェクトへの参照を貯めておくことが出来る
   配列:他のオブジェクトへの参照を順番に並べた
   ハッシュ:あるオブジェクトを他のオブジェクトへ対応
 いずれもイテレーターメソッドを数多く提供




■2.1 配列

・配列:いくつかのオブジェクトへの参照を順に並べたもの
  要素:個々のオブジェクト参照
 →オブジェクトそのものではない
  オブジェクト地震を更新すると、配列要素の値も変化




■2.1.1 配列の構築

・配列リテラル記法
 要素をそのまま並べ、[]でくくる
  c=[a,b,"3","文字列"]

・配列の要素は、同一の型である必要はない
・ネスとした配列も作成可能




■2.1.2 配列参照
・配列の要素は0で始まる番号で順番
  →該当する要素がない添え字はnilを返す

・負の添字
 末尾から逆順に要素を指す
 c[-1] = c[c.length-1]

・長さ付き添字
 位置と長さを指定 , で区切る

cが[1,"str",3,"文字列",nil]のとき

 c[1,3] は、["str",3,"文字列"]

・範囲添字
 範囲を..で指定、...だと、末端を含まない
c[0..1]は[1,"str"]
 c[0...1]は[1]




■2.1.3 添字代入

・添字代入を使うと、配列の中身を変えられる

a[0] = 3
a[0,3]='a','b','c'




■2.1.4 配列の比較
・対応する要素が全て同値のとき、配列は同値(==)となります。




■2.1.5 様々なメソッド

・配列はそれ自体オブジェクト
・特定の値があるか? Array#include?
  →?が付くと真偽値を返す
・重複要素uniqとuniq!
  →!が付くと破壊的メソッド




■2.1.6 ブロック付きメソッドとイテレーター

 ブロック付きメソッド


・イテレーター each

  a={"a","b","c"}
  a.each do |i|
    print i + " "
  end


・写像(map) map
  a={"sat","sun","mon"}
  s= a.map { |i| i[0,1] }

  sは、{"s","s","m"}

・ソート sort
a.sort
数値に変換して比較するとき
a.sort{|x,y| x.to_i <=> y.to_i}
<=>は、本当は小文字(宇宙船演算子)


・選択 select




こんかいはこんなところ

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

スマホを安全に業務利用するためのガイドライン

2011-09-08 14:36:03 | ケータイ

スマホに悪影響およぼすウイルス!マカフィー、8 月のサイバー脅威の状況を発表
http://news.livedoor.com/article/detail/5841766/

のように、スマートフォンにも、最近セキュリティが必要になってきている。

そこで、

スマホを安全に業務利用するためのガイドライン、JSSECがβ版を公開し意見を募集
http://itpro.nikkeibp.co.jp/article/NEWS/20110907/368252/

ということで、ガイドラインが出来たそうな。

これ
http://www.jssec.org/dl/guidelines2011_beta.pdf
をみると、それぞれの状況ごとに、脅威、解説(リスク)と対策が書いてある。

みといたほうがいいかな・・・


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

PMBOKのお勉強 その7 - 1.6

2011-09-07 20:42:48 | そのほか
今、

プロジェクトマネジメント 知識体系ガイド(PMBOKガイド)第4版
http://www.amazon.co.jp/dp/1933890681

のお勉強をしています。

前回1.5まで行ったので、今回は、1.6をやります。




■1.6 プロジェクトマネージャーの役割

・プロジェクトマネージャー
  プロジェクト目標を達成するために
  母体団体が任命する人物

・機能部門マネージャー:機能分野を管理すること注力
・業務運用マネージャー:コアビジネスの一分野に責任

・プロジェクトマネージャーは
 ポートフォリオマネージャーやプログラムマネージャーと緊密に連絡
   →プロジェクト目標を確実に達成させる
    プログラム計画にプロジェクト計画を整合させるため

・ツールと技法だけでは十分ではなく
 特定分野のスキル及び一般的マネジメント能力のほかに以下の特性必要
   知識
   執行能力
   人間性

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Androidをeclipseでやってたら、main.xmlでエラー

2011-09-07 17:12:57 | ケータイ
「エラーが発生しました。詳細については、エラー・ログを参照してください。」

ほお、さっぱりわからん・・・

ここ

Android 「main.xmlが開けない」「Graphical Layoutが表示されない」取りまとめ
http://www.hlplus.jp/php/blog/index.php?UID=1298450960

に書いてあった。

(1)コマンドプロンプトをひらき、eclipse.exeのあるフォルダにいって、
eclipse.exe -clean %*

を実行すると、立ち上がる。

(2)ここで、resのlayoutにある、main.xmlを開くと
   開けるようになる。

   が、そうすると、なにも表示されない画面になる。


(3)この場合、右上の、Android3.0 のような、バージョン番号指定のところがあるから、
   そこから、適当なバージョンを指定すると・・・

・・・なんということでしょう!

ちゃんと表示される。

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

2010年度の有料アプリダウンロード課金市場は67.8億円

2011-09-07 12:28:39 | トピックス
ただし2010年度のスマートフォンアプリ市場はiOSが8割超
Androidの有料アプリ市場って何億(^^;)
→こたえはWebで・・・
(っていうのは、面倒な人は、下の引用文を見ると書いてあるよ)


ここのサイト

スマートフォンアプリ市場と利用実態(2011年9月)
http://www.m2ri.jp/newsreleases/main.php?id=010120110906500

(このエントリ内の斜体及び表題は上記サイトより引用)


■2010年度の有料アプリダウンロード課金市場は67.8億円

 有料アプリ利用経験のある947人を対象に、利用ジャンル別のアプリ購入金額について質問した結果から、アプリ市場を算出した結果、2010年度の有料アプリダウンロード課金市場は67.8億円となった。

■2010年度のスマートフォンアプリ市場はiOSが8割超

 スマートフォンアプリ市場をOS別にみると、無料・有料合わせたダウンロード数では「iOS」2億1,953万回(72.7%)、「Android」6,978万回(23.1%)、「その他」1,271万回(4.2%)となった。有料アプリダウンロード課金市場では「iOS」57.3億円(84.5%)、「Android」8.3億円(12.2%)、「その他」2.2億円(3.3%)となった。


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

初めてのRubyを読む その6 1.5

2011-09-07 09:34:23 | Ruby
「初めてのRuby」を読むの続き
今回は、

1章 ようこそ、Rubyのある生活へ
1.5 文法と機能




■1.5.1 式と区切り
・式と式の間は、改行又はセミコロンで区切る




■1.5.2 ホワイトスペース

・空白、タブをホワイトスペースとして扱う
  →ホワイトスペースは無視される

・改行は、セミコロンと同様に文の終わりとして認識される
  →好きなところには挿入できない




■1.5.3 入出力

・IOクラス、Fileクラスを中心に構成
・標準入出力に関しては、printfやputsのような
 組み込みのユーティリティ関数を使ったほうが便利





■1.5.4 制御式

・{}でなくendを使う点以外は、Cとさして変わらない
・例
 case n % 2
 when 0 then false
 when 1 then true
 else raise "error"
 end

・型変換
 Rubyは強く片付けされた言語
  →型変換必要
    to_i,to_s,to_f,to_io




■1.5.5 ブロック付きメソッド

・メソッド呼び出しの後 do...endまたは{...}
・メソッドはそのブロックを実行または変数保存など、処理をする
・例
  ・イテレータ
    (1..100).each do |i|
      いろいろなしょり
    end

  ・リソース管理
  ・コールバック





■1.5.6 オブジェクト指向

・Rubyが扱うデータ→全てオブジェクト
・オブジェクトは内部状態を保持
  →メソッドを呼び出して素性を問い合わせ可能
    →pメソッド
・すべてのクラスは、Classクラスのインスタンス(オブジェクト)
   →クラスはオブジェクトを操作するように、操作できる

・特異メソッド
 特定のオブジェクトにだけ属するメソッドを作成できる

・演算子
 大部分の演算子はメソッドのシンタックスシュガー




1.6は、まとめなので省略。つぎは2章。

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

プロセス改善の基礎とSPEAK-IPAに行ってきた!-その2

2011-09-06 18:04:43 | トピックス
IPAの「プロセス改善の基礎とアセスメントモデルSPEAK-IPA紹介」に行ってきました。

後半の
「SPEAK-IPA概説とセルフアセスメント」
の話のまとめ




■ふくしゅう

・ISO/IEC15504:ものさしを作るときの基準
  CMMIの段階モデルと違い、連続表現の二次元モデル
  プロセス項目で推奨されるのは、PRM(プロセス参照モデル)
    →ISO/IEC12207 AMD1、AMD2
     ISO/IEC15288

・ISO/IE15504は統一フレームワークで、個別には
   →CMMI
    SPICE
    SPEAKーIPA




■SPEAK-IPAの特徴
・アセスメント手順も含む
・ダウンロード可能、フリーに使える
  新日鉄ソリューションズ SPEAK  -
                   |-SPEAK-IPA
  JISA          SPINACH -





・標準モデルと軽量モデル
  軽量モデルはアセッサでなくても使用可能





■SPEAK-IPAの体系

・第一部から第六部あり、対象者によって読んでもらいたいところ違う
・標準モデル ISO/IEC 12207 AMD1(運用プロセスは入っていない)
 軽量モデル もっと簡単にしている

・能力軸(Y軸)とプロセス(X軸)との交わりにモデル要素対応表を置いていて、
 これをチェックする


・モデル要素対応表
 基本プラクティスBP(水準1にしかない)
 一般プラクティスGP
 
   水準1 プロセスをやっているか
   水準2 プロセス→生産物
   水準3 標準プロセス(プロセス定義)→展開(プロジェクトに展開)
   水準4 プロセス測定→プロセス制御(管理限界を超えたらどうするか)
   水準5 プロセス革新:プロセスそのものを変える





■SPEAK-IPAの手順

・モデル要素対応表をチェック
    ↓
・アセスメントシートを作る
      IPAでは、雛形を提供しようかと思っているらしい
    ↓
・プロジェクトプロファイルに埋める




■まずは・・・
 セルフアセスメントから


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

PMBOKのお勉強 その6 - 1.5

2011-09-06 14:45:50 | そのほか
今、

プロジェクトマネジメント 知識体系ガイド(PMBOKガイド)第4版
http://www.amazon.co.jp/dp/1933890681

のお勉強をしています。

前回1.4まで行ったので、今回は、1.5をやります。




■1.5 プロジェクトマネジメントと定常業務マネジメント

定常業務
 同じ製品を生産したり、サービスを繰り返し提供したり
   →継続的に実行する組織の機能(会計業務など)
   →継続的な性質を持っている業務
 ビジネス・プロセス・マネジメントまたは定常業務マネジメントが必要


プロジェクト
 有期性のある業務
 プロジェクトマネジメントが必要


プロジェクトと定常業務の接点
 プロダクトライフサイクルの中で
  各プロジェクトの終結フェーズ
  新しい製品開発など
  定常業務の終了
 要素成果物と関連知識の移管がプロジェクトと定常業務の間で行われる





  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

初めてのRubyを読む その5 1.4

2011-09-06 10:42:06 | Ruby
初めてのRuby」を読むの続き
今回は、

1章 ようこそ、Rubyのある生活へ
1.4 インタプリタの実行




■1.4 インタプリタの実行

ruby -v
 バージョンをみる




■1.4.1 Hello World

(1)テクストエディタで、以下のように入力、hello.rbでセーブ

#!/usr/bin/ruby
puts("Hello,World!")
puts "Hello,World!"


(2)シェル上で以下のようにタイプ
ruby hello.fb

(3)以下のように表示される
Hello,World!
Hello,World!




■1.4.2 対話型実効環境

irbを用いると、その場で対話的にRubyプログラムを実行できる

irb

irbを抜けるには、quitと入力する




■1.4.3 コマンドラインデバッガ

ruby -rdebug hello.rb




■riコマンド
クラス名やメソッド名を入力すると、リファレンスがその場で出力
ri file#read
ri String



  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする