佟格湾
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
论软件测试中缺陷管理及其应用
本文以我参加的“xx省健康促进与教育信息化平台”系统建设项目为例,详细阐述了软件系统缺陷管理的相关知识及在项目中的实际运用过程。原创 2025-05-02 07:45:49 · 114 阅读 · 0 评论
-
论软件的可维护性设计
一、项目概述2021年6月,某三甲医院为了解决现有信息系统过于陈旧且升级维护困难、成本较高等问题,决定对医院现有信息系统进行重建。该项目总预算约400万,要求一年内建设完成,最终,我司以380万左右的价格中标,我作为公司技术骨干,有幸担任该项目的架构师,负责该项目架构设计与核心代码开发工作,经过团队努力,项目主体建设工作于11个月左右的时间完成。新系统要求包含四大部分:HIS系统、电子病历系统、后勤管理系统、患者服务系统。原创 2025-05-02 08:01:15 · 199 阅读 · 0 评论
-
论系统建模方法及应用
本文以该项目为例,讨论了软件系统建模的理论知识与实践过程。软件系统常用的建模方法有面向对象建模、结构化建模与信息工程建模,本文重点介绍了面向对象建模方法的应用。原创 2025-05-02 07:47:14 · 104 阅读 · 0 评论
-
论软件需求管理
本文以我参与的“xx省健康促进与教育信息化平台”系统项目建设为例,讨论软件开发中需求管理的有关知识及实际应用过程。原创 2025-05-02 07:45:22 · 895 阅读 · 0 评论
-
论软件质量保证及其应用
本文以我参与的“xx省健康促进与教育信息化平台”系统项目建设为例,讨论软件质量保证的有关知识及实际应用过程。原创 2025-05-02 07:46:56 · 76 阅读 · 0 评论
-
UML 4+1 视图用途介绍
用例视图就是从用户和外部系统角度看:“电商系统能提供哪些功能,谁来使用这些功能”。逻辑视图就是从系统设计者/开发者角度看:“系统内部有哪些功能模块,它们是怎么组织的,类之间如何协作来实现业务逻辑”。开发视图就是从程序员/架构师角度看:“代码怎么分模块、怎么组织、包之间有什么依赖关系”。进程视图就是从系统架构师/运维/并发编程者角度看:“系统运行时多个任务是如何并发执行的,服务之间如何交互与协同”。部署视图就是从运维/DevOps/架构师。原创 2025-11-07 12:15:00 · 26 阅读 · 0 评论 -
常见数据脱敏方法总结
方法是否可逆是否保留原数据含义适用场景示例替换可逆/不可逆部分保留测试数据构造姓名:张三 → 李四遮蔽/屏蔽不可逆部分保留(格式)展示类脱敏(UI/日志)手机号:138****5678加密可逆保留(需解密)安全存储/传输AES加密手机号乱序/打乱不可逆不保留(关系破坏)测试数据,破坏关联关系姓名与手机号错位匹配泛化不可逆降低精度保留大类数据分析、统计发布年龄:25 → 20-30岁取消/删除不可逆不保留合规删除、数据最小化删除身份证号字段。原创 2025-11-06 12:15:00 · 51 阅读 · 0 评论 -
电商系统高并发场景下库存扣减的线程安全实践:单体与分布式架构全方案详解
维度单体架构分布式架构典型部署单台服务器(如IIS/传统Tomcat),所有请求由同一进程处理多台服务器(负载均衡),多个服务实例共享库存数据库存存储位置数据库(主)或内存缓存(辅助,如本地字典)数据库(主)或分布式缓存(如Redis,主/辅)核心推荐方案数据库乐观锁(内存库存可选编程语言锁(如lock数据库乐观锁(跨实例通用)或分布式锁 + 缓存/数据库操作(复杂业务)或Redis原子操作(秒杀)或消息队列(削峰)是否依赖外部组件仅需数据库。原创 2025-11-05 14:33:37 · 247 阅读 · 0 评论 -
TCC(Try-Confirm-Cancel,预留-确认-取消)实现分布式系统数据一致性代码示例
/ 模拟HTTP客户端:跨服务调用工具(简化版)// 模拟调用库存服务// 实际是远程服务,这里简化为本地实例// 模拟调用支付服务// 实际是远程服务,这里简化为本地实例。原创 2025-11-05 13:20:27 · 37 阅读 · 0 评论 -
以电商系统为例,理解用户体验五层模型
用户体验五层模型包括:战略层(Strategy):明确产品目标与用户需求范围层(Scope):确定产品要提供哪些功能与内容结构层(Structure):设计功能与内容的组织逻辑与交互流程框架层(Skeleton):规划功能在界面中的布局与信息架构表现层(Surface):视觉设计与用户感知这五层从抽象到具体,从目标到呈现,构成了一个完整的用户体验设计体系。层级核心目标电商系统对应内容关键产出物举例战略层明确产品目标与用户需求。原创 2025-10-19 10:11:55 · 143 阅读 · 0 评论 -
软件架构4+1视图中的进程视图该怎么画?
画进程视图的核心,就是用一张图说清楚:谁在干活?(执行单元)怎么配合?(同步/异步/共享数据)要注意什么?(资源限制和容错)即使你的系统目前并发量不高,这张图也能帮你提前发现潜在问题,避免未来扩展时“改一处崩全局”。记住:好的进程视图不需要华丽,只要能让团队成员(开发、运维、测试)一眼看懂系统的“动态运行逻辑”,就是成功的架构设计!原创 2025-10-19 10:07:27 · 149 阅读 · 0 评论 -
关于UML顺序图中“消息”的一点思考
在UML顺序图中,“消息”严格定义为一个对象(发送方)向另一个对象(接收方)发起的调用请求,目的是要求接收方执行特定的操作或行为。其核心特征可概括为三点:主体是对象间的交互:消息存在于系统内部的对象(如类实例、组件、服务等)之间,而非用户与系统之间直接的物理行为;本质是行为调用:消息名称通常是动词或动宾短语(如),描述接收方需完成的具体动作;目标是触发操作:发送方通过消息“请求”接收方执行逻辑,而非描述发送方自身的行为。原创 2025-10-19 10:02:38 · 76 阅读 · 0 评论 -
性能测试中基准测试、负载测试、压力测试的区别
在性能测试中,是三种核心测试类型,它们的目标、方法和关注点存在显著差异。原创 2025-10-18 10:39:37 · 61 阅读 · 0 评论 -
一份软件系统性能测试报告示例
问题编号问题描述严重等级根因分析优化建议BUG-001并发≥100时,首页响应时间超5s,错误率1.5%高应用服务器CPU饱和,Redis缓存未完全覆盖商品数据1. 应用服务器扩容(CPU≥8核);2. 热点商品预加载至RedisBUG-002并发≥200时,订单提交失败率4.9%,数据库连接池耗尽严重MySQL最大连接数默认151,不足1. 调整连接池至300;2. 优化连接释放逻辑BUG-003稳定性测试中,应用服务器频繁Full GC(每2分钟1次),响应时间逐渐上升。原创 2025-10-18 10:39:14 · 71 阅读 · 0 评论 -
一份软件系统性能测试用例文档模板
:同一时刻模拟的用户数量(通过JMeter线程组配置)。。原创 2025-10-18 10:38:51 · 55 阅读 · 0 评论 -
一份软件系统性能测试计划模板
指标类别具体指标定义目标值(预期)响应时间页面/接口响应时间从用户发起请求到收到完整响应的时间(含网络传输+服务器处理)。首页≤5s;订单提交≤4s事务平均响应时间单个业务流程(如“进入首页→加载完成”)的平均耗时。≤5s(并发≤100)事务最大响应时间单个业务流程的最长耗时(需控制极端情况)。≤10s(并发≤100)吞吐量TPS(每秒事务数)系统每秒成功处理的事务数量(如“提交订单”为一个事务)。≥100(并发≤100)成功率事务成功率。原创 2025-10-13 17:21:40 · 67 阅读 · 0 评论 -
一份软件系统性能需求文档示例
本性能需求文档从用户视角与业务目标出发,明确了电子商城系统在不同运行环境与负载条件下的性能目标,涵盖响应时间、并发能力、吞吐量、可用性、扩展性等关键维度,为系统全生命周期的性能保障与优化提供明确依据。建议在开发各阶段持续开展性能评估与测试,并在上线前完成全链路压测,确保系统在实际运行中达到本文档所定义的各项性能指标。✅ 附录(可选,可根据需要补充)《电商系统用户访问量与并发量预估》《核心业务流程与接口清单》《系统架构设计(含缓存、消息队列、数据库方案)》原创 2025-10-13 17:21:04 · 440 阅读 · 0 评论 -
质量保证(SQA)计划书-demo2
本文档明确 "[电商系统名称]" 项目的软件质量保证(SQA)活动框架,通过系统化的过程监控与改进,确保项目交付的电商系统符合业务需求、技术标准和用户期望,降低质量风险,提升系统可靠性与用户体验。原创 2025-10-11 14:22:47 · 50 阅读 · 0 评论 -
质量保证(SQA)计划书-demo1
本计划适用于电商系统建设全生命周期(需求分析→设计→开发→测试→部署→验收),覆盖所有核心模块(用户中心、商品管理、订单支付、营销中心、物流跟踪等)及关联的配套文档(需求规格说明书、设计文档、测试用例、用户手册等)。组织需求评审会(参与角色:产品、开发、测试、SQA),验证需求的完整性(无歧义/矛盾)、可测试性(每个需求可设计验证用例)及一致性(与业务目标对齐)。:功能测试(覆盖所有用户场景)、性能测试(模拟高并发)、安全测试(渗透测试+漏洞扫描)、兼容性测试(多端/多浏览器)、UAT(用户验收)。原创 2025-10-11 14:22:18 · 50 阅读 · 0 评论 -
质量保证与质量控制的区别
是一种预防性活动,关注。原创 2025-10-11 14:21:39 · 262 阅读 · 0 评论 -
论测试驱动开发DD
2023年8月,为进一步落实国家关于“健康中国行动”对“实施健康知识普及行动”、“建立并完善健康科普专家库和资源库”、“构建新型健康知识发布与传播机制”、“全面提居民健康素养”等的要求,某省疾控中心开始启动业务范围覆盖全省的“健康促进与教育信息平台”系统项目建设工作。目的是借助该平台全面提升疾控系统健教部门工作效率,提升提升全民健康素养。系统包括两部分,一是服务于疾控部门的健康促进工作信息平台,而是服务于全省居民的健康教育知识发布与传播平台。原创 2025-09-30 21:49:48 · 85 阅读 · 0 评论 -
缓存穿透、缓存击穿、缓存雪崩解决方案
对请求参数进行合法性校验(如 ID 格式、业务逻辑限制),过滤非法请求。在分布式系统中,缓存是提升性能的关键组件,但也可能面临。大量缓存集中失效或服务宕机。缓存服务器故障、批量过期。过期时间打散、高可用架构。热点键过期、主动删除。布隆过滤器、空值缓存。原创 2025-05-21 22:31:54 · 423 阅读 · 0 评论 -
数据库与Redis数据一致性解决方案
在分布式系统中,当多个服务节点同时对数据库和 Redis 进行写操作时,可能因并发导致数据不一致(如缓存击穿、脏数据)。:多个请求同时更新同一数据,可能出现 “先更新 Redis 后更新数据库” 的顺序错乱,导致缓存与数据库不一致。原创 2025-05-21 22:31:41 · 689 阅读 · 0 评论 -
通过实例对比:瀑布模型 vs 喷泉模型 vs 敏捷模型 vs 统一过程模型 vs 螺旋模型
(包含用户注册/登录、商品展示、购物车、订单管理、支付功能、后台管理等功能)为例,来对比瀑布模型、喷泉模型 、敏捷模型 、统一过程模型 和螺旋模型。原创 2025-05-19 06:52:55 · 532 阅读 · 0 评论 -
通过实例讲解喷泉模型
无间隙回溯任意阶段发现缺陷(如设计缺陷、编码缺陷、性能缺陷),可直接回溯到对应阶段(如设计→编码→测试)进行修复,无需等待固定里程碑。示例:测试阶段发现库存校验缺失,直接修改Product类的业务逻辑,并更新的调用逻辑。迭代累积优化缺陷修复伴随每次迭代逐步完成,而非集中在某个阶段(如传统瀑布模型的 “缺陷修复阶段”)。示例:推荐算法的 “冷启动问题” 在第一次迭代修复(增加热门兜底),“类别过滤问题” 在第二次迭代修复,“性能问题” 在第三次迭代修复。文档与代码同步。原创 2025-05-19 06:52:35 · 81 阅读 · 0 评论 -
通过实例讲解统一过程(RUP)模型
在电商系统开发中应用统一过程模型,初始阶段明确项目范围、初步需求及可行性,为后续工作奠定基础;细化阶段深入规划,确立架构并验证高风险部分,确保系统蓝图的可靠性;构造阶段通过多轮迭代实现功能并测试,逐步完善系统;移交阶段完成部署、测试、培训等工作,实现产品交付。九个核心工作流在各阶段协同配合,涵盖从业务建模到项目管理等多个方面。这种方式能够有效组织和管理开发过程,明确各阶段目标与活动,保障项目按计划推进,交付高质量的电商系统,提高项目成功率,增强团队协作效率和系统稳定性。原创 2025-05-19 06:52:16 · 109 阅读 · 0 评论 -
通过实例讲解螺旋模型
在电子商城系统开发中,螺旋模型通过分阶段迭代和风险驱动,逐步完善系统功能并降低不确定性。例如,通过前 3 次螺旋解决了需求模糊、第三方集成、性能优化等核心问题,后续螺旋则支持持续创新和维护。该模型尤其适合需求复杂、风险较高的项目,但需注意控制迭代成本,避免陷入无限循环。原创 2025-05-16 06:36:34 · 271 阅读 · 0 评论 -
通过实例讲解敏捷模型
在电子商城系统开发中,敏捷模型通过短周期迭代、持续反馈、灵活应变的特性,适配了电商业务快速变化的需求。团队需聚焦 “为用户创造价值”,通过高效协作和自动化工具,确保每个迭代交付可用功能,最终构建出健壮、用户体验佳的商城系统。原创 2025-05-16 06:35:16 · 858 阅读 · 0 评论 -
通过实例讲解瀑布模型
在电子商城开发中,瀑布模型如同 “工业时代的流水线”—— 能通过标准化流程交付高质量、高合规性的系统,但也可能因缺乏灵活性而错失市场机会。其优势与缺点本质上源于同一核心特征:严格的阶段性与文档驱动。决策建议若开发传统型、长周期、需求固定的电子商城(如企业内部采购平台),可优先选择瀑布模型,并通过 “需求预验证 + 模块化设计” 降低风险;若开发创新型、短周期、需快速迭代的电商平台(如社交电商、跨境电商),建议采用敏捷模型或混合模型(如瀑布 + Scrum),平衡规范性与响应速度。原创 2025-05-16 06:34:47 · 147 阅读 · 0 评论 -
瀑布模型VS敏捷模型VS喷泉模型
(包含用户注册、课程展示、视频播放、作业提交、成绩管理等功能)如果需求极其不稳定,敏捷模型可能是更好的选择。如果你的团队长期使用瀑布模型但想提高灵活性,可以从 。(每2周一个Sprint)(每4周一个迭代)原创 2025-05-14 22:18:56 · 393 阅读 · 0 评论 -
瀑布模型与敏捷模型的核心区别到底是什么?
比如说,你的团队要开发一个由多个模块构成的大型系统(如:HIS系统包括挂号、开单、收费等几十个模块),但是你的团队对该系统的需求并不是十分了解,而客户也无法说清楚具体的需求(事实上,这是普遍存在的情况),这种情况下,如果要一次性开发完成后再交付给客户试用,就会面临巨大风险,因为模块之间可能存在依赖,如果上游模块需求搞错了,下游模块也会受到影响,造成的修改成本就非常大,而如果能持续分模块交付,每交付一个或几个模块就让客户试用并反馈意见,则会大大降低这种风险。瀑布模型与敏捷模型的核心区别到底是什么?原创 2025-05-14 22:18:41 · 149 阅读 · 0 评论 -
为什么你感觉不到统一过程模型(RUP)有什么用?
你总是会从课堂上、教材上了解到统一过程模型(RUP)是多么多么的优秀,但是,你却搞不清楚它优秀在哪里。为什么呢?简单来说,是因为你所处的时代或工作环境让你无法理解它,就像你无法理解几千年前的周朝为什么会出现分封制一样。原创 2025-05-14 22:18:14 · 209 阅读 · 0 评论 -
日常组件复用与基于构件开发的本质区别
在软件开发领域,日常开发中的组件复用和基于构件的开发(Component-Based Software Development,CBSD)虽然都涉及组件的重复使用,但两者在多个关键层面存在显著差异。理解这些差异,有助于开发者在项目中选择更合适的开发方式。原创 2025-05-12 21:39:46 · 132 阅读 · 0 评论 -
基于构件的开发方法与传统开发方法的区别
在软件开发领域,基于构件的开发方法和传统开发方法有着截然不同的特点与应用效果,这些差异显著影响着项目的实施过程与最终成果。下面,我们将从多个关键维度展开对比分析。通过以上对比不难发现,基于构件的开发方法在提高开发效率、降低成本、增强系统可维护性和扩展性等方面具有明显优势。但在实际应用中,两种方法各有其适用场景,开发者需根据项目特点和需求合理选择,以实现最佳开发效果。最后补充一下,传统开发方法就像农村传统的建房方式,打地基,浇筑,一层层去建,而基于构件的开发方法就像模块化建房一样,网上下单,厂家发各种建房构原创 2025-05-12 21:39:31 · 118 阅读 · 0 评论 -
购物车构件示例
set;set;set;/// 购物车项set;} // 购物车项IDset;} // 用户IDset;} // 商品IDset;} // 商品名称set;} // 单价set;} // 数量set;} // 创建时间set;} // 更新时间set;} // 扩展属性set;set;set;} = 1;set;set;set;set;set;set;set;原创 2025-05-11 09:33:57 · 162 阅读 · 0 评论 -
用户登录构件示例
本文将演示一个完整的用户登录构件,采用C#实现,重点展示如何将构件化思想应用到实际开发中。用户界面用户名密码验证登录日志记录模块化设计,各组件职责单一使用接口抽象,便于扩展和测试依赖注入,实现松耦合通过这个示例,您将看到如何构建一个可复用的登录构件,并了解如何将其集成到业务系统中。原创 2025-05-11 09:33:39 · 176 阅读 · 0 评论 -
构件是一个逻辑概念,还是一个物理概念?
:构件是系统功能的逻辑划分,表示一组相关的职责或行为,不直接对应物理实现。。原创 2025-05-10 14:21:30 · 102 阅读 · 0 评论 -
构件是什么?
在软件工程中,构件(Component)被定义为系统中可替换的、物理的组成部分封装性:构件封装其内部实现细节,对外暴露明确的接口独立性:构件可以在不同的应用中独立使用和部署组合性:多个构件可以通过标准接口组合成更复杂的功能互操作性:构件遵循规范或标准,实现跨平台、跨语言的集成技术定义:国际对象管理组织(OMG)给出的定义是:构件是一个模块化的、可部署的软件单元,它封装了其实现并公开了一组可识别的接口。原创 2025-05-10 14:21:06 · 324 阅读 · 0 评论 -
论敏捷软件开发及其应用
目录 摘要(300~330字)正文(2000~2500字,2200字为宜)背景介绍(500字做左右)论点论据(1500字做左右)收尾(200字左右) 本文以我参加的“xx省健康促进与教育信息化平台”系统建设项目为例,详细阐述了敏捷软件开发的相关知识及在项目中的实际运用过程。该项目旨在为进一步落实国家关于健康中国行动的有关要求而建设,目标是建设服务于全省疾控系统及全省居民的健康信息化平台系统,通过线上线下相结合的方式,提升疾控工作效率及全民健康素养水平。项目的典型特点是用户覆盖面广、部分模块需求多而杂乱、工期原创 2025-05-10 14:19:41 · 159 阅读 · 0 评论 -
敏捷软件开发中部分概念科普:长篇故事、特性、用户故事、任务、问题
在 “开发一款多功能健身 APP” 这个长篇故事的实现过程中,特性将长篇故事细化为不同的功能模块,用户故事进一步从用户角度描述了每个特性的具体需求,任务则是为实现用户故事而进行的具体工作步骤。问题的出现会促使新任务的产生,以不断优化和完善 APP 的功能和性能,确保最终产品能够满足用户的期望和需求。目标是打造一个全面的健身平台,满足用户在健身计划制定、运动数据记录、社交互动以及相关产品购买等多方面的需求。原创 2025-05-09 07:00:47 · 297 阅读 · 0 评论
分享