【Java项目+需求文档】银行信贷中间件(五大银行/真实项目实战/全程视频/全套源码)

Java真实项目,是网络各大平台中匮乏的资源。无论你是学完了Java技术,想要项目实战应用一下,还是简历中想要编写项目经验,又或则是毕业设计环节正在写论文,这都可以帮到你。

      我是老龚,20年软件开发经验,资深软件架构设计师,曾主导XX银行太平洋中信用卡审核系统–天姬变、XX诊断部–设备状态管理系统、XX诊断部–数据猎人子系统、XX协力OA系统等。(其中XX由于签订保密协议,这里不便公开,还请谅解)。

      20年的从业经验,我参与或主导多个Java开发项目,我想把这些经历分享给大家。我会筛选出适合用于Java学习、项目经验、毕业设计论文的项目,优先制作。这包括项目的需求文档、设计文档、代码实现,更重要的是全程制作的视频讲解。所以有兴趣一起体验Java企业级真实项目开发的小伙伴们,可以关注我,通过视频链接找到对应资源。

      今天为大家带来一个重量级《银行信贷中间件》的项目,该项目是国内五大银行(具体不便透露请谅解)的真实项目。研发周期6个月,项目费用高达400万,团队规模:6名后端,无前端,无UI(中间件不需要界面呈现)。有兴趣观看制作过程,请通过上方链接移步到视频专辑。

1.1 嗨!这里有一个很NICE的项目

    天降祥瑞,突然间接到了一个很NICE的项目,专业度和规模性都不错哦!

    XX银行有一块常年需要扶持的业务 — 信用卡业务,整个业务由全国近两万的业务销售代表来推动(简称业代)。每一张专业的客户信息填写纸的成本为五块钱,一年的纸张成本接近千万。如此年复一年,资源浪费严重。

1.1.1 项目需求调研

  • 现有的信用卡申请流程

  • 造成的问题

    • 银行专业纸张成本是5块钱一张,每年消耗近千万,资源浪费严重

    • 由于是纸张填写、打包、最后邮寄、容易造成泄露

    • 业代业绩是逐级提升的,可能会形成押件

    • 没有业务延伸,比如补全信息、退件、信用卡服务等等

1.1.2 项目信息油然而生

  • 项目名字

    • XX银行信用卡审核系统中间件

  • 项目番号

    • 天姬变

  • 项目专业度

    • 非常专业

  • 项目类别

    • 偏金融和管理

  • 开发模式

    • 银行的工作流程和业务需求都是属于机密信息

    • 银行项目进行的代码开发也是机密信息,这些数据是不能外传的

    • 特性

    • 和第三方公司签约,买断人员的使用权

    • 买断人员需要银行相关人员进行面试

    • 买断人员需要进入银行指定地点进行开发工作

    • 不能随意上网,不能使用U盘

    • 驻场开发

  • 项目相关的系统

    • 接收前端平板App提交的申请件信息

    • 解析申请件信息

    • 本地进行存储

    • 提交至银行内部信用卡审核系统

    • 手机客户信心

    • 提交申请件

    • 补全申请信息

    • 前端平板里面的App系统

    • 信用卡审核中间件

    • 封闭网段的银行信用卡审核系统(银行原有系统)

  • 项目补充

    • 二代证身份阅读器

    • 蓝牙打印机

    • 前端平板电脑

  • 现有流程

2.1 学习银行项目能收货什么

1.1.1 如何分析需求

    我们将学会去,按照项目的制作流程,首先我们需要去调研项目需求,然后整理用户需求,再出项目原型给用户确认,最后签字形成需求文档,这就是我们做项目之处最先接触的东西,需要去分析它,解析它。

1.1.2 看懂设计概要

    需求文档分析后,会出相应的概要设计文档,我们实际上可以略过相应的文字,只看设计图。设计图是最能说明问题的东西,比如说序列图,清楚的记载着每一个对象发展的序列,要求等等,比如说类图,清楚的记载着每一个类型的属性和方法等等。

1.1.3 学会搭建项目龙骨

    就像造房子一样,文档全部了解之后,就开始动工码代码,开展码农时代。但是,先要先搭建结构,就像造房子时所需要搭建的龙骨一样。会教大家一步一步的去搭建项目龙骨,使用什么框架、使用什么文件结构、每一层龙骨如何创建等等。

1.1.4 学会项目业务创建

    用户的项目需求就是后面转化的项目业务,我们称之为业务模块,也有叫服务模块的。我们要学会吧需求文字转换成业务代码,学会先去创建业务规则再去实现业务代码。

1.1.5 学会使用框架快速开发

    开发中的框架其实就是使用工具,这些工具已经通过了认证,功能强大,性能卓越。我们使用它们来辅助开发可以提升非常多的工作效率。

  • Spring

  • Spring MVC

  • Springboot

  • MyBatis

  • MyBatis-plus

  • MyBatis逆向工程

  • SpringSecurity

  • Spring OAuth2

  • SpringCloud

1.1.6 学会敏捷开发

    在以往的开发中将会产生很多文档,需求文档,概要设计、详细设计、各种字典等等。熟悉这种信息需要浪费很多的精力和时间。而且容易前看后忘记。我们可以使用敏捷开发的思路,文档我只需要最需要的,比如说需求和概要设计等。再开发的时候,整理以便所有逻辑的实现思路,然后再开始编码工作,这样做效率又高出错又少。

1.1.7 学会重构项目

    我们开发项目有一个最大的特点,就是可以重构。可能我们在设计之处会有点不足之处,写出的代码和结构不完美,这没有问题,我们可以通过不断的重构来完善我们的项目。谁都不能在一开始就吃成一个胖子,我们可以通过重构来达到我们的要求。

1.1.8 学会进行单元测试

    项目开发流程中会经历多种测试,其中有一种测试是程序员自己进行的,就是单元测试。我们项目在搭建的过程中会分成N层,这样可以方便管理和指定规范。但是层一旦多了,相互之间的通讯链路就会显的复杂。所以呢,我们必须在开发中使用单元测试,来对层与层之间的通讯链路是否通顺进行验证,避免后面做整体用例测试的时候,从层与层的中间出现断层。

1.1.9 学会部分运维的技能

    开发完成后,包括在测试的过程中,都会去接触运维工作。比如测试环境的搭建、集群的模拟等等。包括dokcer的镜像制作,甚至与部署都会和开发人员有关。虽然有一种工作职能叫运维,但是有时候在某一种场景下,开发和运维的边界会非常模糊。

1.1.10 学会部分的就业技能

    整个项目实按照非常标准的程序进行开发的,每次项目节点都有技术栈的复习小结,可以帮助你累积就业的技术点。学习项目技术的同时还可以提升自己就业竞争力。加上专业面试题的讲解,相信每一位学完这个课程的人都能找到一份好的工作。

  • 章节内容学习

  • 章节技术点巩固

  • 章节总结

  • 软件开发公司流程

  • 面试模拟

  • 各种类型的项目透析

资源下载: