跳到主要内容
知仓学习社ZHICANG

jos-experiments

当你要为投向《软件学报》(Journal of Software, JOS) 的稿件设计或打磨实验与评测时使用。覆盖研究问题 (RQ) 契约、真实系统与数据集的选取、可信基线、评价指标与统计显著性/效应量、消融与抗污染的大模型评测、挖掘类研究的出处锁定、以及威胁有效性 (threats to v…

不碰外部(只输出文字)无严重或高危命中brycewang-stanford/Awesome-Journal-Skills

它会碰到什么

扫了多少1 个文本文件,3 KB
它会碰到什么不碰外部(只输出文字)
命中总数0 处
命中统计严重 0 · 高 0 · 中 0 · 低 0

这一栏是扫描器报的事实,不是结论。命中多不等于有毒(安全工具、规则库、示例脚本本来就会包含危险写法),命中少也不等于干净。它和你手上的凭据、文件、网络有什么关系,需要你自己看。

技能内容

《软件学报》实验设计与呈现 (Journal of Software Experiments)

本技能帮你把实验做成"证据与论点相称"的样子——这是《软件学报》(Journal of Software, JOS)

软件学科评审的核心门槛。本刊审稿人来自软件工程、系统软件、数据库、安全等方向,会审计你的

数据集、基线、指标与威胁论证。方法论口径与本刊学科文化一致(见

[resources/official-source-map.md](../../resources/official-source-map.md))。

一、研究问题 (RQ) 契约

  • 把评测组织为若干 RQ,每个 RQ 明确:问什么、用什么数据、用什么指标、期望什么结论。
  • RQ 应回答"软件工程问题",而非"我的模型分数高不高"。
  • 每个 RQ 与引言的贡献一一对应;读者应能从 RQ 直接读出论文论点。
RQ1  方法在真实项目上的有效性如何(相对基线)?
RQ2  各组成部分的贡献如何(消融)?
RQ3  在不同规模/领域项目上是否稳健(外部效度)?
RQ4  代价/开销如何(可用性)?

二、真实对象:系统与数据集

  • 真实系统/真实项目/真实数据集,而非玩具输入;说明来源、规模、代表性。
  • 数据集要交代采集时间、筛选标准、预处理;训练/验证/测试划分明确、无泄漏。
  • 若用公开基准,说明版本;若自建,说明构建与标注协议、标注者一致性 (如 Kappa)。

三、可信基线

  • 基线要公平且强:用原作者实现或经过调参的复现;说明超参搜索与选择依据。
  • 避免"稻草人基线"(故意弱化对手)——审稿人会识别并质疑。
  • 与最接近的已有工作直接对比,而非只比古老或不相关方法。

四、指标、统计显著性与效应量

  • 指标匹配任务:分类用 Precision/Recall/F1/AUC,定位用 Top-N/MAP/MRR,性能用时延/吞吐/内存等。
  • 多次运行报告均值与方差;随机性来源(种子、划分)要固定或多次平均。
  • 统计检验:组间差异用合适的假设检验(如 Wilcoxon/Mann-Whitney),多重比较要校正。
  • 效应量:给出 Cliff's delta、Cohen's d 等,说明差异的实际大小,而非仅 p 值。
  • 尽量给置信区间,避免只报单点数字。

五、消融与大模型抗污染评测

  • 消融实验:逐一移除组件,隔离每部分的边际贡献,支撑"哪一部分真正起作用"。
  • 若用大模型/深度学习:
  • 记录模型标识与版本、日期、温度等参数;缓存原始输出以便复现。
  • 数据污染 (contamination):留意评测数据是否可能出现在模型训练语料中;用时间切分

(训练截止日期之后的数据) 或私有集缓解,并在威胁有效性中讨论。

  • 用留出项目/跨项目评测,避免同项目内过拟合。

六、挖掘类研究的出处锁定

  • 挖掘 GitHub/开源仓库的研究:记录仓库 URL 与 commit SHA、抽取日期、筛选脚本。
  • 保存原始快照,使他人能在同一语料上复现;避免"随时间漂移"导致不可复现。
  • 说明数据清洗规则与排除标准,量化被排除的比例。

七、威胁有效性 (threats to validity)

分类逐条论证,且尽量与结果就地讨论而非全部后置:

| 类型 | 关注 | 典型缓解 |

| --- | --- | --- |

| 构念效度 | 指标是否度量了你声称的东西 | 用多指标、人工校验代理标签 |

| 内部效度 | 因果/混杂 | 控制变量、消融、审计子样本 |

| 外部效度 | 能否泛化 | 多项目/多领域、分层报告 |

| 结论效度 | 统计推断是否可靠 | 检验+效应量+多次运行 |

八、实验自检清单

[ ] 每个 RQ 对应一个贡献,且是软件工程问题
[ ] 数据集真实、来源与划分清楚、无泄漏
[ ] 基线公平且强,非稻草人
[ ] 指标匹配任务,报告均值/方差
[ ] 有统计检验 + 效应量(不只 p 值)
[ ] 有消融隔离各组件贡献
[ ] 大模型评测讨论并缓解数据污染
[ ] 挖掘类研究锁定 SHA 与抽取日期
[ ] 威胁有效性分四类逐条论证
[ ] 结果可由可复现材料支撑(见 jos-reproducibility)

九、输出格式

【实验就绪度】就绪 / 需补 / 重做
【RQ-贡献映射】问题清单:________
【数据与基线】风险:________
【统计严谨性】检验/效应量缺口:________
【抗污染】大模型评测风险:________
【威胁有效性】缺失类型:________
【下一步】用 jos-reproducibility 打包材料 / 用 jos-writing-style 呈现

十、按方向定制的评测要点

《软件学报》(Journal of Software) 覆盖多个软件学科方向,不同方向的评测侧重不同,套用别方向

的做法容易被审稿人质疑:

  • 软件工程(测试/缺陷):真实项目、跨项目评测、与经典与最新方法对比,报告 Precision/

Recall/F1、Top-N/MAP/MRR 等;注意类别不平衡与数据泄漏。

  • 系统软件(OS/编译/运行时):用标准基准 (benchmark suite),报告时延、吞吐、内存、编译

开销等,说明测试平台与配置,多次运行去噪;关注可复现的性能测量方法。

  • 程序设计语言与形式化:给出正确性/完备性论证或证明,工具类给出在真实程序上的可扩展性

与适用范围,说明假设与局限。

  • 数据库与大数据:用标准负载/数据集,报告查询性能、扩展性、资源占用;说明数据规模与

硬件。

  • 软件安全:在真实漏洞/样本上评测,报告检出率、误报率、对抗鲁棒性;注意数据集时效与

代表性,避免只在旧数据上验证。

十一、结果呈现的诚实原则

  • 只报告支持结论的证据,不夸大;不显著的结果如实呈现并讨论。
  • 表格给出完整数字(含方差/区间),图清晰标注坐标与图例。
  • 负面/意外结果有分析价值,诚实报告比粉饰更取信于审稿人。
  • 结论的声称范围与证据相称:小规模实验不宜声称普遍结论。

十二、输出格式(方向定制版)

【方向】软件工程 / 系统软件 / PL与形式化 / 数据库 / 安全
【基准与数据】是否用了该方向公认基准:________
【指标匹配】是否用了该方向标准指标:________
【呈现诚实性】是否有夸大/选择性报告风险:________
【下一步】用 jos-reproducibility 固定可复现条件

> 提醒:本刊无公开的强制统计口径清单,本技能给的是软件学科通行做法;具体呈现以《软件学报》

> (Journal of Software) 当期同类论文与审稿意见为准。相关的可复现材料见

> [jos-reproducibility](../jos-reproducibility/SKILL.md)。

想直接用这个技能?

本站把开放许可(MIT / Apache 等)的技能按仓库打包整理到网盘,点一下转存到你自己的网盘,不用一个个从 GitHub 拉。许可未声明的技能只给原始仓库链接,不打包。