ArchitecureではEntitiesと呼ばれる層にだいたい対応しています。ここの命名はドメイン駆動設計の概念と混ざって曖昧になってしまっていますが、適当な命名が思い付かなかったのでこう呼びます。modelの役割は、ドメインの概念を表現したデータ構造の定義です。UseCaseで定義した機能に合わせて、質問を表すモデルと、質問作成要求を表すモデルが必要になるので定義します。必要になりますがここでは省略します。Member)InteractorQuestionsInteractorInteractorの役割は、UseCaseで定義した機能の実装です。実際にDBや外部APIから取得する部分は実装しません。modelの永続化、取得はRepositoryの役割です。質問の登録機能と、質問の取得機能を実装します。加工などはしないので、Repositoryのメソッドを呼んだ結果をそのまま返しています。実際のデータ取得処理は実装しません。注入するだけです*4。データ操作部分の実装に依存しなくなります。先が、RDBだろうが、外部APIだろうが、ローカルのファイルだろうが、S3だろうが関係ありません。