从零设计开发一个软件项目(草稿)--个人浅见

2018-12-18  本文已影响0人  勤学会

前期的业务调研和需求分析也非常重要,只有充分理解的需求,才能写出正确的代码.本文主要从软件开发的角度,讲述如何实现.默认产品原型已经由产品经理设计完毕.

一,树和周期

一颗大树,有主干,有分支.产品也是,一般都存在一条业务主线,这个是重中之重.然后随着主干有分支出许多分支,分支上面还有分支.

周期:一组事件或现象按同样的顺序重复出现.有开始有结束.可以形成一个闭环,逻辑是自恰.

二,概念名称

准确唯一的名称,才不会造成逻辑混乱,才能准确沟通,

生活中的概念大部分都是和软件中的概念定义是一样的.但是也要考虑特殊情况,

例如,车长这个属性,明明是属于 车 这个主体的,但是项目中这个属性,绝大部分在司机这个主体里面出现,这时你就要好好考虑,而不是照搬生活中的概念

三,切分,分层

切分,庖丁解牛,根据牛的组织结构,头是头,腿是腿.项目开发中也是.

大的方面按模块划分,小的方面,一个模块有很多角色,角色有很多属性,最小化切分,切成不可分割的原子

逻辑方面,按周期切分
分层.无他.把复杂的事情,清晰化,简介化.让他们各司其职

clipboard.png

四,实战

了解这些基本概念,下面进入实战开发阶段,使用LNMP

1.框架选型.有些框架大而全,有些框架小巧简单,有些框架并非很高,根据实际情况合理选择

2.功能组件选型,理解业务难点,选择合适的功能组件,例如:短信通知,

3.数据库设计

一般使用PowerDesigner这个工具进行数据设计,

数据设计三范式,以及反范式设计,

其实主要是1对1,1对多,多对一,多对多,这几种关系.

正确理解业务的基础上,从上到下进行顺序思考 ,从下到上进行抽象归类.

只有先思考清楚了,才能设计出合理的数据库.一定要避免逻辑冲突

数据库是对逻辑承载.

4.技术评审,把上面你构想好的东西,讲给你的小伙伴听,大家集思广益,查漏补缺

5.项目进度指定,excel或者甘特图,划分好时间节点,先主后次.一步步推进.

6.迭代开发,一个大周期完成,可以进行测试了.自测之后,积极邀请其他人员进行测试,不要等项目全部做完再测试

7.单元测试->整体测试->小规模发布->正式上线,
个人简单的总结,学识浅薄,欢迎大家一起交流.
8.更加业务需求变化,进行代码迭代,

上一篇下一篇

猜你喜欢

热点阅读