順位検索ツールの仕様・要件について考えてみます。
スポンサードサーチ順位検索ツールで実現できたら嬉しい機能として、以下のような要望をいただいています。
・広告を出している検索キーワードは複数あるので、1つ1つ手で順位をチェックするのはしんどい。
各キーワードについて、自分のサイトが検索順位のどれくらいの位置にいるのかを簡単に確認したい。
・自サイトの順位の推移を時系列グラフで見たい。
・ライバルサイトと比べて自分のサイトの位置関係を把握したい。
これに加えて、
どうせ作るんだったら、ネットショップのオーナーなど同じ機能を欲しがっている人もいそうだから、
不特定多数に公開できる形で作ったらどうかと考えました。
そうすると必要になってくる機能は
・複数ユーザに対応できるようにする。
→ ユーザIDでログインする仕組みが要る。
・会員に対して課金して、採算が取れる仕組みにしたい。ただし無料で使えるサービスも同時に
作っておいたほうがいいだろう。
→ 振込みやクレジットカードなど何らかの手段でお金を受け取れる仕組みがいる。
などです。
これらの要件を考えると、システム的にも考慮しないといけない点があります。
・時系列グラフ表示するには、毎日定期的にデータを収集する必要がある。
→ スケジュールでデータを定期的に収集してくる仕組みが必要
・検索データはYahooに問い合わせてとってくるが、その手段を検討する必要がある。
→ 検索用APIが公開されていればよいが、それがなければ、人がパソコンから手で操作するのと
同じようにブラウザで表示される画面表示イメージ(HTML)から
必要な情報をこちらで抜き出す方法でやる必要がある。
・そんなことをしてYahooに怒られたりしないのか?
→ 怒られないように微妙なサジ加減でやればなんとかなるんじゃないかとw
こういった要件を満たせるような仕組みを考えていくことになります。
ちなみにこのような仕様や要件を決める作業を要求分析と言います。
このあと、設計があってコーディング(プログラミング)、テストという流れでやるのが一般的です。
この図はウォーターフォールモデルという、作業が一直線に進むやり方です。基本的に後戻りをしないやり方です。
これに対して、スパイラルモデルというのもあります。
これは少しずつ作っていきながら機能をどんどん追加していくやりかたで、どちらかというと計画性のない柔軟に開発できるやり方です。
作って考えて、作って考えて、の繰り返しでどんどん大きくしていく形なので、途中で方針を変えることが比較的容易で、作っているものもイメージしやすいという長所があります。
組込み製品などはウォーターフォールモデルでやることが多いですが、Webサービスなんかは簡単にプロトタイプが作れたりするのでスパイラルモデルでやることが多いんじゃないかと思います。
今回私もスパイラルモデルでやっていこうと思います。
< 参考>
プロセスモデル
http://www.ics.kagoshima-u.ac.jp/edu/SoftwareEngineering/process-model.html
過去のエントリ
【連載】Webサービス制作日記#01 何を作ろうとしているか
関連記事
2010/10/31 Webサービス制作日記 Webサービス制作日記
【連載】Webサービス制作日記#09 CakePHPのデータベースアクセスは便利
CakePHPは、PHPの開発でよく使う機能や方法論をフレームワークという形であらかじめ用意してくれていますので、1からPHPでコードを書く必要が無いことが多いです。 データベースへのアクセスは通常はSQLを使いますが、 …
"【連載】Webサービス制作日記#09 CakePHPのデータベースアクセスは便利" の続きを読む
2010/10/17 Webサービス制作日記 Webサービス制作日記
【連載】Webサービス制作日記#08 グラフ描画ツールを使う
グラフ描画ツールとして、jqPlotを使うことにします。 jqPlotは、jQueryのプラグインとして動作します。 javascriptのグラフ描画ツールは最近かなり充実してきている感じがします。jQueryは …
"【連載】Webサービス制作日記#08 グラフ描画ツールを使う" の続きを読む
2010/10/09 Webサービス制作日記 Webサービス制作日記 名称未設定
【連載】Webサービス制作日記#07 cronでスケジュール実行
スポンサードサーチ検索ツールには、リアルタイムに検索できる機能だけではなくて、過去のデータを遡って表示したり時系列グラフ表示する機能をつけます。 そのためには、過去の順位情報を残しておかなければなりません。 毎日定期的に …
"【連載】Webサービス制作日記#07 cronでスケジュール実行" の続きを読む
2010/10/05 Webサービス制作日記 Webサービス制作日記
【連載】Webサービス制作日記#06 jQueryでAjaxする
スポンサードサーチ検索ツールは、一度に複数の検索を実行出来るようにしています。 ユーザがあらかじめ設定しておいた複数のキーワードごとに、一度に検索を実行して現在順位をYahooからとってきて一度に表示します。 しかしここ …
"【連載】Webサービス制作日記#06 jQueryでAjaxする" の続きを読む
2010/09/29 Webサービス制作日記 Webサービス制作日記
【連載】Webサービス制作日記#05 HTMLパーサを使う
順位検索ツールの処理フロー スポンサードサーチ順位検索ツールは、以下のようなデータのやりとりをすることになります。 ユーザからのリクエストをWebサーバで受けたら、それをトリガにしてYahooに検索に行きます。 …
"【連載】Webサービス制作日記#05 HTMLパーサを使う" の続きを読む
YahooのAPIはあるっぽいね。
http://developer.yahoo.co.jp/
これで事足りるかわかんないけど。。。
ちなみに、スパイラルは小規模の開発に向いてます。
大規模開発では収拾つきません。
#UMLネタも交えてほしいとか言ってみるテスト・・・
ひがしぐちさん
コメントありがとうございます。
紹介してくれたデベロッパーサイト、見たことあるかも!
でもスポンサードサーチ用のAPIはなさそうなので、HTMLからパースすることになると思います。
スパイラルモデルは確かに大規模でやると発散しそうですね… いつまでも終わらないというかw
UMLモデル?は仕事でちょっと使ったことあるけどあまり詳しくないので自信ないです。
このブログは僕が知っていることのみをドヤ顔で紹介するものですのでw
あと、主に非プログラマさん向けに書いているので、コードなどあまり専門的なものは極力出さないようにしようかなあと考えています。
こんばんは~。
わかりやすく書いてくださっているので
わたしのような初心者にもすごくためになります。
続きを楽しみに見ています・・・
ありがとうございます。
途中で挫折しないようにがんばります。