Quy định nộp bài tập

Cơ sở lập trình


Cập nhật ngày 26 tháng 09 năm 2017

Giới thiệu

Trong môn học Cơ sở lập trình, sinh viên sẽ thực hiện một bài tập và kèm theo nó là một báo cáo bài tập phải nộp. Bài tập này là cốt yếu để hiểu, nắm vững các kiến thức trong môn học này và đồng thời là công cụ để tôi đánh giá kết quả học tập của sinh viên. Ở đây, tôi cung cấp đầy đủ những thông tin cần thiết để giúp sinh viên thực hiện tốt bài tập và báo cáo bài tập.

Để thực hiện bài tập này, sinh viên phải sử dụng ngôn ngữ lập trình C# trên chương trình Visual Studio Community 2017. Sinh viên chỉ được sử dụng thư viện .NET được cung cấp bởi Microsoft. Các bạn có thể dùng công cụ Object Browser hoặc truy cập vào trang web MSDN của Microsoft để tham khảo về thư viện .NET.

Nội dung báo cáo bài tập

Bên cạnh phần mã nguồn chương trình, sinh viên phải nộp một báo cáo không cần có trang tiêu đề, không cần có mục lục và không cần phần giới thiệu. Bạn chỉ cần ghi họ tên của bạn, lớp và tiêu đề của bài thực hành ở trang đầu tiên của báo cáo. Không nêu lại yêu cầu của bài thực hành, cũng như những nội dung được dạy trong khóa học vào báo cáo của bạn. Nên tránh sao chép những nội dung không hữu ích và hãy tập trung vào những nội dung cốt yếu : công việc của bạn, kết quả của bạn và những phân tích của bạn.

Kích thước tối đa của báo cáo : 10 trang

Nội dung báo cáo thông thường sẽ có các thành phần sau :
  • Hoạt động của chương trình của bạn
    • mô tả cách hoạt động của chương trình
      • khi chương trình chạy thì cái gì hiển thị ra trên màn hình ? người sử dụng sẽ nhập dữ liệu gì vào ? thao tác thế nào với chương trình ?
    • cú pháp câu lệnh (gọi chạy chương trình) và ý nghĩa của những tham số cần cung cấp trong đối số dòng lệnh (nếu có)
    • vài ví dụ về cách hoạt động, cách sử dụng câu lệnh của chương trình (nếu cần thiết) 
  • Thiết kế chương trình
    • trình bày cách thiết kế chương trình của bạn 
    • các biến và ý nghĩa của nó 
    • có những phương thức (hàm) nào và ý nghĩa của nó 
    • áp dụng thuật toán gì hay phương pháp gì đặc biệt
    • khuyến khích thêm vào các hình ảnh, mô hình để giải thích tốt cho thiết kế chương trình của bạn
  • Kết quả
    • đưa ra một vài kết quả của chương trình của bạn 
    • hãy chọn lựa các kết quả và tham số một cách thông minh để chứng minh hoạt động tốt của chương trình mà không cần phải đưa ra quá nhiều ví dụ
    • kết quả các test theo yêu cầu của bài tập
  • Trả lời câu hỏi (tùy bài tập)
    • trả lời các câu hỏi bằng cách đưa ra các ví dụ hay kết quả từ chương trình của bạn 
    • sửa đổi chương trình của bạn để trả lời các câu hỏi
  • Thảo luận / kết luận (tùy ý - rất ngắn)
    • kết quả của bạn đạt được là tốt hay chưa tốt (giải thích vì sao ?)
    • đâu là giới hạn của chương trình của bạn
    • nếu chương trình của bạn hoạt động không tốt, hãy nêu giải pháp để khắc phục
    • nêu nhận xét về bài thực hành
Những mục trên có thể được thay đổi cho phù hợp với bài tập. Bạn sẽ không bị đánh giá trên chất lượng trình bày của báo cáo, mà được đánh giá trên nội dung của công việc và của báo cáo của bạn. Hãy lựa chọn đưa ra những điểm quan trọng để chứng tỏ hoạt động tốt của chương trình của bạn.

