1. 系统维护合同方案的定位与整体设计思路
1.1 这份合同方案到底解决什么问题
我做系统运维服务这些年,最头疼的其实不是服务器宕机,而是服务干了半年,甲方一句“当时你没说清楚”就把责任推回来。后来我养成了一个习惯:任何维护项目开工前,必须先写一份系统维护合同方案,把服务内容、响应时间、费用边界、双方责任全部白纸黑字定下来。这份方案不是简单的商务文件,它同时是售前方案、履约依据和售后排雷手册。
你可能会说,合同有法务来写,不用我们操心。但实际情况是,很多中小团队和甲方合作时,法务根本不会介入,或者法务只给了标准模板,里面的服务范围、SLA这些专业内容完全需要项目负责人自己填。这时候一份结构清晰、条款完整的系统维护合同方案就成了项目能不能顺利回款的关键。
我这次整理的就是一套完全用 Word 制作的系统维护合同方案,从封面、目录、正文条款到附件表格,全部在一个 .docx 文件里完成。它的核心价值有三点:第一,服务范围和费用边界写得足够清楚,避免后期扯皮;第二,SLA 和技术要求可以直接作为考核依据;第三,Word 格式方便甲方内部流转、打印盖章、留档修改,比在线协作文档更符合商务习惯。
1.2 方案设计逻辑:先定边界,再定责任
写这份合同方案时,我给自己定了一条主线:先界定“做什么”,再界定“不做什么”,最后才写“怎么收费”和“违反了怎么办”。很多人一上来就写违约责任和付款方式,结果服务范围写得很含糊,等到出问题时才发现连“系统维护”这个词都解释不清。
所谓“系统维护”,在不同项目里含义差得非常多。有的项目是纯硬件巡检,服务器不宕机就算完成任务;有的项目包含数据库优化、应用版本升级、安全加固;还有的项目要驻场开发,随时响应新需求。如果不把这些内容拆开写清楚,合同签了等于白签。所以我的方案里专门有一张《服务范围说明书》,用表格把每个子系统逐项列出来,包含系统名称、维护内容、维护方式、响应等级、是否含备件、是否含远程支持等字段。
边界问题同样重要。我会在合同里明确写出“不属于维护范围”的清单,比如新增功能开发、第三方软件许可证购买、因甲方人员误操作导致的数据恢复、不可抗力和网络线路故障等。这么做看起来有点不近人情,但恰恰是对双方的保护。我见过太多项目因为“顺手帮个忙”最后变成“你应该负责”的纠纷,把边界提前画好,甲方心里有数,我们服务时也不用畏手畏脚。
费用和结算模式这块,我会单独放一节。常见的系统维护收费方式有三种:按年度固定总价、按服务人天计费、基础费+专项费混合模式。绝大多数中小系统用年度固定总价最省心,但必须配合一个明确的服务级别协议,否则甲方会觉得“反正一年就这么多钱,天天来找你也不亏”。人天计费适合需求变化大的项目,但要对每次服务做工单记录,月底和甲方核对,工作量大,适合团队管理能力强的服务商。混合模式适合既有日常巡检又有不定期大项改造的项目,基础费cover日常维护,专项费另算每一次改动的工时和资源。
1.3 为什么坚持用 Word,而不是在线文档或 PDF
这几年在线协作文档很流行,但真正到了签合同这种场景,我还是坚持用 Word。原因很简单:Word 是商务文档的事实标准,它允许所有人都能改、能审批、能留痕。PDF 虽然格式固定,但甲方想改一个付款比例的时候,还得回找我们要原始文件,沟通成本很高。在线文档虽然方便协作,但版本管理容易失控,而且很多人还是习惯用本地 Office,在线文档的兼容性偶尔会出问题。
另外,Word 的排版能力,尤其是多级编号、交叉引用、域代码、宏这些功能,能满足一份正式合同方案几乎所有的排版需求。我们可以把合同条款的“第几条”和“第几款”自动编号,可以在正文里插入“详见附件二”这样的交叉引用,可以用目录域生成自动更新的目录。这些看起来是锦上添花,实际上对甲方的专业感受影响很大——一份乱糟糟的合同方案,还没谈技术细节就先丢分。
我还建议在交付前把 Word 另存一份 PDF,用于微信传输和打印,但编辑版保留 Word 文件,方便后续修改。如果是公司内部有 OA 或 ERP,走合同审批流程时也通常需要上传 Word 或 PDF,那么 Word 作为母版是最好操作的。
2. 系统维护合同的核心条款拆解与实操要点
2.1 服务范围与 SLA 是合同的灵魂
一份系统维护合同方案里最重要的技术章节,就是服务范围说明和 SLA(Service Level Agreement,服务级别协议)。SLA 不是简单写一句“7×24小时响应”就完了,它至少要包含三个维度:可用性承诺、响应时间、解决时间。
可用性承诺通常表述为系统可用率不低于某个百分比,比如 99.9%。这个数字需要谨慎填写,因为它直接关系到是否触发赔偿条款。我一般会建议按月统计,计算公式是:可用率=实际可用时间/约定可用时间×100%,排除计划内停机维护时间。这里有个容易忽略的点:一定要在合同里注明“计划内停机维护需提前多少小时通知”,否则甲方会认定所有停机都是事故。
响应时间和解决时间要根据故障级别分档。常见的分法是四档:紧急故障(系统宕机、数据丢失)、严重故障(主要功能不可用但系统可运行)、一般故障(非关键功能异常)、咨询类问题。表格里列出每档的响应时限和解决时限,同时说明哪些情况可以申请延长解决时限,比如等待第三方厂商回复、等待备件到货、需要甲方协调资源等。
我实际参与过的项目里,SLA写得太严格导致服务商年年赔钱,写得太宽松又让甲方觉得没有保障。所以在这份合同方案里,我专门加了一段“SLA 例外条款”,把因甲方原因、第三方原因、不可抗力导致的超时排除在外,并且要求甲方在故障报修时提供必要的配合。这些都是从真实项目里提炼出来的,能避免很多争议。
2.2 费用结算与付款方式设计
系统维护合同方案的财务部分同样要认真设计,这直接影响到现金流和回款风险。我在合同里一般会约定以下几种结算方式:
- 年度固定总价:一次签约一年,费用分两次或四次支付。比如合同总价12万,按季度支付3万,每次付款前乙方提交上季度维护报告和服务记录。
- 人天计费:单次服务按人天单价乘以实际工作天数和人数计算。适合需求零散、每次工作量不固定的情况。合同里要写明最低出场人天、差旅费是否另计、日报和工时确认单如何签署。
- 基础费+项目费:基础费覆盖日常巡检、远程支持、例行维护,项目费覆盖系统升级、数据迁移、新功能开发等专项工作。项目费一般按《工作量评估表》预先报价,经甲方审批后执行。
付款条款里容易忽略的是发票和税费。我签合同时会明确:合同金额含税还是不含税、增值税专用发票还是普通发票、开票项目名称是“技术服务费”还是“系统维护费”、付款周期是否和发票挂钩。很多服务商吃亏是因为合同写了“收到发票后30日内付款”,结果甲方一直拖着不验收,钱就卡住了。建议付款节点和“验收确认”挂钩,而不是单纯“收到发票”。
另外,如果涉及驻场服务,费用里还要区分驻场工程师薪资、加班费、驻场补贴。别不好意思写,驻场人员的住宿交通费标准、超出工作时间的加班计算方式,都要写清楚,否则干的活越多亏得越多。
2.3 保密、知识产权与违约条款
系统维护人员会接触甲方的客户数据、业务逻辑、服务器账号,保密条款必须写细。保密对象不限于代码和数据库,还包括经营数据、合同内容、人员信息等。保密期限我通常写合同终止后三年,但更严谨的做法是加上“永久保密”信息类别,比如商业秘密和核心算法。保密条款里同时要约定涉密人员的范围,可以要求乙方提供维护人员的保密承诺书。
知识产权这块是很多乙方容易忽视的。维护过程中必然会产生一些脚本、文档、配置方案,这些成果的归属到底是甲方还是乙方,合同里必须写明。我的习惯是:凡是专门为甲方项目定制的交付物,知识产权归甲方;但是乙方通用的工具、框架、代码库,仍然归乙方,甲方只获得在本合同范围内的使用权。这样做既保护了甲方的业务资产,也保护了乙方后续服务其他客户的权利。不要小看这一条,我见过因为一套监控脚本吵到法务的。
违约责任不要只写乙方的,甲方也有责任。比较常见的甲方违约责任包括:未按时提供必要的配合资料、未按时支付费用、擅自修改系统配置导致故障、在未验收情况下提前使用等。每一类违约行为都要有对应的处理方式,比如延期付款按日万分之五支付违约金,或者乙方有权暂停服务但需提前书面通知。把双方的违约责任写平衡,合同才更容易被接受。
3. Word 排版实操:把合同方案做成专业交付物
3.1 用多级标题和自动编号管理合同章节
很多人在 Word 里做合同方案,习惯手动敲“一、二、三”“1.1、1.2”这么排。短文档还行,一旦章节多起来,增删内容时编号就全乱了。我用的是 Word 的多级列表功能,让编号完全自动生成。具体操作是:在“开始”选项卡里找到“多级列表”,选择“定义新的多级列表”,把一级标题设为“第1章”、二级标题设为“1.1”、三级标题设为“1.1.1”,并把每一级都链接到对应的“标题 1”“标题 2”“标题 3”样式。
这样做的好处非常明显:新增一节内容后,后面的编号会自动顺延;调整章节顺序时,只需拖动标题,编号跟着变。更重要的是,后续生成目录、交叉引用时,都依赖这套自动编号体系。手动编号的文档插入目录后,页码和条目不会自动更新,非常麻烦。
你可能会遇到一个问题:多级标题的编号和上级标题脱节,或者“第1章”后面总是出现“0.1”这种奇怪的编号。这通常是因为没有在“定义新的多级列表”里把“起始编号”和“要在库级别中包含的编号”设置正确。我的建议是:一级标题用“章”编号,二级标题上一级选择“级别1”,三级标题上一级选择“级别2”,这样环环相扣,就不会出现编号不跟着上级走的情况。如果已经写了一半文档再调整,可以全选标题,点击“多级列表”重新套用,一般能恢复正常。
3.2 自动目录、页眉页脚和页码:让方案直接可交付
合同方案动辄二十页以上,封面、目录、正文、附件都齐了才算完整。目录我从来不用手敲,而是先通过“引用”选项卡里的“目录”功能插入一个自动目录。插入前确保每个章节标题都用了“标题 1”“标题 2”这样的内置样式,否则目录会收集不到内容。插入后如果修改了标题或者增加删减了章节,只需在目录上右键选择“更新域”,选择“更新整个目录”,页码和标题就自动同步了。
页眉页脚和页码是另一个容易出问题的地方。一份正式合同,封面通常不要页码,目录页可以用罗马数字,正文从“第1页”开始。这就要用到 Word 的“分节符”。我的操作流程是:在封面和目录之间插入“分节符(下一页)”,再在目录和正文之间插入一个“分节符(下一页)”,然后在第二节的页脚设置里取消“链接到前一节”,重新设置页码格式起始为1。页眉可以放公司名称或合同编号,建议不同节里要区分,封面不显示,正文节从第1页开始显示。
还要提醒一个细节:Word 默认情况下页眉有一条横线,看起来像装饰线。如果不需要,可以在页眉区域里选中段落,把边框设为“无”。如果页眉上出现了奇怪的“第页”字样,那是因为插入了页眉/页脚域代码,而不是直接输入文字;想改成“第X页”,要使用“插入页码”功能,别手动打。
3.3 合同表格排版:服务清单和人员配置表
系统维护合同方案里一定会用到大量表格,比如服务范围表、故障等级响应表、人员配置表、费用明细表。表格排版是否专业,直接体现员工的 Word 水平。我总结了一条表格排版原则:给表头设定重复标题行,避免跨页后不知道每列是什么。选中表头行,在“表格属性”里勾选“允许跨页断行”,并在“布局”选项卡里点击“重复标题行”,这样表格分页后每页第一行都会重复显示表头。
列宽和行高的问题也很常见。很多人在表格里拖列宽,拖了半天还是乱。正确做法是:选中整表后,在“表格属性”里勾选“指定宽度”,并选择“优先”或“自动”。如果想精确控制每一列的宽度,用“布局”选项卡里的“分布列”功能,让多列等宽。如果发现某列宽无法拖动,十有八九是单元格宽度设置了固定的“固定值”,把它改成“自动”就能正常调整了。对于内容超过一页的表格,记得设置“允许跨页断行”,否则整个表格会被推倒下一页,留下大片空白。
单元格内容不居中,也是被问得最多的一个问题。文字水平垂直居中,需要先选中单元格,然后设置“水平居中”和“垂直居中”。水平居中在“开始”选项卡里,垂直居中在“布局”选项卡“对齐方式”里。很多人只设了水平居中,忽略了垂直居中,就出现了文字靠上的情况。另外,如果表格里的内容和编号不对齐,检查一下是不是有空格,建议把空格删掉,使用对齐设置,尤其是金额列,用整数和小数列分开,更能保持格式干净。
3.4 处理合同中的公式、特殊字符和“题注”问题
系统维护合同方案里偶尔会出现计算公式,比如 SLA 可用率计算公式、人天费用计算公式。Word 自带的公式编辑器可以插入公式,但默认公式字体有时跟正文不一致。我会把公式字号统一改成与正文一致,比如正文小四,公式也用小四,再通过“段落”设置里的“居中”和“编号分隔符”完成公式和编号的排版。如果甲方要求严格,公式通常要独立一行居中,编号靠右对齐,这是标准的论文式排版,合同里同样适用。
另一个高频需求是图片题注。服务方案里可能会放拓扑图、监控界面截图、人员组织架构图,每张图下面要写“图1 系统拓扑图”。手动写图注其实没问题,但如果图多了,交叉引用会麻烦。正确的做法是:右键图片,选择“插入题注”,在自动添加题注中设置标签为“图”,编号格式设为“包含章节号”,比如“图2-1”。这样以后在正文里引用“见图2-1”的时候,可以插入交叉引用,自动显示题注编号。如果不需要章节号,也可以在题注设置里关掉,否则会出现“图0-1”或者“题注里带章节号但正文没有章节号”的奇怪问题。
那如果是从其他工具批量生成的合同,比如用 Java 的 POI 库来自动套打 Word 合同模板、替换变量、更新表格数据,也要注意图表数据是否能被重新绑定。我见过用 POI 修改 Word 模板里的图表数据后,生成的文档经常打不开或者图表颜色错乱。这说明单纯替换 XML 里的 internal data 还不够,要确认图表类型、缓存序列、颜色信息都要同步更新。如果是重度批量需求,我会建议先做一个最小可用的 POI 示例,把“读取模板→替换变量→更新表格/图表→另存为新文件”这几步跑通再扩大数据量。
4. 合同方案制作中的常见 Word 问题与排查实录
4.1 多级标题编号错乱、标题居中后偏右、保留不属于上级的编号
写系统维护合同方案时,最怕的就是多级标题编号突然变乱。明明用到“1.1”,下一段却变成“2.1”,或者一个“第3章”下面跟着“0.1”“1.1.1”这种乱码。我排查过几次,原因基本都是标题样式没匹配到正确的“多级列表级别”。遇到这个问题,不要一个个手动改,那样永远改不完。先随便选一个错乱的标题,点击“开始—多级列表—定义新的多级列表”,检查它当前链接到的是哪个样式、上一级级别填的是多少。确保二级标题链接到“标题2”时,它的上一级级别是“级别1”,并且要勾选“在新列表中对齐”和“为后续级别编号”这些基础项。之后全选正文,右键“更新样式以匹配所选内容”,编号一般就能理顺。
还有一个很经典的现象:标题用“居中”对齐,但标题编号整体却偏右或者跑到页边距外面。这通常不是对齐的问题,而是这个标题使用了“制表位”来定位编号和标题文字之间的距离。你在“段落”设置里打开“制表位”,把默认制表位位置改成合理值,比如“1厘米”,然后再把“对齐位置”调成居中或左对齐。其实最简单的处理方法:关闭当前标题样式的制表位,直接用“文本缩进”来控制标题和编号之间的间距,就不会出现编号飞出去的情况。
如果你给合同方案设置了好几个级别的标题,但“章”下面总是出现不属于上级的编号,比如一级标题显示“第1章”,二级标题却显示“一、”,原因是没有把二级标题的列表级别关联到“一级标题的下一级”,而是让它独立成一个新列表了。在“定义新的多级列表”中,二级标题的“包含级别编号来自”要选择“级别1”,后面再添加“.”和“阿拉伯数字”,这样二级标题才会自动变成“1.1”。
4.2 表格跨页出现问题、列宽无法拖拽、单元格内容显示不全
系统维护合同方案里的大表格最容易在分页时“散架”。常见的情况有两种。第一种是表格被强行断开,但第二页第一行没有表头,阅读起来很不方便。解决办法在前面已经说了,使用“重复标题行”。第二种是某一行被拆分到两页里,内容上下断开且不完整。这时应该选中整行,在“表格属性—行—选项”里取消勾选“允许跨页断行”,让 Word 把这一整行调整到同一页,虽然会稍微增加前文空白,但至少表格是完整的。
如果表格的列宽无法拖动,往往是因为某些单元格设置了“固定列宽”,这个 Word 就不让拖。可以选中整个表格,在“表格属性—表格—选项”里取消“自动调整尺寸”,然后勾选“百分比”或“优先值”,让列宽可以自定义。如果还是不行,检查一下表格的第一行是否是合并单元格,合并单元格多的时候,列宽也容易拖不动。这时最好先取消合并,分别调整后再重新合并。
单元格内容“只显示一半”或者文字特别挤,通常是行高被固定了,而内容超出了设置的高度。解决方式是把行高改成“最小值”或“自动”,这样行高会随内容撑开。还有一个隐藏问题:单元格的左右边距太大,导致可显示宽度变窄。在“表格属性—单元格—选项”里把左右边距从默认0.19厘米调成0.1厘米或0,能明显提高空间利用率。
4.3 删除多余空白页、Word 无法保存到共用模板、宏被禁用
处理合同方案时,经常遇到正文末尾多出一页空白页,怎么按 Delete 都删不掉。原因多半是文档最后存在一个分页符、分节符或者一个不可见的段落标记。打开“显示/隐藏编辑标记”功能(Ctrl+Shift+8),看看空白页里到底有什么。如果是段落标记,可以把它前面的段落格式里“行距”改成“固定值 1磅”,这个段落就会被压进上一页;如果是分页符,直接选中删除;如果是分节符,注意删除分会影响到目录和页码,所以要谨慎处理。我自己的习惯是:写完文档后先全选,把段落格式的“段前段后”和“行距”清理干净,再配合显示隐藏标记来删空白页,基本能解决九成问题。
“无法将更改后的内容保存到共用模板”这个问题,我也遇到过很多次,尤其在使用公司统一模板时。原因是 Word 启用了“文件和不可见内容”保护,或者共用模板被设置为只读。解决方法是:先关闭所有 Word 窗口,重新打开时到“文件—选项—信任中心—信任中心设置—共享实时通讯服务”那里找到“启用共享工作区”之类的开关,取消相关限制。如果是单个 docx 文件保存报错,可以先用“另存为”到本地文件夹,并确认文件没有属性中的“只读”勾选。
宏安全这个问题,在合同方案自动生成场景里更常遇到。我用 VBA 写过一些批量调整表格格式和自动编号的宏工具,第一次在新电脑上打开 Word 时会提示“宏已被禁用”。这不是 Word 坏了,而是默认安全级别高,阻挡了宏运行。如果你想用宏来提高批量合同处理效率,又嫌改安全选项麻烦,可以考虑对文档进行数字签名,或者把文件放在受信任位置。如果是临时使用,可以在“文件—选项—信任中心—宏设置”里选择“启用所有宏”,但用完之后记得改回来,毕竟合同文件里可能涉及敏感信息,安全第一。
5. 这套合同方案后续还能怎么扩展
系统维护合同方案写到这里,已经是一份可以直接交付的 Word 文档了。但实际工作中,很多团队会把它继续扩展成合同管理系统的一部分。比如把 Word 模板作为母版,通过 POI 或 VBA 自动填充项目名称、金额、服务日期,生成不同客户版本的合同,再转成 PDF 用于电子签章。如果团队有 Markdown 编写习惯,也可以先用 Markdown 写合同草稿,再用 pandoc 转成 docx,保留标题层级,但转换后需要检查自定义样式和表格宽度,Word 原生样式总比转换来的更可控。
我建议在看这篇文章的同时,打开一份真实的 Word 文档,把多级标题、自动目录、表格重复标题行、分节符页码这些功能按顺序试一遍。只靠看是记不住这些步骤的,尤其多级列表和分节符这两个功能,逻辑强但操作隐蔽,不亲手设置两三次,很难形成肌肉记忆。
最后再分享一个从实际项目里沉淀出来的小经验:无论用 Word 做合同、方案还是标书,都要养成“先结构、后内容、再排版”的习惯。先把章节大纲用标题1、标题2搭出来,再往下面填段落和表格,最后统一调字体、行距和页边距。这个过程一开始看起来慢,其实是最稳的路径。我从一个个“标题编号乱跳”“表格跨页错乱”“目录不能更新”的坑里爬出来之后,已经彻底离不开这套方法了。系统维护合同方案只不过是一个载体,真正值钱的是你那套能把复杂文档稳定输出的流程。