Skip to content

バックエンドチェックリスト

本章ではTQS-S/W認証のバックエンド領域に対する詳細チェックリストを定義します。バックエンドチェックリストは開発環境、Javaコードコンベンション、Spring Boot、データベース、ビルド、ファイルアップロードの6つの領域で構成されます。各項目の分類は必須(O)、推奨(R)、任意(S)に区分され、検証方法を併せて明示します。


32.2.1. 開発環境

開発環境チェックリストはプロジェクトチームがTQS規格で定義した標準開発環境を正しく構成しているか検証します。

番号項目分類検証方法
1VSCodeを標準IDEとして使用するO設定ファイル確認
2.vscode/settings.jsonをプロジェクトに含めて共有するOファイル存在確認
3.vscode/extensions.jsonに必須拡張機能を定義するOファイル存在および内容確認
4.editorconfigファイルをプロジェクトルートに含めるOファイル存在確認
5Java 21をランタイムとして使用するOpom.xmljava.version確認
6Node.js LTSバージョンを使用するO.nvmrcファイル確認

開発環境項目はプロジェクトの基本インフラを構成する要素です。全てのチームメンバーが同一の開発環境で作業できるよう、設定ファイルをバージョン管理システムに含めなければなりません。


32.2.2. Javaコードコンベンション

Javaコードコンベンションチェックリストはソースコードの一貫性と可読性を検証します。

番号項目分類検証方法
7Google Java Formatをspotless-maven-pluginで適用するOmvn spotless:check実行結果確認
8フォーマッタ違反件数が0件であるOビルドログ確認
9クラス名にPascalCaseを使用するOコードレビュー
10メソッド名と変数名にcamelCaseを使用するOコードレビュー
11定数名にUPPER_SNAKE_CASEを使用するOコードレビュー
12パッケージ名に小文字のみ使用するOコードレビュー
13機能別パッケージ構造を適用する(レイヤー別パッケージ構造は未使用)Oディレクトリ構造確認
14マジックナンバーを使用せず定数として定義するRコードレビュー
15変更されない変数にfinalキーワードを使用するRコードレビュー
16メソッドあたりの行数を30行以下に保つRコードレビュー
17不要なコメントを記述しない(自明なコードを優先)Rコードレビュー

コードコンベンションはプロジェクトの保守性に直接的に影響を及ぼします。Google Java Formatはビルドプロセスに統合して自動で検証しなければなりません。


32.2.3. Spring Boot

Spring Bootチェックリストはフレームワークの正しい使用と標準設定の適用状況を検証します。

番号項目分類検証方法
18Spring Boot 3.xバージョンを使用するOpom.xmlspring-boot-starter-parentバージョン確認
19プロファイル別設定ファイルを分離する(local / dev / staging / prod)Oapplication-{profile}.ymlファイル存在確認
20@ConfigurationPropertiesを使用して設定をタイプセーフに管理するRコードレビュー
21@RestControllerAdviceを使用してグローバル例外処理を実装するOコード確認
22エラーコードをEnumで定義して管理するOコード確認
23SLF4Jを使用してロギングする(System.out.println未使用)Oコード検索(System.out検索結果0件)
24ログレベルを環境別に適切に設定するO設定ファイル確認
25@Transactionalのスコープをサービスレイヤーに限定するRコードレビュー
26コントローラにビジネスロジックを含めないOコードレビュー

Spring Bootの設定と構造はプロジェクトの安定性と運用利便性に核心的な影響を及ぼします。プロファイル分離とグローバル例外処理は必ず適用しなければなりません。


32.2.4. データベース

データベースチェックリストはデータアクセス層の標準実装とスキーマ管理体系を検証します。

番号項目分類検証方法
27PostgreSQLをデータベースとして使用するOapplication.ymlデータソース設定確認
28jOOQをデータアクセス層として使用する(JPA / Hibernate未使用)Opom.xml依存関係確認
29Flywayを使用してデータベースマイグレーションを管理するOpom.xml依存関係およびマイグレーションファイル確認
30jOOQ codegenをMavenビルドに連動するOpom.xmljooq-codegen-mavenプラグイン確認
31HikariCPコネクションプールを設定するOapplication.ymlのHikariCP設定確認
32テーブル名、カラム名にsnake_caseを使用するODDLファイル確認
33Flywayマイグレーションファイルのネーミング規則を遵守する(V{バージョン}__{説明}.sqlOマイグレーションファイル名確認
34インデックスのネーミング規則を遵守する(idx_{テーブル}_{カラム}RDDLファイル確認

データベース領域はTQS規格の核心技術スタックであるPostgreSQL + jOOQ + Flywayの正しい適用を検証します。JPAまたはHibernateを使用している場合、必須項目未充足と判定します。


32.2.5. ビルド

ビルドチェックリストはMavenビルド構成の標準遵守と品質ツール連動状況を検証します。

番号項目分類検証方法
35pom.xmlがTQS標準構造に従うOファイル構造確認
36maven-compiler-pluginにJava 21設定を明示するOpom.xmlプラグイン設定確認
37JaCoCoプラグインを設定してカバレッジを測定するOpom.xmljacoco-maven-plugin確認
38JaCoCoラインカバレッジ基準を80%以上に設定するOJaCoCoレポート確認
39JaCoCoブランチカバレッジ基準を70%以上に設定するOJaCoCoレポート確認
40OWASP Dependency-Checkプラグインを設定するRpom.xmlプラグイン確認
41OWASPスキャン結果でCVSS 7以上の脆弱性が0件であるRスキャンレポート確認
42maven-surefire-pluginを設定してテストをビルドに統合するOpom.xmlプラグイン確認

ビルド構成はプロジェクトの品質ゲートの役割を果たします。JaCoCoカバレッジ基準とOWASP依存関係スキャンはコード品質とセキュリティを自動的に検証する核心ツールです。


32.2.6. ファイルアップロード

ファイルアップロードチェックリストはファイルアップロード機能のセキュリティとストレージ管理体系を検証します。

番号項目分類検証方法
43アップロードファイルの拡張子をホワイトリスト方式で検証するRコードレビュー
44アップロードファイルのMIMEタイプをサーバー側で検証するRコードレビュー
45アップロードファイルサイズを制限するR設定ファイル確認
46ストレージディレクトリ構造がTQS標準を遵守するR設定ファイルおよびディレクトリ構造確認
47アップロードされたファイル名をUUID等に変換して保存するRコードレビュー

ファイルアップロードはセキュリティ脆弱性が発生しやすい領域です。拡張子とMIMEタイプの両方を検証する二重検証方式を適用することを推奨します。


32.2.7. 項目要約

バックエンドチェックリストの全項目数と分類別分布は以下のとおりです。

領域必須(O)推奨(R)任意(S)合計
開発環境6006
Javaコードコンベンション74011
Spring Boot7209
データベース7108
ビルド6208
ファイルアップロード0505
合計3314047

バックエンドチェックリストは合計47項目で構成されます。必須項目33個を全て充足しなければ基本認証を取得できず、推奨項目14個の充足率に応じて優秀または最優秀認証等級が決定されます。

TIENIPIA QUALIFIED STANDARD