一种替代DOORS在WORD中进行需求管理的方法 (二)

一、前景

参考:

一种替代DOORS在WORD中进行需求管理的方法(基于WORD插件的应用)_doors aspice-CSDN博客

二、界面和资源

WORD2013/WORD2016 插件 【已使用该工具通过第三方功能安全产品认证】:

1、 核心功能

1、需求编号和跟踪矩阵

2、插件支持跟踪的结果统计

注:加密工具会自动将保存为CSV扩展名的文件主动加密,插件只生成CSV格式,但用tscv扩展名;使用者在导入Tessy之前,必须将扩展名手动改为CSV

3、WORD文件配置标记方式

      

4、下载资源链接

WORD2013/WORD2016 插件安装包:

【免费】WORD2013/2016,需求管理插件,安装包,VS2017VSTO工程,C#开发源码参见:https://download.csdn.net/download/xianghuaizi/905资源-CSDN文库

Python自动化处理源码:

【免费】ReqIDHelperWord16需求管理插件自动化工具,源码,python开发资源-CSDN文库

 WORD2013/WORD2016 插件源码:

WORD2013/2016,需求管理插件,源码,VS2017VSTO工程,C#开发资源-CSDN文库

三、扩展使用

1 、COM接口

        System.Collections.ArrayList CreateReqIDTableCollection(Word.Document targetDoc);string GetReqPropertyValue(string reqID, string name);string GetReqMainText(string reqID);void SetSlientMode(bool slient);void CreateSpecDocListCrossLink(Word._Document[] docs, bool[] appends);void ImportExcelLinkList(string targetDocName, string srcExcelName, string[] reqIDs, string[] cellAddrs);int CreateExcelReqLink(string targetDocName, string reqProperty, bool append, string srcExcelName, string[] reqIDs, string[] traceIDs, string[] cellAddrs);void CreateWordReqLink(Word.Document targetDoc, Word.Document srcDoc, string property, bool append);void CreateWordSelfLink(Word.Document targetDoc);string[] ExportFileVersionInformation(Word.Document doc);void ClearReqPropertyValue(Word.Document targetDoc, string reqProperty);void AddTraceInformation(Word.Document targetDoc, string inf);void ExportReqWithoutPropertyTable(string outPath, Word.Document targetDoc);string GetVerInformation();

2、Python使用示例

1、加载com组件

import win32comdef LoadOfficeAddon() :WordAddInComObject = NoneWord = win32com.client.Dispatch('Word.Application')docAddin = Word.COMAddIns("ReqIDHelperWord16") # Load VSTO add-onWord.Visible = 0if docAddin != None :print("Load ReqIDHelperWord16 Add-In program OK")WordAddInComObject = docAddin.Objectif WordAddInComObject != None :print("Load ReqIDHelperWord16 Add-In COM Object Sucessful!")print(WordAddInComObject.GetVerInformation())return [Word, WordAddInComObject]

2、接口调用 

def ReBuildTrace(Word, WordAddInComObject, targetDoclist) :docHandles = []appends = []wordNum = 0if len(targetDoclist) > 1:print("#" * 80)for doc in targetDoclist:print("ReBuildTrace: " + str(doc))for targetdoc in targetDoclist:# Check the document type: word or anotherif (IsWordDocument(targetdoc)) :wordNum = wordNum + 1doc = Word.Documents.Open(targetdoc)Word.Visible = 0# Clear requirement propertyWordAddInComObject.ClearReqPropertyValue(doc, "Link By") # call com interfaceWordAddInComObject.ClearReqPropertyValue(doc, "Test By")docHandles.append(doc)appendFlag = AppendMode #appends.append(appendFlag)Word.Documents.Save()elif len(targetDoclist) == 1:for targetdoc in targetDoclist:# Check the document type: word or anotherif (IsWordDocument(targetdoc)) :wordNum = wordNum + 1doc = Word.Documents.Open(targetdoc)Word.Visible = 0# Clear requirement propertyWordAddInComObject.ClearReqPropertyValue(doc, "Test By")docHandles.append(doc)appendFlag = AppendMode #appends.append(appendFlag)Word.Documents.Save()# There are only one word document, don't need to rebuildif (wordNum > 1):WordAddInComObject.SetSlientMode(True)WordAddInComObject.CreateSpecDocListCrossLink(docHandles, appends)

