百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

产品架构设计之产品实体设计一,二

cac55 2024-09-20 12:55 18 浏览 0 评论

本文深入探讨了实体设计的每个关键步骤,从识别核心实体到定义其属性、构建实体间关系,以及如何验证设计以适应实际业务需求。通过具体的电商平台案例,我们展示了如何将抽象的业务概念转化为具体的产品架构,确保设计既符合当前需求又具备未来扩展的可能。

今天我们来谈一下产品架构设计中,一个必不可少的环节——实体设计。

01什么是实体?

在产品架构中,实体可以理解为“名词”——即产品中的关键要素或对象。这些实体是产品功能的基本构件,代表了实际业务中的具体事物或概念。

比如,在一个电商平台中,用户、商品、订单都是典型的实体。它们是产品中不可或缺的部分,是我们要处理和操作的对象。

那我们为什么要抽象设计实体?

抽象设计实体的目的是为了把复杂的业务场景和需求转化为易于理解和实现的模型。实体是产品中最基本的组成单元,通过抽象设计实体,我们能够:

  • 明确产品的核心功能:将实际业务中的复杂对象抽象为实体,可以清晰地看到产品的核心功能和组成部分。
  • 简化系统设计:实体的抽象设计能够帮助我们将复杂的逻辑拆解成可管理的部分,使系统设计更加简洁、易于维护。
  • 提高可扩展性:通过合理的实体设计,可以使产品架构具有良好的扩展性,方便未来的功能扩展和更新。

而如果用大白话来解释就是:我们将一个模糊的业务,提炼出真正要“落库”的数据表,毕竟计算机只能处理结构化的数据!

那可能有朋友要问了在产品架构中为什么要先设计实体?

实体设计是产品架构设计的基础。实体设计决定了产品的基本结构和逻辑,是后续流程设计、数据模型设计、界面设计等工作的基础。

如果没有一个清晰的实体设计,整个产品架构将会缺乏坚实的基础,导致功能实现的复杂度增加,系统难以扩展和维护。

试想下如果大家连页面上放什么字段都没有想清楚,一上来就画页面,这样的产品在大型的企业级B端产品中是不敢想象的灾难设计。

所以说在产品架构设计中,实体设计是将业务需求转化为技术实现的桥梁。一个优秀的实体设计不仅能够支撑产品的现有功能,还能为未来的扩展奠定坚实的基础。

02 实体设计的方法

具体来说,我们设计实体的方法可以分为下面的4步:

1. 识别关键实体

在产品架构设计初期,首先要识别出产品中的关键实体。在绝大多数的时候,这些实体通常对应于产品中的核心功能或流程,代表了业务中的主要对象(比如会员,订单,商品等)。

步骤:

  1. 分析线下用户的工作场景,提取出与用户交互最频繁的关键词对象。
  2. 从业务流程中找出对产品功能至关重要的元素。

例如:梳理用户报销场景:用户提供票据,填写金额,提交纸质表单,领导签字该表单,财务查阅该表单……..(这张表单就是我们要提炼的实体-报销单)

2. 定义实体属性

因为每个实体都有其独特的属性,而在找到实体后就需要提炼实体的属性,这些属性描述了实体的特征和状态。

步骤:

  1. 列出每个实体能唯一区分的属性,如ID、名称、描述等。
  2. 根据业务需求,增加与业务逻辑相关的属性。

例如:报销单中唯一能区分的属性是单据号,单据类型,而根据A公司要求,单据中必须要有申请人ID,申请人职位,申请人职级……(这些唯一项与A公司的要求共同构成了实体属性字段)

3. 设计实体之间的关系

实体之间的关系是产品逻辑的核心。通过设计实体间的关系,可以确定系统的逻辑结构和数据流动。

步骤:

  1. 确定实体之间的关联类型,如一对一、一对多、多对多等。
  2. 使用实体关系图(ER图)来展示实体之间的关系。

4. 验证实体设计

设计完成后,需要对实体设计进行验证,以确保其能够满足业务需求,并具备良好的扩展性和可维护性。

步骤:

  1. 使用实际业务场景进行测试,验证设计的合理性。
  2. 通过模拟操作流程,检查设计的健壮性和容错性。

例如我们将抽象出的报销单据实体,在整个线下流程中进行实测,检测有无缺少的字段,有无流程跑不通的情况,就像财务是不是拿到这张单据就可以不要领导签字,在实际与财务沟通后由于公司性质要求,所以必须要签字,因此报销单的实体中还需要增加标识属性,是否已打印出待签字单,用于区分是否完成了打印动作。

03 模拟案例演示:电商平台的实体设计

