You are on page 1of 13

Professional Traditional Web Developer

サンプル試験

開始前の注意事項

このサンプル試験には、OutSystems 11 Professional Web Developer試験の準備に役立つ問題が15問

掲載されています。できるだけ本番に近い試験環境を準備することを推奨します。

● 周りに人がいない、静かな部屋を確保します

● このドキュメントの最終ページ以外を印刷します。

● ストップウォッチまたはタイマーを使用して40分(推奨)で行います。

このドキュメントの最終ページに解答が記載されています。解答は先に見ないようにし、試験終了後に

、正誤を確認するために使用するようにしてください。

サンプル試験中の注意事項

本番に近い試験環境で取り組むために、以下の点を心がけてください。

● 各問題と選択肢を慎重に読みましょう。

● あわてずに取り組みましょう。後から問題を見直して解答を変更することもできます。

● 最後に見直したい問題には印を付けましょう。

● 解答は1問につき1つだけ選択してください。正解は1つだけです

● すべての問題に解答しましょう。未解答の問題は得点になりません。
● 試験中はすべての電子機器の電源をオフにしましょう。

● 試験中は他の資料を使用したり参照したりしないでください。

サンプル試験終了後の注意事項

試験終了後、このドキュメントの最終ページに記載された解答を参照して答え合わせを行い、

正解の合計数を数えます。合格点は70%以上なので、11問以上正解する必要があります。間違

えた問題に関しては、教材でそのトピックに関する説明を復習することを推奨します。
サンプル試験問題

1. 何百万ものレコードが存在するCustomerエンティティで、図のようなフィルタを使用して
レコードを取得します。次のうち、取得にかかる時間を最も短くできる方法はどれですか。

⃞ A. インデックス1を作成する。

⃞ B. インデックス2を作成する。

⃞ C. インデックス3を作成する。

⃞ D. インデックス1および2を作成する。
2. 次のうち、図に示されたデータモデルに関する説明として正しいものはどれですか。

⃞ A. EmployeeとTeamには多対多のリレーションがある。EmployeePictureが存在する

Employeeは削除できる。

⃞ B. DepartmentとEmployeeには1対多のリレーションがある。Employeeが存在する

Departmentは削除できない。

⃞ C. DepartmentとEmployeeには1対多のリレーションがある。Employeeが存在する

Teamは削除できる。

⃞ D. EmployeeとEmployeePictureには1対1のリレーションがある。EmployeePictureが存

在するEmployeeは削除できない。
3. 次のうち、SQL要素に関する説明として正しいものはどれですか。

⃞ A. コンパイラによってクエリが最適化されるため、使用するアトリビュートのみが取得さ

れる。

⃞ B. Max Recordsプロパティは、データベースエンジンによって返される行数を制限する。

⃞ C. SELECT以外のクエリでは出力ストラクチャは必要ない。

⃞ D. クエリの結果は、任意の時間(分単位)キャッシュすることができる。

4. 次のうち、画面の動作速度の改善方法として推奨されるものはどれですか。

⃞ A. データベース内のデータを適切に構造化することによって、極力Preparationでクエリ

結果を処理しないようにする。

⃞ B. Preparation中にできる限りデータの事前処理を行い、画面アクションの操作を高速化

する。

⃞ C. Preparationフロー内の複雑なSQLクエリを避け、自動的に最適化されたAggregateを

利用したFor Eachループに置き換える。

⃞ D. Preparationで収集した情報をセッション変数に保存し、後続のリクエストで処理を繰

り返さなくてよいようにする。
5. 複数のFunctionが定義され、アクセス頻度が高い画面の1つのみで使用されるJavaScriptの

かたまりがあります。このコードはどこに配置するのが適切ですか。

⃞ A. このコードは1箇所でのみ使用されるため、エスケープされていないExpressionを使用

してその画面内で直接展開する。

⃞ B. その画面のJavaScriptプロパティ内に配置する。これによりブラウザでのキャッシュが

可能になり、コードはその画面内でのみ使用される。

⃞ C. 関数の戻り値として配置する。これによりコードが分離され、画面のエスケープされて

いないExpression内で関数を呼び出すだけで再利用可能になる