3、自动化生成报告

借助插件和python丰富的库可以生成以下报告(统计报告和详细报告)

统计报告示例

详细报告示例

四、总结

通过该工具能够替代专业工具,但额外维护的花费时间较多。如果经费允许,还是使用专业工具,例如DROME。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/78769.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

设计模式 Day 6:深入讲透观察者模式(真实场景 + 回调机制 + 高级理解)

观察者模式(Observer Pattern)是一种设计结构中最实用、最常见的行为模式之一。它的魅力不仅在于简洁的“一对多”事件推送能力,更在于它的解耦能力、模块协作设计、实时响应能力。 本篇作为 Day 6,将带你从理论、底层机制到真实…

文献总结:AAAI2025-UniV2X-End-to-end autonomous driving through V2X cooperation

UniV2X 一、文章基本信息二、文章背景三、UniV2X框架1. 车路协同自动驾驶问题定义2. 稀疏-密集混合形态数据3. 交叉视图数据融合(智能体融合)4. 交叉视图数据融合(车道融合)5. 交叉视图数据融合(占用融合)6…

2025蓝桥杯python A组题解

真捐款去了,好长时间没练了,感觉脑子和手都不转悠了。 B F BF BF 赛时都写假了, G G G 也只写了爆搜。 题解其实队友都写好了,我就粘一下自己的代码,稍微提点个人的理解水一篇题解 队友题解 B 思路: 我…

免费送源码:Java+ssm+MySQL 校园二手书销售平台设计与实现 计算机毕业设计原创定制

摘 要 信息化社会内需要与之针对性的信息获取途径,但是途径的扩展基本上为人们所努力的方向,由于站在的角度存在偏差,人们经常能够获得不同类型信息,这也是技术最为难以攻克的课题。针对校园二手书销售平台等问题,对校…

工业科学级天文相机:跨界融合的高精密成像解决方案

随着国内科技的快速发展,工业相机领域正悄然兴起一场"天文级"的技术革命。这类兼具工业设备可靠性与天文观测精度的特殊相机,正在半导体制造、天文观测、空间探测等领域开辟新的应用疆域。其核心技术突破不仅体现在传感器性能的提升&#xff0…

论文阅读笔记——Multi-Token Attention