假设我们正在设计一个电商平台,该平台的核心功能是让用户能够浏览商品、加入购物车、下单购买商品,以及查看订单状态。为了实现这些功能,我们需要先设计好平台中的核心实体。以下是具体步骤及结果输出,展示如何一步步提炼出实体。

步骤一:识别关键实体

在设计实体之前,我们需要了解平台的主要功能和业务流程:

  1. 用户浏览商品: 用户可以浏览和搜索平台上的商品。
  2. 加入购物车: 用户可以将商品加入购物车,准备购买。
  3. 生成订单并支付: 用户在购物车中选择商品后,可以生成订单并完成支付。
  4. 查看订单状态: 用户可以在订单历史中查看已购买商品的状态和详情。

基于这些功能需求,我们识别出以下关键实体:

  • 用户(User): 平台的使用者。
  • 商品(Product): 在平台上出售的商品。
  • 购物车(Cart): 用户选择并准备购买的商品集合。
  • 订单(Order): 用户生成的购买记录。

步骤二:定义实体属性

确定了关键实体后,我们需要为每个实体定义属性,这些属性将帮助我们详细描述实体的特征和状态。

1)用户(User):

  • 用户ID(userID): 唯一标识一个用户的ID。
  • 用户名(username): 用户的名称。
  • 邮箱(email): 用户的邮箱地址,用于登录和联系。
  • 密码(password): 用户的账户密码。
  • 注册日期(registrationDate): 用户注册平台的日期。

2)商品(Product):

  • 商品ID(productID): 唯一标识一个商品的ID。
  • 商品名称(productName): 商品的名称。
  • 描述(description): 商品的详细信息。
  • 价格(price): 商品的售价。
  • 库存数量(stockQuantity): 当前商品的库存数量。
  • 创建日期(createdDate): 商品上架的日期。

3)购物车(Cart):

  • 购物车ID(cartID): 唯一标识一个购物车的ID。
  • 用户ID(userID): 关联到用户的购物车。
  • 商品列表(products): 当前购物车中所有商品的集合。

4)订单(Order):

  • 订单ID(orderID): 唯一标识一个订单的ID。
  • 用户ID(userID): 生成订单的用户ID。
  • 订单日期(orderDate): 订单生成的日期。
  • 订单状态(orderStatus): 订单的当前状态(如待付款、已付款、已发货、已完成)。
  • 商品列表(products): 订单中包含的商品列表。
  • 总金额(totalAmount): 订单中所有商品的总金额。

步骤三:设计实体之间的关系

在定义了实体和它们的属性之后,接下来是设计实体之间的关系。这些关系将决定平台的逻辑结构。

  • 用户与购物车(User-Cart):一个用户只有一个购物车(1:1 关系)。
  • 用户与订单(User-Order):一个用户可以有多个订单(1:多 关系)。
  • 购物车与商品(Cart-Product):一个购物车可以包含多个商品,一个商品可以出现在多个购物车中(多:多 关系)。
  • 订单与商品(Order-Product):一个订单可以包含多个商品,一个商品可以出现在多个订单中(多:多 关系)。

步骤四:验证实体设计

最后,我们通过模拟一些实际场景来验证实体设计的合理性和完整性。

1)用户浏览并加入商品到购物车:

  • 用户登录(User),浏览商品(Product),将商品加入购物车(Cart)。
  • 检查购物车中是否正确记录了所选商品。

2)用户生成订单并支付:

  • 用户从购物车中选择商品生成订单(Order),并进行支付。
  • 验证订单中包含的商品列表和总金额是否正确计算。
  • 检查订单状态是否从“待付款”变为“已付款”。

3)用户查看订单状态:

用户可以在订单历史中查看已生成的订单及其状态(OrderStatus)。

以上为大家演示的就是一个完整的实体找寻与定义的流程。

04 总结

可以看到这样的设计背后,我们一步步的把抽象的业务具体化得到了标准的可产品化的设计,而这也是高阶产品所必备的技能。

本文由人人都是产品经理作者【三爷茶馆】,微信公众号:【三爷茶馆】,原创/授权 发布于人人都是产品经理,未经许可,禁止转载。

题图来自Unsplash,基于 CC0 协议。

相关推荐

无力吐槽的自动续费(你被自动续费困扰过吗?)

今天因为工作需要,需要在百度文库上下载一篇文章。没办法,确实需要也有必要,只能老老实实的按要求买了个VIP。过去在百度文库上有过类似经历,当时为了写论文买了一个月的VIP,后面也没有太注意,直到第二个...

百度文库推出“文源计划”创作者可一键认领文档

