コード設計書 - nurs.or.jpyotaro/codedesign.pdf · 行番 主キー 1 2 3 4 5 6 7 8 9 10...
TRANSCRIPT
コード設計書
~ポートフォリオサイト@卒業制作~
髙山 和範
目 次
1.データ定義書
2.クラス定義書
3.設計シーケンス図
データ定義書
担当
日記カテゴリ(diaryDivision)
diaryID
categoryID
日記(diary)
ID(diaryID)
HTML
カテゴリ名(categoryName) タイトル(diaryTitle)
本文(diaryBody)
コメント(comment)
ID(commentID)
日時(commentDate)
コメント者(commentUser)
タイトル(commentTitle)
本文(commentBody)
コメント元(diaryID)
アクセス元(commentIP)
ID(categoryID)
カテゴリ(category)
分類(categoryDivision)
E-R図システム名
Webサイト
サブシステム名
行番 主キー
1 ○
2
3
4
5
6
7
8
9
10
テーブル名 担当
category
大分類(1)+小分類(1)の二桁
ローマ字
漢字
英単語
INT(11)
VARCHAR(20)
VARCHAR(45)
VARCHAR(45)
categoryName
meishou
categoryDivision
categoryID
フィールド名 型 外部キー 初期値 備考
データ定義書システム名
Webサイト
サブシステム名
HTML
行番 主キー
1
2
3
4
5
6
7
8
9
10
テーブル名 担当
diaryDivision
categoryID
deleted
diary.diaryIDINT(11)
INT(11)
TINYINT(1)
diaryID
フィールド名 型
category.categoryID
データ定義書システム名
Webサイト
サブシステム名
HTML
外部キー 備考初期値
行番 主キー
1 ○
2
3
4
5
6
7
8
9
10
備考
YYYYMMDDHHMM
改行を<BR>にして保存
初期値
テーブル名 担当
diary
diaryID
フィールド名
diaryTitle
diaryBody
deleted
データ定義書システム名
Webサイト
VARCHAR(12)
VARCHAR(45)
TEXT
TINYINT(1)
サブシステム名
HTML
外部キー型
行番 主キー
1 ○
2
3
4
5
6
7
8
9
10
備考初期値
プログラム側でインクリメント
投稿日時を自動取得
アクセス元アドレス
改行を<BR>にして保存
データ定義書システム名
Webサイト
サブシステム名
HTML
外部キー
commentID
フィールド名 型
VARCHAR(12)
VARCHAR(45)
commentBody
diaryID
commentIP
deleted
INT(11)
VARCHAR(12)
VARCHAR(20)
CARCHAR(45)
TEXT
commentDate
commentUser
commentTitle
TINYINT(1)
テーブル名 担当
comment
diary.diaryID
プログラム設計書
クラス定義書
設計クラス図システム名 サブシステム名 ユースケース
担当卒業制作 日記
可視性
private
private
private
private
private
private
private
可視性
public
public
public
public
public
public
備考
コンストラクタで初期化(真ん中の4つのみ石を置く)
countStone Array 黒、白、空の数
getBoard Array 8×8のArray
setStone void int,int,int
getState int int,int
void int,int
setWhite void int,int
メソ
ッド
メソッド名 返却値 引数リスト 備考
setBlack
cntWhite int 2 白石の数
cntEmpty int 60 空白の数
WHITE int 1 CONST
cntBlack int 2 黒石の数
EMPTY int 0 CONST
BLACK int -1 CONST
サブクラス
フィー
ルド
フィールド名 型 初期値 備考
place Array
実装インターフェース
継承クラス
インポート
クラス名 OthelloBoard
パッケージ games
可視性 public
クラス定義書システム サブシステム 担当卒業制作 フラッシュ
可視性
private
可視性
public
public
public
public
public
備考
checkEntryは上下左右、左上、右上、左下、右下方向で裏返せるかをチェックする(checkXXを呼ぶ)
lotateStoneは、裏返す処理を行う(changeXXメソッドを呼ぶ)
getStoneNumbers Array 石の数
checkAll int int,int,int 8bitの数を返す
lotateStone Array int,int,int 裏返す処理
OthelloGame static
checkEntry int int,int
メソ
ッド
メソッド名 返却値 引数リスト 備考
getInstance
サブクラス
フィー
ルド
フィールド名 型 初期値 備考
ob OthelloBoard
実装インターフェース
継承クラス
インポート
クラス名 OthelloGame
パッケージ games
可視性 public
クラス定義書システム サブシステム 担当卒業制作 フラッシュ
可視性
可視性
public
public
public
public
public
備考
setAll void String csv形式文字列
toUpdate String
toString String
String
toDelete String
メソ
ッド
メソッド名 返却値 引数リスト 備考
toInsert
サブクラス DiaryDAO,CategoryDAO,DiaryDivisionDAO,CommentDAO
フィー
ルド
フィールド名 型 初期値 備考
実装インターフェース
継承クラス
インポート
クラス名 AbstractDAO
パッケージ dao
可視性 public
クラス定義書システム サブシステム 担当卒業制作 日記
可視性
private
private
private
private
private
可視性
public
public
public
public
public
クラス定義書システム サブシステム 担当卒業制作 日記
クラス名 DiaryDAO
パッケージ dao
可視性 public
実装インターフェース
継承クラス abstractDAO
インポート
サブクラス
フィー
ルド
フィールド名 型 初期値 備考
diaryID int
diaryDate String
diaryTitle String
diaryBody String
deleted boolean false
メソ
ッド
メソッド名 返却値 引数リスト 備考
toInsert String
toDelete String
toUpdate String
toString String
setAll void String csv形式文字列
備考
可視性
private
private
private
可視性
public
public
public
public
public
クラス定義書システム サブシステム 担当卒業制作 日記
クラス名 DiaryDivisionDAO
パッケージ dao
可視性 public
実装インターフェース
継承クラス abstractDAO
インポート
サブクラス
フィー
ルド
フィールド名 型 初期値 備考
diaryID int
categoryID int
deleted boolean false
メソ
ッド
メソッド名 返却値 引数リスト 備考
toInsert String
toDelete String
toUpdate String
toString String
setAll void String csv形式文字列
備考
可視性
private
private
private
private
可視性
public
public
public
public
public
クラス定義書システム サブシステム 担当卒業制作 日記
クラス名 CategoryDAO
パッケージ dao
可視性 public
実装インターフェース
継承クラス abstractDAO
インポート
サブクラス
フィー
ルド
フィールド名 型 初期値 備考
categoryID int けた別コード
categoryName String ローマ字の名称
meishou String 漢字の名称
categoryDivision String 分類名
メソ
ッド
メソッド名 返却値 引数リスト 備考
toInsert String
toDelete String
toUpdate String
toString String
setAll void String csv形式文字列
備考
可視性
private
private
private
private
private
private
private
可視性
public
public
public
public
public
クラス定義書システム サブシステム 担当卒業制作 日記
クラス名 CommentDAO
パッケージ dao
可視性 public
実装インターフェース
継承クラス abstractDAO
インポート
サブクラス
フィー
ルド
フィールド名 型 初期値 備考
commentID int プログラムでインクリメント
commentDate String
commentUser String 投稿者名
commentTitle String
commentBody String
diaryID String
commentIP String アクセス元アドレス
メソ
ッド
メソッド名 返却値 引数リスト 備考
toInsert String
toDelete String
toUpdate String
toString String
setAll void String csv形式文字列
備考
可視性
可視性
public
public
public
public
public
public
public
public
public
public
public
public
public
public
クラス定義書システム サブシステム 担当卒業制作 日記
クラス名 DataControl
パッケージ dao
可視性 public
実装インターフェース
継承クラス
インポート java.sql(SQLException),java.util(List,ArrayList)
サブクラス
フィールド
フィールド名 型 初期値 備考
メソ
ッド
メソッド名 返却値 引数リスト 備考
selectByCategory List String
selectByDate List String
selectByID DiaryDAO long
selectComment List long
updateDiary int String
insertComment int String
insertDiaryDivision int String
selectCategoryByID CategoryDAO int
selectCategoryByName int String,boolean ※
getCategoryMeishou int String diaryIDのカテゴリ
getCategoryMeishou int int categoryiDの名称
getLastCommentID int
updateData int AbstractDAO
insertData int AbstractDAO
備考
※漢字名称またはローマ字名称からカテゴリIDを検索する(漢字の場合は第二引数がtrue)
可視性
private
private
private
可視性
public
public
public
public
private
private
クラス定義書システム サブシステム 担当卒業制作 日記
クラス名 DBExecute
パッケージ dao
可視性 public
実装インターフェース
継承クラス
インポート java.sql(Connection,Statement,ResultSet,SQLException),java.util(List,ArrayList)
サブクラス
フィー
ルド
フィールド名 型 初期値 備考
con Connection
stmt Statement
dbc DBConnection
メソ
ッド
メソッド名 返却値 引数リスト 備考
doSelect String String
doSelectOne String long
doUpdate String String
doCount int String
open void
close void
備考
可視性
private
private
private
可視性
public
public
public
備考
close boolean Connection
Connection synchronized
getInstace static
メソ
ッド
メソッド名 戻り値 引数リスト 備考
getConnection
static
drv String ※ static
url String ※ static
サブクラス
フィー
ルド
フィールド名 型 初期値 備考
dbc DBConnection
実装インターフェース
継承クラス
インポート java.sql(Connection,Statement,ResultSet,SQLException),java.util(List,ArrayList)
クラス名 DBConnection
パッケージ dao
可視性 public
クラス定義書システム サブシステム 担当卒業制作 日記
設計シーケンス図
※ カレンダの日付をクリックした場合の動作
担当ユースケース
日記一覧を見る設計シーケンス図
システム名
卒業制作
サブシステム名
日記
※ カテゴリリストをクリックした場合の動作
設計シーケンス図システム名 サブシステム名 ユースケース
担当卒業制作 日記 日記一覧を見る
設計シーケンス図システム名 サブシステム名 ユースケース
担当卒業制作 日記 日記を読む
※日記を選択したときに自動的に実行される
設計シーケンス図システム名 サブシステム名 ユースケース
担当卒業制作 日記 コメントを読む
設計シーケンス図システム名 サブシステム名 ユースケース
担当卒業制作 日記 日記を書く
設計シーケンス図システム名 サブシステム名 ユースケース
担当卒業制作 日記 コメントを書く
ディレクトリマップ
1.ディレクトリ構成
‥‥‥‥‥‥‥‥‥/ illustrator イラストレータによる制作物
‥‥‥‥‥‥‥‥‥‥‥flash フラッシュによる制作物
‥‥‥‥‥‥‥‥‥‥‥‥‥‥diary(※) Webページ制作
css
img
‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥css スタイルシート
‥‥‥‥‥‥‥‥‥‥img swfを含む画像ファイル
※diaryディレクトリのみyeslets.jpに置く、
それ以外はwww.nurs.or.jp/~yotaro/に置く
2.ディレクトリマップ
(1) ルートディレクトリ
‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥①index.html HOMEページ
‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥②sitemap.html サイトマップ
‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥③profile.html プロフィール
(2) illustratorディレクトリ
‥‥‥‥‥‥‥‥‥‥‥‥‥‥①index.html illustratorトップ
②emargency.html避難所マップ
‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥③logo.html ロゴマーク
‥‥‥‥‥‥‥‥‥‥‥④lets.html lets2.html 資格講座チラシ
‥‥‥‥‥‥‥‥‥‥‥⑤itis.html itis2.html IT支援チラシ
(3) flashディレクトリ
‥‥‥‥‥‥‥‥‥‥‥‥‥‥①index.html flash制作物トップ
‥‥‥‥‥‥‥‥‥②banner.html バナー広告とそのスクリプト
‥‥‥‥‥‥‥‥③slide.html スライドショーとそのスクリプト
‥‥‥④title.html タイトルロゴと縦長バナーとそのスクリプト
‥‥‥‥‥‥‥‥⑤othello.html オセロゲームとそのスクリプト
(5) cssディレクトリ
‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥①menu.css 共通ヘッダ部
‥‥‥‥‥‥‥‥‥‥②toppage.css 制作物トップのスタイル用
‥‥‥‥‥‥‥‥‥‥③sitemap.css サイトマップのスタイル用
‥‥‥‥‥‥‥‥‥‥‥‥④profile.css プロフィールページ用
‥‥‥‥‥‥‥‥‥⑤illustrator.css イラストレータ制作物用
‥‥‥‥‥‥‥‥‥‥‥‥‥⑥flashtop.css フラッシュ制作物用
(6) imgディレクトリ
①タイトル画像
‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥ア.gongendou.gif 制作物トップのタイトル
‥‥‥‥‥‥‥‥‥‥‥‥イ.illustrator.swf イラストレータ制作物のタイトル
‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥ウ.flashtop.jpg フラッシュ制作物のタイトル
‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥エ.copyright.gif フッタ
‥‥‥‥‥‥‥‥‥‥‥オ.photocopyright.gif スライドショーのページのフッタ
②リンク画像
‥‥‥‥‥‥‥‥‥‥‥‥‥ア.topimage.jpg 制作物トップのクリッカブルマップ
‥‥‥‥‥‥‥イ.ai_clickmap.jpg イラストレータトップのクリッカブルマップ
‥‥‥‥‥‥‥‥‥‥ウ.flash_menu.swf フラッシュトップのクリッカブルマップ
エ.ナビゲーションボタン群
‥‥‥‥‥‥‥‥‥‥‥‥a.link_top.gif/link_top_black.gif 制作物トップ
‥‥‥‥‥b.link_sitedesign.gif/link_sitedesign_black.gif サイト設計書
‥‥‥‥‥c.link_codedesign.gif/link_codedesign_black.gif コード設計書
‥‥‥‥‥‥‥‥d.link_sitemap.gif/link_sitemap_black.gif サイトマップ
‥‥‥‥‥‥‥‥‥‥‥e.link_prof.gif/link_prof_black.gif プロフィール
‥‥‥‥‥‥‥‥‥f.link_ai.gif/link_ai_black.gif イラストレータトップ
‥‥‥‥‥‥‥‥g.link_hinanjo.gif/link_hinanjo_black.gif 避難所マップ
‥‥‥‥‥‥‥‥h.link_logomark.gif/link_logomark_black.gif ロゴマーク
‥‥‥‥‥‥‥‥i.link_adlets.gif/link_adlets_black.gif 資格講座チラシ
‥‥‥‥‥‥‥‥j.link_aditis.gif/link_aditis_black.gif IT支援チラシ
‥‥‥‥‥‥‥‥k.link_flash.gif/link_flash_black.gif フラッシュトップ
‥‥‥‥‥‥‥‥‥‥l.link_banner.gif/link_banner_black.gif バナー広告
‥‥‥‥‥‥‥‥‥m.link_slide.gif/link_slide_black.gif スライドショー
‥‥‥‥‥‥‥‥‥‥n.link_title.gif/link_title_black.gif タイトル動画
‥‥‥‥‥‥‥‥o.link_othello.gif/link_othello_black.gif オセロゲーム
③イラストレータ制作物
‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥ア.kasukabemap.jpg 避難所マップ
‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥イ.sensu.jpg ロゴマーク
‥‥‥‥‥‥‥‥‥‥‥‥ウ.ai_yeslets1.jpg/ai_yeslets2.jpg 資格講座チラシ
‥‥‥‥‥‥‥‥‥‥‥‥エ.ai_yesitis1.jpg/ai_yesitis2.jpg IT支援チラシ
④フラッシュ動画
‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥ア.lets_adv.swf バナー広告
‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥イ.threeflips.swf 回転型広告
‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥ウ.yeslets_adv_tate.swf 縦長バナー
‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥エ.yeslets_title.swf タイトルロゴ
(4) diaryディレクトリ
‥‥‥‥‥‥‥①diarygeneral.html Webページ制作物トップ
‥‥‥‥‥‥‥‥‥②selectdiary.html 次の二つを含むフレーム
‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥③caldata.html カレンダー表示
‥‥‥‥‥‥‥‥‥‥‥‥‥‥④category.html カテゴリリスト
‥‥‥‥‥‥‥‥‥‥⑤diarydata.html 次の二つを含むフレーム
‥‥‥‥‥⑥showdiarylist.jsp 選択した(月など)の日記一覧
‥‥‥‥‥‥‥‥‥‥‥‥⑦comment.html コメント部の初期表示
‥‥‥‥‥‥‥‥‥‥⑧caldatajs.html カレンダーのスクリプト
‥‥‥‥‥‥‥‥‥‥⑨showdiary.jsp 選択した日記を表示する
‥‥‥‥‥‥⑩showcomment.jsp 選択した日記のコメントを表示
‥‥‥‥‥‥‥‥⑪diaryjsp.html 日記表示のプログラムソース
‥‥‥‥‥⑫commentjsp.html コメント表示のプログラムソース
(5) diary/cssディレクトリ
‥‥‥‥‥‥‥‥‥①menu.css ナビゲーションボタンのスタイル
‥‥‥‥‥‥‥‥‥‥②diarygeneral.css 日記サイトのスタイル
(6) diary/imgディレクトリ
‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥①diary_top.jpg 日記のタイトル画像
‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥②diary_title.gif 日記のタイトル文字
③ナビゲーションボタン群
‥‥‥‥‥‥‥‥‥‥‥‥ア.link_diary.gif link_diary_black.gif 日記トップ
‥‥‥‥‥‥‥イ.link_calendar.gif link_calendar_black.gif カレンダーJS
‥‥‥‥‥‥‥ウ.link_diaryjsp.gif link_diaryjsp_black.gif 日記表示JSP
‥‥‥エ.link_commentjsp.gif link_commentjsp_black.gif コメント表示JSP