童话说说技术创业美文职业
投稿投诉
职业母婴
职场个人
历史治疗
笔记技能
美文纠纷
幽默家庭
范文作文
乐趣解密
创业案例
社会工作
新闻家居
心理安全
技术八卦
仲裁思考
生活时事
运势奇闻
说说企业
魅力社交
安好健康
传统笑话
童话初中
男女饮食
周易阅读
爱好两性

建模知识在实际设计中的应用(下)

11月11日 虎狼旗投稿
  本篇主要唠唠建模知识在日常工作、实际设计中的应用。
  以下为上篇总结,补充在此;
  角色矩阵、系统主流程以及状态图,三者之间相互补充与制衡,最终达到完美的统一;
  状态图梳理后调整补充系统主流程,系统主流程调整后调整补充角色矩阵;
  同样,角色矩阵也限制、指导着系统的主要功能,防止在梳理需求时被无限放大;
  相关阅读:
  建模知识在需求分析、梳理中的应用(中)
  数据库建模知识:在需求获取与分析中的应用(上)
  一、原型线框图
  在角色矩阵、系统主流程和状态图达到统一后,接下来就来到原型设计的阶段,此阶段的主要目的是把每个实体的属性以及实体之间的联系,以我们日常可见、理解的方式呈现;
  1。1模块划分
  基础模块的划分遵循实体的界限,一般来说,一个实体就是一个基础模块,通常模块首页以列表形式展示;如普通的电商后台系统,即用户、商品、订单这些基础模块,这些其实也是实体;
  统计,关联类,根据实际需求定义模块,通常以图表、列表形式展示;
  1。2站点地图
  系统涉及到的页面以及页面之间的流转以地图索引的方式展示;一般以模块划分,如系统功能较简单,可以系统为单位。
  1。3页面信息架构
  即页面呈现的信息,从建模角度来看,其实就是实体属性以及实体之间联系的展示;
  实体属性,即实体的基本属性,比如员工有员工号、姓名、身份证号、职位、性别、邮箱等基本属性;实体之间的联系,即该实体与其他实体之前的联系,如我们在上篇中写到的部门人员的关系;
  1:1,当实体之间为1:1的联系时,当前实体的页面展示可以将对面实体以其属性的形式展示;如某公司业务支撑部,经理张三,在员工基本信息页,职位:部门经理,部门:业务支撑部;在部门基本信息查看时,部门:业务支撑部,部门经理:张三;
  1:N,当实体之间为1:N的联系时,为“1”的实体页面信息展示时,可以将对面的“N”以下级页面或列表的形式展示;为“N”的实体页面信息展示时,可以将对面的“1”以其属性的形式展示;如业务支撑部下属员工有2个,分别是小丽、小黄,查看业务部信息时,可以设置“下属员工”链接到下级页面,也可以以列表的形式展示这2个员工信息。同理,在员工基本信息页面时,可以将该员工的所在所属部门以其基本属性展示;
  N:N,当实体之间为N:N的联系时,对面实体以下级页面或列表的形式展示;如学生课程,在学生模块,可以将所选课程以下级页面的形式展示,也可以以列表的形式展示;同理在课程模块,该课程被哪些学生选修,可以以下级页面展示,也可以以列表的形式展示;
  二、设计原则
  2。1始终把“用户需求”放在第一位
  用户:即该系统的最终用户,可遵循我们在上两篇中讲到的角色实体;
  需求:即功能,用户通过系统想要达到的目的;
  用户需求:即考虑该功能的实际应用场景,根据实际场景把控设计的方向;
  实际场景应考虑的因素如下,持续补充:
  用户年龄大小,这直接影响到视觉上的配色、字体、字号等;
  用户整体素质水平,在流程跳转、提示等节点尽量简洁易懂;
  用户所处环境,用户是处在比较庄严的机关单位还是新潮的互联网行业,都有一套行业规则;
  功能使用周期、频率;这直接影响到表结构的设计,在大频率的功能上,访问速度是需要着重考虑的问题;
  2。2遵循“高内聚,低耦合”的设计原则
  这应该是我从大学,老师就一直强调的,就像一项指明灯指引我们前进;你会发现,所有不好用的设计逻辑,都会忽略这个原则。
  官方解释:
  高内聚:又称块内联系。指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。若一个模块内各元素(语名之间、程序段之间)联系的越紧密,则它的内聚性就越高。
  低耦合:一个完整的系统,模块与模块之间,尽可能的使其独立存在。也就是说,让每个模块,尽可能的独立完成某个特定的子功能。模块与模块之间的接口,尽量的少而简单。
  官方给出的解释中,主要是针对模块之间,实际上,这个结论对大至平台,小至实体都是适应;
  下面举个关于实体之间的栗子:我之前接过的一个项目,其中有一条这样的逻辑“一个经销商下最多3个联系人”;这时我们会疑问,为啥会有这种设定,这样的规则在后续会产生哪些问题呢:
  当经销商下联系人超过3个时,系统是不支持的;
  系统是由简到繁的过程,一开始设定这样的限制,如果后面想在撤销这种设定的话会涉及很多改动;
  实体之间不够独立且依赖太多,所以这不遵循高内聚低耦合的原则;其实这就是简单的1:N的关系,只是在某些特定方式下,如导入经销商及其联系人的时候,这时我们可以设定这个联系人最多是3个,但是,在系统的使用中,这种关系反而是一种负担;
  2。3遵循“复用性”原则,所有设计力求复用最优化
  官方解释:
  可复用性,复用又叫重用,是重复使用的意思。复用的好处可以得到较高的生产效率以及随之而来的成本降低、较高的软件质量(错误可以更快的被纠正)以及恰当的使用复用可以改善系统的可维护性。
  模块之间的复用,即实体的复用,当实体之间是N:N的关系时,一定会存在这样的复用关系;如果不存在,那这个设计可能没有达到复用最优化的标准;
  如我们常见的组件与商品的关系,是N:N,在商品新建时会以属性的方式增加组件;
  这样做的好处是:
  组件不需要重复新建,直接在商品新增时引用加入即可;
  可对组件进行管理、控制;
  如果我们换一种设计思维,如新建商品时,一个个编辑填写组件信息,这样做会带来
  如不同商品的组件信息相同时,要重复录入;
  组件是以属性的方式附属在商品上,达不到组件可控可管的需求;
  阶梯性关联关系的设计,即多个实体之间有阶梯性关联关系,建议采用断层式数据结构设计,不建议跨级发生联系,即使需要跨级也要把中间那层关系加上;
  为了便于理解,以下实例奉上。
  背景:项目经销商是N:N的关系,经销商联系人是1:N的关系;
  需求1:当项目新增成功后,会根据一定条件匹配经销商,确认此项目可能推送的经销商,或者叫预推送;此时的预推送表结构的设计应该是项目经销商,而不是项目联系人或项目经销商联系人;这样设计的好处有,
  我们只固定了前半边的关系,后面的关系可以通过经销商来匹配带出,当经销商人员发生变更时也不会有任何影响;如果采用其他方式,在经销商人员变更时会多出很多复杂的数据操作,以保证此功能不受影响;
  经销商联系人是1:N的关系,插入一条项目经销商关系就要插入多条项目联系人或项目经销商联系人的关系,从数据的冗余角度考虑,也是项目经销商的关系比较适合;
  需求2:项目推送,项目预推送匹配成功后,可以对项目进行推送,这是真正的推送,有了这条推送,联系人才能在前端看到对应的项目;而此时的设计应该是如何呢
  答案是,项目经销商联系人;为什么会加入“经销商”呢?前面的背景也说到,项目与联系人其实是没有这种关系的,他们产生关系的载体其实就是“经销商”;这样做的好处是
  明确该联系人时通过什么载体(即经销商)来获得这从推送关系的,当联系人与载体的关系发生变更时,有个依据来对关联数据进行相关操作;如联系人从载体A变更到B,那此时,联系人当时通过A获得的项目推送关系就应该删除;
  相反的,如果不加入“经销商”的载体,那联系人可见的项目是只增不减,因为我们没有这个载体的依据去操作数据;
  注:一切实际需求为标准,仅供参考;
  三、日常设计要点
  3。1保持对需求的严谨态度
  虽然需求多如牛毛,产品累成狗(微笑),但我们也要始终保持一颗严谨、谦逊的态度;做软件的都知道,即使是一个很小的需求,他的改动有时也不一定比一个大的需求少;所以,在需求被提出时,我们要保证我们已经了解到该需求的所有细节,以及涉及到的所有改动点;
  3。2尽量囊括所有扩展场景
  好的产品,流程极简且不容易发生异常;为什么说不容易呢,因为即使是神,也有考虑不周的地方,所以在设计时,应尽量囊括所有场景。
  (1)外部条件导致的异常如断网、服务挂掉等,应给出合适的提示信息;
  (2)另外还有一种,即在常规流程外的分支流程,这个是特别需要我们注意且控制的。
  重复提交:提交按钮没有控制可用状态页面流程较慢的情况下会出现多次重复提交的现象,一般前端后台,双重控制,杜绝重读提交;
  流程异常,无法继续走下去:充分考虑扩展场景,避免出现操作异常,即使异常,也应给出相关提示,指导用户继续走下去。
  3。3模块关联性,版本规划
  模块、需求,都有可能产生关联,有前后的这种关系,这种情况应该考虑先规划前置位的模块或功能,然后再是后置位;版本的规划,以系统核心模块为基础,遵从“关联性模块中的前置模块,优先级高于后置模块”的规则,来规划版本;
  3。4其他
  (1)唯一性校验,当实体有唯一性要求时,如用户的手机号码,身份证号等,在实体新增、修改时,校验是否已存在、保证唯一性;
  (2)关联性关系,当删除父节点时,子节点也会对应删除或软删除;
  (3)在对实体进行变更时,应首先以用户的角色看问题;如已经发出去的优惠券,此时应设置不可再进行变更,因为发生变更后,用户看到的将是更改后的优惠券;
  相关阅读
  数据库建模知识:在需求获取与分析中的应用(上)
  建模知识在需求分析、梳理中的应用(中)
