一个好的软件应该是怎样的?
开发一个软件需要投入多少金钱成本、时间成本?具备什么技能的程序员来开发好,用户想要什么样的软件?
对于程序员:
- 代码可读性高,命名规范,可扩展性强,性能好
- 提供技术文档(说明运行环境、特殊配置等)
- 采用主流、流行、先进的技术开发
场景:
- 新入职开发 A :我们用的是哪个版本的 XX 语言? 开发 B : XX 版本
- 新入职开发 A : 咦?这个 XX 库/插件,我按官方文档配置的,以前都用过也是这样配置的,现在怎么不行了?开发 B :哦!那个库/插件有个 bug 之前我改了 XX 位置的代码,你要改下才可以。。。
开发 B 没离职的情况下还好,要不然开发 B 不知道要折腾多久, 哦!有人说程序员就要解决问题能力强,难道做了特殊配置不应该写下文档或注释说明一下?,保证程序员何苦为难程序员!
对于用户:
- UI 漂亮
- 用户体验好(交互酷炫、操作简单,即可以一个操作实现的功能不要用户操作两次)
场景:
用户 A:这网站/APP真丑,看上去好像好多年前开发的,应该没什么人用吧?(UI 过时,不漂亮)
用户 B:我就想买个 XX !没有账号注册要我填一堆东西,真麻烦 (用户体验不好,流程长)
用户 C:怎么我点了 XX ,然后没反应啊,是不是鼠标坏了?不会啊,QQ 都正常(出现操作错误没提示,程序故障没提示)
对于老板:
- 开发时间短
- 成本低
- 自定义功能性强
场景:
老板: 我们加个 XX 功能吧,我看现在其他平台都有这样的功能,下个星期可以做好吧?
开发: 这个要几天时间做不好啊,要2个星期左右
老板: 太慢了
开发: 我加班赶一下吧,但至少也要一个星期
1 评论 在 "一个好的软件应该是怎样的?"
重要的是产品设计阶段的深思熟虑,这是大多数公司缺少的