软件开发技术方案
1.开发框架
开发的系统中所应用的技术都是基于JavaEE,技术成熟稳定又能保持先进性。采用B/S架构使系统能集中部署分布使用,有利于系统升级维护;采用MVC的开发模式并参考SOA体系架构进行功能设计,使得能快速扩展业务功能而不会影响现有系统功能的正常使用,可根据实际业务量进行部分功能扩容,在满足系统运行要求的同时实现成本最小化。系统采用分布式部署,系统功能隔离运行,保障系统整体运行的稳定性。
图1.开发框架与体系结构图
1.1.web端技术栈
(1)前端采用elementUI/jquery/bootstrap/vue实现,前端和Controller交换数据基于json格式。
1.2 业务端技术栈
(1)业务端基于springboot、springMVC、JPA、SpringData技术栈构建,对于复杂的系统则采用springCloud构建。
(2)四层分隔:controller(Facade)/service/dao/entity,其中façade主要用于生成json,实现和前端的数据交换。
(2)命名:按照功能模块划分各层包名,各层一致。
2.系统安全保障
2.1 访问安全性
权限管理是系统安全的重要方式,必须是合法的用户才可以访问系统(用户认证),且必须具有该资源的访问权限才可以访问该资源(授权)。
我们系统设计权限模型,标准权限数据模型包括 :用户、角、权限(包括资源和权限)、用户角关系、角权限关系。权限分配:通过UI界面方便给用户分配权限,对上边权限模型进行增、删、改、查操作。
基于角的权限控制策略根据角判断是否有操作权限,因为角的变化 性较高,如果角修改需要修改控制代码。
而基于资源的权限控制:根据资源权限判断是否有操作权限,因为资源较为固定,如果角修改或角中权限修改不需要修改控制代码,使用此方法系统可维护性很强。建议使用。
2.2 数据安全性
可以从三个层面入手:操作系统;应用系统;数据库;比较常用的是应用系统和数据库层面的安全保障措施。
在操作系统层面通过防火墙的设置。如设置成端口8080只有自己的电脑能访问。应用系统层面通过登陆拦截,拦截访问请求的方式。密码不能是明文,必须加密;加密算法必须是不可逆的,不需要知道客户的密码。密码的加密算法{
MD5--不安全,可被破解。需要把MD5的32位字符串再次加密(次数只有你自己知道),不容易破解;加密多次之后,登录时忘记密码,只能重置密码,它不会告诉你原密码,因为管理员也不知道。
3.项目计划的编制和管理
本公司项目基于敏捷过程的方式组织,项目计划基于需求和团队反复讨论的过程。在开发系统时都经过了解需求,开需求分析会议,确定开发任务,推进开发进度,测试,试点,交付等开发步骤,其中具体内容有:
1,了解需求:跟客户沟通,充分了解对方的需求,然后对需求进行过滤,最后整体成需求文档
2,需求分析会议:也就是项目启动会议之后要做的事情,对拿来的需求进行讨论,怎么做
满足需求。主要对需求进行全面的梳理,让开发,产品,项目都熟悉整个需求。
3,确定开发任务:根据敏捷开发法则,需求变成一个一个功能点之后就是安排开发任务了。根据团队现有的资源合理分配任务,和时间节点json检查
4,推进开发进度:在开发的实际过程中,注意节奏的把控,注重功能点完成的时间点。
5,每一个功能点完成之后都会有测试工程师进行单元测试。
6,试点单位进行试用,然后解决问题。
7,交付
6,试点单位进行试用,然后解决问题。
7,交付
4.项目进度保障体系
4.1制度保障
实行项目经理负责制,建立强有力的开发指挥机构和开发保障体系,投入能保证开发进度如
期实现的足够的开发队伍,实行专业化开发。建立从项目经理到各开发人员的开发任务,全面、及时掌握并迅速、准确地处理开发过程中遇到的各种问题。对开发过程中遇到的需求变更进行协调管理,对重大关键问题超前研究,制定措施,及时调整开发的公共类保证开发过程的连续性和高效性。强化开发过程的时间点把控问题,对开发任务实行动态管理。保证在时间点内完成开发任务。实行内部经济承包责任制。使责任和效益挂钩,个人利益和完成工作量挂钩,做到多劳多得,调动开发团队、个人的积极性。编制科学合理的总体开发进度计划,运用专业管理软件,对开发计划进行动态控制;并在总计划的基础上分解明确的月及旬计划,项目经理抓住主要技术难点,严格按计划安排组织开发,重点抓好关键技术的开发。定期检查开发计划的执行情况,及时对开发进度计划进行调整;在开发过程中,根据开发进展和各种因素的变化情况,不断优化开发的方案,保证各开发有条不紊的执行。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论