Professional Documents
Culture Documents
Thông tin là một khái niệm mà trong ngữ cảnh chung thường được định nghĩa là
dữ liệu được tổ chức và hiểu được ý nghĩa. Để phân biệt giữa thông tin và dữ liệu,
chúng ta có thể xem xét sự tiếp xúc và hiểu biết của con người với dữ liệu.
1. Dữ liệu (Data):
Dữ liệu là các sự kiện, sự thật, hoặc các con số không có ý nghĩa đặc
biệt khi nhìn vào mà không có ngữ cảnh.
Ví dụ: Nếu chúng ta biết rằng "12345" là mã số bảo mật của ai đó,
"25.6" là nhiệt độ hiện tại, và "10/05/1990" là ngày sinh của một
người nào đó, thì chúng ta đã tạo ra thông tin từ dữ liệu ban đầu.
Như vậy, thông tin thường đi kèm với sự hiểu biết và ngữ cảnh. Dữ liệu trở thành
thông tin khi nó được xử lý và giải mã để có ý nghĩa đối với người nhận. Trong ví
dụ trên, khi chúng ta biết rằng "12345" là mã số bảo mật của ai đó, chúng ta có
thể sử dụng thông tin này để xác định và bảo vệ an ninh cá nhân.
Câu 2:
Xử lý thông tin kinh tế là quá trình thu thập, tổ chức, phân tích và sử dụng thông
tin liên quan đến các hoạt động kinh tế để hỗ trợ quyết định và quản lý. Quy trình
này thường bao gồm nhiều giai đoạn để đảm bảo thông tin được chế biến một
cách hiệu quả và có ý nghĩa trong ngữ cảnh kinh tế. Dưới đây là các giai đoạn
chính của quy trình xử lý thông tin kinh tế:
3. Xử lý và phân tích:
Kết quả từ giai đoạn phân tích được biểu đồ và trình bày một cách rõ
ràng. Các bảng, đồ thị và báo cáo được tạo ra để giúp người quản lý
và quyết định hiểu rõ thông tin và đưa ra các quyết định chiến lược.
Thông tin quan trọng được trích xuất và đưa vào các báo cáo và
thông điệp để chia sẻ với các bên liên quan như lãnh đạo doanh
nghiệp, nhà đầu tư, cơ quan quản lý và các đối tác kinh doanh.
Cuối cùng, thông tin này được sử dụng để đưa ra quyết định chiến
lược và thực hiện các hành động cần thiết trong môi trường kinh tế
để tối ưu hóa hiệu suất và đạt được mục tiêu kinh doanh.
Câu 3:
Quá trình tin học hóa là quá trình chuyển đổi các công việc và hoạt động từ hình
thức truyền thống sang hình thức sử dụng công nghệ thông tin và hệ thống máy
tính. Dưới đây là các giai đoạn chính của quá trình tin học hóa:
Giai đoạn này liên quan đến nhận thức về sự cần thiết của việc tin
học hóa trong tổ chức hoặc quá trình kinh doanh. Các bên liên quan
cần hiểu rõ về lợi ích mà công nghệ có thể mang lại và cách nó có thể
giải quyết các thách thức hoặc nhu cầu cụ thể.
Ví dụ: Một doanh nghiệp nhận ra rằng quá trình quản lý hóa đơn và thanh toán
của họ đang gặp khó khăn và gặp phải nhiều sai sót. Họ nhận ra rằng việc tin học
hóa quy trình này có thể giúp giảm thiểu sai sót và tăng cường hiệu suất.
2. Lập kế hoạch:
Tạo ra một kế hoạch chi tiết về cách triển khai công nghệ thông tin và
hệ thống máy tính vào quá trình làm việc. Kế hoạch này bao gồm các
bước cụ thể, nguồn lực cần thiết, và mục tiêu đặt ra từ việc tin học
hóa.
Ví dụ: Kế hoạch tin học hóa quy trình quản lý hóa đơn có thể bao gồm việc triển
khai một hệ thống phần mềm quản lý hóa đơn, đào tạo nhân viên, và thiết lập các
tiêu chuẩn mới cho việc xử lý hóa đơn.
Giai đoạn này liên quan đến việc triển khai các giải pháp công nghệ
và hệ thống máy tính đã được chọn vào quá trình làm việc thực tế.
Các bước triển khai được thực hiện theo kế hoạch đã lập.
Ví dụ: Cài đặt phần mềm quản lý hóa đơn, tích hợp nó với các hệ thống hiện tại và
cung cấp đào tạo cho nhân viên về cách sử dụng nó.
Ví dụ: Dựa vào phản hồi từ người sử dụng, doanh nghiệp có thể điều chỉnh giao
diện người dùng của phần mềm quản lý hóa đơn để làm cho quy trình làm việc
trở nên dễ sử dụng hơn.
Cung cấp hỗ trợ liên tục, bảo trì hệ thống và thực hiện các nâng cấp
để đảm bảo rằng công nghệ được duy trì và nâng cấp theo thời gian.
Ví dụ: Hệ thống quản lý hóa đơn cần được cập nhật định kỳ để thêm tính năng
mới, sửa lỗi và đảm bảo tính bảo mật.
Câu 4:
Hệ thống thông tin quản lý (HTTTQL) là một hệ thống sử dụng công nghệ thông tin
để thu thập, xử lý, lưu trữ và truyền thông tin liên quan đến quản lý tổ chức. Nó
giúp tổ chức tăng cường khả năng quản lý thông tin, đưa ra quyết định hiệu quả
và tối ưu hóa hoạt động của họ. Các thành phần chính của Hệ thống Thông tin
Quản lý bao gồm:
1. Dữ liệu (Data):
Dữ liệu là nguyên liệu cơ bản đầu vào cho hệ thống. Đây có thể là các
số liệu, thông tin văn bản, hình ảnh hoặc âm thanh thu thập từ nhiều
nguồn khác nhau trong tổ chức.
Các ứng dụng phần mềm được thiết kế để xử lý dữ liệu và cung cấp
các chức năng cụ thể cho người sử dụng. Điều này có thể bao gồm
các ứng dụng như hệ thống quản lý tài chính, quản lý nhân sự, hệ
thống ERP (Enterprise Resource Planning), CRM (Customer
Relationship Management), v.v.
3. Cơ sở dữ liệu (Database):
Cơ sở dữ liệu là nơi lưu trữ và quản lý dữ liệu. Các hệ thống thông tin
quản lý thường sử dụng cơ sở dữ liệu để tổ chức thông tin một cách
logic và dễ dàng truy cập.
Bao gồm các thiết bị vật lý như máy tính, máy chủ, thiết bị lưu trữ và
các thiết bị mạng. Phần cứng cung cấp nền tảng vật lý cho hệ thống
thông tin quản lý để thực hiện các chức năng và xử lý dữ liệu.
5. Mạng (Network):
Hệ thống thông tin quản lý thường yêu cầu một cơ sở hạ tầng mạng
để kết nối các thiết bị và cơ sở dữ liệu. Mạng giúp truyền thông tin
giữa các thành phần khác nhau của hệ thống.
Các quy trình là các hoạt động được thực hiện để xử lý dữ liệu và đưa
ra thông tin hữu ích cho quản lý. Các quy trình này có thể bao gồm xử
lý giao dịch, phân tích dữ liệu, và các quy trình quản lý khác.
Chính sách và quy tắc là các nguyên tắc và hướng dẫn được thiết lập
để đảm bảo an ninh thông tin, quản lý quy trình làm việc và bảo vệ
quyền riêng tư. Chúng giúp định rõ cách thông tin được xử lý và sử
dụng trong tổ chức.
Câu 5:
Vòng đời phát triển hệ thống là một chuỗi các giai đoạn và hoạt động mà một hệ
thống thông tin phải trải qua từ khi được lập kế hoạch cho đến khi nó không còn
được sử dụng nữa. Mặc dù có nhiều mô hình vòng đời hệ thống khác nhau, tuy
nhiên, có thể tóm gọn thành những giai đoạn chính sau:
Giai đoạn này tập trung vào xác định mục tiêu và yêu cầu của hệ
thống, quyết định phạm vi dự án, xác định nguồn lực cần thiết và lên
kế hoạch tổ chức cho toàn bộ quá trình phát triển.
Trong giai đoạn phân tích, người phát triển hệ thống làm rõ yêu cầu
của người dùng, xác định các chức năng cần thiết và xây dựng mô
hình để hiểu rõ hơn về cách hệ thống sẽ hoạt động.
3. Thiết kế (Design):
Giai đoạn thiết kế tập trung vào việc tạo ra kiến trúc hệ thống dựa
trên các yêu cầu đã xác định trước đó. Điều này bao gồm cả thiết kế
phần mềm và phần cứng (nếu có).
Trong giai đoạn này, mã nguồn của hệ thống được viết và các thành
phần phần mềm được triển khai. Nếu có, phần cứng cũng được sản
xuất.
Hệ thống và các thành phần của nó được kiểm thử để đảm bảo rằng
chúng hoạt động đúng đắn và đáp ứng yêu cầu.
Sau khi qua giai đoạn thử nghiệm, hệ thống được triển khai để sử
dụng trong môi trường thực tế.
7. Bảo trì và hỗ trợ (Maintenance and Support):
Giai đoạn bảo trì và hỗ trợ bắt đầu sau khi hệ thống được triển khai.
Nó bao gồm việc duy trì, sửa lỗi, cập nhật và cung cấp hỗ trợ cho
người sử dụng.
Các đặc trưng của vòng đời phát triển hệ thống bao gồm:
Quá trình phát triển có thể lặp lại nhiều lần để cải thiện và điều chỉnh
hệ thống theo thời gian.
Công việc có thể được phân chia giữa các đội và bộ phận khác nhau
để đảm bảo tiến độ và chất lượng.
Sự tương tác với khách hàng và người dùng là quan trọng để đảm
bảo rằng hệ thống được xây dựng theo yêu cầu và đáp ứng nhu cầu
thực tế.
Các rủi ro và thách thức có thể xuất hiện trong quá trình phát triển,
và việc quản lý chúng là quan trọng để đảm bảo dự án không gặp trở
ngại lớn.
Vòng đời phát triển hệ thống mang lại sự tổ chức và kiểm soát cho quá trình phát
triển, giúp đảm bảo rằng sản phẩm cuối cùng đáp ứng mong đợi và yêu cầu của
người sử dụng.
Câu 6:
Có nhiều mô hình phát triển hệ thống thông tin được sử dụng trong ngành công
nghiệp, mỗi mô hình có những ưu điểm và hạn chế riêng. Dưới đây là một số mô
hình phát triển hệ thống thông tin phổ biến:
Giai đoạn công việc diễn ra theo chiều dọc, từ trên xuống dưới, giống
như nước chảy theo dạng thác nước.
Các giai đoạn bao gồm: yêu cầu, thiết kế, phát triển, kiểm thử, triển
khai, và bảo trì.
Mỗi giai đoạn bắt đầu sau khi giai đoạn trước đó hoàn thành.
Kết hợp các yếu tố của mô hình Waterfall và thêm yếu tố lặp lại.
Phát triển hệ thống theo chu kỳ lặp lại, mỗi chu kỳ bao gồm các giai
đoạn: xác định mục tiêu, đánh giá và giảm rủi ro, phát triển và kiểm
thử.
Phát triển hệ thống thành từng phần (gọi là các phần tăng dần) và
mỗi phần được xây dựng và triển khai độc lập.
Các phần được thêm vào theo từng giai đoạn và mỗi phần đưa ra sử
dụng sau khi được hoàn thành.
Tập trung vào sự linh hoạt và tương tác liên tục với khách hàng.
Phát triển theo các chu kỳ ngắn (sprint), thường kéo dài từ 1 đến 4
tuần, và tạo ra các phiên bản hệ thống có thể triển khai.
Mỗi giai đoạn của phát triển (yêu cầu, thiết kế, kiểm thử) đều có một
giai đoạn tương ứng trong kiểm thử.
Giao diện giữa các giai đoạn là quan trọng và đảm bảo rằng mọi yêu
cầu được kiểm thử một cách đầy đủ.
Đặc điểm chung của các mô hình phát triển hệ thống bao gồm:
Nhiều mô hình đều tập trung vào việc tương tác và phản hồi từ phía
khách hàng để đảm bảo rằng sản phẩm đáp ứng đúng yêu cầu.
Một số mô hình có yếu tố lặp lại và đánh giá thường xuyên để cải tiến
và điều chỉnh quy trình phát triển.
4. Kiểm thử:
Tất cả các mô hình đều bao gồm giai đoạn kiểm thử để đảm bảo chất
lượng của sản phẩm.
Phân tích và quản lý rủi ro là một phần quan trọng của nhiều mô hình
để giảm thiểu các vấn đề có thể xảy ra trong quá trình phát triển.
Câu 7:
Có nhiều phương pháp luận phân tích hệ thống được sử dụng để hiểu rõ cấu trúc
và chức năng của một hệ thống. Dưới đây là một số phương pháp phổ biến:
Tập trung vào việc phân tích các quy trình làm việc trong tổ chức để
hiểu rõ luồng công việc và tương tác giữa các bước.
Tìm hiểu về các sự kiện và tương tác giữa các sự kiện trong hệ thống
để hiểu rõ về chuỗi các hoạt động và quy trình.
Tập trung vào xác định và hiểu rõ yêu cầu của người sử dụng và hệ
thống để đảm bảo rằng hệ thống được phát triển đáp ứng đúng nhu
cầu.
Sử dụng để phân tích mối quan hệ giữa các hệ thống con và hệ thống
cha để hiểu rõ cách chúng tương tác và ảnh hưởng lẫn nhau.
Phương pháp tiếp cận hệ thống là cách tiếp cận tổng thể để hiểu và giải quyết vấn
đề. Một số phương pháp tiếp cận hệ thống bao gồm:
Xem xét hệ thống như một đơn vị đóng, không tương tác với môi
trường xung quanh. Điều này giúp hiểu về các quy trình và tương tác
nội bộ của hệ thống.
Ví dụ: Một hệ thống đóng có thể là một máy tính cá nhân, nơi dữ liệu chỉ được xử
lý và lưu trữ nội bộ mà không có tương tác ngoại trừ người sử dụng.
Ví dụ: Một doanh nghiệp là một hệ thống mở, tương tác với thị trường, khách
hàng, và các yếu tố kinh tế xã hội.
Tập trung vào hiểu biết cách các thành phần của hệ thống tương tác
và tạo ra các hiệu ứng phức tạp.
Ví dụ: Mạng lưới xã hội như Facebook có thể được xem xét như một hệ thống
phức tạp, với nhiều người dùng và mối quan hệ tương tác.
Câu 8:
Phương pháp đi từ chức năng đến mô hình hóa là một cách tiếp cận trong phân
tích hệ thống, nơi quá trình bắt đầu từ việc xác định và mô tả các chức năng của
hệ thống. Các chức năng này sau đó được sử dụng để tạo ra các mô hình biểu
diễn mối quan hệ và tương tác giữa chúng. Mục tiêu là hiểu rõ cách các chức năng
làm việc cùng nhau để thực hiện các mục tiêu và nhiệm vụ của hệ thống.
Bắt đầu bằng việc xác định các chức năng cơ bản mà hệ thống quản
lý thư viện cần thực hiện, như thêm sách mới vào hệ thống, xóa sách,
lưu trữ thông tin độc giả, quản lý mượn trả sách, và tìm kiếm sách
trong thư viện.
Sau khi xác định các chức năng, sử dụng các phương pháp mô hình
hóa như biểu đồ chức năng (function diagram) để mô tả cách chúng
tương tác với nhau. Chẳng hạn, có thể có một hộp chức năng "Quản
lý Độc Giả" liên kết với "Mượn Sách" và "Trả Sách", đồng thời liên kết
với "Cập Nhật Thông Tin Độc Giả".
Mô hình hóa giúp hiểu rõ cách các chức năng tương tác với nhau để
thực hiện các nhiệm vụ của hệ thống. Chẳng hạn, quá trình "Mượn
Sách" có thể bao gồm các chức năng kiểm tra số lượng sách còn và
đánh dấu sách đã được mượn.
Dựa trên mô hình, có thể tiến hành thiết kế hệ thống để đảm bảo
rằng các chức năng được triển khai một cách hiệu quả và hiệu suất
cao. Nếu cần thiết, có thể tối ưu hóa mối quan hệ giữa các chức
năng.
Phương pháp này giúp đơn giản hóa quá trình phân tích và hiểu rõ cách hệ thống
hoạt động thông qua các chức năng cụ thể, tạo cơ sở cho quá trình thiết kế và
triển khai hệ thống.
Câu 9:
Phương pháp phân tích hệ thống có cấu trúc (Structured Systems Analysis) là một
phương pháp tiếp cận hệ thống thông tin, tập trung vào việc phân rã hệ thống
thành các thành phần nhỏ hơn và phân tích chúng một cách chi tiết để hiểu cấu
trúc và chức năng của hệ thống. Phương pháp này thường sử dụng các kỹ thuật và
công cụ phân tích có cấu trúc, chẳng hạn như biểu đồ luồng dữ liệu (Data Flow
Diagram - DFD), biểu đồ cơ sở dữ liệu (Entity-Relationship Diagram - ERD), và biểu
đồ chức năng (Function Hierarchy Diagram).
Một DFD có thể được sử dụng để biểu diễn luồng thông tin và dữ liệu
giữa các thành phần của hệ thống. Ví dụ, một DFD có thể hiển thị quá
trình xử lý đơn hàng từ khi nó được đặt đến khi được xác nhận và
giao hàng.
ERD có thể được sử dụng để mô hình hóa cấu trúc của cơ sở dữ liệu
trong hệ thống quản lý đơn hàng. Ví dụ, ERD có thể biểu diễn mối
quan hệ giữa các thực thể như Khách Hàng, Sản Phẩm, và Đơn Hàng.
Một biểu đồ chức năng có thể được tạo để mô tả cấu trúc chức năng
của hệ thống quản lý đơn hàng. Ví dụ, biểu đồ này có thể bao gồm
các chức năng như "Nhận Đơn Hàng," "Xác Nhận Đơn Hàng," và
"Giao Hàng."
Biểu đồ này có thể được sử dụng để mô tả luồng công việc trong quá
trình xử lý đơn hàng từ người dùng đặt hàng cho đến khi sản phẩm
được giao cho họ.
Phương pháp phân tích hệ thống có cấu trúc giúp tổ chức thông tin và quy trình
một cách có tổ chức, giúp người phân tích hiểu rõ cấu trúc và chức năng của hệ
thống để có thể thiết kế và triển khai nó một cách hiệu quả.
Câu 10:
Có nhiều phương pháp luận thu thập thông tin được sử dụng trong nghiên cứu và
phân tích. Dưới đây là một số phương pháp phổ biến:
Nghiên cứu thu thập thông tin trực tiếp từ người tham gia thông qua
cuộc trò chuyện có cấu trúc hoặc bán cấu trúc. Có thể tiếp cận cá
nhân hoặc nhóm.
Tạo ra điều kiện kiểm soát để nghiên cứu ảnh hưởng của một hoặc
nhiều biến độc lập đến một biến phụ thuộc.
Phân phối câu hỏi hoặc mẫu khảo sát để thu thập thông tin từ một
mẫu lớn người tham gia. Có thể thực hiện qua phương tiện giấy tờ,
điện tử hoặc trực tuyến.
Xem xét và phân tích tài liệu, văn bản, sách, báo cáo, và dữ liệu từ
các nguồn không phải người nghiên cứu.
Phân tích nội dung của văn bản để xác định mẫu, xu hướng, và ý
nghĩa.
Sử dụng loạt các bảng câu hỏi tuần tự để thu thập thông tin từ một
nhóm chuyên gia, thường qua nhiều vòng để đạt đến một sự đồng
thuận.
Nghiên cứu sâu sắc về một trường hợp cụ thể để hiểu rõ về ngữ cảnh
và biểu hiện của nó.
Mô tả:
Phương pháp nghiên cứu tài liệu là việc thu thập dữ liệu thông qua việc đánh giá
và phân tích các tài liệu, văn bản, sách, báo cáo, nghiên cứu trước đó và các
nguồn thông tin khác mà không cần thực hiện các cuộc phỏng vấn hoặc thử
nghiệm trực tiếp.
Ưu điểm:
Không đòi hỏi nhiều thời gian và chi phí so với những phương pháp
thu thập thông tin khác như điều tra, phỏng vấn.
2. Thuận Tiện:
Dễ dàng truy cập và thu thập thông tin từ nhiều nguồn mà không cần
tới sự tham gia trực tiếp của người nghiên cứu.
Có thể nghiên cứu nhiều đối tượng và quy mô lớn mà không phải tốn
nhiều công sức thực hiện.
Nhược Điểm:
Có thể gặp khó khăn khi không có đủ thông tin hoặc thông tin không
đầy đủ để trả lời câu hỏi nghiên cứu.
Thông tin có thể bị độc tài và không chính xác nếu chỉ thu thập từ
một nguồn duy nhất.
Không có sự tương tác trực tiếp với đối tượng nghiên cứu, do đó,
thiếu đi sự sâu sắc và chi tiết mà một cuộc phỏng vấn có thể mang
lại.
Do thông tin thu thập chủ yếu từ các nguồn đã xuất bản, có nguy cơ
rằng nghiên cứu có thể lạc hậu và không phản ánh được thực tế hiện
tại.
Phương pháp quan sát là quá trình ghi chép và thu thập dữ liệu bằng cách quan
sát và ghi lại hành vi, sự kiện, hay các hiện tượng mà không tạo ra sự ảnh hưởng
trực tiếp từ người nghiên cứu đối với đối tượng hoặc tình huống đang được
nghiên cứu. Quan sát có thể thực hiện ở nhiều mức độ chi tiết và có thể được
thực hiện trong các bối cảnh tự nhiên hoặc được tạo ra cố ý.
Ưu Điểm của Phương Pháp Quan Sát:
Quan sát giữ cho người nghiên cứu ở trong môi trường tự nhiên,
giúp thu thập thông tin thực tế và không bị ảnh hưởng bởi môi
trường làm thử nghiệm.
Cho phép hiểu rõ hành vi và tương tác tự nhiên của người hoặc tình
huống được quan sát.
Không gây ảnh hưởng trực tiếp từ người nghiên cứu, do đó, giảm
nguy cơ biassed (chệch) trong dữ liệu thu thập.
Phương pháp quan sát có thể được áp dụng trong nhiều lĩnh vực và
môi trường khác nhau, từ nghiên cứu xã hội đến nghiên cứu hành vi
động vật.
Người quan sát có thể chịu ảnh hưởng từ quan điểm cá nhân, giúp
tạo ra một môi trường quan sát chệch.
Khả năng ghi chép có thể bị giới hạn bởi khả năng quan sát của người
nghiên cứu và khả năng ghi chép của họ.
Quá trình phân tích dữ liệu từ quan sát có thể phức tạp và tốn thời
gian, đặc biệt nếu dữ liệu là một loạt các hành vi phức tạp.
4. Khả Năng Ghi Chép Hạn Chế:
Một số hiện tượng có thể khó ghi chép hoặc không thể ghi chép một
cách chính xác, đặc biệt là khi liên quan đến tâm trạng, suy nghĩ, hoặc
các yếu tố tâm lý không rõ ràng.
Nghiên cứu lâu dài có thể đặt ra thách thức về sự kiên trì và nguy cơ
mất sự chân thực do sự can thiệp của người quan sát.
Câu 12:
Phương pháp phỏng vấn là một phương pháp thu thập dữ liệu trong nghiên cứu,
trong đó người nghiên cứu đặt câu hỏi và nghe câu trả lời trực tiếp từ người tham
gia. Phỏng vấn có thể được thực hiện theo nhiều hình thức, bao gồm cuộc phỏng
vấn cá nhân, nhóm, cũng như các biến thể trực tuyến.
Phỏng vấn cho phép người nghiên cứu hiểu rõ hơn về ngữ cảnh và
chi tiết của trả lời, đặc biệt là khi cần làm sâu sắc vào một chủ đề cụ
thể.
Tương tác trực tiếp giữa người nghiên cứu và người tham gia, tạo ra
một không gian để đối thoại và sự hiểu biết tốt hơn.
Người nghiên cứu có khả năng đặt câu hỏi và yêu cầu giải thích để
làm sáng tỏ thông tin, điều mà khó có thể thực hiện qua các phương
pháp thu thập dữ liệu khác.
4. Phù Hợp Cho Nghiên Cứu Sâu Sắc:
Phương pháp này thích hợp cho các nghiên cứu yêu cầu sự hiểu biết
chi tiết và sâu sắc về ý kiến, quan điểm, và trải nghiệm của người
tham gia.
Phỏng vấn có thể hiệu quả khi nghiên cứu đối tượng là nhóm nhỏ
người tham gia.
Nguy cơ của người nghiên cứu ảnh hưởng đến câu trả lời của người
tham gia, đặc biệt nếu không giữ được tính khách quan.
Phỏng vấn có thể tốn nhiều thời gian và chi phí, đặc biệt là khi nghiên
cứu đòi hỏi sự tham gia của một số lượng lớn người tham gia.
Dữ liệu từ phỏng vấn có thể phức tạp để phân tích và tổng hợp, đặc
biệt nếu nghiên cứu lớn.
Có nguy cơ mất tính đại diện khi chỉ nói chuyện với một số ít người
tham gia, làm tăng khả năng chệch thấp (sample bias).
Người tham gia có thể trả lời dựa trên mong đợi xã hội hoặc mong
đợi của người nghiên cứu, làm giả mạo thông tin.
Câu 13:
Phương Pháp Sử Dụng Phiếu Điều Tra:
Phương pháp sử dụng phiếu điều tra là một phương pháp thu thập dữ liệu trong
nghiên cứu, trong đó người tham gia tự điền thông tin vào các mẫu phiếu điều tra
được cung cấp. Các phiếu điều tra có thể được phân phát giấy tờ, gửi qua email,
hoặc triển khai trực tuyến thông qua các công cụ khảo sát.
Phương pháp này hiệu quả khi cần thu thập dữ liệu từ một số lượng
lớn người tham gia.
Người tham gia có thể điền thông tin trong thời gian thuận tiện của
họ, tạo ra sự tự do và linh hoạt.
Giảm nguy cơ ảnh hưởng từ người nghiên cứu lên câu trả lời của
người tham gia do không có sự hiện diện trực tiếp.
Cung cấp môi trường bảo mật cho người tham gia để chia sẻ thông
tin cá nhân mà không lo lắng về sự kiểm soát từ người nghiên cứu.
Dữ liệu từ phiếu điều tra dễ quản lý và phân tích vì thông tin đã được
tự động định dạng và có thể được nhập vào các chương trình máy
tính.
Có nguy cơ chệch do mẫu nếu những người tham gia tự chọn tham
gia và có đặc điểm khác nhau so với nhóm dân số lớn.
Người tham gia có thể không hiểu hoặc hiểu sai câu hỏi, đặc biệt là
khi ngôn ngữ không phù hợp.
Không phù hợp cho các chủ đề phức tạp hoặc cần sự giải thích chi
tiết.
Hạn chế khả năng ghi chép những chi tiết hoặc ngữ cảnh không được
yêu cầu trực tiếp trong phiếu điều tra.
Câu 14:
Quá trình phân tích hệ thống theo phương pháp hướng chức năng thường sử
dụng nhiều công cụ và kỹ thuật để hiểu và mô hình hóa các chức năng của hệ
thống. Dưới đây là một số công cụ phổ biến được sử dụng trong phương pháp
hướng chức năng:
DFD biểu diễn luồng dữ liệu trong hệ thống và cách chúng tương tác
với các quy trình, đối tượng dữ liệu, và vị trí lưu trữ dữ liệu. Các mức
DFD như Context Diagram, DFD cấp 0, DFD cấp 1 giúp mô tả chức
năng của hệ thống từ cái nhìn toàn cảnh đến chi tiết.
ERD giúp mô tả mối quan hệ giữa các thực thể trong hệ thống, đặc
biệt là trong môi trường cơ sở dữ liệu. Nó hiển thị cách các thực thể
tương tác với nhau và lưu trữ thông tin.
Mô hình use case giúp xác định và mô tả các chức năng mà hệ thống
cung cấp từ góc độ người dùng. Use Case Diagram mô tả quan hệ
giữa các use case, trong khi Use Case Descriptions cung cấp chi tiết về
mỗi use case.
Các biểu đồ như lớp (Class Diagram), đối tượng (Object Diagram), và
trạng thái (State Diagram) trong hướng đối tượng giúp mô hình hóa
cách các đối tượng tương tác và thực hiện các chức năng trong hệ
thống.
Biểu đồ lớp phân cấp giúp hiển thị cấp độ và sự phụ thuộc giữa các
modules hoặc thành phần trong hệ thống.
Gantt Chart thường được sử dụng để lên lịch và theo dõi tiến độ của
các nhiệm vụ chức năng trong quá trình phát triển hệ thống.
9. Biểu Đồ Trạng Thái (State Diagram):
Biểu đồ trạng thái thường được sử dụng để mô tả các trạng thái khác
nhau mà một đối tượng có thể nằm trong khi thực hiện các chức
năng.
Mô hình dự án giúp định rõ các bước và giai đoạn của quá trình phân
tích hệ thống, bao gồm cả các kỹ thuật và công cụ được sử dụng.
Sơ Đồ BFD (Balanced Flowchart Diagram) là một công cụ biểu diễn các quy trình
chức năng của hệ thống theo hướng chức năng. Nó kết hợp cả yếu tố logic và yếu
tố vật lý của quy trình, giúp hiểu rõ các hoạt động cụ thể cũng như tương tác giữa
chúng.
Biểu diễn các hoạt động, chức năng, hay quy trình xử lý dữ liệu trong
hệ thống. Được biểu diễn bởi hình chữ nhật.
Biểu diễn luồng dữ liệu giữa các quy trình hoặc giữa quy trình và các
đối tượng dữ liệu. Được biểu diễn bởi đường mũi tên.
Biểu diễn nơi lưu trữ dữ liệu trong hệ thống. Được biểu diễn bởi hình
hộp chữ nhật.
4. Ngoại Lệ (Exception):
Biểu diễn các điều kiện ngoại lệ hoặc xử lý ngoại lệ trong quy trình.
Được biểu diễn bởi hình diamond.
Biểu diễn quyết định hoặc luồng điều khiển trong quy trình. Được
biểu diễn bởi đường mũi tên với điều kiện.
Ví dụ minh họa:
Giả sử chúng ta muốn xây dựng Sơ Đồ BFD cho quy trình đơn giản "Xử Lý Đơn
Hàng" trong một hệ thống quản lý bán hàng. Các thành phần có thể bao gồm:
Biểu diễn bằng hình chữ nhật với tên "Xử Lý Đơn Hàng."
Biểu diễn luồng dữ liệu từ "Đơn Hàng" đến "Xử Lý Đơn Hàng."
3. Luồng Dữ Liệu Thông Tin Khách Hàng (Data Flow - Customer Info):
Biểu diễn luồng dữ liệu từ "Thông Tin Khách Hàng" đến "Xử Lý Đơn
Hàng."
Biểu diễn nơi lưu trữ dữ liệu đơn hàng trong hệ thống.
Biểu diễn điều kiện ngoại lệ nếu có lỗi xảy ra trong quy trình xử lý
đơn hàng.
Biểu diễn quyết định dựa trên điều kiện nào đó, ví dụ như kiểm tra
tính hợp lệ của đơn hàng.
Câu 15:
Sơ Đồ CD (Context Diagram):
1. Hệ Thống (System):
Biểu diễn môi trường bên ngoài hệ thống, nơi mà hệ thống tương tác
và trao đổi dữ liệu.
Biểu diễn các nguồn và đích của dữ liệu, thường là các thành phần
trong môi trường.
Ví dụ Minh Họa: Giả sử chúng ta đang phân tích hệ thống quản lý thư viện. Sơ đồ
CD có thể bao gồm các thành phần như sau:
Môi Trường: Biểu diễn môi trường bên ngoài thư viện, có thể là người đọc,
sách, nhân viên thư viện, v.v.
Dòng Dữ Liệu: Biểu diễn luồng dữ liệu giữa hệ thống và môi trường, ví dụ
như quá trình mượn sách, trả sách, tìm kiếm thông tin, v.v.
Nguồn và Đích: Biểu diễn nguồn và đích của dữ liệu, chẳng hạn như thông
tin sách đến từ cơ sở dữ liệu sách, và thông tin mượn sách đi đến hệ thống
quản lý mượn trả.
Câu 16:
Biểu diễn các hoạt động, chức năng, hay quy trình xử lý dữ liệu trong
hệ thống.
Biểu diễn luồng dữ liệu giữa các quy trình hoặc giữa quy trình và các
đối tượng dữ liệu.
Biểu diễn các thực thể ngoại vi (người dùng, hệ thống khác, v.v.)
tương tác với hệ thống.
Biểu diễn quyết định hoặc luồng điều khiển trong quy trình.
Ví dụ Minh Họa:
Giả sử chúng ta có hệ thống quản lý thư viện, dưới đây là một ví dụ đơn giản về
Sơ đồ DFD:
Biểu diễn luồng dữ liệu chứa thông tin mượn sách từ người đọc đến
quy trình mượn sách.
Biểu diễn nơi lưu trữ thông tin sách trong hệ thống.
Biểu diễn người đọc là một thực thể ngoại vi tương tác với hệ thống.
Biểu diễn quyết định kiểm tra xem sách còn trong kho không trước
khi cho mượn.
Câu 17:
Sơ đồ ERD là một công cụ mô hình hóa trong phân tích hệ thống, chủ yếu được sử
dụng trong môi trường cơ sở dữ liệu. Nó giúp biểu diễn mối quan hệ giữa các
thực thể (entities) trong hệ thống và cách chúng tương tác với nhau thông qua
các mối quan hệ.
Biểu diễn một nhóm các đối tượng có tính chất chung. Thực thể có
thể là người, đồ vật, sự kiện, hoặc khái niệm có thể được lưu trữ
trong cơ sở dữ liệu.
2. Thuộc Tính (Attribute):
Biểu diễn thông tin cụ thể liên quan đến mỗi thực thể. Mỗi thuộc tính
đại diện cho một đặc điểm hoặc thuộc tính của thực thể.
Biểu diễn cách các thực thể tương tác với nhau. Mối quan hệ có thể
là một-đến-một, một-đến-nhiều, hoặc nhiều-đến-nhiều.
Định ra thuộc tính độc nhất để xác định mỗi bản ghi trong thực thể.
Là một thuộc tính trong một thực thể tham chiếu đến khoa chính của
một thực thể khác, tạo ra mối quan hệ giữa chúng.
Ví dụ Minh Họa:
Giả sử chúng ta xây dựng một hệ thống quản lý thư viện, dưới đây là một ví dụ
đơn giản về Sơ Đồ ERD:
Thực Thể:
Sách (Book):
Có thuộc tính như "Mã Độc Giả," "Tên Độc Giả," và "Địa Chỉ."
Mã Sách là Khóa Ngoại trong Mối Quan Hệ Mượn Sách, kết nối với
Khoa Chính "Mã Sách" trong Thực Thể Sách.
Mã Độc Giả là Khóa Ngoại trong Mối Quan Hệ Mượn Sách, kết nối
với Khoa Chính "Mã Độc Giả" trong Thực Thể Người Đọc.
Câu 18:
Biểu đồ Use Case là một công cụ trong phân tích và thiết kế hệ thống, được sử
dụng để mô tả chức năng của hệ thống từ góc độ người dùng. Các thành phần cơ
bản của biểu đồ Use Case bao gồm:
Mô tả một chức năng hoặc một tác vụ mà hệ thống cung cấp cho
người dùng. Mỗi Use Case thường tương ứng với một tính năng cụ
thể của hệ thống.
Biểu diễn một thực thể bên ngoài hệ thống (người dùng, hệ thống
khác, hoặc thành phần bên ngoài) tương tác với hệ thống thông qua
các Use Case.
3. Hệ Thống (System):
Biểu diễn toàn bộ hệ thống hoặc ứng dụng, chứa các Use Case và các
tác nhân liên quan.
4. Biên (Boundary):
Ký hiệu biểu diễn ranh giới giữa hệ thống và tác nhân, làm rõ phạm vi
của Use Case.
Kết nối giữa các Use Case và tác nhân, thể hiện cách chúng tương tác.
Tác nhân (Actor) trong biểu đồ Use Case đóng vai trò là người dùng hoặc các thực
thể bên ngoài tương tác với hệ thống. Chức năng của tác nhân bao gồm:
Tác nhân có thể kích thước Use Case bằng cách tham gia vào một
hoặc nhiều Use Case. Mỗi Use Case mô tả một chức năng cụ thể mà
tác nhân có thể thực hiện.
Tác nhân tương tác với hệ thống thông qua các Use Case. Mối quan
hệ giữa tác nhân và Use Case mô tả cách mà người dùng hoặc thực
thể bên ngoài sử dụng hệ thống để đạt được một mục tiêu cụ thể.
Tác nhân chỉ định các chức năng mà họ có thể sử dụng trong hệ
thống. Mỗi tác nhân đóng góp vào việc định rõ các yêu cầu và mong
đợi của một nhóm người dùng cụ thể.
Ví dụ, trong một ứng dụng đặt vé trực tuyến, tác nhân có thể là "Người Dùng" và
"Quản trị viên." Mỗi tác nhân sẽ có các Use Case khác nhau như "Đặt vé" hoặc
"Quản lý thông tin đặt vé" tùy thuộc vào vai trò và quyền hạn của họ trong hệ
thống.
Câu 19:
Trong biểu đồ Use Case, "Ca Sử Dụng" (Use Case) đại diện cho một tập hợp các
hành động (chức năng) mà hệ thống cung cấp cho người sử dụng để đạt được
một mục tiêu cụ thể. Chức năng của một ca sử dụng bao gồm:
1. Mô Tả Hành Động:
2. Phạm Vi Rõ Ràng:
Ca sử dụng mô tả cách tác nhân (người sử dụng hoặc thực thể bên
ngoài) tương tác với hệ thống để thực hiện các chức năng cụ thể.
5. Phản Hồi:
Ca sử dụng cung cấp thông tin về phản hồi mà hệ thống có thể trả về
cho người sử dụng sau khi họ thực hiện một hành động nào đó.
6. Thứ Tự Các Bước:
Trình tự của các bước hoặc sự kiện được mô tả trong ca sử dụng giúp
hiểu rõ quy trình hoặc luồng công việc mà người sử dụng phải thực
hiện để đạt được mục tiêu.
Ví dụ, trong một hệ thống đặt vé máy bay, một ca sử dụng có thể là "Đặt Vé."
Trong ca sử dụng này, người sử dụng có thể thực hiện các hành động như chọn
điểm xuất phát, chọn điểm đến, chọn ngày đi, và nhấn nút đặt vé. Hệ thống sau
đó xác nhận đặt vé và cung cấp mã đặt vé cho người sử dụng. Ca sử dụng "Đặt
Vé" mô tả toàn bộ quy trình và tương tác giữa người sử dụng và hệ thống để đảm
bảo việc đặt vé được thực hiện một cách hiệu quả.
Câu 20,21:
Trong biểu đồ Use Case, có các mối quan hệ quan trọng giữa các Use Case và giữa
Use Case và các tác nhân. Dưới đây là một số mối quan hệ chính:
Mối quan hệ bao hàm (<<include>>) trong biểu đồ Use Case có ý nghĩa mô tả
một mối quan hệ trong đó một Use Case bao hàm (kết hợp) một hoặc nhiều Use
Case khác. Nếu một Use Case bao hàm một Use Case khác, điều này có nghĩa là
hành động của Use Case bao hàm được thực hiện như một phần của quy trình
của Use Case được bao hàm.
Use Case được bao hàm (included Use Case) cung cấp một chức
năng cụ thể mà Use Case chính (base Use Case) kết hợp vào quy
trình của mình.
2. Tái Sử Dụng:
Giúp tái sử dụng chức năng hoặc bước quy trình chung giữa các Use
Case khác nhau mà không cần lặp lại mô tả chi tiết.
Hỗ trợ giảm độ phức tạp của các Use Case chính bằng cách chia nhỏ
chúng thành các thành phần nhỏ hơn và tái sử dụng chúng trong
nhiều ngữ cảnh.
Mối quan hệ bao hàm mô tả quy trình cụ thể khi Use Case chính
được thực hiện, bao gồm các bước hoặc chức năng từ Use Case
bao hàm.
Cho phép giữ nguyên sự đơn giản của các Use Case
chính, vì chúng chỉ tập trung vào quy trình cơ bản và
không phải chứa thông tin về các chức năng bổ sung.
Câu 22:
Mối quan hệ tổng quát hóa giữa các Use Case có thể có ý nghĩa tương tự như
trong biểu đồ lớp nếu có sự tương đồng chức năng giữa chúng. Dưới đây là ý
nghĩa của mối quan hệ tổng quát hóa trong biểu đồ Use Case:
Mối quan hệ tổng quát hóa có thể thể hiện sự kế thừa chức năng
giữa các Use Case. Một Use Case con có thể kế thừa các tính năng
hoặc hành vi từ một Use Case cha.
2. Tổ Chức Logic:
Mối quan hệ tổng quát hóa có thể giúp tổ chức logic của các Use
Case và tạo ra sự hiểu biết về cách chúng liên quan đến nhau theo
cách kế thừa.
3. Giảm Sự Lặp Lẻ:
Nếu có sự tương đồng chức năng giữa các Use Case, sử dụng mối
quan hệ tổng quát hóa có thể giúp giảm sự lặp lẻ trong việc mô tả các
tính năng chung.
Mối quan hệ tổng quát hóa có thể làm cho biểu đồ Use Case trở nên
dễ quản lý hơn và dễ hiểu biết hơn nếu có các cấp độ của Use Case
được tổ chức theo cấu trúc tổng quát/hóa.
Câu 23:
Biểu đồ tuần tự là một loại biểu đồ UML (Unified Modeling Language) được sử
dụng để mô tả sự tương tác giữa các đối tượng trong một hệ thống trong một
khoảng thời gian nhất định. Dưới đây là các thành phần cơ bản của biểu đồ tuần
tự:
Đại diện cho các đối tượng tham gia vào tương tác. Mỗi đối tượng
thường được biểu diễn bằng một hình chữ nhật và được đặt tên ở
trên đỉnh hình chữ nhật.
Biểu diễn thời gian tồn tại của một đối tượng trong tương tác.
Lifeline thường là một đường thẳng dọc xuống từ đối tượng và được
đặt tên ở đỉnh đường thẳng.
Biểu diễn thông điệp được gửi từ một đối tượng đến đối tượng khác.
Có hai loại thông điệp chính là thông điệp đồng bộ (synchronous
message) và thông điệp không đồng bộ (asynchronous message).
5. Gói (Package):
Đại diện cho một tập hợp các biểu đồ tuần tự hoặc các yếu tố khác,
giúp tổ chức và quản lý mô hình.
Trong biểu đồ tuần tự (sequence diagram), lớp giao diện (Interface Class) thường
đại diện cho một giao diện người dùng (UI) hoặc một phần của hệ thống mà người
dùng tương tác. Chức năng chính của lớp giao diện trong biểu đồ tuần tự bao
gồm:
Lớp giao diện thường đại diện cho các thành phần giao diện người
dùng của hệ thống, chẳng hạn như các cửa sổ, màn hình, hoặc trang
web. Nó thể hiện cách mà người dùng tương tác với hệ thống.
Lớp giao diện có thể chứa logic xử lý sự kiện người dùng. Khi người
dùng thực hiện các hành động như nhấn nút, nhập liệu, hoặc thao
tác trên giao diện, lớp giao diện có thể chịu trách nhiệm gửi thông
điệp tương ứng đến các lớp điều khiển (controller) hoặc đối tượng có
liên quan.
Lớp giao diện thường tương tác với các lớp điều khiển, đối tượng
nghiệp vụ, hoặc các thành phần khác của hệ thống. Nó có thể gửi
thông điệp để yêu cầu dữ liệu, thực hiện chức năng cụ thể, hoặc cập
nhật trạng thái của hệ thống.
Lớp giao diện có thể đảm nhiệm vai trò trong việc thiết lập và quản lý
giao diện người dùng, bao gồm cả việc hiển thị và ẩn các thành phần
tùy thuộc vào ngữ cảnh hoặc trạng thái của ứng dụng.
Chức năng của lớp giao diện thường liên quan đến việc tạo ra một giao diện
tương tác cho người dùng và đảm bảo rằng thông tin được truyền đúng cách giữa
giao diện người dùng và các phần khác của hệ thống.
Câu 24:
Lớp điều khiển (Controller) trong biểu đồ tuần tự có chức năng quan trọng trong
việc điều khiển và tổ chức luồng tương tác giữa các đối tượng trong hệ thống.
Dưới đây là những chức năng chính của lớp điều khiển trong biểu đồ tuần tự:
Lớp điều khiển đảm nhận vai trò quản lý luồng điều khiển của hệ
thống. Nó xác định các bước cần thiết để thực hiện một chức năng cụ
thể và quyết định khi nào các đối tượng khác được kích hoạt hoặc
thông điệp được gửi.
Lớp điều khiển có thể gửi thông điệp đến các đối tượng khác và nhận
thông điệp từ chúng. Thông điệp này có thể bao gồm yêu cầu thực
hiện một chức năng cụ thể hoặc truyền dữ liệu giữa các đối tượng.
Trong một số trường hợp, lớp điều khiển có thể kết nối với giao diện
người dùng (UI) để xử lý các sự kiện người dùng và cập nhật trạng
thái của hệ thống dựa trên các thao tác người dùng.
4. Điều Khiển Luồng Tương Tác:
Lớp điều khiển có thể định rõ thứ tự và luồng của các tương tác giữa
các đối tượng. Nó có thể quyết định khi nào một đối tượng nên được
kích hoạt và khi nào thông điệp nên được gửi.
Trong các hệ thống phức tạp, lớp điều khiển thường có trách nhiệm
quản lý luồng nghiệp vụ (business process) và đảm bảo rằng các hoạt
động được thực hiện theo đúng trình tự.
Lớp điều khiển quyết định khi nào và làm thế nào các đối tượng khác
trong hệ thống nên thực hiện các chức năng cụ thể.
Lớp điều khiển giúp tạo ra sự tổ chức và quản lý trong biểu đồ tuần tự, giúp hiểu
rõ cách các thành phần tương tác và hợp tác để thực hiện một chức năng hoặc
nhiệm vụ cụ thể.
Câu 25:
Trong biểu đồ tuần tự (sequence diagram), lớp thực thể (Entity Class) thường đại
diện cho các đối tượng hoặc thực thể có thể tồn tại trong hệ thống. Chức năng
chính của lớp thực thể trong biểu đồ tuần tự bao gồm:
Lớp thực thể thường thể hiện các đối tượng hoặc thực thể cụ thể
trong hệ thống. Đối tượng này có thể là một đối tượng cụ thể được
tạo ra trong quá trình thực thi hay là một thực thể có thể tồn tại
trong cơ sở dữ liệu.
Lớp thực thể thường tương tác với các lớp khác trong hệ thống. Nó
có thể gửi thông điệp để yêu cầu dữ liệu, thực hiện các chức năng cụ
thể, hoặc cập nhật trạng thái của hệ thống.
3. Đóng Gói Dữ Liệu và Logic Nghiệp Vụ:
Lớp thực thể có thể chứa dữ liệu và logic nghiệp vụ liên quan đến đối
tượng hoặc thực thể mà nó đại diện. Điều này bao gồm các thuộc
tính và phương thức của đối tượng hoặc thực thể.
Lớp thực thể thường phản ánh trạng thái của đối tượng hoặc thực
thể tại một thời điểm cụ thể trong quá trình thực thi.
Lớp thực thể có thể quản lý chu kỳ sinh sống của đối tượng hoặc thực
thể, bao gồm việc tạo ra và hủy bỏ các thể hiện.
Lớp thực thể có thể chứa dữ liệu và logic nghiệp vụ cụ thể cho đối
tượng hoặc thực thể nó đại diện.
Lớp thực thể giúp mô tả các thành phần cụ thể của hệ thống và làm cho biểu đồ
tuần tự trở nên rõ ràng hơn bằng cách đưa ra cái nhìn về cách các đối tượng
tương tác với nhau trong thời gian thực thi.
Câu 26:
Trong biểu đồ tuần tự (sequence diagram), có một số loại thông điệp mà các đối
tượng gửi và nhận để thực hiện tương tác. Các loại thông điệp chính bao gồm:
Thông điệp thực hiện được sử dụng khi một đối tượng gửi một thông
điệp đến một đối tượng khác để yêu cầu thực hiện một phương thức
cụ thể. Thông điệp này đề cập đến một phương thức cụ thể của đối
tượng nhận và thường đi kèm với thông tin đầu vào.
2. Trả Lời (Return Message):
Thông điệp trả lời được sử dụng để đáp ứng lại một thông điệp thực
hiện. Nó diễn ra khi đối tượng nhận đã thực hiện xong một phương
thức và trả về kết quả cho đối tượng gửi.
Thông điệp gửi được sử dụng khi đối tượng gửi muốn thông báo về
một sự kiện xảy ra cho đối tượng nhận mà không yêu cầu việc thực
hiện bất kỳ phương thức nào cụ thể.
Thông điệp tạo mới được sử dụng khi một đối tượng tạo ra một đối
tượng mới. Thông điệp này thường đi kèm với hình ảnh của đối
tượng mới và có thể đưa ra các thông tin khởi tạo.
Thông điệp hủy bỏ được sử dụng khi một đối tượng được hủy bỏ
hoặc kết thúc. Nó diễn ra khi đối tượng gửi thông điệp hủy bỏ yêu
cầu đối tượng nhận tự hủy bỏ mình.
Các loại thông điệp này khác nhau ở mục đích và tác động của chúng trong quá
trình tương tác giữa các đối tượng. Thông điệp thực hiện và trả lời thường được
sử dụng để mô tả luồng điều khiển và giao tiếp giữa các đối tượng, trong khi các
thông điệp gửi, tạo mới và hủy bỏ thường liên quan đến sự kiện và quản lý đối
tượng.
Câu 27:
Trong biểu đồ lớp UML (Unified Modeling Language), các lớp có thể liên kết với
nhau thông qua mối quan hệ. Dưới đây là các mối quan hệ chính trong biểu đồ
lớp:
Mối quan hệ kế thừa thể hiện mối quan hệ giữa lớp cha (lớp cơ sở)
và lớp con (lớp dẫn xuất). Lớp con kế thừa các thuộc tính và phương
thức của lớp cha và có thể mở rộng hoặc ghi đè chúng. Mối quan hệ
này thường được biểu thị bằng mũi tên chỉ hướng từ lớp con đến lớp
cha.
Mối quan hệ hợp tác thể hiện mối quan hệ "chứa" giữa một lớp
"toàn vẹn" và một lớp "thành phần". Nó thường được biểu thị bằng
mũi tên chỉ hướng từ lớp toàn vẹn đến lớp thành phần. Mối quan hệ
này không mô tả một mối quan hệ chặt chẽ và các thành phần có thể
tồn tại mà không phụ thuộc vào đối tượng "toàn vẹn".
Mối quan hệ tập hợp tương tự như mối quan hệ hợp tác, nhưng nó
mô tả mối quan hệ "chỉ chứa" chặt chẽ hơn. Đối tượng "toàn vẹn"
quản lý vòng đời của đối tượng "thành phần", và khi đối tượng "toàn
vẹn" bị hủy, đối tượng "thành phần" cũng sẽ bị hủy.
Mối quan hệ phụ thuộc thể hiện sự phụ thuộc giữa hai lớp, trong đó
một lớp sử dụng hoặc phụ thuộc vào một lớp khác. Nếu lớp A phụ
thuộc vào lớp B, thì thay đổi trong lớp B có thể ảnh hưởng đến lớp A.
Mối quan hệ kết hợp (Association) trong biểu đồ lớp UML (Unified Modeling
Language) thể hiện mối quan hệ tương tác giữa các đối tượng của các lớp khác
nhau. Mối quan hệ kết hợp có ý nghĩa chính như sau:
Mối quan hệ kết hợp biểu thị một liên kết hoặc mối quan hệ giữa các
đối tượng thuộc các lớp khác nhau trong hệ thống.
Nó mô tả cách mà các đối tượng của các lớp liên kết với nhau và có
thể tương tác trong quá trình thực hiện các chức năng của hệ thống.
Mối quan hệ kết hợp thường được sử dụng để biểu diễn cách mà các
đối tượng của các lớp chia sẻ dữ liệu hoặc tương tác với nhau để
thực hiện các nhiệm vụ cụ thể.
4. Độ Mạnh và Độ Yếu:
Mối quan hệ kết hợp có thể có độ mạnh hoặc độ yếu, tùy thuộc vào
cách mà mối quan hệ ảnh hưởng đến vòng đời và sự tồn tại của các
đối tượng.
Mối quan hệ kết hợp có thể chứa thông tin chi tiết như các thuộc
tính, phương thức, hoặc ràng buộc giữa các đối tượng được liên kết.
Nó có thể biểu diễn đa dạng loại mối quan hệ, bao gồm mối quan hệ
một đối một (1-1), mối quan hệ một nhiều (1-n), và mối quan hệ
nhiều nhiều (n-n).
Ví dụ: Trong một hệ thống quản lý thư viện, có thể có mối quan hệ kết hợp giữa
lớp "Sách" và lớp "Tác Giả," trong đó mỗi sách có thể liên kết với một hoặc nhiều
tác giả, và mỗi tác giả cũng có thể liên kết với nhiều sách khác nhau. Mối quan hệ
này có thể được biểu diễn bằng mối quan hệ kết hợp.
Câu 28:
Mối quan hệ thu nạp, hay kết tập (Aggregation) trong biểu đồ lớp UML (Unified
Modeling Language) thể hiện mối quan hệ giữa một lớp "toàn vẹn" và một lớp
"thành phần". Mối quan hệ này biểu thị một mối quan hệ "chứa" giữa các đối
tượng của lớp "toàn vẹn" và lớp "thành phần". Ý nghĩa chính của mối quan hệ thu
nạp bao gồm:
Mối quan hệ thu nạp mô tả một mối quan hệ "chứa" hoặc "gồm có"
giữa một lớp "toàn vẹn" (whole) và một lớp "thành phần" (part). Lớp
"toàn vẹn" chứa các đối tượng của lớp "thành phần".
Mối quan hệ này không mô tả một mối quan hệ chặt chẽ như mối
quan hệ hợp tác (Aggregation không chặt chẽ). Các đối tượng "thành
phần" có thể tồn tại mà không phụ thuộc vào đối tượng "toàn vẹn".
Các đối tượng "thành phần" có thể thuộc về nhiều đối tượng "toàn
vẹn" khác nhau và tồn tại độc lập tương đối với đối tượng "toàn
vẹn". Điều này có nghĩa là việc tồn tại hoặc hủy bỏ một đối tượng
"toàn vẹn" không ảnh hưởng đến tồn tại của các đối tượng "thành
phần".
Mối quan hệ này thường được biểu thị bằng một đường mũi tên từ
lớp "toàn vẹn" đến lớp "thành phần" với mũi tên chỉ hướng. Mũi tên
này thường được đặt ở phía của lớp "toàn vẹn" để chỉ rõ mối quan
hệ từ lớp chứa đến lớp được chứa.
Mối quan hệ thu nạp thường được sử dụng để biểu diễn cấu trúc
phức tạp trong hệ thống, trong đó một đối tượng "toàn vẹn" có thể
chứa hoặc gồm có nhiều đối tượng "thành phần" khác nhau.
Ví dụ: Một lớp "Đồng Hồ" có thể được xem xét như lớp "toàn vẹn" và các lớp
"Kim Giờ," "Kim Phút," và "Kim Giây" có thể được xem xét là các lớp "thành phần"
của nó trong mối quan hệ thu nạp.
Câu 29 :
Mối quan hệ thành phần (Composition) trong biểu đồ lớp UML (Unified Modeling
Language) thể hiện mối quan hệ chặt chẽ giữa một lớp "toàn vẹn" và một lớp
"thành phần". Mối quan hệ này có ý nghĩa chính như sau:
Mối quan hệ thành phần biểu thị một mối quan hệ chặt chẽ giữa các
đối tượng của lớp "toàn vẹn" và lớp "thành phần". Điều này có nghĩa
là đối tượng "toàn vẹn" chịu trách nhiệm về vòng đời của các đối
tượng "thành phần" và quản lý việc tạo và hủy bỏ chúng.
Các đối tượng "thành phần" tồn tại chỉ trong ngữ cảnh của đối tượng
"toàn vẹn". Điều này có nghĩa là khi đối tượng "toàn vẹn" bị hủy, các
đối tượng "thành phần" cũng sẽ bị hủy, tạo ra mối quan hệ phụ
thuộc đồng nhất.
Mối quan hệ thành phần thường được sử dụng để mô hình hóa cấu
trúc phức tạp trong hệ thống, trong đó một đối tượng lớn hơn chứa
các thành phần chi tiết.
Mối quan hệ này thường được sử dụng khi có một đối tượng có tính
năng đặc biệt hoặc phức tạp và cần được phân rã thành các phần
nhỏ hơn để quản lý một cách hiệu quả.
Ví dụ: Trong một hệ thống đồ họa, lớp "Hình Chữ Nhật" có thể được kết hợp chặt
chẽ với lớp "Điểm" để biểu thị rằng mỗi hình chữ nhật được tạo ra bao gồm các
điểm tạo thành nó. Khi một hình chữ nhật bị hủy, các điểm tạo thành nó cũng sẽ
bị hủy.
Câu 30:
Biểu đồ hoạt động (Activity Diagram) trong UML (Unified Modeling Language)
được sử dụng để mô tả các hoạt động, luồng công việc, và quy trình trong hệ
thống. Các thành phần cơ bản của biểu đồ hoạt động bao gồm:
Hoạt động là các đơn vị chính trong biểu đồ hoạt động, biểu thị các
công việc cụ thể hoặc hành động diễn ra trong quá trình.
2. Trạng Thái Xuất Phát (Initial State) và Trạng Thái Kết Thúc (Final State):
Trạng thái xuất phát là điểm bắt đầu của biểu đồ hoạt động, còn
trạng thái kết thúc là điểm kết thúc hoặc kết luận quá trình.
3. Hành Động (Action):
Hành động biểu thị các công việc hoặc hành động cụ thể được thực
hiện trong quá trình hoạt động. Có thể là các hành động đơn giản
hoặc phức tạp.
Quyết định là một nút trong biểu đồ hoạt động biểu thị một điểm
quyết định, dựa vào điều kiện logic, để xác định luồng tiếp theo.
Luồng điều khiển là các đường nối giữa các hoạt động, biểu thị thứ
tự thực hiện các hoạt động trong quá trình.
6. Nhánh (Branch):
Nhánh được sử dụng để biểu thị nhánh của luồng điều khiển, đặc
biệt trong các điều kiện quyết định.
7. Gộp (Merge):
Gộp là một nút được sử dụng để kết hợp các luồng điều khiển lại với
nhau sau khi chúng đã được phân nhánh.
8. Fork và Join:
Fork được sử dụng để tạo ra nhiều luồng điều khiển từ một điểm duy
nhất, trong khi Join sử dụng để kết hợp nhiều luồng điều khiển thành
một.
Phụ thuộc là một đường nối biểu thị dữ liệu hoặc thông tin được
truyền giữa các hoạt động.
Pin là một biểu tượng biểu thị đối tượng hoặc dữ liệu truyền qua các
hoạt động.
12.Partition (Partition):
Partition, hay còn gọi là swimlane, được sử dụng để phân loại và định
rõ người hoặc đơn vị thực hiện các hoạt động.
Thanh đồng bộ phân nhánh là một biểu tượng đặc biệt trong biểu đồ hoạt
động, được sử dụng để đồng bộ hóa luồng điều khiển sau khi các hoạt động
đã phân nhánh (fork). Nó được đặt trên các đường nối giữa các hoạt động
để biểu thị điểm mà các luồng điều khiển sẽ hội tụ và tiếp tụ sau khi đã
thực hiện các hoạt động tương ứng.
Thanh đồng bộ phân nhánh được đặt trước các hoạt động phân
nhánh để biểu thị nơi tạo ra các luồng điều khiển đồng thời. Các
luồng này đều bắt đầu từ điểm phân nhánh và tiếp tục đồng thời
thực hiện các hoạt động tương ứng.
Thanh đồng bộ phân nhánh thường được sử dụng khi có nhiều công
việc cần được thực hiện đồng thời trong quá trình xử lý. Điều này
giúp thể hiện sự đồng thời hóa các tác vụ và tăng cường hiệu suất.
Thanh đồng bộ phân nhánh giúp kiểm soát quá trình thực hiện các
hoạt động đồng thời, đảm bảo rằng các luồng điều khiển không gặp
vấn đề hoặc xung đột khi đồng thời thực hiện các tác vụ.
Ví dụ: Trong một hệ thống đặt hàng trực tuyến, thanh đồng bộ phân nhánh có thể
được sử dụng trước khi bắt đầu xử lý đặt hàng. Các luồng điều khiển có thể phân
nhánh tại điểm này để đồng thời thực hiện các nhiệm vụ như kiểm tra kho hàng,
xác nhận thông tin khách hàng, và xử lý thanh toán.
Câu 31:
Trong biểu đồ hoạt động, "thanh đồng bộ kết hợp" (merge synchronization bar)
được sử dụng để đồng bộ hóa các luồng điều khiển sau khi chúng đã hợp nhất tại
một điểm hợp nhất (merge point) trước đó trong biểu đồ. Ý nghĩa của thanh đồng
bộ kết hợp bao gồm:
Thanh đồng bộ kết hợp được đặt trên các đường nối giữa các hoạt
động để chỉ ra điểm nơi mà các luồng điều khiển sẽ hợp nhất. Khi các
luồng điều khiển đạt đến thanh đồng bộ kết hợp, chúng sẽ hợp nhất
và tiếp tụ về một hoạt động chung.
Thanh đồng bộ kết hợp thường được sử dụng sau các hoạt động
phân nhánh (fork), nơi các luồng điều khiển đồng thời được tạo ra.
Sau khi đã thực hiện các hoạt động tương ứng, thanh đồng bộ kết
hợp giúp quay lại luồng điều khiển chính của biểu đồ hoạt động.
Thanh đồng bộ kết hợp giúp làm cho biểu đồ hoạt động trở nên dễ
hiểu và quản lý hơn, đặc biệt khi có nhiều luồng điều khiển và sự
tương tác giữa chúng cần được kiểm soát.
Ví dụ: Sau khi có một hoạt động phân nhánh (fork) tạo ra nhiều luồng điều khiển,
thanh đồng bộ kết hợp có thể được sử dụng để hợp nhất các luồng này trước khi
tiếp tục với một phần khác của biểu đồ hoạt động.
Câu 32:
Quá trình thiết kế trong lĩnh vực phần mềm thường bao gồm các công đoạn sau:
Thu thập thông tin từ yêu cầu hệ thống và chuyển đổi chúng thành
yêu cầu thiết kế chi tiết.
Phân tích yêu cầu thiết kế để hiểu rõ yêu cầu và các ràng buộc liên
quan, đồng thời xác định các yếu tố quyết định thiết kế.
Xây dựng một kiến trúc hệ thống tổng thể để định rõ các thành phần
và mối quan hệ giữa chúng.
Tạo ra các bản thiết kế chi tiết cho từng thành phần của hệ thống,
bao gồm cả thiết kế cấu trúc dữ liệu và thiết kế thuật toán.
5. Xây Dựng Mô Hình Thiết Kế (Design Modeling):
Thực hiện kiểm thử và xác nhận rằng thiết kế đáp ứng đúng các yêu
cầu và đưa ra các điều chỉnh cần thiết.
Phân chia vấn đề lớn thành các vấn đề con nhỏ hơn để giảm độ phức
tạp, sau đó giải quyết từng vấn đề con một.
Tập trung vào việc mô hình hóa hệ thống dưới dạng các đối tượng có
trạng thái và hành vi, cung cấp tính tái sử dụng và dễ bảo trì.
4. Trường Phái Đối Tượng Hình Thanh (Object-Oriented Analysis and Design
- OOAD):
Kết hợp phân tích và thiết kế hướng đối tượng để hiểu và mô hình
hóa yêu cầu, sau đó tạo ra một thiết kế hướng đối tượng.
Áp dụng các phương pháp linh hoạt, thường xuyên điều chỉnh thiết
kế dựa trên phản hồi liên tục từ khách hàng và nhóm phát triển.
6. Trường Phái Kiến Trúc (Architectural):
Tập trung vào việc thiết kế kiến trúc hệ thống, đặc biệt là các quyết
định quan trọng về cấu trúc và các thành phần quan trọng.
Câu 33:
Trong quá trình thiết kế, thường thì thiết kế đầu ra được xác định trước đầu vào
và thiết kế cơ sở dữ liệu. Nguyên tắc này được gọi là "đầu ra trước" (output-first)
và có những lợi ích sau:
Bằng cách xác định rõ đầu ra trước, đội ngũ thiết kế có thể tập trung
vào mục tiêu cụ thể của hệ thống hoặc sản phẩm. Điều này giúp định
rõ yêu cầu và kết quả cuối cùng mà hệ thống cần đạt được.
Thiết kế đầu ra trước giúp xác định rõ giao diện người dùng (UI) và
trải nghiệm người dùng (UX). Việc này quan trọng để đảm bảo rằng
sản phẩm đáp ứng đúng nhu cầu và mong muốn của người sử dụng.
Đặc tả đầu ra trước giúp xác định các chức năng chính cần có trong
hệ thống. Điều này quan trọng để đảm bảo rằng hệ thống được thiết
kế để đáp ứng mục tiêu và nhu cầu cụ thể.
Thiết kế đầu ra trước có thể giúp đội ngũ quản lý rủi ro bằng cách xác
định các khía cạnh quan trọng của sản phẩm sớm. Điều này giúp đảm
bảo rằng những rủi ro có thể được đối phó từ giai đoạn thiết kế.
Câu 34:
Quá trình thiết kế (database design) trong cơ sở dữ liệu thường bao gồm các công
đoạn sau:
Xác định các thực thể (entities) và mối quan hệ (relationships) giữa
chúng dựa trên yêu cầu.
Áp dụng các nguyên tắc chuẩn hóa để giảm thiểu sự lặp lại và đảm
bảo tính nhất quán và linh hoạt của cơ sở dữ liệu.
Dựa trên mô hình dữ liệu, thiết kế các bảng cơ sở dữ liệu, xác định
khóa chính, khóa ngoại, và các ràng buộc.
Xác định cần tạo các index nào để tối ưu truy vấn và cải thiện hiệu
suất.
Xác định và triển khai các biện pháp bảo mật để đảm bảo an toàn của
dữ liệu và quản lý quyền truy cập vào cơ sở dữ liệu.
Xác định kế hoạch backup và phục hồi dữ liệu để đảm bảo sự an toàn
và khả dụng của dữ liệu.
Phân chia cơ sở dữ liệu thành các khu vực riêng biệt dựa trên yêu cầu
kinh doanh hoặc vị trí vật lý.
Áp dụng các nguyên tắc chuẩn hóa để giảm thiểu sự lặp lại và tối ưu
hóa cấu trúc dữ liệu.
Bắt đầu từ mức cao nhất của tổ chức và giảm dần xuống cấp độ chi
tiết.
Câu 35:
Có nhiều phương pháp thiết kế giao diện (UI design) khác nhau, tùy thuộc vào
mục đích cụ thể của dự án và ngữ cảnh sử dụng. Dưới đây là một số phương pháp
phổ biến trong thiết kế giao diện:
Tập trung vào cách tổ chức thông tin để người dùng dễ dàng hiểu và
tìm kiếm thông tin trong ứng dụng hoặc trang web.
Tập trung vào cách người dùng tương tác với hệ thống. Bao gồm việc
thiết kế luồng công việc, trạng thái hệ thống, và các yếu tố tương tác
như nút, trường nhập liệu, và menu.
Đặt người dùng vào trung tâm thiết kế, thường sử dụng các phương
pháp như nhóm tập trung, thử nghiệm người dùng, và phản hồi từ
người dùng.
Kết hợp việc nghiên cứu người dùng trong môi trường tự nhiên của
họ để hiểu rõ hơn về nhu cầu và bối cảnh sử dụng.
Tập trung vào việc thiết kế cách mà người dùng tương tác với hệ
thống, bao gồm cả các yếu tố như chuyển động, âm thanh, và phản
hồi haptic.
Thiết kế giao diện sao cho nó có thể linh hoạt và đáp ứng được trên
nhiều loại thiết bị và kích thước màn hình khác nhau.
Tập trung vào việc thiết kế các yếu tố giao diện dựa trên hành vi
người dùng, bao gồm cả thói quen và sự hiểu biết về cách họ tương
tác với hệ thống.
Câu 36:
Sơ đồ giải thuật (algorithm diagram) thường bao gồm các thành phần sau:
Biểu thị các bước thực hiện công việc cụ thể. Thường được ký hiệu
bằng hình chữ nhật.
Dùng để kết nối các thành phần của sơ đồ và chỉ đường di chuyển
của luồng điều khiển.
Ghi chú và giải thích các phần quan trọng của sơ đồ giải thuật.
Câu 37:
Mã hóa là quá trình chuyển đổi dữ liệu từ dạng gốc (plaintext) thành dạng khác
(ciphertext) theo một qui tắc nhất định. Mục đích chính của mã hóa là bảo mật
thông tin, ngăn chặn việc đọc hoặc hiểu nội dung của dữ liệu mà không có khóa
giải mã tương ứng.
1. Mã hóa cổ điển
Mã hoá cổ điển là phương pháp mã hóa đơn giản nhất, tồn lại lâu nhất trên thế
giới và không cần khóa bảo mật, chỉ cần người gửi và người nhận cùng biết về
thuật toán này là được.
Ví dụ: nếu chúng ta dùng thuật toán đổi kí tự trong câu văn thành kí tự liền kề
trong bảng chữ cái thì chữ “PAvietnam” sẽ biến thành “QBxkfuobn”. Người nhận
khi nhận được chữ “QBxkfuobn” thì chỉ việc dịch ngược lại là xong.
Phương pháp mã hóa này dùng để mã hóa những thứ không cần dịch lại nguyên
bản gốc. Ví dụ, khi bạn đăng nhập vào https://support.pavietnam.vn, mật khẩu
mà bạn nhập sẽ được chuyển thành một chuỗi dài các kí tự bằng một thứ gọi là
hash function (tạm dịch: hàm băm).
Chuỗi này sẽ được lưu vào cơ sở dữ liệu, chứ không lưu mật khẩu thô của bạn
nhằm tăng tính bảo mật. Lỡ hacker có trộm dữ liệu thì cũng chỉ thấy những thứ
như GziyHGV547bklhuHgHZ chứ không biết password thật của bạn là gì
Ở phương pháp mã hóa đối xứng, chìa khóa để mã hóa và giải mã là như nhau
nên người ta mới gọi là đối xứng, tiếng Anh là symmetric. Theo một số tài liệu thì
phương pháp mã hóa đối xứng là giải pháp được sử dụng nhất phổ biến hiện nay.
Giả sử mình cần mã hóa một tập tin để gửi cho bạn, thì quy trình của phương
pháp mã hóa đối xứng sẽ như sau:
B1: Mình sử dụng một thuật toán mã hóa, cộng với khóa của mình để mã
hóa file (cách tạo khóa tạm thời không bàn đến, chủ yếu là dùng các giải
thuật ngẫu nhiên).
B2: Bằng cách nào đó, mình giao cho bạn một khóa giống với mình, có thể
là giao trước hoặc sau khi mã hóa tập tin đều được.
B3: Khi bạn nhận tập tin, bạn sẽ dùng khóa này để giải mã ra tập tin gốc có
thể đọc được.Những điều bạn cần biết về mã hoá thông tin và ứng dụng
của chúng.
Nếu như ở trên, khóa mã hóa và khóa giải mã đều giống nhau thì với phương
pháp mã hóa bất đối xứng, hai khóa này hoàn toàn khác nhau. Để phân biệt giữa
hai khóa thì người ta gọi khóa mã hóa là public key, còn khóa giải mã là private
key.
Public, như cái tên đã gợi ý, mang tính chất “công cộng” và có thể được sử dụng
để mã hóa dữ liệu bởi bất kì ai. Tuy nhiên, chỉ người nào nằm trong tay private
key mới có khả năng giải mã dữ liệu để xem.
Phương pháp mã hóa bất đối xứng sử dụng quy trình như sau:
B1: Bên nhận sẽ tạo ra một cặp public + private key. Người này giữ lại
private key cho riêng mình và cất cẩn thận, còn public key thì chuyển cho
bên gửi (dưới hình thức email, copy qua USB, v.v) hoặc post đâu đó lên
mạng.
B2: Bên gửi sử dụng public key để mã hóa dữ liệu, sau đó gửi file đã mã hóa
lại cho bên nhận.
B3: Bên nhận lúc này sẽ xài private key đã lưu khi nãy để giải mã dữ liệu và
sử dụng.Những điều bạn cần biết về mã hoá thông tin và ứng dụng của
chúng
Câu 38:
Trong lĩnh vực cơ sở dữ liệu, một thực thể (entity) là một đối tượng hoặc sự vật
có thể được lưu trữ dữ liệu và có thuộc tính để mô tả nó. Mỗi thực thể thường có
một hoặc nhiều thuộc tính (attributes) và được đặc trưng bởi các đặc điểm hoặc
sự kiện cụ thể. Một số thực thể cũng có thể có quan hệ với các thực thể khác.
Ví dụ, xét một tập thực thể "Sinh Viên" (Student) trong một hệ thống quản lý đại
học:
Thuộc Tính Khóa (Key Attribute): Mã sinh viên (Student ID) có thể
được sử dụng như một thuộc tính khóa để duy nhất định danh từng
sinh viên.
Thuộc Tính Kết Nối (Relationship Attribute): Lớp học (Class) mà sinh
viên đang theo học có thể được xem xét như một thuộc tính kết nối,
vì nó mô tả mối quan hệ giữa sinh viên và lớp học.
Ví dụ thêm:
2. Thực Thể "Lớp Học" (Class):
Thuộc Tính Khóa (Key Attribute): Mã lớp (Class ID) có thể là thuộc
tính khóa để xác định mỗi lớp học.
Mỗi thực thể thường có ít nhất một thuộc tính khóa để đảm bảo tính duy nhất và
định danh của thực thể đó. Các thuộc tính mô tả và kết nối giúp mô tả chi tiết và
mối quan hệ giữa các thực thể trong hệ thống cơ sở dữ liệu.
Câu 39:
Quá trình chuẩn hóa cơ sở dữ liệu là quá trình thiết kế để giảm thiểu lặp lại dữ
liệu và đảm bảo tính đồng nhất của dữ liệu. Chuẩn hóa thường được thực hiện
qua nhiều bước, từ chuẩn hóa cơ bản (1NF) đến các mức độ chuẩn hóa cao hơn
(2NF, 3NF, BCNF, và nhiều hơn nữa).
Yêu Cầu:
Tất cả các ô trong bảng phải chứa giá trị nguyên tố (atomic), nghĩa là
không thể phân rã giá trị trong ô thành các thành phần nhỏ hơn.
Bây giờ, mỗi ô trong cả hai bảng đều chứa một giá trị duy nhất, đạt được yêu cầu
1NF.
Câu 40:
Ví dụ:
Để đạt chuẩn hóa 2NF, chúng ta cần phân rã bảng "HoaDon" thành hai bảng mới:
"HoaDon" và "SanPham".
Câu 41:
2. Tất cả các thuộc tính không phải là khóa chính đều phải không phụ thuộc
vào một thuộc tính không phải là khóa chính khác.
Ví dụ Minh Họa:
Câu 42:
Khi thiết kế Cơ sở dữ liệu từ đầu, quá trình chuẩn hóa thường bao gồm các bước
như chuẩn hóa 1NF, chuẩn hóa 2NF, chuẩn hóa 3NF, và nếu cần thiết, các mức
chuẩn hóa cao hơn như BCNF, 4NF, và 5NF. Dưới đây là cách thức chuẩn hóa đối
với mối quan hệ 1-1.
Mối quan hệ 1-1 xuất hiện khi mỗi hàng trong bảng nguồn (source table) tương
ứng với một và chỉ một hàng trong bảng đích (target table), và ngược lại.
Bước 1 - 1NF:
Đảm bảo mọi ô trong bảng chỉ chứa giá trị nguyên tố.
Bước 2 - 2NF:
Chia bảng thành các bảng riêng biệt để loại bỏ sự phụ thuộc giữa các thuộc
tính không phải là khóa chính.
Nếu mối quan hệ 1-1 xuất hiện, hãy xác định khóa chính chung (shared
primary key) giữa hai bảng.
Mỗi bảng trong mối quan hệ 1-1 cần chứa một phần của khóa chính chung.
Câu 43:
Chuẩn hóa mối quan hệ 1-n (một-nhiều) là quá trình thiết kế cơ sở dữ liệu để đảm
bảo tính đồng nhất và tránh lặp lại dữ liệu. Dưới đây là cách thức chuẩn hóa mối
quan hệ 1-n:
Bước 1 - 1NF:
Đảm bảo rằng mọi ô trong bảng chỉ chứa giá trị nguyên tố.
Bước 2 - 2NF:
Phân rã bảng thành các bảng riêng biệt để loại bỏ sự phụ thuộc giữa các
thuộc tính không phải là khóa chính.
Đảm bảo rằng tất cả các thuộc tính không phải là khóa chính đều phụ thuộc
vào toàn bộ khóa chính.
Bước 3 - 3NF:
Loại bỏ sự phụ thuộc chức năng giữa các thuộc tính không phải là khóa
chính và chúng thành các bảng riêng biệt.
Chắc chắn rằng không có thuộc tính không phải là khóa chính nào phụ
thuộc vào một khóa chính khác (loại bỏ sự phụ thuộc chuyển giao -
transitive dependency).
Câu 44:
Chuẩn hóa mối quan hệ n-n (nhiều-nhiều) là quá trình thiết kế cơ sở dữ liệu để
đảm bảo tính đồng nhất và tránh lặp lại dữ liệu. Dưới đây là cách thức chuẩn hóa
mối quan hệ n-n:
Bước 1 - 1NF:
Đảm bảo rằng mọi ô trong bảng chỉ chứa giá trị nguyên tố.
Bước 2 - 2NF:
Phân rã bảng thành các bảng riêng biệt để loại bỏ sự phụ thuộc giữa các
thuộc tính không phải là khóa chính.
Đảm bảo rằng tất cả các thuộc tính không phải là khóa chính đều phụ thuộc
vào toàn bộ khóa chính.
Bước 3 - 3NF:
Loại bỏ sự phụ thuộc chức năng giữa các thuộc tính không phải là khóa
chính và chúng thành các bảng riêng biệt.
Chắc chắn rằng không có thuộc tính không phải là khóa chính nào phụ
thuộc vào một khóa chính khác (loại bỏ sự phụ thuộc chuyển giao -
transitive dependency).
Sử dụng bảng liên kết (junction table) để biểu diễn mối quan hệ n-n.
Ví dụ :
Xét mối quan hệ giữa hai bảng "Student" và "Course," trong đó mỗi sinh viên có
thể đăng ký nhiều khóa học và mỗi khóa học có thể được đăng ký bởi nhiều sinh
viên.
Ở đây, "Enrollment" là bảng liên kết giữa "Student" và "Course." Mỗi dòng trong
"Enrollment" thể hiện việc một sinh viên đăng ký một khóa học cụ thể. Cả hai cột
"StudentID" và "CourseID" cùng tạo nên khóa chính chung cho "Enrollment."
Thông qua quá trình chuẩn hóa, chúng ta đã đảm bảo rằng dữ liệu không bị lặp lại
và mối quan hệ n-n được biểu diễn một cách đúng đắn.