精通Django 3 Web开发
上QQ阅读APP看书,第一时间看更新

2.1 需求分析

假设我们是一家软件开发公司,公司员工分别有需求工程师、网页设计师、前端工程师、后端工程师和测试工程师,现有一名客户想开发自家的购物平台,该客户拥有实体门店,专售母婴产品。大多数情况下,客户对网站平台的开发流程只有表面的认知,他们不会提出详细的需求,只会说出他们的目的,比如说“我只想有一个自家的购物平台,能让我的客户在线购买产品,好像淘宝那样就行了。”在实际开发中,我们肯定不能直接仿造淘宝交付给客户,毕竟客户有自己的实体门店,应结合门店现有的业务流程定制购物平台。

对于客户的精简需求,需求工程师需要深入了解客户的具体需求,比如了解客户现有的顾客量、产品类型、实体店的进销存管理方式等因素,这些都会影响网站设计模式,例如现有的顾客数量需要考虑网站的并发量、产品类型影响网站页面设计(如商品详细页的布局设计)、实体店的进销存管理方式影响商品库存管理,是否考虑缺货提醒、预售功能等。

需求工程师根据客户的实际情况,梳理并归纳以下需求要点:

(1)网站需要提供搜索功能,便于用户搜索商品。

(2)搜索结果需要根据销量、价格、上架时间和收藏数量进行排序。

(3)商品详情应有尺寸、原价、活动价、图片展示、收藏功能和购买功能。

(4)用户购买后应看到订单信息,订单信息包括支付金额、购买时间和订单状态。

(5)商品购买应支持在线支付,如支付宝或微信支付等功能。

(6)目前顾客数量约有3000人,实体店暂无进销存系统。

在需求分析阶段,需求工程师要不断地与客户反复交流,并将交流结果以Demo的方式展示给客户,直到客户确认无误为止。在此阶段,需求工程师需要使用简单的绘图软件完成Demo设计,比如Axure或Visio等软件。除此之外,需求工程师还要将收集的需求信息编写成需求规格说明书。