Tóm tắt nhanh
- 基本設計 thường trả lời hệ thống làm gì từ góc nhìn user/nghiệp vụ; 詳細設計 trả lời developer xử lý thế nào.
- Developer nên đọc cả hai, vì chỉ đọc 詳細設計 có thể bỏ sót mục tiêu nghiệp vụ hoặc rule trong 基本設計.
- Bài này phù hợp nếu bạn bắt đầu đọc 設計書 hoặc muốn hiểu cách review tài liệu trong dự án Nhật.
- Tài liệu
- 基本設計
- Nên đọc để biết gì
- Flow user, màn hình, rule nghiệp vụ, quyền thao tác
- Tài liệu
- 詳細設計
- Nên đọc để biết gì
- API, DB, validation, error, logic xử lý
- Tài liệu
- Khi review
- Nên đọc để biết gì
- So sánh 詳細設計 có phản ánh đúng 基本設計 không
Bối cảnh
Trong dự án Nhật, bạn sẽ thường thấy hai tài liệu: 基本設計 và 詳細設計. Nếu dịch nhanh, 基本設計 là basic design, 詳細設計 là detailed design. Nhưng với developer, chỉ dịch như vậy chưa đủ. Bạn cần biết tài liệu nào trả lời câu hỏi "hệ thống làm gì" và tài liệu nào trả lời "developer làm như thế nào".
Bài này giải thích sự khác nhau giữa 基本設計 và 詳細設計 bằng ví dụ dễ hiểu. Đây là kiến thức nền cho người muốn đọc 仕様書, trao đổi với BrSE, nhận task từ công ty Nhật hoặc tiến tới vai trò thiết kế.
Nếu bạn đang học N4, hãy tập nhớ từ vựng trước: 画面, 項目, 入力, 出力, 処理, 条件, エラー, 権限, API, テーブル. Đây là các từ xuất hiện nhiều trong tài liệu thiết kế.
Khái niệm chính
基本設計 là thiết kế cơ bản, thường mô tả hệ thống từ góc nhìn người dùng, nghiệp vụ và chức năng lớn. Nó trả lời các câu hỏi như: màn hình có những mục nào, user làm flow gì, dữ liệu nào hiển thị, chức năng này dùng để làm gì, có rule nghiệp vụ nào quan trọng, quyền nào được thao tác.
詳細設計 là thiết kế chi tiết, thường gần với developer hơn. Nó mô tả logic xử lý, API, DB, validation, condition, error handling, batch, class, function hoặc cách liên kết giữa các module. Nó trả lời câu hỏi: code cần xử lý thế nào để đáp ứng 基本設計.
Ví dụ với chức năng login. 基本設計 có thể ghi: user nhập email và password, nếu đúng thì vào dashboard, nếu sai thì hiển thị message lỗi. 詳細設計 sẽ ghi API endpoint nào, request gồm field nào, password hash ra sao, status code nào, số lần login sai có lock account không, log lỗi như thế nào.
Trong công ty Nhật, tách hai loại thiết kế giúp các bên review đúng góc nhìn. Khách hàng hoặc business có thể review 基本設計. Developer và tech lead review 詳細設計. Nếu lẫn hai thứ, tài liệu có thể quá kỹ thuật với khách hàng nhưng lại thiếu chi tiết với developer.
Hiểu nhầm thường gặp
1. "基本設計 nghĩa là đơn giản, không quan trọng"
Không đúng. 基本設計 là nền tảng. Nếu basic design sai, detailed design và code dù tốt vẫn làm sai mục tiêu.
2. "詳細設計 chỉ cần copy code logic ra tài liệu"
詳細設計 không phải là viết lại code bằng văn bản. Nó cần mô tả logic đủ rõ trước khi code hoặc để người khác hiểu cách xử lý.
3. "Developer chỉ đọc 詳細設計"
Developer nên đọc cả 基本設計. Nếu chỉ đọc chi tiết kỹ thuật mà không hiểu flow user, bạn dễ bỏ sót case nghiệp vụ.
4. "Một dự án Agile thì không cần thiết kế"
Agile không có nghĩa là không cần thiết kế. Chỉ là mức độ và cách cập nhật tài liệu có thể nhẹ hơn. Với khách hàng Nhật, tài liệu vẫn thường cần để xác nhận.
Ví dụ trong dự án
Team làm chức năng đổi mật khẩu. 基本設計 ghi user cần nhập mật khẩu hiện tại, mật khẩu mới và xác nhận mật khẩu mới. 詳細設計 ban đầu chỉ kiểm tra độ dài mật khẩu, nhưng không ghi rule "mật khẩu mới không được giống mật khẩu cũ".
Reviewer: "基本設計には、現在のパスワードと同じ場合はエラーとあります。詳細設計に反映されていますか。"
Developer: "詳細設計に記載がありませんでした。バリデーション条件に追加します。"
Reviewer: "お願いします。エラーメッセージも確認してください。"
Developer: "承知しました。詳細設計に条件とエラーメッセージを追記します。"
Ở đây, reviewer so sánh 基本設計 với 詳細設計. Đây là cách review rất thường gặp: tài liệu chi tiết phải phản ánh đúng yêu cầu ở tài liệu cơ bản.
Câu tiếng Nhật hữu ích
- 日本語
- 基本設計を確認しました。
- かな
- きほんせっけいをかくにんしました
- Nghĩa tiếng Việt
- Tôi đã kiểm tra basic design.
- Dùng khi nào
- Sau khi đọc tài liệu
- 丁寧度
- Lịch sự
- 日本語
- 詳細設計に反映します。
- かな
- しょうさいせっけいにはんえいします
- Nghĩa tiếng Việt
- Tôi sẽ phản ánh vào detailed design.
- Dùng khi nào
- Khi update tài liệu chi tiết
- 丁寧度
- Lịch sự
- 日本語
- この条件は詳細設計に記載されていますか。
- かな
- このじょうけんはしょうさいせっけいにきさいされていますか
- Nghĩa tiếng Việt
- Điều kiện này có ghi trong detailed design không?
- Dùng khi nào
- Khi review
- 丁寧度
- Rất lịch sự
- 日本語
- 画面項目を確認したいです。
- かな
- がめんこうもくをかくにんしたいです
- Nghĩa tiếng Việt
- Tôi muốn xác nhận các mục trên màn hình.
- Dùng khi nào
- Khi đọc UI design
- 丁寧度
- Lịch sự
- 日本語
- バリデーション条件を追加します。
- かな
- ばりでーしょんじょうけんをついかします
- Nghĩa tiếng Việt
- Tôi sẽ thêm điều kiện validation.
- Dùng khi nào
- Khi sửa detailed design
- 丁寧度
- Lịch sự
- 日本語
- エラーメッセージを確認します。
- かな
- えらーめっせーじをかくにんします
- Nghĩa tiếng Việt
- Tôi sẽ xác nhận message lỗi.
- Dùng khi nào
- Khi thiết kế validation
- 丁寧度
- Lịch sự
- 日本語
- API仕様を確認します。
- かな
- えーぴーあいしようをかくにんします
- Nghĩa tiếng Việt
- Tôi sẽ kiểm tra API spec.
- Dùng khi nào
- Khi làm backend/frontend
- 丁寧度
- Lịch sự
- 日本語
- テーブル設計を見直します。
- かな
- てーぶるせっけいをみなおします
- Nghĩa tiếng Việt
- Tôi sẽ xem lại thiết kế table.
- Dùng khi nào
- Khi DB chưa phù hợp
- 丁寧度
- Lịch sự
- 日本語
- 処理フローを整理します。
- かな
- しょりふろーをせいりします
- Nghĩa tiếng Việt
- Tôi sẽ整理 flow xử lý.
- Dùng khi nào
- Khi logic phức tạp
- 丁寧度
- Lịch sự
- 日本語
- 設計間の差分を確認します。
- かな
- せっけいかんのさぶんをかくにんします
- Nghĩa tiếng Việt
- Tôi sẽ kiểm tra chênh lệch giữa các tài liệu thiết kế.
- Dùng khi nào
- Khi basic và detail lệch nhau
- 丁寧度
- Lịch sự
Từ vựng cần nhớ
- 日本語
- 基本設計
- かな
- きほんせっけい
- Nghĩa
- thiết kế cơ bản
- 使用例
- 基本設計をレビューします。
- 日本語
- 詳細設計
- かな
- しょうさいせっけい
- Nghĩa
- thiết kế chi tiết
- 使用例
- 詳細設計を作成します。
- 日本語
- 画面項目
- かな
- がめんこうもく
- Nghĩa
- item trên màn hình
- 使用例
- 画面項目を確認します。
- 日本語
- 入力
- かな
- にゅうりょく
- Nghĩa
- input
- 使用例
- 入力チェックを追加します。
- 日本語
- 出力
- かな
- しゅつりょく
- Nghĩa
- output
- 使用例
- 出力内容を確認します。
- 日本語
- 処理
- かな
- しょり
- Nghĩa
- xử lý
- 使用例
- 処理を修正します。
- 日本語
- 条件
- かな
- じょうけん
- Nghĩa
- điều kiện
- 使用例
- 条件を追加します。
- 日本語
- 分岐
- かな
- ぶんき
- Nghĩa
- branching
- 使用例
- 分岐を整理します。
- 日本語
- 権限
- かな
- けんげん
- Nghĩa
- quyền
- 使用例
- 権限を確認します。
- 日本語
- API仕様
- かな
- えーぴーあいしよう
- Nghĩa
- API spec
- 使用例
- API仕様を読みます。
- 日本語
- テーブル設計
- かな
- てーぶるせっけい
- Nghĩa
- DB table design
- 使用例
- テーブル設計を見直します。
- 日本語
- 差分
- かな
- さぶん
- Nghĩa
- khác biệt
- 使用例
- 差分を確認します。
Câu hỏi ôn nhanh
Câu 1
基本設計 thường trả lời câu hỏi nào?
- A. User cần hệ thống làm gì
- B. Editor dùng theme gì
- C. Developer ăn trưa ở đâu
- D. Tên branch local
Đáp án: A. 基本設計 gần với chức năng và nghiệp vụ từ góc nhìn user.
Câu 2
詳細設計 thường chứa nội dung nào?
- A. Logic xử lý, API, DB, validation
- B. Lịch du lịch
- C. Nội quy văn phòng
- D. Quảng cáo sản phẩm
Đáp án: A. 詳細設計 đi sâu vào cách hệ thống xử lý.
Câu 3
Developer nên đọc tài liệu nào?
- A. Chỉ 詳細設計
- B. Chỉ 基本設計
- C. Cả hai nếu có liên quan đến task
- D. Không cần đọc tài liệu
Đáp án: C. Đọc cả hai giúp hiểu mục tiêu và cách implement.
Bước tiếp theo
Nếu bạn chưa chắc mình đủ nền tảng để đọc tài liệu Nhật, hãy làm bài chẩn đoán. Sau đó học theo vòng học 15 phút, luyện từ vựng, ngữ pháp N4 và mẫu câu spec. Để kiểm tra kiến thức IT Japanese, làm bài luyện IT. Muốn học đều trong 14 ngày, dùng checklist.
Đọc tiếp: vì sao công ty Nhật cần tài liệu thiết kế, 仕様書 là gì, và review trong dự án Nhật.
Học tiếp và ôn lại
- Nếu bài này có cụm tiếng Nhật mới, lưu lại vào trang ôn tập để quay lại sau vài ngày.
- Muốn học theo tình huống công việc, mở tiếng Nhật IT và chọn nhóm ticket, spec, bug, review hoặc release.
- Muốn kiểm tra phản xạ nhanh, làm bài luyện IT Japanese mini.
- Nếu chưa chắc nền N4/N3, làm kiểm tra trình độ miễn phí trước khi học nhiều thuật ngữ dự án.
Câu hỏi thường gặp
Dự án nào cũng có cả 基本設計 và 詳細設計 không?
Không. Một số dự án nhỏ hoặc Agile có thể gộp tài liệu. Nhưng trong dự án Nhật lớn, hai khái niệm này rất thường gặp.
基本設計 có phải do khách hàng viết không?
Tùy dự án. Có khi vendor hoặc SIer viết rồi khách hàng review. BrSE có thể tham gia giải thích và xác nhận.
詳細設計 có cần viết trước khi code không?
Trong nhiều dự án Nhật, có. Nhưng mức độ chi tiết phụ thuộc quy trình team. Dù không viết dài, logic quan trọng vẫn nên được ghi rõ.
Nếu 基本設計 và 詳細設計 khác nhau thì làm gì?
Không tự chọn một bên. Hãy báo lại và xác nhận. Câu hữu ích là "設計間の差分を確認したいです。"
Sau đó hãy chờ người phụ trách xác nhận trước khi sửa tài liệu hoặc code.