计算机网络技术课程设计――自动问答系统
1.课程设计目的和要求
本课程设计通过实现一个C/S模式的简单自动问答系统,从而使学生能够掌握Socket程序设计的基本方法。
要求:
[1] 每组由同班2名同学组成,可以分组完成服务器和客户机两部分的内容,每人负责完成其中的一个部分或其中的若干项功能函数;
[2] 每人都要提交课程设计报告,内容包括:
整体设计方案及主程序流程和本人所属部分的主要内容;
本人所完成功能函数的核心代码分析、子程序流程和主要代码;
程序测试结果,包括测试采用的数据和结果。
[3] 评优的同学需要进行程序演示和验收
2.课程设计功能要求
编写程序,分别实现在线答题系统的服务器端和客户端程序。
(1) 自动问答系统服务器程序
服务端程序存储某个领域的问题及答案,并等待客户端用户的连接请求。当有客户机与服务器建立连接后,服务器向客户机发送使用说明并提示用户提问;待客户机发送提问问题后,服务器查询与之相匹配的问题和相应答案,然后向客户机发送答案的内容;用户可以多次提问,直到选择退出,若用户选择退出,则服务器提示用户对服务做出评价,待客户机返回评价信息后服务器断开连接,同时对评价结果进行统计。
(2) 自动问答系统客户端程序
程序运行时首先提示输入服务器的地址,然后连接服务器并接收服务器发来的使用说明。如果用户提问,则向服务器发送提问问题,然后等待服务器返回问题答案并显示给用户;提问结束后再将用户的评价信息发送给服务器。
3. 评分
课程设计评分将综合考虑程序演示情况和课程设计报告的质量,其中评优的课程设计必须通过程序演示和验收,具体要求如下:
优秀:能够独立完成,实现全部功能并通过程序演示和验收,具有完善的差错处理,小组分工合理、明确,个人报告内容完整、阐述清楚、测试数据充分;
良好:能够独立完成,实现大部分主要功能,具有基本的差错处理,小组分工合理、明确,个人报告内容、测试数据完整;
合格:在别人的辅助下完成,能够实现基本功能,小组有一定的分工,个人报告内容基本完整,有测试数据;
不合格:不能实现基本功能或完全非自己独立实现,小组分工模糊,个人报告内容不完整、无测试数据;
4. 参考资料
Socket通信程序核心代码参考附件:Windows下的Socket程序设计.doc,Java Socket网络编程.doc
上一篇:铃声广播系统的设计与实现
下一篇:工程项目管理总体系统设计