1、软件项目投标用技术部分方案技术展现1.1 总体概要遵循 * 项目设计原则要求目标必须满足项目的各项功能需求;架构必须满足简单、安全升级扩展、伸缩;全面、准确地界定系统架构涉及的范围;清楚定义内部系统与外部系统的边界以及交互约定;确定各微服务的具体职责,微服务间的交互协议和交互过程;确定系统的开发、部署、运维平台的相应规范;为系统设计和后续编码、测试、维护提供原则、基础和规范;1.1.1 关键质量属性系统的质量属性1、可用性:与系统故障及其相关后果有关,系统不能就规范中所说明的服务出现故障。2、可修改性: 是有关变更的成本问题, 关注变更什么 (artifact ),何时变更 (environm
2、ent ),由谁变更( source )。3、性能:与时间有关,事件发生时,系统必须对其做出相应处理。4、安全性:衡量系统在向合法用户提供服务的同时,阻止非授权使用的能力。主要关注的是数据和服务的安全性。5、可测试性:通过测试揭示软件缺陷的容易程度。6、易用性:关注的是对用户来说完成某个期望任务的容易程度和系统所提供的用户支持种类。7、响应速度:查询不超 1 秒,其他平均不超 1 秒架构的质量属性1、概念完整性:在各个层次上统一项目设计的根本指导思想2、正确性和完整性:架构能够满足项目的各种需求和运行时的资源要求的必要条件;3、可构建性:保证能够由指导开发小组在规定的时间里即时开发系统,并允许
3、在开发过程作些更改的架构属性 .1.1.2 架构设计原则本架构着重考虑项目的互用性、扩展性、灵活性、扩充性为原则,采用微服务,公众号服务采用微服务架构,并且使用当今流行的 Docker 容器部署。微服务架构的演进历史单体应用架构 Monolithic :业务错综复杂、相互依赖、紧耦合、高风险基于简单的 MVC分层架构,比较流行的技术栈是 SSH或 SSM。面向服务架构 SOA:业务分拆、松耦合、分层、服务治理、稳定性提高了、风险降低了SOA服务化架构, 解决了传统企业异构系统之间的互通和互联网企业快速开发迭代的服务化架构,最典型的 SOA框架是阿里巴巴开源的 Dubbo 框架微服务架构 MSA
4、:基于 SOA,更细粒度、敏捷性、灵活部署、精准扩展、自主开发部署MSA微服务架构,通过将功能分解到各个离散的服务中移实现对解决方案的解耦。微服务架构设计的十二个基本要素基准代码 :一份基准代码,多份部署依赖 :显式声明依赖关系配置 :在环境中存储配置后端服务 :把后端服务当作附加资源构建,发布,运行 :严格分离构建和运行进程 :以一个或多个无状态进程运行应用端口绑定 :通过端口绑定提供服务并发 :通过进程模型进行扩展易处理 :快速启动和优雅终止可最大化健壮性开发环境与线上环境等价 :尽可能的保持开发,预发布,线上环境相同日志 :把日志当作事件流管理进程 :后台管理任务当作一次性进程运行1.2
5、 技术概要1.2.1 Web端结构及框架的技术规范Vuejs 是当前最流行的前端框架, 开源免费, 以数据驱动和组件化的思想构建的, 双向绑定。采用虚拟 dom技术。 比直接操作 dom的效率高 3 倍。同时, 虚拟 dom技术无关浏览器厂商与型号, 研发人员不再关心各浏览器细节。 关注重心可以向业务实现倾斜。 用于业务逻辑的研发的时间有效增加,对于交付时间与交付质量有更有保障。1.2.2 系统所使用数据库的技术规范公众号服务采用 mysql 做为数据库 , 作为核心事务数据库。随着当今企业纷纷采用大数据,其信息架构不断发展演变。大数据时代新的信息架构采用Hadoop,spark 等新兴技术,
6、数据仓库基于 hbase 构建而成, 部分数据由 mysql 导入,部分数据从日志中采集。1.2.3 数据库集群方案LVS+Keepalived+MySQL集群搭建架构图如下:根据业界主流指标测算,以及我们的多次压测结果表明,按照我们的集群方案,单台 mysql服务器( 8 核 6G的配置) 每秒并发可以实现 550 左右,即单台服务器一秒钟可以同时支持550 条订单记录并行写入,如果发生更大并发,通过异步写入、消息队列等处理,可以解决并发 10 万以上的业务需要。 即在处理高并发时, 我们针对热点数据采用内存数据库, redis或 Hazelcast 、消息组件采用 Kafka ,对数据采用
7、异步处理、服务器可以伸缩扩展。原则上在硬件资源足够的情况下,能最多做到每秒 100 万并发。附:我们压测抽样情况截图:所有数据均不删除,实现问题可追溯。1.2.4 服务开发语言及工具本次系统采用 Java 开源的编程语言来开发,它具有以下有点: 简单性、 面向对象、 分布式、解释型、可靠、安全、平台无关、可移植、高性能、多线程、动态性等。开发框架则采用当前流行的 Springboot 框架,致力于将各种现有流行技术整合为一个整体的框架并使之完全融合, springboot 生成的应用程序无关平台性,可以在任何安装有 java环境的计算机上运行,安全可靠。 Springboot 的主要贡献有社区
8、贡献,可以强力有效的持续支撑。缓存则采用 Hazelcast ,它是一个优秀的缓存框架,为集群而生,默认自带集群,使用哈希算法直接在内存存放数据。 平均寻址时间少于 0.1 秒,一个优秀的缓存框架, 将系统常用的数据存放于内存之中,能有效的提高系统性能。技术选型如下:类别 技术选型 备注Web 端 JS 框架: Vue.js AngularJs2核心框架: Spring Boot 1.4.2日志管理: SLF4J 1.7服务端测试框架: TestNG 6.10工具类: Apache Commons、Lombok缓存及消息队列 缓存框架: Hazelcast 3.7关系型数据库 数据库: mys
9、ql1.2.5 后端开发工具后端开发工具使用 IDEA.IDEA 全称 IntelliJ IDEA ,是 java 语言开发的集成环境, IntelliJ 在业界被公认为最好的 java 开发工具之一, 尤其在智能代码助手、 代码自动提示、 重构、J2EE 支持、Ant、JUnit 、CVS整合、代码审查、 创新的 GUI 设计等方面的功能可以说是超常的。1.2.6 前端开发工具前端开发工具使用 Visual Studio Code 。Visual Studio Code ( 简称 VS Code / VSC) 是一款免费开源的现代化轻量级代码编辑器,支持几乎所有主流的开发语言的语法高亮、智能
10、代码补全、自定义热键、括号匹配、代码片段、代码对比 Diff 、GIT 等特性,支持插件扩展,并针对网页开发和云端应用开发做了优化。软件跨平台支持 Win 、Mac 以及 Linux ,运行流畅1.2.7 后端框架核心框架: Spring Boot 1.4.2安全框架: Apache Shiro 1.3数据库: Mysql 5.7持久层框架: MyBatis 3.4.2数据库连接池: Alibaba Druid 1.0缓存框架: Hazelcast 3.7消息队列框架: Kafka 1.0.9 HazelcastRPC框架: gRPC 1.0.3搜索引擎框架: Elasticsearch 2.
11、4.0日志管理: SLF4J 1.7测试框架: PowerMock 1.6.6 、TestNG 6.10工具类: Apache Commons、Lombok1.2.8 前端框架JS 框架: Vue,Angular2CSS框架: Twitter Bootstrap富文本编辑: CKEditor1.2.9 持续集成和持续交付代码仓库: Gitlab 8 Gogs 1.5核心框架: Jenkins 2.0构建框架: Maven 3代码扫描: SonarQube 6.2程序包管理: Nexus Repository Manager 3.2.01.3 项目实施方案1.3.1 供应商拟投入项目人员项目编号
12、: *项目名称: * 项目 在本项目担任的角 同类项目管理 是否通过司序号 姓名 学历 备注 色 经验年限 法考试1 项目总监 否2 项目副总监 是3 技术总监 否4 产品总监 否5 设计总监 否6 项目经理 否1.3.2 技术响应说明表供应商名称(公章): 包号:序号 采购文件条目 说明 备注采购规格 响应规格 符合/ 正偏离/负号 偏离供应商授权代表签字:日期:1.3.2 拟投入人员情况序号 工作 姓名 职务/学历 专业资格 在本项目 工作 类似区域 职称 中 经历 经验担任的工作项目总监 12项目核心人员资质及简历* (项目总监)项目总监,具备同类项目 * 年相关工作经验,详见下表。姓名
13、 * 学历 硕士本项目担任职务 项目总监 同类项目工作年限 *同类项目经验项目名称 项目介绍 项目担任职务合同签订时间备注供应商名称:供应商代表签字:日期 :1.3.4 质量保证及售后服务计划书安装调试技术指导我方可提供安装、调测硬件系统及软件系统的技术和用于安装、调测的有关设备,并负责安装调测的技术指导;我方可派具有丰富实际工作经验的技术人员任工程督导,我方应事先向贵方给出工程督导的资历,并征得贵方的同意;我方的督导人员能指导设备的安装、测试,负责处理设备质量和数量短缺等问题,并对系统质量全面负责。技术指导支持系统维护我方可提供系统产品本身保修时限。工程实施阶段以工程项目管理为基础;系统投入
14、运行后,实行全天候、全面的服务,并贯穿整个系统的生命周期;我方所提供的系统在安装期、试运转期及最终验收后的保修期内,发生任何主要问题(操作问题或系统故障),我方应免费及时提供所需的技术与其它支持,我方承诺 7 24 小时维护热线、 2 小时远程响应、 24 小时现场响应。我方应派员定期例行巡检或根据需要指导维护工作;后期同等功能模块的扩展费用,由需求本身的工作量决定。在提出的需求完成基本的评估之后,会出具一个所以工时的明细。然后由工时 X 单价计算出实际的所需费用。技术支持我方应具体说明所能提供的技术指导及技术支持的范围和程度, 尤其是在需求预测、系统规划、网络带宽计算等方面。当贵方对我方提供
15、的设备需要扩容、调整时,我方应帮助准备预算、规范书、设备数量及工程有关事项;当系统进行二次开发或在建设其它工程涉及到本系统时,我方应到现场配合并提供一切可能的支持;贵方可永久享有软件版权,如我方因某种原因不能继续提供技术服务,我方应及时提供所有源程序代码、文字说明和技术材料。系统硬件及软件的局部修改系统在质保期内,任何因系统设计、程序编制、等缺陷而发生的系统修改和软件更新,我方免费提供并负责修改工作;贵方需改进系统的运行状况和可靠性时,我方应提供软件与硬件的修改;所供系统在今后利用新技术从硬件或软件方面有任何性能或功能的改进以及产品革新,我方须免费书面通知贵方其改进的详细情况,并提供以优惠价格
16、为基础的修改部分的报价,以便贵方选择。售后服务在系统完成全部验收结束后开始进入正式维护期。 自通过验收日期开始计算, 免费维护三年。运行维护承诺项目最终验收合格之日起 1 年内我方应免费提供技术支持与质保服务, 售后服务响应时间为 8 工作小时。我方承诺对贵方验收完毕的软件如出现非人为因素造成的错误及故障(BUG), 会在第一时间予以解决 ;为便于记录贵方每次要求服务的内容及服务结果, 我们将为贵方设立一个服务档案。 记载每次的服务要求和实际结果, 以及具体时间、服务人员,服务结果, 便于客户服务部门通过热线电话和互联网以及将来的远程联机服务, 及时周到的解决产品使用维护和实施应用中的各种问题
17、。售后服务响应时间流程:一级响应: 对应模块程序员 2 小时二级响应: 项目经理 4 小时三级响应: 公司运营总监 6 小时技术支持我方应具体说明所能提供的技术指导及技术支持的范围和程度, 尤其是在需求预测、系统规划、网络带宽计算等方面。当贵方对我方提供的设备需要扩容、调整时,我方应帮助准备预算、规范书、设备数量及工程有关事项;当系统进行二次开发或在建设其它工程涉及到本系统时,我方应到现场配合并提供一切可能的支持;贵方可永久享有软件版权,如我方因某种原因不能继续提供技术服务,我方应及时提供所有源程序代码、文字说明和技术材料。培训内容系统安装培训为保证贵方系统管理员对系统的软、 硬件配置及安装过
18、程的熟悉, 系统管理员可在系统安装时参与系统安装,并进行实际的安装培训;系统管理培训在系统试运行后, 对负责平台系统管理的操作人员进行统一的系统培训, 熟悉系统的使用及维护;系统维护培训为保证系统管理员对系统的熟练维护, 在系统试运行后, 对系统管理员进行整个系统的操作及内部的管理培训;使用操作培训为保证业务操作人员对系统的熟练操作, 在系统试运行后, 对业务操作人员进行系统的操作及内部的管理培训。培训安排 具体培训的时间、地点、人员、费用等细节由双方协商后合同约定;我方在武汉市区拥有 1300 平方米研发基地,可在武汉提供免费的培训场地。具体培训的时间、地点、人员、费用等细节由双方协商后合同
19、约定;现场培训以设备或客户端边安装边讲授的方式,但是为了不影响整体项目系统的实施进度,现场培训要遵循一定的原则:以培训工程师为引导核心,按照工程师所讲授的内容去理解、并做详细记录;不在讲授及客户端安装过程中频繁提问;可以在工程师安装结束后就讲述问题进行探讨和提问;设备安调人员充当现场培训工程师的角色,也要针对所安调的设备向接受现场培训者进行全面的讲授:先要对设备和客户端有概要描述,使受训者了解项目概观和全局观,培训的内容着眼于客户端的日常操作的方式方法,并有意强调客户端从 appstore 市场或客户网站下载、安装,运行状态的检查与描述,为日后技术服务中用户能够清楚地描述所遇到的故障及问题奠定
20、良好的基础; 我方将根据贵方的要求和建议列出培训内容、计划和被培训人员可达到的水平等; 所有培训计划的安排均在合同签订前完成; 培训内容包括原理讲解及实际操作; 培训教师讲解使用中文。1.3.5 项目实施方案、进度安排及交货期保障措施1.3.5.1 项目实施方案现场开发包括需求分析、概要设计、详细设计、编码开发等工作。我方在本项目进行时会组织技术小组(产品经理、客户端开发工程师、后台开发工程师)代表进行包括需求分析、概要设计、详细设计、编码开发等工作。同时武汉研发基地会专门建立项目组进行封闭开发。系统集成包括系统集成方案设计(包括对我方提供的设备配置清单进行核实完善)、系统软、硬件设备集成安装
21、等工作。我们可以提供所有软件项目的开发、安装、调试等工作,服务器等硬件设备的工作我方可提供技术咨询,或由硬件设备提供商完成相关工作。上线测试包括程序的单元测试、集成测试、用户测试、压力测试、恢复测试等。试运行试运行期 1 个月,在此期间系统质量和可靠性等各项指标应始终保持合格。验收试运行通过后进行验收。验收合格证书对各项检查测试合格后,由贵方签署合格证书。提交文档系统验收后运行 1 个月内,根据最终验收成果,我方整理所有设计文档、开发文档、测试文档和源代码提交贵方存档。保质期最终验收后 12 个月。1.3.5.2 项目实施进度安排表串并行施工系统包含需求分析、系统集成部署、平台软件部署调优、接
22、口开发、接口调试、数据搬迁、上线、应用对接等诸多工作。各项工作既相互影响,又能相对独立工作。因此在项目进度安排时, 梳理出关键路径, 对关键路径进行重点跟踪管控。 同时在统一的计划下, 各项相对独立的工作并行推进。 各任务分别由相应的组长负责, 由项目经理进行总协调和监控。工程进度安排正式的工程进度表应在正式合同签订后, 由公司的合同执行经理、 项目经理与甲方的项目负责人、有关专家在第一次工程会议上确定, 以此为蓝本拟定工程进度总表以及双方的责任书。详细的工程表将依据工程进度总表细化制定阶段计划书, 公司将按照甲方的要求, 合理规划施工进度,计划 6 个月(180 天) 内完成功能优化和上线。
23、项目整体进度安排如下(注:开始时间预设为 T0,将根据实际的项目启动进行调整)WBS 里程碑 任务名称开始时间完成时间备注1 项目启动1.1 项目组织确定 T0 T0+1 周1.2 项目计划确定 T0 T0+1 周1.3 项目启动会 T0 T0+1 周 甲乙双方人员到位2 需求分析2.1 需求调研与确认 T0 T0+2 周 用户需求描述2.2 业务需求分析 T0 T0+3 周 需求分析说明书3 版本研发3.1 系统方案设计 T0+2 周 T0+4 周概要设计、详细设计3.2 基础版本研发 T0+2 周 T0+13 周3.3 内部测试版本 T0+14 周 T0+18 周3.4 局方测试版本 T0
24、+18 周 T0+21 周3.5 上线版本提供 T0+22 周 T0+23 周4 数据迁移4.1 数据整理方案制定 T0+2 周 T0+4 周 数据迁移方案4.2 数据整理方案评审 T0+5 周 T0+7 周4.3 基础数据整理 T0+8 周 T0+10 周5 系统集成(如有硬件)开始时间依据硬件到货时间5.1 系统硬件集成方案提供 T0+12 周 T0+13 周5.2 系统硬件集成方案评审 T0+13 周 T0+14 周5.3 硬件上架、布线、加电 T0+14 周 T0+15 周5.4 硬件环境安装 T0+16 周 T0+17 周5.5 系统软件安装 T0+17 周 T0+18 周5.6 测
25、试环境部署 T0+18 周 T0+20 周5.7 生产环境准备 T0+21 周 T0+23 周6 系统测试6.1 测试方案和计划准备 T0+13 周 T0+15 周6.2 测试方案和计划评审 T0+15 周 T0+16 周6.3 系统功能测试 T0+17 周 T0+18 周6.4 跨系统集成测试 T0+18 周 T0+19 周6.5 系统性能测试 T0+20 周 T0+22 周6.6 用户接收测试 T0+22 周 T0+23 周 测试报告7 上线验收7.1 系统上线 T0+24 周 T0+24 周7.2 系统初验 T0+24 周 T0+36 周上线平稳运行 3 个月后初验7.3 系统终验 T0
26、+37 周 T0+72 周初验后平稳运行 9 个月后终验8 系统培训8.1培训内容、培训计划讨论和确定T0+19 周 T0+20 周8.2 培训材料准备 T0+20 周 T0+21 周依赖以下条件:8.3 培训环境准备 T0+21 周 T0+22 周1、集成工作完成2、版本准备完成3 、数据迁移完成8.4 培训 T0+23 周 T0+24 周9 运行维护9.1 上线后问题反馈的处理 T0+24 周本地维护团队提供现场支撑9.2 日常维护 T0+24 周本地维护团队提供现场支撑1.3.6 实施进度安排及交货期保证。使用 CMMI作为控制项目管理手段,严格按照 CMMI流程结合自身企业文化对 CM
27、MI的精简与改良, 对各阶段的产出做明确的要求, 已适应项目管理要求, 保障项目在后续维护和迭代过程中有据可依。经过精简的 CMMI质量管理流程与各阶段产出:1、需求阶段:需求规格说明书、研发计划、需求评审报告。2、设计阶段:系统设计说明书、架构方案设计说明书、 数据库设计说明书、 测试用例、系统设计说明书评审报告、架构方案说明书评审报告、数据设计评审报告、测试用例评审、 UI 评审报告。3、编码阶段:代码,单元测试,单元测试报告。4、测试阶段:测试报告、操作手册、软件说明书。5、上线阶段:测试报告,测试覆盖报告,验收报告。6、全流程覆盖:项目周报,会议纪要,每周 QA纪要。供应商授权代表签字
28、:日期:1.3.7 验收方案验收文档包括:项目实施计划及实施方案项目进度报告系统需求分析系统需求规格说明书系统集成与开发详细设计系统详细设计方案应用程序设计说明书数据库详细设计说明书应用系统集成实施说明系统源代码信息系统部署及维护手册用户使用报告按照惯例, 在项目正式签收前, 将对正式提交件进行评审, 评审将在项目组内部做评审并达成一致后,交由贵司的相关业务部门进行评审。交付文档接受程序如下:交付作品正式稿提交给贵司项目经理后, 项目经理负责制作额外的副本并分发给任何其他复核人员。在收到交付作品十个工作日内 , 贵司项目经理应接受交付作品或向我司项目经理提供一份要求修改的书面要求。 如果在十个
29、工作日内, 未从贵司项目经理收到任何回应, 则该交付作品视为被接受。我司同意的修改将被更新, 并将更新最后版本再次提交贵司项目经理, 届时, 贵司项目经理对修改部分评审通过后,该交付作品将视为被接受。贵司应组织与项目相关的技术部门以及业务部门的参与项目的有关人员组成专家评审小组,对项目正式提交文档进行内容的评审。 专家小组将应用自己的业务及技术知识、 对总体战略的理解、总体 IT 规划的理解对正式提交文档进行评审,提出问题和意见,通过和项目组的沟通交流,最终得出通过或再次修正的结论。系统验收方式用户验收我司按照合同提供了相应的软件,版本及软件授权。项目技术团队按照约定对软件平台进行了安装, 安装后的软件平台可以正常工作, 确定合同规定的功能均能正常运行。验收标准按照软件实施规格书中要求的参数进行验收。验收合格证书对各项检查测试合格后,由甲方签署合格证书。提交文档系统验收后运行 1 个月内,根据最终验收成果,我方整理所有设计文档、开发文档、测试文档和源代码提交甲方存档。提交文档最终验收后 12 个月。1.3.8功能实现_列出功能清单及对应原型截图 _
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1