程序员在企业中是如何做需求的

简介: 需求从哪里来,到哪里去

在企业中,一个需求从产生到完成生命周期是什么样的。

它可以分为这样的步骤:

需求分析 -> 设计(原型、功能、接口设计) -> 技术选型 -> 搭建项目框架 -> 编码(实现业务逻辑) -> 测试(自测+提测) -> 代码评审(code review) -> 部署上线

需求是怎么产生的?

一般来说需求都是由业务人员收集业务痛点,将这个痛点转换成需求;还有些需求是产品经理拍脑袋产生的... 这是一个很大的话题,同时也会诞生各种各样的奇葩需求,和大量的就业岗位。

有个学妹自学了半年编程。今天找我说她打算找工作了,让我给讲讲公司里边做项目是什么流程、她好心里有个底。

在实际工作中,项目的根据大小还有背景不同、整个生命周期也会有一些差别。大体分为:计划、设计、开发、测试、维护等步骤,我们就以一个需求的生命周期来分析。

比如,有客户说,我们公司现在已经 3 个人了,需要一个用户管理系统来把这些人管理起来,你帮我安排一下。

拿到需求后,是要做一个用户相关的系统,我给他起个名字就叫《用户中心》管理系统。

需求

首先是分析需求,这个系统作为用户管理,其中肯定要有用户的登录、用户添加、用户删除、用户查询等。

设计

  1. 原型设计
  2. 功能设计
    a.用户管理,用户登录、添加用户、用户删除、基于用户的名称的查询

技术选型

  1. 看需求有没有技术难点
  2. 没有的话选择擅长和熟悉的技术栈

搭建项目

  1. 搭建项目的脚手架,也就是项目的公共模块
    a. 比如对接口返回值的统一校验封装
    b. 统一日志格式
    c. 项目的代码模块目录
    d. 还有一些常用的工具类等

编码

完成这一步就要开始编写代码。

测试

分为自测和提测,当然对于一些小公司划分的就没有这么细了,都是由于全干工程师一人搞定。

代码评审

也就是工友们一块审核代码规范,比如你的代码模块拆分,可以增强代码的可维护性。

部署上线

一般是项目开发中的最后一步,运维人员会将项目部署到用户可以访问的服务器,正式开始使用。

视频:

https://www.bilibili.com/video/BV17f421Q73r

原文地址:

https://javapub.net.cn/star/project/user-center/

目录
相关文章
|
1月前
|
设计模式 算法 程序员
程序员为何需要反复修改Bug?探寻代码编写中的挑战与现实
作为开发者,我们在日常开发过程中,往往会遇到反复修改bug的情况,而且不能一次性把代码写的完美无瑕,其实开发项目是一项复杂而富有挑战性的任务,即使经验丰富的程序员也难以在一次性编写完美无瑕地完成代码,我个人觉得一次性写好代码是不可能完成的事情。虽然在设计之初已经尽力思考全面,并在实际操作中力求精确,但程序员仍然需要花费大量时间和精力来调试和修复Bug。那么本文就来分享程序员需要反复修改Bug的原因,以及在开发中所面临的复杂性与挑战。
88 1
程序员为何需要反复修改Bug?探寻代码编写中的挑战与现实
|
2天前
|
应用服务中间件 nginx
经验大分享:nginxlocatio作用
经验大分享:nginxlocatio作用
|
1月前
|
存储 C语言
深入浅出 C 语言:学变量、掌控流程、玩指针,全方位掌握 C 编程技能
C 语言介绍 C 语言的特性 C 语言相对于其他语言的优势 C 程序的编译 C 中的 Hello World 程序
56 2
|
安全
关于面试在技术之外的事
在公司会为公司的人才梯队培养,人员更新,业务拓展等为公司招聘人才。所以经常会面试一些人,在面试过程中也总结一些面试官要考量面试者的能力的方面。现代社会是一个合作性社会,一件事情不可能由一个人独立完成。必须在团队合作的情况下才能很好的完成。所以在面试一个应聘者时比较能合理的能力不可能只有技术能力。技术能力只能说这个人是否可以解决技术问题,但其他问题的解决方法才是一个人是否能够为团队贡献的最基本能力。
58 0
相亲软件开发,关注应用启动优化的本质
相亲软件开发,关注应用启动优化的本质
|
架构师 测试技术 程序员
【号外】-一个高效程序员的45个习惯总结版-文末脑图
【号外】-一个高效程序员的45个习惯总结版-文末脑图
【号外】-一个高效程序员的45个习惯总结版-文末脑图
|
存储 设计模式 程序员
多数程序员难以简单的方式开发应用?
  心理学中有一篇相当古老、但又非常重要的论文,题为《魔法数字七(上下浮动二):人类信息处理能力中的一些限制》。这篇文章衡量了大脑处理信息的极限,并给出了一个具体的数字:人脑可以同时容纳五到九个概念。我们当然能够把这个有趣的结论延伸到诸多领域当中,但对软件开发人员而言,下面两项含义最为重要:
111 0
|
安全 云栖大会
「技术人生」第6篇:技术同学应该如何理解业务?
本文以大量理论论述解析业务,并提供多种基于不同场景的实操方法,帮助技术同学以科学、合理的方式开展日常工作、指导团队开展业务建设,保障顶层设计的落地执行。
1046 0
「技术人生」第6篇:技术同学应该如何理解业务?
|
自然语言处理 程序员
高级程序员解决问题的思维模式和普通程序员的区别在哪里?
先给你出一道题,看你会如何思考: 假设你是一个程序员,常年保持自学和超长工作时长的状态,承受着不为人知的压力和痛苦,面对同行程序员的攀比和压力,在公司title、年薪、房子之间深陷,35岁大限越来越近,头顶日愈清凉……
164 0
|
新零售 移动开发 人工智能
程序员写好技术文章的几点小技巧
去年成为了内网技术分享平台的年度作者,受邀写一篇关于“如何写好文章”的文章。我本身并不喜欢写字,去年写的几篇文章,涉及的话题自带流量,所以阅读量多了一些,谈不上有多擅长。不过还是决定分享一下自己在写文章时用到的一些小技巧,希望对大家有帮助。
程序员写好技术文章的几点小技巧