203
社区成员




注:评分时如发现:
题目:论文查重
描述如下:
设计一个论文查重算法,给出一个原文文件和一个在这份原文上经过了增删改的抄袭版论文的文件,在答案文件中输出其重复率。
要求输入输出采用文件输入输出,规范如下:
我们提供一份样例,使用方法是:orig.txt是原文,其他orig_add.txt等均为抄袭版论文。
注意:答案文件中输出的答案为浮点型,精确到小数点后两位
在进行代码测试的时候,以Windows环境为例(但并不意味着程序一定在Windows环境下进行测试),我们是按照传递命令行参数的方式提供文件的位置,您的提交的作业程序需要从指定的位置读取文件,并向指定的文件输出答案:
保证每个参数以空格隔开,文件路径中不含有空格,例如:
——至于如何在程序里接受命令行参数可以去搜索一下
Python需要将入口文件名设置成main.py,C/C++需要提供可执行文件main.exe,Java需要提供编译好的jar包main.jar
一共有18个测试点(不含样例),测试作为评判功能是否正常的依据,全过就没问题,不过要扣分。
——复制别人的可执行程序进行提交骗过测试的行为同样是抄袭,我们会验证你的代码是否可以正常编译、以及是否可以编译出(与你提交的可执行文件)逻辑相同的可执行文件
如遇到下列情况之一,当前测试点将不能通过,对于每个不能通过的测试点从程序评分中扣2分:
凡提交的可执行文件、出现下列情况之一者,作业以0分计:
总分60分
总分40分,程序评分是根据代码质量综合考量给出的评分,主要考察如下方面:
PSP是卡耐基梅隆大学(CMU)的专家们针对软件工程师所提出的一套模型:Personal Software Process (PSP, 个人开发流程,或称个体软件过程)。
PSP2.1 |
Personal Software Process Stages |
预估耗时(分钟) |
实际耗时(分钟) |
Planning |
计划 |
|
|
· Estimate |
· 估计这个任务需要多少时间 |
|
|
Development |
开发 |
|
|
· Analysis |
· 需求分析 (包括学习新技术) |
|
|
· Design Spec |
· 生成设计文档 |
|
|
· Design Review |
· 设计复审 |
|
|
· Coding Standard |
· 代码规范 (为目前的开发制定合适的规范) |
|
|
· Design |
· 具体设计 |
|
|
· Coding |
· 具体编码 |
|
|
· Code Review |
· 代码复审 |
|
|
· Test |
· 测试(自我测试,修改代码,提交修改) |
|
|
Reporting |
报告 |
|
|
· Test Repor |
· 测试报告 |
|
|
· Size Measurement |
· 计算工作量 |
|
|
· Postmortem & Process Improvement Plan |
· 事后总结, 并提出过程改进计划 |
|
|
|
· 合计 |
|
|
一个功能完备的程序不是一蹴而就的。可将一个大任务划分为可操作的小任务,同时最好按照任务难度或紧急程度指定各个任务的完成次序。因此,在动手开发之前,要先估计将在程序各模块开发所需耗费的时间,以及完成整个项目所需的时间,将这个[估计值]记录下来,写成PSP 的形式。
PSP的目的是:记录工程师如何实现需求的效率,和我们使用项目管理工具(例如微软的Project Professional,或者禅道等)进行项目进度规划类似。
有关PSP的更多内容,请自行阅读邹欣老师的博客:现代软件工程讲义 2 工程师的能力评估和发展
请阅读邹欣老师的博客:源代码管理,了解源代码管理的10个实践问题。
本次作业要求使用Github进行源代码管理,代码有进展即签入Github。签入记录不合理的项目会被助教抽查询问项目细节。
对代码签入的具体要求如下:根据需求划分功能后,每做完一个功能,编译成功后,应至少commit一次。本例中,至少应区分基本功能和扩展功能,即分别针对基本功能、扩展功能,编译成功后,总共至少应commit两次。具体的功能划分,请自行定义,并在撰写博客时体现出来,遵循自己对需求的功能划分来提交代码即可。
对Commit不是很熟悉的话,请阅读阮一峰的博客:Commit message 和 Change log 编写指南,了解更多细节。
请根据自己以往积累的测试经验,在编码完成之后,提交产品之前,设计测试用例,并编写单元测试,对自己的项目进行测试。
首先,至少应采用白盒测试用例设计方法来设计测试用例,其他测试方法不限。其次,要设计至少10个测试用例,确保你的程序能够正确处理各种情况。最后,结合测试评估的要求,对自己的测试设计进行评价,这些测试用例能满足该程序测试的要求吗?
另一个重要的措施是要把单元测试自动化,这样每个人都能很容易地运行它,并且可以使单元测试每天都运行。每个人都可以随时在自己的机器上运行。团队一般是在每日构建中运行单元测试的,这样每个单元测试的错误就能及时被发现并得到修改。
推荐阅读邹欣老师的博客:现代软件工程讲义 2 开发技术 - 单元测试 & 回归测试
之前是直接发帖的,没看到提交任务
李卓航 提交任务 https://bbs.csdn.net/topics/608272500
之前是直接发帖的,没看到提交任务
布麦日耶木 提交任务 https://bbs.csdn.net/topics/608289808
陈法成 提交任务:https://bbs.csdn.net/topics/608252712?spm=1001.2014.3001.6377(提交日期 9.21)
之前是直接发帖的,没看到提交任务
张威浩 提交任务:https://bbs.csdn.net/topics/608251039 (提交日期 9.20 )
之前忘记提交任务了:https://bbs.csdn.net/topics/608267012%EF%BC%88%E6%A2%81%E8%90%8D
2022-09-21 23:51:13)
李卓航 提交任务 https://bbs.csdn.net/topics/608272500 (提交日期9.21)
陈莹莹 提交任务:https://bbs.csdn.net/topics/608266198 (提交日期9.21)
邓启鹏 提交任务:https://bbs.csdn.net/topics/608266196 (提交日期:9.18)
老师,有些题目需求在Pycharm中没法实现(比如接口性能分析),但VS一定程度上和我构建的环境不兼容,这种情况如何处理
另外,python需要提交的requirement.txt具体是要什么内容?
温馨提示:有些样例要把后缀改成html打开。
另外想问下能用GitCode吗?
请问Py3需要提交的requirement.txt需要含有什么内容