完成部分作业6

This commit is contained in:
Jingfan Ke 2024-06-10 15:34:28 +08:00
parent e0c6827b2e
commit 9a3e168dde
3 changed files with 250 additions and 0 deletions

View File

@ -0,0 +1,10 @@
<mxfile host="Electron" modified="2024-06-10T07:08:54.184Z" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/24.5.1 Chrome/124.0.6367.207 Electron/30.0.6 Safari/537.36" etag="dDr3XcwcGg8ZhTclB788" version="24.5.1" type="device">
<diagram name="第 1 页" id="3B1iCcji8M7D98_Schui">
<mxGraphModel dx="1434" dy="836" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="0" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
</root>
</mxGraphModel>
</diagram>
</mxfile>

View File

@ -0,0 +1,206 @@
<h1><center>课程作业</center></h1>
<div style="text-align: center;">
<div><span style="display: inline-block; width: 65px; text-align: center;">课程名称</span><span style="display: inline-block; width: 25px;">:</span><span style="display: inline-block; width: 210px; font-weight: bold; text-align: left;">数据库系统原理</span></div>
<div><span style="display: inline-block; width: 65px; text-align: center;">作业次数</span><span style="display: inline-block; width: 25px;">:</span><span style="display: inline-block; width: 210px; font-weight: bold; text-align: left;">作业#6</span></div>
<div><span style="display: inline-block; width: 65px; text-align: center;">学号</span><span style="display: inline-block; width: 25px;">:</span><span style="display: inline-block; width: 210px; font-weight: bold; text-align: left;">21281280</span></div>
<div><span style="display: inline-block; width: 65px; text-align: center;">姓名</span><span style="display: inline-block; width: 25px;">:</span><span style="display: inline-block; width: 210px; font-weight: bold; text-align: left;">柯劲帆</span></div>
<div><span style="display: inline-block; width: 65px; text-align: center;">班级</span><span style="display: inline-block; width: 25px;">:</span><span style="display: inline-block; width: 210px; font-weight: bold; text-align: left;">物联网2101班</span></div>
<div><span style="display: inline-block; width: 65px; text-align: center;">指导老师</span><span style="display: inline-block; width: 25px;">:</span><span style="display: inline-block; width: 210px; font-weight: bold; text-align: left;">郝爽</span></div>
<div><span style="display: inline-block; width: 65px; text-align: center;">修改日期</span><span style="display: inline-block; width: 25px;">:</span><span style="display: inline-block; width: 210px; font-weight: bold; text-align: left;">2024年6月10日</span></div>
</div>
---
# 1. 题目 1
>针对前期作业中选定的业务背景,请完成如下数据库应用系统规划训练
>
>1. 给你所规划的数据库应用系统起一个系统名称
>2. 尝试调研分析或自主规划设计该系统的业主企业或组织机构的组织架构图,并说明该系统涉及企业或组织机构中哪些相关业务部门。
>3. 调研分析企业相关部门中的跟该系统有关的各种用户或企业外的用户用文字描述用户使用系统开展业务的场景例如租车客户将在特定手机上打开APP用户在界面上点击….)。
>4. 规划系统的性能指标,如并发用户数、用户数、核心业务响应时间等。
>5. 说明你所规划的系统的战略地位,例如系统服务于公司以什么方式赢得客户、获得直接或间接收益,获得市场地位。
>6. 尝试说明建设该系统可能涉及的投资和运营成本,分析可能获得的收益。
>7. 结合系统业务功能与性能规划,确定初步的技术选型规划,大致分析该系统在技术上的可行性。
>
>将以上内容形成系统规划与可行性分析报告,找两位同学当业务专家帮你论证方案的可行性,并在报告上列出专家姓名、专家论证建议和结论。
**12306系统规划与可行性分析报告**
1. **系统名称**
**12306铁路票务系统**
2. **组织架构图及相关业务部门**
**组织架构图**
```
铁路运营公司
├── 铁路运营部门
│ ├── 车次管理
│ ├── 车站管理
│ └── 票务管理
├── 系统中台
│ ├── 用户管理
│ ├── 数据库管理
│ ├── 应用支持
│ └── 安全与合规
└── 客户服务部门
├── 客服中心
└── 技术支持
```
**涉及的相关业务部门:**
- **铁路运营部门**:负责车次数据和车站数据的添加、修改、维护。
- **系统中台**:负责系统的整体控制、用户管理、数据库管理、应用支持、安全与合规。
- **客户服务部门**:提供客户支持,解决用户在使用系统过程中遇到的问题。
3. **用户使用系统开展业务的场景**
**用户(旅客):**
1. **注册**用户在12306系统的注册页面填写个人信息完成账号注册。
2. **查询车票**:登录后,用户在系统中输入出发地、目的地和日期,查询可用车次和座位信息。
3. **购买车票**:选定车次和座位后,用户通过系统完成支付,生成电子车票,并在行程日期前往车站使用电子车票乘车。
**铁路运营部门员工:**
1. **登录**:员工使用分配的账号登录系统。
2. **添加车次和车站信息**:员工进入后台管理界面,添加或修改车次信息(如车次编号、发车时间、到达时间、座位类型等)和车站信息(如车站名称、所在省市等)。
4. **系统性能指标**
- **并发用户数**:支持同时在线用户数量 100,000 人。
- **总用户数**:系统应支持注册用户数量 100,000,000 人。
- **核心业务响应时间**:查询车票和购买车票的响应时间应不超过 2 秒。
- **数据更新频率**车次和车站数据应能在10分钟内更新。
5. **系统的战略地位**
12306系统作为铁路票务系统战略地位体现在以下几个方面
- **客户服务**:提供便捷的在线购票服务,提高客户满意度,增强客户忠诚度。
- **运营效率**:通过电子化管理车次和车站数据,提高铁路运营的效率和准确性。
- **市场地位**:占据全国铁路票务的主要市场,增强在交通出行领域的市场竞争力。
- **收益**:通过在线售票获得直接收益,同时通过提升运营效率间接节约成本。
6. **投资和运营成本及收益分析**
**投资成本:**
- **硬件投入**:服务器、存储设备、网络设备等。
- **软件投入**:数据库软件、应用服务器软件、安全防护软件等。
- **开发投入**:系统开发费用,包括需求分析、设计、编码、测试等。
- **培训费用**:对员工的培训费用。
**运营成本:**
- **维护成本**:系统的日常维护,包括硬件维护、软件升级、数据备份等。
- **人力成本**:技术支持人员、客户服务人员、运营管理人员等的工资。
- **安全成本**:系统安全防护,包括防火墙、入侵检测、防病毒等。
**收益分析:**
- **直接收益**:车票销售收入。
- **间接收益**:提高运营效率,降低人力成本和错误率,提升客户满意度和忠诚度。
7. **技术选型规划**
- **数据库**:选用高性能的关系型数据库,如 MySQL ,用于存储车次、车站、用户等数据。
- **应用服务器**:采用分布式架构,使用 Java EE、Spring Boot 等技术实现系统的业务逻辑。
- **前端技术**:使用 React、Vue.js 等框架开发用户界面,提供良好的用户体验。
**业务专家论证**
专家姓名:阮蓬辉
建议和结论:
李明认为该系统的架构设计合理能够有效支持铁路票务业务的需求。建议在技术选型上考虑使用云计算平台如阿里云、AWS以提高系统的扩展性和可靠性。此外需加强用户数据保护确保系统的合规性。
专家姓名:李桦炅
建议和结论****
张华认为系统在性能指标上的设定符合大规模用户访问的需求,但需特别注意并发访问的处理,建议采用缓存技术(如 Redis和消息队列如 Kafka来提升系统的响应速度和可靠性。同时应建立完善的监控系统实时监控系统性能和安全。
通过上述论证12306系统的规划和可行性分析得到了进一步确认和优化。
# 2. 题目 2
> 数据库应用系统需求分析
>
> 自学统一建模语言Unified Modeling Language, UML在作业中解释UML、用例Use Case、用况Use Case Scenario、用例图Use Case Diagram、泳道图和数据流图Data Flow DiagramDFD的概念及其VISIO中的画法针对前述作业中选定的业务场景开展如下系统需求分析
>
> 1. 分析系统业务需求标识出用户Actor或User进行系统功能划分画出用例图
> 2. 分析系统业务场景针对涉及多个用户Actor或用户的业务场景分析业务流程画出泳道图至少一个
> 3. 结合前面作业设计结果,补充分析完善系统的数据项,数据结构(可以用类图表示),数据的存储(持久化)需求,形成数据字典。
> 4. 分析系统的数据处理需求画出系统主要的数据流图建议包含两个层级的DFD。
> 5. 分析系统的非功能性需求,给出系统业务处理性能、安全性、整性等需求。
>
> 将以上内容形成系统的需求规格说明书。
# 3. 题目 3
>数据库应用系统设计—概念与逻辑设计
>
>基于以上需求规格说明书,完成如下任务:
>
>1. 结合新补充的需求,完善 ER 图,形成完整的实体关系模型。
>2. 结合前面几次作业设计的数据模式,在函数依赖的范畴判定原有模式的规范化程度,并根据需要补充新关系模式。并对不属于 3NF 的模式进行分解,使其达到 3NF 的要求。
>
>以上内容形成第一版的系统设计规格说明,以后持续完善。
# 4. 补充作业 1
>完成教材P.241 7,8两题
>
>其中,各实体的属性如下(联系的属性根据需要添加):
>
>- 系:系编号,系名
>- 班级:班级编号,班级名
>- 教研室:教研室编号,教研室
>- 学生:学号,姓名,学历
>- 课程:课程编号,课程名
>- 教员:职工号,姓名,职称
>- 产品:产品号,产品名
>- 零件:零件号,零件名
>- 原材料:原材料号,原材料名,类别
>- 仓库:仓库号,仓库名
# 5. 补充作业 2
>将上题的E-R图转换成关系模型指明每个关系模式的主键和外键在函数依赖的范畴分析关系模式满足第几范式并将不满足BCNF的关系模式分解成BCNF。

View File

@ -0,0 +1,34 @@
<mxfile host="Electron" modified="2024-06-10T07:33:52.533Z" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/24.5.1 Chrome/124.0.6367.207 Electron/30.0.6 Safari/537.36" etag="VInC7AW9LVvjQGWzSf6g" version="24.5.1" type="device">
<diagram name="第 1 页" id="3B1iCcji8M7D98_Schui">
<mxGraphModel dx="1434" dy="836" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="0" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="k9E8UJ5gUlcifJo20EVi-13" style="rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.3333333333333333;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="k9E8UJ5gUlcifJo20EVi-1" target="k9E8UJ5gUlcifJo20EVi-9">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="k9E8UJ5gUlcifJo20EVi-14" style="rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.3333333333333333;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="k9E8UJ5gUlcifJo20EVi-1" target="k9E8UJ5gUlcifJo20EVi-11">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="k9E8UJ5gUlcifJo20EVi-15" style="rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.3333333333333333;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="k9E8UJ5gUlcifJo20EVi-1" target="k9E8UJ5gUlcifJo20EVi-12">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="k9E8UJ5gUlcifJo20EVi-1" value="乘客" style="shape=umlActor;verticalLabelPosition=bottom;verticalAlign=top;html=1;" vertex="1" parent="1">
<mxGeometry x="50" y="240" width="30" height="60" as="geometry" />
</mxCell>
<mxCell id="k9E8UJ5gUlcifJo20EVi-2" value="Diagram Heading" style="shape=umlFrame;whiteSpace=wrap;html=1;pointerEvents=0;recursiveResize=0;container=1;collapsible=0;width=160;" vertex="1" parent="1">
<mxGeometry x="160" y="80" width="560" height="760" as="geometry" />
</mxCell>
<mxCell id="k9E8UJ5gUlcifJo20EVi-9" value="注册" style="ellipse;whiteSpace=wrap;html=1;" vertex="1" parent="k9E8UJ5gUlcifJo20EVi-2">
<mxGeometry x="40" y="80" width="120" height="40" as="geometry" />
</mxCell>
<mxCell id="k9E8UJ5gUlcifJo20EVi-11" value="修改用户信息" style="ellipse;whiteSpace=wrap;html=1;" vertex="1" parent="k9E8UJ5gUlcifJo20EVi-2">
<mxGeometry x="40" y="160" width="120" height="40" as="geometry" />
</mxCell>
<mxCell id="k9E8UJ5gUlcifJo20EVi-12" value="删除账户" style="ellipse;whiteSpace=wrap;html=1;" vertex="1" parent="k9E8UJ5gUlcifJo20EVi-2">
<mxGeometry x="40" y="240" width="120" height="40" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>