Bạn phải nộp mã nguồn bài tập của bạn :
  • Mã nguồn của bạn phải được chú thích tốt
    • giải thích những gì bạn đã làm, những lựa chọn cài đặt của bạn, và những biến chính
  • Mã nguồn của bạn phải dễ hiểu và được cấu trúc tốt (dưới dạng hàm) 
    • mã nguồn của bạn càng dễ hiểu, điểm của bạn sẽ càng cao
    • tránh sao chép trong mã nguồn của bạn
    • nếu bạn sử dụng một số đoạn mã của người khác, hãy chỉ ra nó trong chú thích và trong báo cáo của bạn (của ai, nguồn, URL,...)
    • tránh lặp lại cùng một đoạn mã để xử lý cùng một vấn đề (hãy sử dụng hàm)
    • chỉ được sử dụng các kỹ thuật đã được học trong môn học này

Quy định nộp bài tập

Với mỗi bài tập, sinh viên phải nộp hai file :
  • một báo cáo dưới dạng PDF 
    • không có mã nguồn trong báo cáo, chỉ có kết quả của bạn và giải thích
  • một file nén (zip hoặc tar) thư mục Project của bạn
    • không có các file biên dịch (.obj), không có các thư viện (library) và file chạy (.exe) - tức là xoá các file biên dịch trước khi nén thư mục
      • Để xoá các file biên dịch, bấm menu Build, bấm lệnh Clean Solution hoặc Clean + tên project.
    • mã nguồn của bạn phải cho phép biên dịch dễ dàng với Visual Studio hoặc sử dụng lệnh csc. Nếu cần chèn thêm các thư viện (Add Reference), hãy chỉ ra chúng trong báo cáo của bạn
Bạn có thể gởi hai file này trong một file nén (zip hoặc tar).

Hai file này được đặt cùng tên và theo dạng <họ tên sinh viên>-btX. Trong đó, <họ tên sinh viên> sẽ được viết tắt. Ví dụ : với sinh viên Nguyễn Văn Toàn thì họ tên sinh viên sẽ được viết thành nvtoan. Và X là số thứ tự của bài tập. Ví dụ : nvtoan-bt1.pdf và nvtoan-bt1.zip.

Tất cả các báo cáo chỉ cần gởi đến mail lvman@hce.edu.vn với tiêu đề của mail là tên của môn học (Co so lap trinh hoặc Cơ sở lập trình) và tên bài tập được nộp (ví dụ : Nộp bài tập 1, Nộp bài tập 2,...). Ví dụ : Cơ sở lập trình - Nộp bài tập 1

Phương pháp đánh giá

Sau đây là những tiêu chuẩn chính để đánh giá các báo cáo : 
  • Kết quả đạt được
  • Phân tích kết quả và giải thích 
  • Trả lời câu hỏi (tùy bài tập) 
  • Mã nguồn + hoạt động của chương trình 
Trên lớp, giáo viên có thể yêu cầu chạy thử hay hỏi một số vấn đề trên công việc của bạn đã làm.

Chú ý : những tiêu chuẩn này, cũng như trọng số, có thể thay đổi tùy vào bài tập.

Điểm thưởng : đối với những sinh viên (khoảng 10% số sinh viên của lớp) nộp bài sớm trước thời hạn (2 hoặc 3 ngày) và trước những sinh viên khác, một điểm cộng sẽ được tính vào điểm cuối cùng của bài tập đó.

Điểm phạt :
  • Không tôn trọng khuôn dạng của các file cũng như cách đặt tên file : -1 điểm 
  • Trễ < 1 ngày : -0.5 điểm 
  • Trễ > 1 ngày : -1 điểm mỗi ngày 
  • Trễ > 1 tuần : điểm 0 
  • Hành vi sao chép là tuyệt đối không được chấp nhận. Nếu bị phát hiện, người sao chép và người cho sao chép sẽ bị điểm 0 đối với bài tập đó