文章目录
一 项目开发原则
1.1 web开发项目的步骤:
1.2 crm的技术架构:客户关系管理技术框架
1.3 开发目的
1.4 软件公司的组织结构
1.5 软件开发的生命周期
1)招标
2)可行性分析
3)需求分析
4)分析与设计
I 架构设计:具体的架构——架构设计文档
A 物理架构设计:硬件要求
(1) 应用服务器:【只能运行Java程序】
(2)数据库服务器:【存储数据的服务器】
B 逻辑架构师:代码分层
C 技术选型
II 项目设计——项目设计文档
A 物理模型设计
B 逻辑模型设计
C 界面设计
D 算法设计
5)搭建开发环境
6)编码实现
7)测试
8)试运行
9)上线
10)运维
11)文档编辑
二 CRM项目的核心业务
2.1 CRM项目简介
2.2 CRM项目的核心业务
2.2.1 系统管理功能
2.2.2 业务管理功能
总结
前言
本文主要介绍动力节点Java项目的开发原则与核心业务介绍。
一 项目开发原则
1.1 web开发项目的步骤:
分析-->设计--->编码--->测试
1.2 crm的技术架构:客户关系管理技术框架
四层框架
- 视图层(view):展示数据,跟用户交互。
- 控制层(Controller):控制业务处理流程(接收请求,接收参数,封装参数;根据不同的请求调用业务层处理业务;根据处理结果,返回响应信息) (servlet, ) springMvc ( , webwork,struts1,struts2)
- 业务层(Service):处理业务逻辑(处理业务的步骤以及操作的原子性) JAVASE(工作流) activiti | JBPM
- 持久层(Dao/Mapper):操作数据库.(JDBC) mybatis封装,【只执行SQL语句即可 效率较高 】hibernate【自动执行SQL语句,表与pojo实体类对应起来,但是缺点是不灵活,对于复杂的SQL语句可能不好编写,导致服务器压力增大】
- 整合层:维护类资源 ,维护数据库资源【集成持久层,控制数据库事务】,spring(IOC,AOP)【容器生产对象】另外几种技术:ejb【功能强大,但是效率低】croba
项目的技术越来越接近于微服务。
1.3 开发目的
- 1)对软件公司和软件开发有一定的了解
- 2)了解CRM项目的核心业务
- 3)能够独立完成客户关系管理项目核心业务的开发
- 4)对前期所学技术进行回顾,熟练,加深和扩展
- 5)掌握互联网基础课:linux,redis,git
1.4 软件公司的组织结构
- 研发部(程序员【工程师】美工 DBA【数据库】)
- 测试部(测试员)【对于研发部的产品进行极端测试】
- 产品部(对行业的业务有一定的熟练)【产品给研发部给需求】
- 实施部(部署项目,搭软硬件服务器环境)
- 运维部(出现问题给用户解决问题,在客户那边工作)
- 市场部(引进项目,按照项目来提成)
1.5 软件开发的生命周期
1)招标
投标 --------------------------标书
甲方
乙方
2)可行性分析
技术架构师-------------->可行性分析
考虑技术与成本等等方面的内容,不成就外包项目
3)需求分析
需求文档【有法律效用,双方签字,对项目原型的一个定位】
a. 产品经理分析客户细节,找客户区定位需求,里面合理的需求可以,不合理的程序员会提出来。
b. 需求调研【产品经理与程序员一起来调研】
c. 项目原型【先做出来一个项目的大概原型】容易确定需求,开发项目作为jsp网页
4)分析与设计
I 架构设计:具体的架构——架构设计文档
A 物理架构设计:硬件要求
(1) 应用服务器:【只能运行Java程序】
- a. Tomact是应用的一种【中小企业使用,是免费的,有些技术不支持】Tomact的部署方式:手动部署,自动部署【IDEA集成】
- b. weblogic【收费的服务器,功能较强,bea--->oracle】
- c. web开发【Javaee:协议标准,13种协议,例如:servlet,jsp,xml,jdbc,mq....】
- d. websphere(ibm国内自己的web服务器)
- e. jboss(redhat商业服务器,外汇也使用这个服务器)
(2)数据库服务器:【存储数据的服务器】
- MySQL【小巧灵活】
- oracle【都收费,功能较强,占内存】
- DB2【是一种云原生数据库】
- sql server 【教学使用,市面上使用较少】
- 达梦数据库【国内开发】
不同数据库底层性能不一样,这些需要架构师考虑
B 逻辑架构师:代码分层
视图层 --> 控制层 --> 业务层 ---> 持久层 ---> 数据库
C 技术选型
Java 【跨平台、安全性、可移植】
.net
II 项目设计——项目设计文档
A 物理模型设计
项目经理设计:
设计表,字段以及类型,以及表之间的关系【从需求里面找到】xxxx.pdm文档
最关键的设计,关系到程序员的设计
B 逻辑模型设计
编写逻辑文档较为困难
设计类,类的属性和方法,方法的参数和返回值,以及类与类之间的关系
rational rose
C 界面设计
- 企业级应用【对界面没有更多要求】
- 互联网应用【页面较为炫酷】
D 算法设计
算法优化等等方面的知识
5)搭建开发环境
服务器里面搭建
创建项目,添加jar包,添加配置文件,添加静态页面,添加公共的类以及其他的资源,能够正常运行。
6)编码实现
此处需要注释文档
以小组分发整个项目,有小组长分配任务,边写边测试。
7)测试
测试时有测试用例
测试整个项目
8)试运行
试运行有使用手册
给客户体验,给客户的员工培训,测试项目,大概一两周时间
9)上线
有实施手册
10)运维
运维有运维手册
运维人员大概两三年,软件在不断迭代更新
11)文档编辑
贯穿全部的项目周期
项目实施至少半年到一年时间
二 CRM项目的核心业务
2.1 CRM项目简介
Customer Relationship Management客户关系管理系统
企业级应用【传统应用,适用于企业内部使用】一般给销售或者贸易型公司使用,维护客户关系,在市场、销售过程以及服务过程的关系
CRM项目的宗旨:增加新客户,留住老客户,把已有客户转化为忠诚客户
CRM是一类项目,同一个行业的销售模式都可能不同,不同公司的需求不同
PS:以下给进口贸易公司来使用,给大宗商品的进口贸易,受国家的管制。
2.2 CRM项目的核心业务
2.2.1 系统管理功能
保证业务管理的功能正常安全运行,不直接管路业务功能,保障用户正常登录,安全退出,登录验证【防止非法访问】
以下功能给系统超级管理员以及运维、开发人员使用
2.2.2 业务管理功能
处理业务数据
市场活动:市场部,设计市场活动营销活动
线索:销售部使用(初级销售),增加线索,方便筛选意向客户
客户和联系人:销售部(高级销售人员使用),有效的区分和跟踪客户和联系人
总结
以上就是今天的内容~
欢迎大家点赞👍,收藏⭐,转发🚀,
如有问题、建议,请您在评论区留言💬哦。
最后:转载请注明出处!!!