系统开发设计的问题和思考(持续更新记录...)

遇 到 问 题 就 记 录 下 来 , 下 次 开 发 注 意 \color{red}{遇到问题就记录下来,下次开发注意}

# 作为一个程序员要做到的几点:

1、需求研究透彻,想清楚,再动手写代码
2、看了需求要沟通!要沟通!要沟通!
3、文档要写!要写!要写!
4、写注释!写注释!写注释!
5、需求变化很平常!很平常!很平常!
6、业务高于技术!
7、感觉有BUG的地方,想清楚
8、测试自己先做几遍!
9、自己解决问题。解决不了的带着自己的看法去问大佬
10、用新技术要谨慎!

一、数据库

数据库的设计:

  • 考虑太糙,根本没有考虑后期的业务功能实现的时候需要哪些数据,数据格式,数据类型,数据大小,这些数据怎么查,从哪里查。合适的字符存储长度,不但节约数据库表空间、节约索引存储,更重要的是提升检索速度。
  • 表设计的,字段设计,字段的考虑不充分,不全面,写到某个功能点的时候,会发现字段不够用,不满足需求;或者是查询起来很麻烦
    • 这里说明了需求一定要研究透彻!!把所有的一切想好了怎么做,在开始做
  • 命名:
    • 数据库:就写项目的英文翻译
    • 临时表:tmp_xxx_yyy,xxx为功能点拼音或拼音首字母缩写,yyy为临时表名称。
    • 结果表:detail_xxx,xxx为功能点拼音或拼音首字母缩写。
  • 以后写数据库,要把每个功能点抽出来(tmp_xxx_yyy),综合性的数据展示(根据需求来),从这些小表里查取结果表

表必备三字段:id, create_time, update_time。 这是个规范。主要还是取决于业务。

二、开发设计流程及其占时

  • 1、问题的定义及规划 此阶段是软件开发与需求放共同讨论,主要确定软件的开发目标及其可行性——耗时大概占比10%

  • 2、需求分析在确定软件开发可行性的情况下,对软件需要实现的各个功能进行详细需求分析。需求分析阶段是一个很重要的阶段,这一阶段做的好,将为整个软件项目的开发打下良好的基础。“唯一不变的是变化本身”,同样软件需求也是在软件爱你开发过程中不断变化和深入的,因此,我们必须定制需求变更计划来应付这种变化,以保护整个项目的正常进行。 ——耗时大概占比15%

  • 3、软件设计此阶段中偶要根据需求分析的结果,对整个软件系统进行设计,如系统框架设计、数据库设计等。 软件设计一般分为总体设计和详细设计。还的软件设计将为软件程序编写打下良好的基础。 ——耗时大概占比30%

  • 4、程序编码此阶段是将软件设计的结果转化为计算机可运行的程序代码。在程序编码中必定要制定统一、符合标准的编写规范。以保证程序的可读性、易维护性。提高程序的运行效率。——耗时大概占比10%

  • 5、软件测试在软件设计完成之后要进行严密的测试,一发现软件在整个软件设计过程中存在的问题并加以纠正。整个测试阶段分为单元测试、组装测试、系统测试三个阶段进行。测试方法主要有白盒测试和黑盒测试。 ——耗时大概占比35%

以上就是软件开发过程的五个阶段,但是有的时候在软件开发过程中并不是必须按照这个过程进行的。 每个阶段都至关重要!

总的来说就是 开发->测试->上线->维护

关于测试补充:

系统内部集成测试(System Integration Testing) SIT

用户验收测试(User Acceptance Testing) UAT

      SIT(System Integration Testing)系统集成测试,也叫做集成测试,是软件测试的一个术语,在其中单独的软件模块被合并和作为一个组测试。它在单元测试以后和在系统测试之前。集成测试在已经被单元测试检验后进行作为它的输入模式,组织它们在更大的集合,和递送,作为它的输出,集成系统为系统测试做准备。集成测试的目的是校验功能、性能和可靠性要求,配置在主设计项目中。

      UAT(User Acceptance Testing)用户验收测试,通常是由最终软件的用户(通常这些用户不了解软件的具体逻辑,而对业务逻辑却相当熟悉)进行的测试,因此是面向最终用户的测试,结束之后通常就可以发布生产环境了。
区别与联系:

三、前端的设计

基于需求把页面写出来,个人觉的,如果需求设计到位,界面自然就出来了,只不过是样式的选择和框架的选择。性能也是考虑的一部分:如:过多的引入文件和代码量的控制,后期修改问题?需求变了怎么办?都要有应急方案。

四、每日总结

参加项目以来大大小小的会议参加了不少,都是确定项目的整体计划,需求的讨论分析,工作的安排,问题的解决方式,解决办法…
印象深刻的就是每日的站立会

  • 开始做的时候,把自己的负责的功能点细化!拿便利贴全部写下来,下面附有进度百分比(可以设计为10格(一格10%)或者5格(一格20%))
  • 昨天做了什么?遇到了什么问题?今天准备做什么? 拿便利贴记录
  • 放到三个不同的阶段位置:未开发,开发中,已完成。

这样做的好处:可以清楚的看到自己的开发进度,每天也都会有收获,而且对于项目的整体把控也非常有帮助。

# 做到了以上这些至少不会让自己的系统看起来那么恶心、垃圾

# 当然我记录的只是我自己目前碰到的

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值