11月7日,百度文库发布了旨在保护创作者权益的“文源计划”。所谓“文源计划”,即为每一篇文档找到源头,让创作者享受更多的权益。据百度文库总经理李小婉介绍,文源计划分为三部分,分别是版权认证、版权扶持和...

有开放大学学号的同学,百度文库高校版可以用了。

还在网上找百度文库的下载方式,只要从身边的朋友在读开放大学的,那他(她)的学号就可以登陆到国家开放大学图书馆,还使用百度文库高校版来下载。与百度文库稍有不同,但足够使用了。现转国图链接如下:htt...

搜索资源方法推荐(搜索资源的方法)

今天msgbox就要教大家如何又快又准的搜到各类资源,第一点,排除干扰百度搜索出来啊经常前排展示它的产品以及百度文库,如何去除呢?很简单,后面输入空格减号百度文库,比如你搜高等数学百度文库很多,只要后...

一行代码搞定百度文库VIP功能(2021百度文库vip账号密码共享)

百度文库作为大家常用查资料找文档的平台,大多数文档我们都可以直接在百度文库找到,然而百度文库也有让人头痛的时候。好不容易找到一篇合适的文档,当你准备复制的时候他却提示你需要开通VIP才能复制~~~下载...

百度文库文档批量上传工具用户说明书

百度文库文档批量上传工具用户说明书1、软件主要功能1、批量上传文档到百度文库,支持上传到收费、VIP专享、优享以及共享。2、支持自动分类和自动获取标签3、支持多用户切换,一个账户传满可以切换到...

百度文库现在都看不到文档是否上传成功,要凉了吗?

打开知识店铺,百度文库文档里显示都是下载这一按键,上传的文档也看不到是否成功?咋情况,要取消了吗?没通过审核的也不让你删除,是几个意思,想通吃吗?现在百度上传文档也很费劲,有时弄了半天的资料上传审核过...

微信推广引流108式:利用百度文库长期分享软文引流

百度文库相对于百度知道、百度百科来说,操作上没那么多条条框框,规则上也相对好把握些。做一条百度知道所花费的精力一般都会比做一条百度文库的要多些,老马个人操作下来觉得百度文库更好把握。但见仁见智吧,今天...

职场“避雷”指南 百度文库推出标准化劳动合同范本

轰轰烈烈的毕业季结束了,众多应届生在经过了“职场海选”后,已正式成为职场生力军的一员。这一阶段,除了熟悉业务,签订劳动合同、了解职场福利也迅速被提上日程。而随着国人法律意识的增强,百度文库内《劳动合同...

《百度文库》:素材精选宝库(百度文库官网首页)

《百度文库》:独特功能助力选择高质量素材在当今信息爆炸的时代,如何高效地获取并利用有价值的素材成为了许多人面临的挑战。而《百度文库》作为百度公司推出的一款在线文档分享平台,凭借其丰富的资源、强大的功能...

深度整合和开放AI能力 百度文库和网盘推出内容操作系统「沧舟OS」

【TechWeb】4月25日消息,Create2025百度AI开发者大会上,百度文库和百度网盘推出全球首个内容操作系统——沧舟OS。基于沧舟OS,百度文库APP全新上线「GenFlow超能搭子」...

女子发现大二作业被百度文库要求付费下载,律师:平台侵权,应赔偿

近日,28岁的黎女士在百度百科搜索家乡的小地名时,发现了自己在大二完成的课题作业。她继续搜索,发现多个平台收录了该文,比如豆丁网和文档之家等,有的还设置了付费或积分下载。2月15日,九派新闻记者以用户...

2016杀入百度文库的新捷径,只有少数人才知道的喔

百度的产品在SEO优化中的分量真不用多说,其实很多人都像我一样一直在找捷径。但是我经常发现很多人都是在用死方法。比如发贴吧发帖而不知道去申请一个吧主,知道自问自答而不知道去申请一个合作资格。口碑和贴吧...

百度文库付费文档搜索方法(百度文库付费文档搜索方法有哪些)

一直以来,百度文库中无论是个人中心还是个人主页,都没有像淘宝一样的店内搜索功能,连最近新开的知识店铺也没有设计店内搜索功能,这无论是对上传用户还是下载用户都不方便,上传用户想要搜索自己的文档无法办到...

供读者免费使用!泰达图书馆机构版百度文库新年上新啦

在泰达图书馆读者使用百度文库数字资源不需要VIP,免-费-用!惊不惊喜?快来了解一下吧……新年伊始,为满足区域企业、高校、科研院所以及居民群众在教学、科研及学习过程中,对各类文献资源的需求,泰达图书馆...

取消回复欢迎 发表评论: