软件工程之美
宝玉
Groupon 资深工程师,微软最有价值专家
44272 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 55 讲
软件工程之美
15
15
1.0x
00:00/00:00
登录|注册

“一问一答”第4期 | 14个软件开发常见问题解决策略

DevOps
专职测试人员
项目负责人
软件质量
项目复盘
软件质量
软件测试
软件开发
产品设计
日志管理
故障处理
自动化
沟通协作
日志管理工具
线上故障处理
软件发布前的准备
安全问题
测试工具
自动化测试
过程质量
代码质量
功能质量
保障软件质量
思辨时刻
精选留言
项目结束后的复盘
DevOps
软件测试
软件开发常见问题解决策略

该思维导图由 AI 生成,仅供参考

你好,我是宝玉。恭喜你完成了软件测试和线上维护这两个模块的学习。
软件测试是保障软件质量的重要一环,但也不能过于依赖软件测试,毕竟软件质量体现在功能质量、代码质量和过程质量三个方面,而软件测试只能帮助保证功能质量,代码质量和过程质量还需要团队一起努力。
现在大厂已经很少有手工测试的岗位了,大部分测试工作已经转移到开发上,同时自动化测试的比例越来越高,但这相应的对开发的要求更高了,不仅要写功能代码,还要写自动化测试代码。
软件测试也离不开对工具的使用,通过 Bug 跟踪工具报 Bug 和跟踪 Bug,使用测试管理工具管理测试用例,基于自动化测试框架写自动化测试代码,借助性能测试工具对软件性能进行压力测试。测试工具还可以和持续集成一起整合,最大化发挥测试工具的效应。
软件测试做好了不代表你的软件就是安全的,不会导致账号密码泄漏,要想构建安全的软件,需要在整个软件生命周期中都重视安全问题,各个阶段考虑到安全方面的问题,防患于未然,构建出安全的软件。
当你的软件已经测试通过,准备上线发布了,不要忘记在软件发布前做好版本规划,尽可能的让软件的功能质量,满足好用户的预期。一方面要尽可能提供应有的功能和保证质量,另一方面也可以通过合理的发布策略来降低用户的预期。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

本文深入探讨了软件开发中的关键问题解决策略,包括软件测试、线上维护、安全性、版本规划、DevOps、故障处理等多个方面。强调了团队共同努力保证软件质量,不过分依赖软件测试,并介绍了Bug跟踪工具、测试管理工具、自动化测试框架等工具的重要性。此外,还强调了安全问题和版本规划在软件生命周期中的重要性,以及DevOps的作用和线上故障处理的方法。最后,强调了对故障进行复盘,总结成功经验,吸取失败教训的重要性。整体而言,本文内容涵盖了软件开发中的多个关键环节,对于软件开发人员具有一定的指导意义。 读者留言部分也提到了一些关键问题,如测试策略、质量保障责任、专职测试人员需求等。这些问题涉及到团队规模、业务复杂性等方面,对于软件开发团队具有一定的参考意义。 总的来说,本文内容丰富,为软件开发人员提供了全面的技术指导和实践建议,尤其在质量保障、自动化测试、团队协作等方面具有重要参考价值。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《软件工程之美》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(6)

  • 最新
  • 精选
  • 易林林
    看到宝玉老师精心准备的每一期专栏,每一次认真而有效的回复,每一次“一问一答”的共享加餐,我都感觉无形中有了明显的进步,也对软件工程的深入理解充满了期待和信心,感谢宝玉老师。

    作者回复: 谢谢你的支持,也感谢你每一期精彩的留言分享🙏

    2019-06-01
    5
  • yellowcloud
    从宝玉老师开设专栏,一直跟随着宝玉老师的脚步,使我对软件工程有了初步的了解,目前已经开始按照您的文章进行逐步实践,希望能够早日搭建一整套自动化的运维实施工具来解决项目的实际问题。

    作者回复: 🤝能学以致用是最有收获的! 如果有具体问题也欢迎留言分享。

    2019-06-03
    3
  • yu
    很开心留言也被精选了,感谢老师带来更广大的软件工程视野。

    作者回复: ㊗️祝学有所成!

    2019-06-02
    2
  • freda
    宝玉老师,公司研发发布程序给生产的工作流我觉得不合理,但是我自己给不出更好的建议,希望得到你的指点,具体流程是:生产提出程序需求(生产烧录员)→研发工程师系统走程序发布审批流程(此节点有时在程序需求之前)→根据计划发布程序(发布专员发布程序给烧录员,)→告知已发布(发布专员告知烧录员程序已发布,请及时下载,不然过期了就不能下载)→下载并烧录程序(烧录员根据告知信息下载并烧录程序)。我觉得告知发布这个工作没有必要,但是其他人说是之前出过问题,所有人才加这一步的,你怎么看,有 好的发布工作流推荐吗?

    作者回复: 很多流程,存在是有一定合理性的,未必一定要改,就像你说的,改了可能会出问题。 我觉得你可以考虑换一个角度去看:这些流程是不是可以自动化?有没有办法可以通过自动化提升效率? 改变一个流程阻力是很大的,但是自动化就容易很多,而且效果也通常好很多。

    2020-05-12
    2
    1
  • Joey
    请教宝玉老师,上下游系统共用同一张数据表的若干字段,当上游字段取值发生变化时,往往会遗忘告诉下游系统,这种情况是否有好的管理实践?业界是否有成熟的配套工具。

    作者回复: 我的经验是这样的: 首先考虑上下游之间要抽象接口,数据可以变接口不要轻易变化,如果变化,版本变更。 比如说你有一个API,URL是:"/api/v1/user",返回用户信息,那么就要定义一个用户信息的返回结果,这个和数据库字段不一定是一一对应的,就算你数据库字段变了,这个也不会修改。如果万一数据修改了,那么需要重新定义数据结构,同时修改版本号,路径变成了"/api/v2/user",以前那个v1的接口还能用一段时间,但是可以在下游客户端升级后废除。 然后你要有测试和报警。下游针对上有提供的数据和接口在测试环境和生产环境要有测试,比如每5分钟(频率取决于业务重要性)运行一次,如果发现问题就应该触发报警,比如发送Email或者其他。

    2020-05-25
  • ifelse
    学习了
    2022-07-08
收起评论
显示
设置
留言
6
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部