⃞ D. モジュールのJavaScriptプロパティ内に配置し、再利用性を高める。ブラウザでのキャ

ッシュが可能なのはここだけである。

6. 「OutSystemsの視覚的な要素では、インラインCSSを使用する必要がある」という文につ

いて考えます。次のうち、説明として正しいものはどれですか。

⃞ A. 正しい。インラインCSSは定義しやすいため、使用すると開発が高速になる。

⃞ B. 正しくない。インラインCSSを使用するとページサイズが増加するため、パフォーマン

スが低下する。

⃞ C. 正しくない。インラインCSSを使用すると、その要素に他のCSSクラスを適用できなく

なる。

⃞ D. 正しい。インラインCSSを使用するとService Studioで自動的にプレビューが作成され

、その要素の実際のルックアンドフィールを確認することができる。
7. 2つのモジュール(DirectoryおよびDirectory_CS)を含むアプリケーションがあるとしま

す。開発者は、UIを含まないコアモジュールであるDirectory_CSモジュール内のサーバーアク

ションをデバッグする必要があります。このサーバーアクションを使用するのは、すべてのア

プリケーション画面を含むDirectoryモジュールです。次のうち、サーバーアクションのデバッ

グ方法として最適なものはどれですか。

⃞ A. サーバーアクションの開始点にブレークポイントを設定する。Directory_CSで、デバッ

グのエントリモジュールをDirectoryモジュールに設定する。Directory_CSモジュールでデバ

ッガを開始し、アプリケーションを操作する。

⃞ B. サーバーアクションの開始点にブレークポイントを設定し、Directoryモジュールでサー

バーアクションが呼び出される箇所にもブレークポイントを設定する。Directory_CSモジュー

ルとDirectoryモジュールの両方でデバッガを開始し、アプリケーションを操作する。

⃞ C. サーバーアクションの開始点にブレークポイントを設定し、Directoryモジュール内でサ

ーバーアクションが呼び出される箇所にもブレークポイントを設定する。Directory_CSモジュ

ールでデバッガを開始し、アプリケーションを操作する。

⃞ D. サーバーアクションの開始点にブレークポイントを設定する。Directoryで、デバッグ

のエントリモジュールをDirectory_CSモジュールに設定する。Directoryモジュールでデバッ

ガを開始し、アプリケーションを操作する。
8. 次のうち、アプリケーションのアーキテクチャの違反を解決するとき、最初に対処すべきも

のはどれですか。

⃞ A. 基盤モジュール間での直接的な循環参照。

⃞ B. コアモジュール間での直接的な循環参照。

⃞ C. エンドユーザーモジュールへの上方参照。

⃞ D. コアモジュールへの上方参照。

9. Multiplierサービスアクションは、2つの入力パラメータの乗算を実行します。プロパティは

図のとおりです。しかし、このアクションではResultが正しく計算されなかったため、ロジッ

クを修正しました。正しいResultを得るには、このアクションのコンシューマモジュールを更

新する必要がありますか。正しい答えと理由を選んでください。

⃞ A. いいえ。サービスアクションを変更してもコンシューマを更新する必要はない。

⃞ B. いいえ。サービスアクションのロジックを変更してもコンシューマを更新する必要はな

い。

⃞ C. はい。必須入力パラメータが1つ以上あるサービスアクションを変更した場合、コンシ

ューマを更新する必要がある。

⃞ D. はい。参照されているアクションを変更した場合は、必ずコンシューマを更新する必要

がある。
10. 次のうち、OutSystemsが推奨するアーキテクチャのベストプラクティスはどれですか。

⃞ A. 基盤モジュールにはコアサービスモジュールへの上方参照を含めることができる。

⃞ B. 基盤モジュールにUIパターンを含めることはできない。

⃞ C. 基盤モジュールには読み取り専用のコアエンティティを含める必要がある。

⃞ D. 基盤モジュールにビジネスロジックを含めるべきではではない。

11. 以下のアクションはタイマーに関連付けられています。このアクションは、大量のデータ

を含むTempReportsエンティティのデータを処理してレポートを生成します。推奨されるベス