MTA 论文 在 Transformer 中计算注意力权重时,仅依赖单个 Q 和 K 的相似度,无法有效捕捉多标记组合信息。(对于 A、B 两个词,单标记注意力需要分别计算两个词的注意力分数,再通过后处理定位共同出现的位置或通过多层隐…

301.找出3位偶数

2094. 找出 3 位偶数 - 力扣&#xff08;LeetCode&#xff09; class Solution {List<Integer> resnew ArrayList<>();List<Integer> linew ArrayList<>();public int[] findEvenNumbers(int[] digits) {Arrays.sort(digits);boolean[] numsnew boolea…

【KWDB 创作者计划】第二卷:开发者实战篇

​KWDB技术白皮书卷二&#xff1a;开发者实战篇 ​1. 自然语言到量子查询的编译系统 1.1 NL2QSQL翻译引擎架构 运行时流程图解&#xff1a; ┌──────────────────────┐ ┌───────────────────┐ ┌─────────────…

前端工程化之新晋打包工具

新晋打包工具 新晋打包工具前端模块工具的发展历程分类初版构建工具grunt使用场景 gulp采用管道机制任务化配置与api简洁 现代打包构建工具基石--webpack基于webpack改进的构建工具rollup 推荐举例说明package.jsonrollup.config.mjsmy-extract-css-rollup-plugin.mjssrc/index…

ai软件UI自动化

在AI与UI自动化结合的场景中,通常涉及计算机视觉(CV)、自然语言处理(NLP)和机器学习(ML)等技术。以下是实现AI驱动UI自动化的关键方向、工具和步骤: ‌一、核心应用场景‌ ‌元素定位增强‌ ‌问题‌:传统工具依赖XPath/CSS选择器,易因UI变化失效。‌AI方案‌:CV识别…

关于 C++ 中 cin 对象和 EOF 的详细解释

【DeepSeek提问】 给解释一下下面这段话&#xff08;C编程&#xff09; cin是 iostream 类的一个对象实例&#xff0c;如果输入正常&#xff0c; cin 将返回本身。 举个例子&#xff1a;cin>x>>y, 如果 cin>>x 读入正常&#xff0c;那么将返回cin, 相当于后面继…

Vue 3 和 Vue 2 的区别及优点

Vue.js 是一个流行的 JavaScript 框架&#xff0c;广泛用于构建用户界面和单页应用。自 Vue 3 发布以来&#xff0c;很多开发者开始探索 Vue 3 相较于 Vue 2 的新特性和优势。Vue 3 引入了许多改进&#xff0c;优化了性能、增强了功能、提升了开发体验。本文将详细介绍 Vue 2 和…

【特权FPGA】之UART串口

0.简介 通用异步收发器(Universal Asynchronous Receiver&#xff0f;Transmitter&#xff0c;UART)可以和各种标准串行接口&#xff0c;如RS 232和RS 485等进行全双工异步通信&#xff0c;具有传输距离远、成本低、可靠性高等优点。一般UART由专用芯片如8250&#xff0c;1645…

Vue3中watch监视reactive对象方法详解

在Vue3中&#xff0c;使用watch监视reactive对象时&#xff0c;需根据监视的目标选择合适的方法。以下是详细的步骤和说明&#xff1a; 1. 监视整个reactive对象 自动深度监视&#xff1a;直接监视reactive对象时&#xff0c;Vue3会默认启用深度监视&#xff0c;无需设置deep:…

如何制定性能调优策略

目录 性能测试攻略 微基准性能测试 宏基准性能测试 热身问题 多 JVM 情况下的影响 合理分析结果&#xff0c;制定调优策略 推荐阅读 性能测试攻略 性能测试是提前发现性能瓶颈&#xff0c;保障系统性能稳定的必要措施。下面我先给你介绍两种常用 的测试方法&#xff0c;帮…

HarmonyOS-ArkUI V2装饰器@Local装饰器:组件内部状态

@Local装饰器的作用 @Local装饰器是用来装饰组件内的状态的。而且它修饰的变量可以成为数据源。Local装饰器,作用跟名字差不多,重点突出了“本地”的特性,也就是使用的范围仅仅限制在组件内部。且它在初始化的时候必须是在本地进行初始化的,不能在外部组件,同时也禁止了外…

Linux线程属性与多线程开发:API详解与实战代码解析

Linux 线程的属性 线程池 多线程的创建 线程的属性 引入 我们设想一个场景&#xff0c;使用pthread_detach时&#xff0c;发现线程早就已经结束了&#xff0c;这时候pthread_detach还能正常发挥清理线程的 独有空间 的作用吗&#xff1f; 答案是可以的&#xff0c;但是这难…

测试第二课-------测试分类

作者前言 &#x1f382; ✨✨✨✨✨✨&#x1f367;&#x1f367;&#x1f367;&#x1f367;&#x1f367;&#x1f367;&#x1f367;&#x1f382; ​&#x1f382; 作者介绍&#xff1a; &#x1f382;&#x1f382; &#x1f382; &#x1f389;&#x1f389;&#x1f389…

MySQL安装实战分享

一、在 Windows 上安装 MySQL 1. 下载 MySQL 安装包 访问 MySQL 官方下载页面。选择适合你操作系统的版本。一般推荐下载 MySQL Installer。 2. 运行安装程序 双击下载的安装文件&#xff08;例如 mysql-installer-community-<version>.msi&#xff09;。如果出现安全…

数据库预热

介绍 Database Warm-up &#x1f9e0; 一句话理解 数据库是在应用启动阶段&#xff0c;提前建立数据库连接 或 执行轻量 SQL 操作&#xff0c;从而 加快首个请求的响应速度 的一种优化手段 &#x1f3af; 为什么需要数据库预热&#xff1f; 当 FastAPI 或其他 Web 服务刚启…