-1

私はアプリケーションを開発しています - ユーザーにおそらく10の質問に答えてもらい、質問ごとに3〜4のオプションがあります。10 番目の質問の最後に、回答に基づいて、特定の解決策を提案する必要があります。何百もの順列と組み合わせがあるため、使用する必要があるロジックとデータベース設計は何ですか?

ありがとう

より詳細な説明を編集

私のアプリケーションを使用して、さまざまな携帯電話会社からのデータ プランを推奨する場合 (ユーザーがインターネットで費やした時間、ダウンロードするファイルの種類などの質問に回答することに基づいて)。したがって、質問 1 に対する回答が a で、質問 2 に対する回答が c である場合、それは特定の計画になります。質問 1 に対する回答が b で、質問 2 に対する回答が c である場合、特定のプランが推奨されます。したがって、10 の質問がある場合、組み合わせは非常に大きくなる可能性があります。それで、これを処理できる特定のアルゴリズムはありますか?

4

2 に答える 2

0

「簡単な」コメントですが、ユーザーがすべての質問に答えるときに、どの会社を推奨できるかの変更をユーザーに表示できるようにすることを検討してください。

たとえば、価格に最も関心がある場合は、最初に答えて、すぐに 3 つの最も安いプラン/製品の推奨事項を確認します。

2 番目の質問はカバレッジである可能性があり、(私の地域で) 最適なカバレッジを持つ 3 つのプランを確認できれば、それも興味深いでしょう。

スマートフォンの機能に関する 3 番目の質問に答えて、インターネットが欲しいと答えた場合、最初の質問では、インターネットを含む 3 つの最も安いプラン/製品が表示されますが、明らかに変更される可能性があります。

等々...

ユーザーが各質問に「飛び込んで」、その回答の全範囲の選択肢を確認できるようにすることも良い考えかもしれません。ユーザーとして、私はそれを感謝します。

上記のコメントは、フォームが私のために作成された場合にどのように評価されるかを示しています。私が実際に価値を置いていないものについての 10 の質問には答えたくありません。ユーザーはそれぞれ異なり、自分のフォームで選択することを好みます。質問。

したがって、上記に基づいて、トップの回答が最も適切なチェックマークが付いた計画/製品になるチェックリストのようなものになります. そして、(ユーザーが各質問に回答/変更するときに)すぐに応答するには、おそらくAJAXが選択されます。

于 2012-08-02T02:26:22.600 に答える
0

I.ロジックは何ですか?

私の理解が正しければ、次のような「ルール」を定義します。

If the answer to question 5. is either A or B then the suggested plan would be planB, otherwise execute the rest of the rules.

したがって、ルール エンジンを使用することになります: http://www.jboss.org/drools/

Ⅱ.データベースの設計はどうなりますか?

これは非常に簡単です:

  • USERS テーブル、
  • QUESTIONS テーブルと
  • 他の 2 つを参照する ANSWERS テーブル

おそらく QUESTIONNAIRE テーブルもあり、QUESTIONS テーブルはそれを参照します。

于 2012-08-01T14:01:25.777 に答える