项目实战-药品采购系统-day01

目标:项目背景,需求,环境的搭建

难点:环境的搭建

1.学习方法:

      一个项目:架构师、高级程序员、一般程序员

            难度很大但是普通的程序员做很简单

      所以自己对自己的定位要准确(一般程序员)。

                也就是独立模块开发

                  (企业最需要的人)培养的是独立模块开发的人:根据需求去编码实现,实现符合客户需求的功能

      要求:1,记笔记(开会中也需要记笔记)

         2.遇到问题要去总结(问同事):工作日志。

2.项目背景:

      工作中首先要了解项目的背景:为什么产生的,项目的作用,解决了什么问题。

      医药采购:

            医疗行业的问题:药价贵

                        早期监管部门没法去监管医院和供应商,都是医院和供应商之间线下交易。

            解决的办法:创建以省为单位的医药招标平台:录入药品的信息:药品名称、通用名,价格.....

                  药品监管单位查询药品信息,货比三家,从中挑选中标药品,确定中标药品目录,确定中标价格(统一价)

                  

                  还包括了省级的采购平台:把招标平台的中标目录引导了该平台,医院和供应商在该平台交易

                              监管部门只需要通过该平台监管即可。

                    现在要求所有卫生室、医院都可以上网采购。

3.项目概述:

      理解项目背景要去画图理解该项目是怎么回事。

4.分析开发该系统:

          如何去分析需求呢:

                    1.找到用户的角色:

                            1.监管单位

                                  市卫生局(药政科、卫生院(负责审核医药的采购单)):负责通过采购平台进行监管,主要监管医院和供货商的业务交易情况。

                            2 医院:(采购方):通过平台进行药品的采购

                              卫生室:最小的医疗单位

                            3.供货商:通过平台进行商品的销售

                            4.系统管理员(任何系统至少有一个):整个系统的维护,配置,备份。

                      每一个角色可能还有子账号。

5.业务流程(角色在系统中干什么):

                 不同用户共同完成一个业务的流程(画图):各自在业务流程中需要做什么

5.业务功能模块(开发的时候分的是系统架构模块和这个无关)

      将相似或一致的功能组成一个模块。

        采购单管理模块:

                1.创建采购单

                2.提交采购单

                ........

        模块集成完了后,明确各个模块中的功能是谁用的。

6.外部接口(来源于外部系统的数据):

      1.省级药品目录接口

      2.系统管理接口:通过单点登录系统进行用户认证,将第三方系统中的区域管理,系统参数配置等功能接入。

7.需求的分析:

      1.用户的需求分析:

              进行需求调研,一份用户需求报告及用户需求文档。

      2.系统的需求分析:

              依据用户需求文档,进行系统需求分析,编写“系统规格需求说明书”。

      3.系统需求规格说明书:

              描述:

              需求用例:功能描述,功能接口,前置条件(功能的约束条件(达到什么条件才能使用该功能),后置条件)、事件流(功能的操作流程),可选事件流。

8.项目的配置与设计:

      1.企业中最常用的采用模型是增量模型。

      2.搭建数据库

      3.模块的划分方法:

      4.系统设计:

            系统概要设计(必须要做):

                    1.设计内容:

                              1.主要系统框架

                           2.系统内外部的接口:

                                    内部接口:本平台各个子系统的的接口,模块之间的接口

                                    外部接口:和其他系统的接口

                                    网络部署:

              成果:系统概要设计文档

            系统详细设计(不是必须):

              成果:系统详细设计文档

              设计内容:类、接口、及方法的描述

              程序员参考此文档进行编码

      系统的模块划分:

              系统技术架构的模块:依据业务模块进行划分。

              划分的方法:

                    1.以技术架构的纵向拆分方法

                        优点:分层清晰,方便程序员开发。

                      企业中常见的是将系统功能进行抽取组成一个子系统,让其他系统公用该子系统

                      缺点:需要去各层拷贝代码,如果有其他功能依赖该功能抽取代码,系统报错。

                    2.以业务模块的横向拆分方法

                        将相同业务模块的代码抽取出

                        优点:按照模块分包更加的清晰,方便开发维护,适合大中项目

                        缺点:虽然按照模块将包创建,但是模块共存于一个工程,每个模块的运行都必须将其他模块同时进行编译部署。开发效率低。
                    3.以maven作为架构进行模块的划分

                        maven是一个项目的管理工具:maven提供规范的依赖管理。

                                      1.将每个模块作为一个maven工程。

系统的架构:

       1.技术架构:

              springMVC+mybatis+spring+mysql

       2.搞清那些子系统可以以后复用。

     

1.base系统基础模块

   1.包括系统管理功能,其他业务都依赖于该base模块。

   2.base模块依赖于技术架构模块

2.系统业务模块:

    依赖于base模块

3.常用工具类模块

    将常用的工具抽取出来组成一个单独的maven工程。

    base模块依赖于工具类模块。

  架构图绘制

 

  最终要创建的maven工程:

              1.系统主工程模块

              2.系统工具类模块

              3.技术架构模块

9.配置maven环境

        

              

posted @ 2019-01-07 17:31  zhaogot  阅读(548)  评论(0编辑  收藏  举报