2023秋软工实践 第二次结对编程作业

2023秋软工实践 第二次结对编程作业

ddl 2023-10-07 23:59:59

背景

第一次结对编程作业,你已经完成了9个九宫格数独的并发生成。jason哥能迅速求解9个数独,求解速度极快,已经没有了人类对手,于是需要你用一定的算法来并发求解9个数独,和jason哥比比求解的速度。注意,必须实现并发求解,而非串行求解,否则求解速度差距悬殊太大啦。

实现要求

本次作业要求基于第一次结对编程作业继续完成,请完成一个“9个九宫格数独生成和求解”网页端或APP的开发。

  1. 代码实现。在第一次结对编程作业的基础上,完善相关的功能,9个九宫格数独的并发求解,特别注意,必须使用并发技术生成和求解9个数独,而不是串行生成和求解。你可能需要学习多线程或多进程、并发数据结构、调优和性能测试等技术,将实现的代码上传至GitHub,并在上传代码的仓库的README.md中写清楚运行代码的方法,方便助教检查。

  2. 界面要求

    • 设计美观。UI 设计规范统一,美观精致。

    • 用户易懂易用,符合主流人群的使用习惯。

  3. 功能要求

    • 并发生成可解的9个九宫格数独个数。

    • 并发求解生成的9个九宫格数独。

  4. 附加分

    • 不仅支持系统并发求解,还可以用户输入求解数独。

    • 针对用户的求解给出提出性信息(求解正确或错误,哪一行那一列不符合数独要求等)。

编码要求

  • 制定合适的代码规范,进行测试。

  • 使用 git 进行版本控制,两个人要通过 git 协作方式完成编码。两个都要有代码编写和相应的单元测试。

博客要求

  1. 结对的两名同学都需要提交作业,一名同学的博客为完整内容,另一名同学的博客只需要附上完整内容博客链接。

  2. 基础格式要求

    为了方便其他学校的老师或者助教了解课程实况,请大家在作业开头添加格式描述:

    这个作业属于哪个课程 
    这个作业要求在哪里 
    个人学号 
    结对成员学号 
    GitHub 仓库地址 

    代码如下:

    |这个作业属于哪个课程|<班级的链接>|
    |-- |-- |
    |这个作业要求在哪里|<作业要求的链接>|
    |个人学号|<个人学号>|
    | 结对成员学号 |<结对成员学号>|
    |GitHub 仓库地址|<GitHub仓库地址>|
  3. 标记结对两个人的学号姓名信息(结对作业两人都需提交,内容的组织可有不同)。

  4. 记录本次作业的PSP表格,包括预估耗时和实际耗时。

  5. 给出你认为的是重点或难点功能、编程思考,至少2点。

  6. 详细写出运用的算法和技术,包括并发性求解算法等。

  7. 实现代码的GitHub链接,注意仓库要设置为公开,方便助教检查。

  8. 给出照片若干张,包括纸画原型、结对的同学、工作地点、计算机等,可选项包括其他能表达结对编程工作经历的物品或场景。

  9. 给出至少3项在编码、争论、复审等活动中花费时间较长,给你较大收获的事件。

  10. 总结本次作业,遇到的难点以及如何解决、第二次结对编程的体验等等,两位同学分别总结。

注:数独求解的相关算法可供参考,但注意,本次作业要求的是9个数独的并发生成并发求解

1.https://github.com/Riroaki/Auto-Sudoku-Player

2.https://github.com/wenzihan/SudokuProject

3.https://github.com/oahzxl/SatDpllBaseline

评分标准(100)

  • 功能实用性(30)——是否具备基础功能 并发求解9个可解的九宫格数独

  • 创新度(10)——是否具备自己的创新点。

  • 界面美化度(10)——界面是否逻辑清晰,界面美观。

  • 博客描述(40)——是否按要求编写作业内容,以及描述规范。

  • 代码规范(5)

  • git commit 信息规范,两个人要通过 git 协作方式完成编码。(5)

...全文
1312 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
0人已提交
完成率0%
暂无数据
回复
切换为时间正序
请发表友善的回复…
发表回复

122

社区成员

发帖
与我相关
我的任务
社区描述
2023秋-福州大学软件工程
软件工程 高校
社区管理员
  • fzusdn
  • 篱隙光远
  • Jason_Zhou1
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