投诉 评论

两千字,谈谈我所理解的“场景”在作者看来,一切没有从用户或者其需求出发而产生的场景就是假的场景。现在做产品经理,如果不能在各种场合熟练运用“场景”二字,可以说是很落(diu)伍(ren)。当大家在讨论……为什么你的用户总是不满意?这特么是什么玩意儿?和我说的根本不一样!这算完成了么?”为什么在产品开发的过程中总是容易出现定义和交付分歧呢?特别是甲方的产品,经常听到需求方说这个不对那个不是,作为产品经理又……需求收集:解决需求从哪里来的问题需求收集是需求管理的第一步,有需求了才能进行需求分析,因此做好需求收集至关重要。很多时候可能我们所面对的都是需求做不完的情况,但在产品或者功能研发初期,总是会愁苦去哪里收……敏捷产品开发:过程vs模型?PM不应该只是照搬硬套你必须把精力集中在那些你必须要做的事情上,不要只盯着模型。统计界有句老话:所有模型都是错误的,但有些是有用的。一直以来,这句话都引起了我的共鸣。虽然概念模型从……这些都不知道,产品还怎么国际化?如题。这些都不知道,还谈啥国际化?1。翻译产品要国际化,首当其冲就面临一个问题语言问题。所以必须要翻译。翻译就翻译呗,有啥要注意的?总结起来,有这么两点……研究了42份招聘要求后,我发现这样的产品经理最受欢迎本文一方面是为了让理想落地,继续我自己的产品经理修炼之路;另一方面是为了给那些有想法,但是正处于迷惘期的“产品经理”提供参考。enjoy大概在一个月前,我确定了我的职业目……建模知识在实际设计中的应用(下)本篇主要唠唠建模知识在日常工作、实际设计中的应用。以下为上篇总结,补充在此;角色矩阵、系统主流程以及状态图,三者之间相互补充与制衡,最终达到完美的统一;状态图……你和高级产品经理之间,差的不只是经验所谓经验,就是从多次实践中得到的知识或技能。因此,想要获得经验并不难,只需要付出一定的时间便可。然而,职场进阶并不取决于工作经验、不取决于时间,而取决于深度思考的能力,以及获取……女产品经理成长图鉴译者说明:文章原标题是WhyWomenMakeTheBestProductManagers,原作者自己都觉得这个标题比较激进,最近正好追完《东京女子图鉴》思考良多,就借用这个标……复盘我的半年产品工作管理篇这篇文章并不是什么高深的产品技巧,更多的是个人在产品工作中的习惯心得。俗话说得好,细节决定成败。GLuck!上周,部门的直属领导让我签署了转正申请表,这也……什么因素造就了“社交”的关系这是人人都是产品经理问答板块天天问的一个问题(点击查看),感触挺深,写了篇文章聊聊,也是对自己的一次总结,毕竟研究社交挺久了。问题如下:王者荣耀有一个很有意思的现象……四个关键点,让你合理地处理需求作为一个产品经理,我每天需要处理大量来自监管部门、公司老板、运营、客户等等各方面的需求,并将这些需求整理分发给UI、前端、后端等等各个方面。但是需求是无尽的,工作量是一定的。如……
写好公关稿的3大写作技巧这届高校土味招生文案,666618,京东又出沙雕广告!618,淘宝出了一波文案金句杜蕾斯,你还会回来么?年中文案大赏:Top20来了!如何通过设计实验,提升文案说服力?转化率高的品牌文案,都有这些特征!父亲节文案,句句戳心!微信发布2019主题片,文案出彩!盘点:父亲节品牌借势文案这组酒文案,都是男生恋爱中的小心思我是一棵树浅谈中西方文化的差异我国首套小功率霍尔电推进系统完成在轨测试,适用于小卫星朱自清散文的艺术特点微笑面对作文650字别混日子,时间不等人2019巴西美洲杯小组赛情况汇总(包括第9名至第12名的最终婚前协议公证费用广东男篮新队长诞生!不是易建联,朱芳雨用心显露客厅装修应注意哪些问题必知客厅装修注意事项要进一步造句用要进一步造句大全扼杀你的自信的六个心理健康习惯

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找作文动态热点娱乐育儿情感教程科技体育养生教案探索美文旅游财经日志励志范文论文时尚保健游戏护肤业界