トプラクティスに沿ったタイマーにするうえで、この実装に不足している処理は何ですか。

⃞ A. TempReportsのバッチ処理後にトランザクションをコミットする。

⃞ B. 時間を適切に管理し、より多くのTempReportsを処理するまでタイムアウトしないよ

うにする。

⃞ C. 処理が必要なレコードが残っている場合は、タイマーの新しいインスタンスを起動する

⃞ D. 処理済みのTempReportsを削除し、処理の重複を避ける。
12. 外部データベースサーバーからデータを読み取る必要があります。外部テーブルはルック

アップテーブルで、ローカルデータと外部データの結合が必要です。この問題に対処するには

、どのようにすればよいですか。

⃞ A. Service Centerでデータベース接続を定義し、それをIntegration Studioで使用して、

エクステンションにエンティティをインポートする。外部エンティティからローカルエンティ

ティにデータを同期するモジュールを作成して、結合を実行する。

⃞ B. プラットフォームのデータベースサーバーにデータベースリンクを作成し、それを

Integration Studioで使用して外部エンティティをインポートする。外部エンティティとロー

カルエンティティの間で直接結合を実行する。

⃞ C. Service Centerでデータベース接続を定義し、それをIntegration Studioで使用して、

エクステンションにエンティティをインポートする。外部エンティティとローカルエンティテ

ィの間で直接結合を実行する。

⃞ D. Integration Studioでエクステンションを作成し、外部エンティティから直接データを

取得する.NET APIを実装する。ストラクチャを使用してデータを一時的にメモリに保存し、そ

のデータをローカルエンティティと結合する。
13. モジュールでいくつか変更を行い、パブリッシュして変更を保存するシナリオについて考

えます。パブリッシュを実行すると、以下のダイアログが表示されました。次のうち、説明と

して正しいものはどれですか。

⃞ A. Override With My Versionオプションを選択すると、自分のバージョンがパブリッ

シュ済みバージョンになり、john.smithがパブリッシュした変更のバージョンはサーバーから

削除される。

⃞ B. Merge and Publishオプションを選択すると、自分の変更とjohn.smithがパブリッシ

ュした変更が自動的にマージされる。衝突がある場合、最新の変更が採用される。マージの完

了後、モジュールがパブリッシュされる。

⃞ C. Merge and Publishオプションを選択すると、自分の変更とjohn.smithがパブリッシ

ュした変更のマージが自動的に試行される。衝突がある場合は、食い違いを手動で解決する必

要がある。衝突がない場合は、モジュールがパブリッシュされる。

⃞ D. Compareオプションを選択すると、自分の変更とjohn.smithがパブリッシュした変更

が自動的に分析される。衝突がある場合は、衝突する変更のプレビューを示す新しいダイアロ

グが表示される。衝突がない場合は、モジュールをパブリッシュするための新しいダイアログ

が表示される。
14. 次のうち、SQLインジェクション攻撃に対して脆弱なパターンはどれですか。

⃞ A. インライン展開されたクエリパラメータを使用するSQL要素を含んでいる。

⃞ B. Anonymousロールがチェックされている画面からCreate/Updateエンティティアクシ

ョンを呼び出している。

⃞ C. HTTPSセキュリティが有効になっていないログイン画面を使用している。

⃞ D. AggregateまたはSQL要素のフィルタでローカル変数を使用している。

5. 次のうち、EncodeHTML()、EncodeURL()、EncodeJavaScript()の各関数に関する説明と

して正しくないものはどれですか。

⃞ A. EncodeURL()は、外部サイトのURLを動的に作成する場合に使用すべきである。

⃞ B. EncodeJavaScript()は、アプリケーションをクロスサイトスクリプティング(XSS)の

脆弱性から保護する。

⃞ C. これらの関数はすべてAggregate内で使用することができ、Aggregateの実行前に評価

される。

⃞ D. EncodeHTML()は、エンドユーザーによって入力されたコンテンツを含むエスケープさ

れていないExpressionで使用すべきである。
解答

1. C

2. A

3. D

4. A

5. B

6. B

7. A

8. C

9. B

10. D

11. D

12. A

13. C

14. A

15. B

You might also like