参考了许多的文档,我继续学习了一些需求分析说明书的要点,并且考虑了再用思维导图整理我们的需求,
而且我们和前后端进行了更多的沟通,并且完善了一些需求规格说明书的细节部分。
同时我也参考学习了一点网上的思维导图。
也重新学习了一下设计数据库
1、对导图的每个模块中进行实体提取
怎么进行实体提取,实体直观的就是名字,不直观的就是要推断,就是我前面说到的抽象转实体。从上面的导图中,可以看到,直观的实体有知识库问答、用户、问答类别、以及未知问答等,要推断的实体接着往下看。
2、找出实体间的关联关系
在结构化数据库中,实体间的关联主要有1对1,1对多,多对多三种关系,关系的良好设计能减少数据库的冗余性。因为涉及到公司的数据,我不会把所有的关系都写下来。对以上三个关系,我每个举一个例子。1对1就不说了,1对多如分类对问答,一个问答只能对应一个分类,而一个分类能对应多个问答,这就是1对多,所以问答表中必有一个字段是外键,并且关联分类表中的主键。多对多的例子就是,一个问答能关联多个问答,而这个问答也能被多个问答关联,这就是多对多的关系,在数据库设计中,两个多对多的实体一般要对应三张表,第三张表中有两个外键分别对应两个实体表的主键。
3、推断实体表
在推出关联后,就可以推断实体表了,找出一些联系,或者一些事实,并用新的实体表来描述,这就是抽象转实体。
4、给实体表添加字段
字段就是表的属性,对应表的列。找属性和找实体差不多,属性就是实体的特征,如用户的属性,可以有性别,年龄,密码等等。字段在开发过程中是可以继续添加的,记住,一旦确定了表间的关系后,尽量不要修改,不然会陷入很难受的地步。