1
0

metricsData.ts 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562
  1. import { CheckCircle2 } from "lucide-react";
  2. // Tailwind Safelist for dynamically constructed classes:
  3. // bg-chart-1 bg-chart-2 bg-chart-3 bg-chart-4 bg-chart-5 bg-tertiary bg-primary
  4. // text-chart-1 text-chart-2 text-chart-3 text-chart-4 text-chart-5 text-tertiary text-primary
  5. export type MetricValue = {
  6. name: string;
  7. score?: string;
  8. coverage?: string;
  9. accuracy?: string;
  10. };
  11. export type SubMetric = {
  12. id: string;
  13. name: string;
  14. values: MetricValue[];
  15. };
  16. export type MetricCategoryData = {
  17. id: string;
  18. name: string;
  19. description: string;
  20. colorClass: string;
  21. bgClass: string;
  22. textClass: string;
  23. avgScore: string;
  24. subMetrics: SubMetric[];
  25. };
  26. export const metricsData: Record<string, MetricCategoryData[]> = {
  27. K: [
  28. {
  29. id: "K1",
  30. name: "软件工程核心概念掌握能力",
  31. description: "软件工程核心概念能力",
  32. colorClass: "chart-3",
  33. bgClass: "bg-primary-container text-on-primary-container",
  34. textClass: "text-primary",
  35. avgScore: "85%",
  36. subMetrics: [
  37. {
  38. id: "K1-1",
  39. name: "软件工程概念理解能力",
  40. values: [
  41. { name: "概念答题正确率" },
  42. { name: "核心知识点覆盖率" },
  43. ],
  44. },
  45. {
  46. id: "K1-2",
  47. name: "核心概念考试得分能力",
  48. values: [{ name: "核心知识点测验得分" }],
  49. },
  50. ],
  51. },
  52. {
  53. id: "K2",
  54. name: "软件工程规范与原理的掌握能力",
  55. description: "软件工程系统规范与原理的掌握能力",
  56. colorClass: "tertiary",
  57. bgClass: "bg-tertiary-container text-on-tertiary-container",
  58. textClass: "text-tertiary",
  59. avgScore: "78%",
  60. subMetrics: [
  61. {
  62. id: "K2-1",
  63. name: "软件工程原理理解题能力",
  64. values: [
  65. { name: "原理类题目答题正确率" },
  66. { name: "原理知识点测验得分" },
  67. { name: "原理知识点覆盖率" },
  68. ],
  69. },
  70. {
  71. id: "K2-2",
  72. name: "软件工程规范条款熟悉能力",
  73. values: [
  74. { name: "规范类题目答题正确率" },
  75. { name: "规范条款测验得分" },
  76. { name: "规范知识点覆盖率" },
  77. ],
  78. },
  79. ],
  80. },
  81. {
  82. id: "K3",
  83. name: "前沿技术认知能力",
  84. description: "前沿技术认知与掌握",
  85. colorClass: "chart-1",
  86. bgClass: "bg-secondary-container text-on-secondary-container",
  87. textClass: "text-chart-1",
  88. avgScore: "82%",
  89. subMetrics: [
  90. {
  91. id: "K3-1",
  92. name: "前沿技术解题能力",
  93. values: [
  94. { name: "前沿技术知识点测验得分" },
  95. { name: "前沿技术答题认知正确率" },
  96. ],
  97. },
  98. {
  99. id: "K3-2",
  100. name: "技术发展趋势认知能力",
  101. values: [
  102. { name: "前沿技术知识点覆盖数" },
  103. ],
  104. },
  105. ],
  106. },
  107. ],
  108. A: [
  109. {
  110. id: "A1",
  111. name: "提示词写作能力",
  112. description: "结构与细节控制能力",
  113. colorClass: "chart-4",
  114. bgClass: "bg-chart-5-container text-chart-5",
  115. textClass: "text-chart-4",
  116. avgScore: "89%",
  117. subMetrics: [
  118. {
  119. id: "A1-1",
  120. name: "提示词结构性写作能力",
  121. values: [{ name: "有效提示词占比" }],
  122. },
  123. {
  124. id: "A1-2",
  125. name: "工程语义准确性表达 + B6",
  126. values: [{ name: "单轮目标达成率" }],
  127. },
  128. {
  129. id: "A1-3",
  130. name: "迭代意识能力",
  131. values: [{ name: "提示词优化迭代次数" }],
  132. },
  133. {
  134. id: "A1-4",
  135. name: "边界设定能力",
  136. values: [{ name: "提示词边界约束符合率" }],
  137. },
  138. ],
  139. },
  140. {
  141. id: "A2",
  142. name: "AI 输出驾驭能力",
  143. description: "结果召回能力",
  144. colorClass: "chart-3",
  145. bgClass: "bg-primary-container text-on-primary-container",
  146. textClass: "text-primary",
  147. avgScore: "84%",
  148. subMetrics: [
  149. {
  150. id: "A2-1",
  151. name: "缺陷识别能力",
  152. values: [{ name: "AI 输出缺陷识别率" }],
  153. },
  154. {
  155. id: "A2-2",
  156. name: "误报精准能力",
  157. values: [{ name: "缺陷误报精准率" }],
  158. },
  159. ],
  160. },
  161. {
  162. id: "A3",
  163. name: "人机协同工作流规范能力",
  164. description: "人机交互与编排能力",
  165. colorClass: "tertiary",
  166. bgClass: "bg-tertiary-container text-on-tertiary-container",
  167. textClass: "text-tertiary",
  168. avgScore: "92%",
  169. subMetrics: [
  170. {
  171. id: "A3-1",
  172. name: "人机协同流程安排能力",
  173. values: [{ name: "流程节点合规率" }],
  174. },
  175. {
  176. id: "A3-2",
  177. name: "人机任务分工能力",
  178. values: [{ name: "人机协同提升的工作效率" }],
  179. },
  180. {
  181. id: "A3-3",
  182. name: "协同过程留痕能力",
  183. values: [{ name: "规范流程执行次数" }],
  184. },
  185. ],
  186. },
  187. {
  188. id: "A4",
  189. name: "批判审查 AI 输出能力",
  190. description: "验证及纠错分析能力",
  191. colorClass: "chart-1",
  192. bgClass: "bg-secondary-container text-on-secondary-container",
  193. textClass: "text-chart-1",
  194. avgScore: "76%",
  195. subMetrics: [
  196. {
  197. id: "A4-1",
  198. name: "AI 输出逻辑漏洞检出能力",
  199. values: [{ name: "AI 输出问题识别率" }],
  200. },
  201. {
  202. id: "A4-2",
  203. name: "AI 生成代码漏洞排查能力",
  204. values: [{ name: "AI 生成代码审查命中率" }],
  205. },
  206. {
  207. id: "A4-3",
  208. name: "输出内容合规性检查能力",
  209. values: [{ name: "AI 输出风险点排查数量" }],
  210. },
  211. ],
  212. },
  213. {
  214. id: "A5",
  215. name: "冲突识别能力",
  216. description: "解决 AI 回复冲突的能力",
  217. colorClass: "chart-5",
  218. bgClass: "bg-chart-5-container text-chart-5",
  219. textClass: "text-chart-5",
  220. avgScore: "81%",
  221. subMetrics: [
  222. {
  223. id: "A5-1",
  224. name: "AI 输出与需求目标冲突识别能力",
  225. values: [{ name: "需求与实现冲突识别率" }],
  226. },
  227. {
  228. id: "A5-2",
  229. name: "多轮 AI 输出内容矛盾冲突识别能力",
  230. values: [{ name: "多源 / 多轮输出冲突识别数" }],
  231. },
  232. {
  233. id: "A5-3",
  234. name: "AI 输出与行业规范冲突识别能力",
  235. values: [{ name: "规范冲突点识别率" }],
  236. },
  237. ],
  238. },
  239. {
  240. id: "A6",
  241. name: "权衡决策能力",
  242. description: "多方面决策及评估",
  243. colorClass: "chart-4",
  244. bgClass: "bg-primary-container text-on-primary-container",
  245. textClass: "text-primary",
  246. avgScore: "95%",
  247. subMetrics: [
  248. {
  249. id: "A6-1",
  250. name: "AI 多方案选优能力",
  251. values: [{ name: "多方案决策次数" }],
  252. },
  253. {
  254. id: "A6-2",
  255. name: "人机分工权衡能力",
  256. values: [{ name: "决策次数占总生成次数的比例" }],
  257. },
  258. ],
  259. },
  260. {
  261. id: "A7",
  262. name: "伦理把关能力",
  263. description: "数据安全与隐私控制",
  264. colorClass: "tertiary",
  265. bgClass: "bg-tertiary-container text-on-tertiary-container",
  266. textClass: "text-tertiary",
  267. avgScore: "88%",
  268. subMetrics: [
  269. {
  270. id: "A7-1",
  271. name: "知识产权合规风险把关能力",
  272. values: [{ name: "知识产权合规风险识别率" }, { name: "知识产权风险规避处理次数" }],
  273. },
  274. {
  275. id: "A7-2",
  276. name: "数据安全风险把关能力",
  277. values: [{ name: "数据安全合规风险识别率" }, { name: "数据安全风险规避处理次数" }],
  278. },
  279. {
  280. id: "A7-3",
  281. name: "行业伦理规范契合度把关能力",
  282. values: [{ name: "行业伦理规范遵循率" }],
  283. },
  284. ],
  285. },
  286. ],
  287. S: [
  288. {
  289. id: "S1",
  290. name: "软件工程文档编写能力",
  291. description: "软件工程文档编写能力",
  292. colorClass: "chart-3",
  293. bgClass: "bg-primary-container text-on-primary-container",
  294. textClass: "text-primary",
  295. avgScore: "86%",
  296. subMetrics: [
  297. {
  298. id: "S1-1",
  299. name: "文档核心模块写作能力",
  300. values: [{ name: "文档完整度评分" }],
  301. },
  302. {
  303. id: "S1-2",
  304. name: "文档与项目需求匹配能力",
  305. values: [{ name: "文档需求匹配符合率" }],
  306. },
  307. {
  308. id: "S1-3",
  309. name: "文档可读性能力",
  310. values: [{ name: "文档可读性标准化评分" }, { name: "文档规范符合率" }],
  311. },
  312. ],
  313. },
  314. {
  315. id: "S2",
  316. name: "项目需求分析能力",
  317. description: "业务需求抽取与分析",
  318. colorClass: "tertiary",
  319. bgClass: "bg-tertiary-container text-on-tertiary-container",
  320. textClass: "text-tertiary",
  321. avgScore: "82%",
  322. subMetrics: [
  323. {
  324. id: "S2-1",
  325. name: "需求调研能力",
  326. values: [{ name: "需求调研次数" }],
  327. },
  328. {
  329. id: "S2-2",
  330. name: "需求分层拆解能力",
  331. values: [{ name: "需求拆解完整评分" }],
  332. },
  333. {
  334. id: "S2-3",
  335. name: "需求可行性分析能力",
  336. values: [{ name: "需求可行性评分" }],
  337. },
  338. {
  339. id: "S2-4",
  340. name: "需求变更管控能力",
  341. values: [{ name: "需求变更处理次数" }],
  342. },
  343. ],
  344. },
  345. {
  346. id: "S3",
  347. name: "代码产出能力",
  348. description: "代码输出及功能实现",
  349. colorClass: "chart-1",
  350. bgClass: "bg-secondary-container text-on-secondary-container",
  351. textClass: "text-chart-1",
  352. avgScore: "85%",
  353. subMetrics: [
  354. {
  355. id: "S3-1",
  356. name: "单位时间有效代码产出能力",
  357. values: [{ name: "有效代码行数" }, { name: "代码每日产出效率" }],
  358. },
  359. {
  360. id: "S3-2",
  361. name: "业务逻辑实现匹配能力",
  362. values: [{ name: "业务逻辑实现匹配率" }],
  363. },
  364. ],
  365. },
  366. {
  367. id: "S4",
  368. name: "工具使用能力",
  369. description: "开发工具熟练度",
  370. colorClass: "chart-4",
  371. bgClass: "bg-chart-5-container text-chart-5",
  372. textClass: "text-chart-4",
  373. avgScore: "91%",
  374. subMetrics: [
  375. {
  376. id: "S4-1",
  377. name: "开发核心工具操作能力",
  378. values: [{ name: "核心工具有效使用次数" }],
  379. },
  380. {
  381. id: "S4-2",
  382. name: "工具使用种类与广度能力",
  383. values: [{ name: "工具使用种类数" }],
  384. },
  385. ],
  386. },
  387. {
  388. id: "S5",
  389. name: "代码质量产出能力",
  390. description: "代码规范与维护性",
  391. colorClass: "chart-5",
  392. bgClass: "bg-primary-container text-on-primary-container",
  393. textClass: "text-primary",
  394. avgScore: "88%",
  395. subMetrics: [
  396. {
  397. id: "S5-1",
  398. name: "编码规范符合能力",
  399. values: [{ name: "代码规范符合率" }],
  400. },
  401. {
  402. id: "S5-2",
  403. name: "代码复杂度达标能力",
  404. values: [{ name: "代码圈复杂度达标率" }, { name: "代码缺陷占比" }],
  405. },
  406. {
  407. id: "S5-3",
  408. name: "代码可维护性能力",
  409. values: [{ name: "代码可维护性评分" }],
  410. },
  411. {
  412. id: "S5-4",
  413. name: "核心注释覆盖能力",
  414. values: [{ name: "核心代码注释覆盖率" }],
  415. },
  416. ],
  417. },
  418. {
  419. id: "S6",
  420. name: "项目调试能力",
  421. description: "架构设计与拓展性",
  422. colorClass: "tertiary",
  423. bgClass: "bg-tertiary-container text-on-tertiary-container",
  424. textClass: "text-tertiary",
  425. avgScore: "79%",
  426. subMetrics: [
  427. {
  428. id: "S6-1",
  429. name: "Bug 定位能力",
  430. values: [{ name: "问题定位准确率" }],
  431. },
  432. {
  433. id: "S6-2",
  434. name: "Bug 修复能力",
  435. values: [{ name: "缺陷成功修复率" }, { name: "问题解决总数" }],
  436. },
  437. {
  438. id: "S6-3",
  439. name: "单问题平均调试耗时",
  440. values: [{ name: "平均缺陷修复时长" }],
  441. },
  442. ],
  443. },
  444. {
  445. id: "S7",
  446. name: "版本管理能力",
  447. description: "代码版本及配置分支控制",
  448. colorClass: "chart-1",
  449. bgClass: "bg-secondary-container text-on-secondary-container",
  450. textClass: "text-chart-1",
  451. avgScore: "87%",
  452. subMetrics: [
  453. {
  454. id: "S7-1",
  455. name: "分支管理规范能力",
  456. values: [{ name: "分支管理合规次数" }],
  457. },
  458. {
  459. id: "S7-2",
  460. name: "提交记录规范度能力",
  461. values: [{ name: "版本规范遵循率" }],
  462. },
  463. {
  464. id: "S7-3",
  465. name: "协作版本冲突解决能力",
  466. values: [{ name: "版本冲突解决成功率" }],
  467. },
  468. ],
  469. },
  470. ],
  471. D: [
  472. {
  473. id: "D1",
  474. name: "作业答题态度能力",
  475. description: "提交规范与通过率",
  476. colorClass: "chart-3",
  477. bgClass: "bg-primary-container text-on-primary-container",
  478. textClass: "text-primary",
  479. avgScore: "94%",
  480. subMetrics: [
  481. {
  482. id: "D1-1",
  483. name: "作业按时提交率",
  484. values: [{ name: "作业按时提交率" }, { name: "作业完成率" }],
  485. },
  486. {
  487. id: "D1-2",
  488. name: "作业得分能力",
  489. values: [{ name: "答题平均得分" }, { name: "作业修改次数" }],
  490. },
  491. ],
  492. },
  493. {
  494. id: "D2",
  495. name: "时间管理能力",
  496. description: "任务时间节点把控",
  497. colorClass: "chart-4",
  498. bgClass: "bg-chart-5-container text-chart-5",
  499. textClass: "text-chart-4",
  500. avgScore: "88%",
  501. subMetrics: [
  502. {
  503. id: "D2-1",
  504. name: "作业准时提交时间管理能力",
  505. values: [{ name: "作业准时提交率" }],
  506. },
  507. {
  508. id: "D2-2",
  509. name: "多任务并行时间管理能力",
  510. values: [{ name: "任务按时完成率" }, { name: "里程碑达成率" }],
  511. },
  512. ],
  513. },
  514. {
  515. id: "D3",
  516. name: "自主学习能力",
  517. description: "自我驱动及学习研究",
  518. colorClass: "tertiary",
  519. bgClass: "bg-tertiary-container text-on-tertiary-container",
  520. textClass: "text-tertiary",
  521. avgScore: "85%",
  522. subMetrics: [
  523. {
  524. id: "D3-1",
  525. name: "自主练习时长",
  526. values: [{ name: "自主学习 / 练习时长" }],
  527. },
  528. {
  529. id: "D3-2",
  530. name: "自主练习情况",
  531. values: [{ name: "自主练习完成率" }, { name: "学习资料查阅数量" }],
  532. },
  533. ],
  534. },
  535. {
  536. id: "D4",
  537. name: "团队协作能力",
  538. description: "个人与团队协作关系",
  539. colorClass: "chart-1",
  540. bgClass: "bg-secondary-container text-on-secondary-container",
  541. textClass: "text-chart-1",
  542. avgScore: "90%",
  543. subMetrics: [
  544. {
  545. id: "D4-1",
  546. name: "个人分工任务按时完成能力",
  547. values: [{ name: "协作任务完成率" }],
  548. },
  549. {
  550. id: "D4-2",
  551. name: "团队内部沟通能力",
  552. values: [{ name: "团队沟通平均响应耗时" }, { name: "有效协作次数" }, { name: "协作冲突解决次数" }],
  553. },
  554. ],
  555. },
  556. ],
  557. };