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

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

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

astah*で業務をまとめ、プログラムまでのトレーサビリティを取る-その8 ER図

2010-06-01 16:31:15 | そのほか


 シリーズastah*で業務をまとめ、プログラムまでのトレーサビリティを取るのつづきです。

 エンタープライズ系の開発をトレーサビリティをとって行う流れをまとめるとこんなかんじ。

  ・ユースケース図
     ↓
  ・アクティビティ図
     ↓
  ・(ユースケースシナリオ=astah*にない)
     ↓
  ・アクティビティの構成を示したクラス図
    ↓           ↓正規化
   画面定義、帳票定義   ER図

前回は、画面定義、帳票定義の話をしました。

今回は、ここから、DB定義、ER図作成についてです。





■変換のしかた=正規化

といっても、それって、画面項目から、保存する必要のある項目を抜き出し、
テーブルに適当に分けなさいということなので、

正規化しなさい

といっていることといっしょです。

つまり、

1.画面項目定義から、保存すべきデータを取り出す。
  既存の項目と関連ある項目は、まとめていく。

2.その中で、繰り返し要素があったら、分ける:第一正規形

3.そうしてできたまとまりをテーブルとして、
  そのテーブルの主キーをきめる。
  主キーが複数項目からなるとき、その項目の一部をきめると、
  他の項目も決定してしまう場合、それは別テーブルにする
  :第二正規形

4.主キー以外で、ある項目が決まると、
  他の項目も決定してしまう場合、それは別テーブルにする
  :第三正規形

という形でテーブルをわけ、DB定義とします。




■ER図

 DB定義ができると、テーブル名をエンティティとみなすことで、ER図がかけます
 (みなしていいのか?という問題はあるが)
 リレーションは、外部参照しているところで、
 カーディナリティは、主キーがあるほうが1、そうでないほうは多(または、0、1)
 です。




■astah*の図

 astah*のプロフェッショナルには、ER図は入っているのですが、
 今回使っているのは、コミュニティ版で、それには入っていないので、
 省略します。




■このあと

 画面定義書から、フレームワークによって、画面部分
 DB定義をもとにDAO部分

が生成され、あとはそれをつなぎます。どこに書けばいいかは、前もってクラス図に描いてあります。

ということで、プログラムにつながってくるのですが、
この部分は、フレームワークや言語によって、ちがってくるので、省略します。

次回は、ステートチャート図



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

WekaでTwitterを分析して、読むべきものだけを抽出する。その1 概要

2010-06-01 11:36:51 | そのほか

 うん、シリーズにしないとやらなそうだし、ちょうど時間ができたので、
 「WekaでTwitterを分析する」というシリーズをやろうと思います。


<<目標>>

 TLをまとめて落としてきて、あるプログラムに掛けると、読むべきつぶやきが抽出されてくる。
 この「あるプログラム」を作成する。


<<方針>>
予測に、ロジスティック曲線を使います。

1.サンプルとなるいくつかの「つぶやき」を抽出して、
  読むべきものと、読まなくっていいものにわける。

2.そのつぶやき全部をmecabで形態素解析して、
  頻度のたかい名詞、動詞を抽出する

3.各つぶやきが、2の名詞、動詞を含んでいるか、それと
  リンクを含んでいるかどうかチェック

4.各つびやきの、3の状態+1の読む読まないをまとめた表を作成

5.それをARFF形式にする

6.Wekaで読み込み

7.ロジスティック回帰でいいかどうかわかんないけど、
  ロジスティック回帰にしちゃえ(^^)分析start!

8.なんとなーくいい予測値の組み合わせを見つけ、
  Coefficientをだして(つーか、Wekaが出してくれるので)
  その値で回帰式を作成

9.以降、TLのつぶやきを、その回帰式に代入し、
  よむべきか、よまないでいいか決定!


ま、こんなかんじでできそうだよね!
2.3は、やりすぎかにゃー。ある程度、言葉をこちら側でしぼったほうがいいかにゃー。


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