8个数据库设计典型实例
人事管理系统 工资管理系统 考勤管理系统 员工培训管理系统 仓库管理系统内部行文管理 销售管理系统 酒店管理系统由于数据库设计的重要性,人们提出了许多数据库结构设计的技术。但这些设计方法和设计者的工作经验有很大的关系。因此要从根本上解决所有数据库结构设计的问题,就需要多实践,在实饯中积累经验和教训,最终成为数据库结构设计的专家、数据库需求分析数据库结构设计的第个阶段,也是非常重要的个阶段是数据库需求分析。在这个阶段主要是收集基本数据以及数据处理的流稈,为以后进一步设计打下基础。需求分析主要解决两个问题:内容要求。调査应用系统用户所需要操作的数据,决定在数据库中存储什么数据。●●处理要求。调査应用系统用户要求对数据进行什么样的处理,理淸数据库中各种数据之间的关系。解决这两个问题的时候,程序编制人员需要冋应用系统用户详细调査,保证信息收集的完整性。否则有可能后面所有的工作都白费。在数据库需求分析后,应该得到一个数据字典文档,包括3方面内容●数据项。包括名称、含义、类型、取值范围、长度以及和其他数据项之间的逻辑关系数据结构。若十个数据项的有意义的集合,包括名称、含义以及组成数据结构的数据项●●数据沇。指薮据中数据的处理过程,包括输入、处理和输岀这个数据字典在程序的开发过程中会不断发生变化。对于一个大型的软件开发过程,般都需要一份详尽的数据字典针对本实例,通过对企业员工管理内容和过程分析,设计的数据项和数据结构如下●员工基本情况。包括的数据项有员工号、员工姓名、性别、所在部门、身份证号、生日、籍贯、国籍、民族、婚姻状況、健康状况、政治面貌、参加时间血型、参加工作时间、员工状态、状态时间、家庭住址、联系电话等工婚姻状况。包括的数据项有员工号、爱人姓名、爱人出生年月、结婚时间、爱人工作单位、爱人攻治面貌、爱人上作职务等员工学历信息。包括的数据项有员工号、学历、专业、毕业时间、毕业学校学校类型、外语1、外语1等级、外语2、外语2等级等。企业工作岗位信息。包括的数据库项有工作岗位代号、工作岗位名称、工作岗位杈力范围等。●企业部门信息。包括的数据项有部门代号、部门名称、部门经理、部门副经理等有了上面的数据结构和数据项基础,我们就能进行下面的数据库设计了。二、数据库概念结构设计这一设计阶段是在需求分析的基础上,设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。这个阶段不用考虑所采用的数据库管系统、操作系统类型、机器类型等问题。这阶段可用的工具很多。用的最多的是ER图( Entity-Relation,实体-关系图),另外还有许多计算机辅助工具( Computer Aided Software Engineering,CASL)可以榘助进行设计本书的实例都是采用ER图的方法来进行数据库概念结构设计,在本书的第一个例子中先对ER图的方法进行简单介绍。E-R图是描述数据实体及其关系的一种直观的描述工具。这种图中有:实体。用方框表示,方框内为实体的名称。实体的各种属性。用椭圆表示,椭圆内为属性名称。使用线段将其和相应的实体连接起来。实体之间的联系。用菱形表示,菱形内为联系的名称。实体和实休之间的联系较多,比较常见的联系有1:1、1n和m:n这3种。●1:1。对于实体A构成的集合中每个实体,在实体集合B中至多只有一个实体与之相对应,反之亦然,称实体集合A和实体集合B之间是1:1的关系。1:n。对于实体A构成的集合中每个实体,在实体集合B中有n(n>0)个实体与之相对应,且对于实体集合B中的每个实体,在A中最多只有一个实体与之相对应,称实体集合A和实体集合B之间是1:n关系。m:n。对于实体A构成的集合中的每个实体,在实体集合B中有n(n>0)个实体与之相对应且对于实体集合B中的每个实体,在A中有m个实体与之相对应,称实体集合A和实体集合B之间是mn关系图2为员工实体E-R图。员工员工基本信息员工学历信息员工婚姻状况图2员工实体ER图图3为部门实体E-R实例工资管理系统工资管既是企业劳动人事管理的重要方面,同吋也是企业财务管理的重要方面,因为它是和人、资都相关的方面。工资管理需要和员工人事管理连接,同时连按工时考勤和医疗保险等等,来生成企业每个职工的基本工资、津贴、医疗保险、保险费、实际发放工资等工资管珥是一项琐碎、复杂而又十分细致的工作,一般不允许发生差错。手工进行工资发放工作,需要反复地进行抄写、计算,不仪花费财务人员大量的吋间,而且往往由于抄写不慎,出现张冠李戴,或者由于计算机的疏忽,岀现工资发放错误的现象。同时工资的发放具有较强的时间限制,必须严格按照单位规定的时间完成计算和发放工作。正是工资管理的这种重复性、规律性、时冋性,使得工資管计算札化成为可能。计算杋进行工资发放工作,不仅能够保证工资核算正确无误、快速输出,而∏还可以利用工资数据厍对有关工资的各种信息进行统计,服务于财务部门其他方面的核算和财务处理。不同的企业有着不同的人事制度、财务制度,也就决定了不同的企业具有不同的工资制度。本例按照一般企业都采用的工资计算公式,即根据员工的职务工种来确定基本工资,根据岀工情况来扣除缺勤镄,根据加班情况发放沣贴,根据医疔倸险费用给予报销费用,同时扣除社公保险费来生成一个员工的当月工资。第一节第一节系统设计系统目标设计系统开发的总体任务是实现企业员工工资管理的系统化、规范化和自动化。能够和人事管理系统、考勤管理系统相结合,真正实现企业髙效、科学、现代化的员工管理。二、开发设计思想尽量采用公司现有软硬件环境,及先进的管理系统开发方案,从而达到充分利用公司现有资源,提高系统开发水平和应用效果的目的。系统应符合公司工资管理的规定,满足公司工资管理工作需要,并达到操作过程中的直观、方便、实用、安全等要求。系统采用C/S体系结构, Client(客户端)负责提供表达逻辑、显示用户界面信息、访问数据库服务器; Server(服务器端)则用于提供数据服务。·系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参开发的技术维护补充、维护。系统应具备数据库维护功能,及时根据用户需求进行数据的添加、删除、修改、备份等操作。三、系统功能分析工资管理涉及企业箮理的多个方面,如员工职务工种变化、员工考劐情况、员工加班情况、员工医疗保险等等。根据这些信息,在每个月的某个固定时间,生成企业全体员工的月工资。对于月工资,能够实现按照员工、部门、月、年进行统计分析,产生相应报表。工资管理的特点是所关联的方面比较多,信息处理量比较大。因此对于本系统的设计,需要采取了下面的些原则在公司范围内统一各种原始单据的格式,统一联日和报表的格式。删除不必要的管理余,实现管理规范化、科学化程序代码标准化,软件统一化,确保软件的可维护性和实用性能够连接各个关联的数据库,获取数据库中的信息。保证各个数据库表格相关的项目之间具有相同的属性。在上面设计原则的基础上,完成系统功能分析。本例中的工资管理系统需要完成功能主要有:员工每个工种基本工资的设定。加班津贴的管理。根据加班的时间和类型给予不同的加班津贴根据月工资生成公式,按照员工的考勤情况和工作表现,生成员工月工资。员⊥年终奖金的生成企业工资报表的生成。支持各种不同形式的报表,如单个员工工资报表生成部门员工工资报表生成、按照月份统计工资报表等。工资管系统的使用帮助。四、系统功能模块设计在系统功能分析的基础上,考虑 Power Builder程序编制的特点,得到如图1所示的系统功能模块图。工资管理系统系统模块工资生成模块津贴管理模块医疗保险模块报表生成模块帮助模块图1系统功能模块图五、工资管理系统和企业中其它系统的关系工资管理系统是全企业信息管理系统的一个有机组成部分。它与企业中其他系统之间的关系如图2所示。⊥资生成⊥资生成财条管工资管理升迁离职考勤情况财务管理考勤管理人事管理图2和企业中其他系统之间的关系第二节数据库设计数据库需求分析在仔细调査企业工资管理过程的基础上,得到系统所要处理数据的流程如图3所小。年奖计算企业年度效益年终奖佥公式设定员工考勤加班津贴工资计算公式设定月工资生医疗保险基本工资图2和企业中其他系统之间的关系针对本实例,通过对企业工资管理的内容和数据流程分析,设计的数据项和数据结构如下●·员工考勤统计信息。包括的数据项有缺勤时间、缺勤天数、缺勤类别等。这些信息可从考勤管理系统的数据库中统计获取。员工工种等级信息。包括的数据项有工种等级、工种基本工资等员工津贴信息、。,包括的数据项有加班时问、加班类别、加班大数等。员工医疗保险信息。包括的数据项有医疗保险时间、医疗费用保险、社会保险费用等。员工基本信息。包括的数据项有员工号、员工姓名、员工工种、员工所属部门等。员工月工资信息、。包括的数据项有生成工资的时间、基木工资、缺勤扣除、加班费用、医疗保险费、月应发工资等员工年终奖金信息。包括的数据项有年份、员工的年终奖金数额等有了上面的数据结构、数据项和数据流程,就能进行下面的数据库设计了。二、数据库概念结构设计本实例根据上面的改计规划岀的实体有:考勤信息实体、津贴信息实体、医疗休险信息实体、员工基本信息实体、月工资实体和年终奖金实体。各个实体的FR图以及实体和实体之间的关系E-R图描述如下。图4为员工基本信息实体ER图。实例考勤管理系统考勤管理既是企业劳动认识管理的重要方面,同时也是企业财务管理的重要方面,因为它是和人、事都相关的方面。考勤管理系统需要和员工人事管理连接,同时需要连接工资管理系统等等,用语完成员工的升迁、工资、津贴、医疗保险、保险费、实际发放工资等第一节系统设计系统目标设计系统丌发的总体任务是实现企业员⊥考勤管理的系统化、规范化、和自动化能够和人事管理系统、工资管理系统相结合,真正实现仝业髙效、科学、现代化的员工管理二、开发实际思想尽量采用公司现冇软硬件环境,及先进的管理系统开发方案,从而达到充分利用公司现有资源,提高系统廾发水平和应用效果的目的●员工考劐管珅系统能够和考動杋相连接,从而完成自动、高效、科学的考勤信息输入●系统采用模块化程序设计方法,既便与系统功能的各种组合和修该,又便于未参与开发的技术维护人员补充、维护●系统应具备数据库维护功能,即使根据用户需求进行数据的添加、删除、修改、被分等操作。系统功能分析考勤管理涉及企业人事管理的多个方面,如员⊥职务升迁、⊥资发放、兴金发放、员⊥医疗保险发放等等。本利自重的考勤管理系统需要完成功能主要有以下几点。●●员工考勤信息处理。该莫完成员工考勤情况的输入、修改等操作。如果企业內有考勤机,可以将它的输岀处理后,形成考勤管理系统考勤模块的输入。企业缺勤类刑的设定。企业考勤统计。该模块可对某个员工进行考勤情况的统计,生成统计报表四、系统功能模块设计在系统功能分析的基础上,考虑 PowerBuilder程序编制的特点,得到如图1所小的系统功能模块图。考勤管理系统考缺报系勤表图1系统功能模块如图五、考勤管理系统和企业中其他系统的关系考勤管理袭击仝全业信息管珄系统的一个有机组成部分。他与企业中替他系统之问的关系如图2所示。工资管理L考勤情况考勤管理人事管理考勤情况图2和企业中其他系统之间的关系第二节数据库设计数据库需求分析在仔细调査企业考勤管理过程的基础上,得到系统所要处理数据的流程如图3所示。人员考勤企业手工输入考勤信息其他考勤机输入信息统计信息数据库报表管理数据维护生成系统图数据流程图针对本实例,通过对企业考勤管理的内容和数据流程分析,设计的数据项和数据结构如员工考勤信息。包括的数据项有员工号、缺勤时间、缺勤天数、缺勤类别等缺勤类别信息。包括的数据项有缺勤类别、名称、描述等。员工基本信息。包括的数据项有员工号、员工姓名、员工工种、员工所属部门等有了上面的数据结构、数据项和数据流程,就能进行下面的数据库设计数据概念结构设计木实例根据上面的设计规划出的实体有:考勤信息实体、员工基木信息实体、缺勤类型实体。各个实体的ER图以及实体和实体之间的关系ER图描述如下图4为员工基本信息实体ER图。员工基本信息员工号姓名员工部员工职务图4员工基本信息实体ER图图5为考勤信息实体E-R图考勤信息员工号姓名缺勤天数缺勤类别时间、原因图5考勤信息实体F-R图图6为缺勤类型实体F-R图缺勤类型类别名称描述图6缺勤类别实体ER图实体和实体之间的关系ER图如图7所小。员工具有1考勤信息属于1:缺勤类型图7实体之间关系ER图数据库逻缉结构设计在上面的实体以及实体之间关系的基础上,形成数据库中的表格以及各个表格之间的关系考勤管理体统数据库中各个表格的设计结果如下面的几个表格所小。没高歌表小在数据库中的一个表。表1为考勤管理表kp表考勤管理表格列名数据类型可否为空Emp-noVARCHAR2(6NOTN ULL员工号(主键—一)qq-dateVARCHAR2(6)NOTNUL L时间(主键二)qq-daynumberNUMBERQ, 1)NULL缺勤天数qq-IlbVARCIIAR2(3)NULL缺勤类别
- 2021-05-06下载
- 积分:1
基于AUTOSAR规范的车用电机控制器软件开发.pdf
同济大学出版的基于AUTOSAR规范的车用电机控制器软件开发,书中有英飞凌AURIX多核单片机的介绍、AUTOSAR基础理论介绍、AUTOSAR开方工具 Davinci Developer的介绍等内容仅供个人学习使用!!不允许被用作商业,更加不允许大面积宣传!!损害作者的利益!!基于 AUTOSAR规范的车用电机控制器软件开发朱元陆科吴志红著同大学出版社TONGJI UNIVERSITY PRI内容提要本书主要介绍了汽车电子的最新规范 AUTOSAR,以及如何开发符合 AUTOSAR规范的电机控制器软件的详细过程。全书分为基础篇和实战篇:基础篇介绍汽车电子软件开发趋势,以及多核单片机和AUTOSAR的相关概念;实战篇介绍了利用 Vector工具链基于 AURIX单片机开发电机控制器的思路和步骤。本书在编写中,力求内容正确,所有的内容都经过相关专家审阅,并经作者测试,步骤清晰,配图丰富。本书适合具有一定嵌入式软件开发基础知识的读者,可作为高等院校本科生、研究生学习嵌入式软件开发的参考书,也可供汽车电子行业软件工程师学习和参考。图书在版编目(CIP)数据基于 AUTOSAR规范的车用电机控制器软件开发/朱元陆科,吴志红著.-上海:同济大学出版社,2017.8ISBN978-7-5608-7134-9I.①基…Ⅱ.①朱…②陆…③吴…Ⅲ.①汽车电子系统一应用软件一高等学校一教材Ⅳ.①U463.6中国版本图书馆CIP数据核字(2017)第159351号基于 AUTOSAR规范的车用电机控制器软件开发朱元陆科吴志红著策划编辑赵泽毓责任编辑朱勇责任校对徐春莲封面设计陈益平出版发行同济大学出版社www.tongjipress.com.cn(地址:上海市四平路1239号邮编:200092电话:021-65985622)经销全国各地新华书店印刷常熟市大宏印刷有限公司开本787mm×1092mm1/16印张12.75字数318000版次2017年8月第1版2017年8月第1次印刷书号ISBN978-7-5608-7134-9定价56.00元本书若有印装质量问题,请向本社发行部调换版权所有侵权必究ForewordDear Readers.AUTOSAR is“ Today”,not“ Tomorrow”Automotive OEMs, suppliers, semi-conductor manufacturers and providers for basic software andrelated tools contributed a lot of effort on AUTOSAR in the past years. The goal is to introduce anew development methodology, a new architecture and new functionalities to face the challenge ofthe increasing complexity of Automotive E&.E. I am glad that AuTOSaR grows step by step andis accepted by automotive industry more and more. AUTOSAR achieved success in Europe firstly,and then was recognized by USA and Japan. Now it is ChinaThe good thing is: now the engineers in Europe, USA, Japan and China are usingAUTOSAR or studying autosar because they know it will be useful tomorrow. Moreand more Chinese engineers want to know AUTOSAR in detailed and practically. The badthing is: the tremendous growth of functionality from AUTSOAR release 1.0 to 4.3 reflectsthe complex requirements of automotive electronics and their fast increase directly. Thee newtechnologies like Multi-core, Functional Safety, Ethernet and Security raise the entry levelof AUTOSAR. The beginners may feel confused and painfulI totally understand the importance of native language to ease the access to new technologiesSo i really appreciate the work by Dr. Zhu Yuan, Dr. Wu Zhihong, Mr. Lu Ke and theirteam at CDHK Tongji University- Vector Automotive Technology Joint Laboratory. IaImsure that the first Chinese AUTOSaR book written by Dr. Zhu Yuan, Dr. Wu ZhihongMr. Lu Ke and their team is great news for Chinese engineers and students. With the help ofthis book, readers will get the system overview of AUtOSaR and learn how to create anAUTOSAR project with OS, BSWM, ECUM and so on. In the same time, I also thankInfineon Technologies and Shanghai Dajun Technologies, Inc. for their great supportI wish all readers a lot of fun reading this book and a lot of success when implementing theAUTOSAR approach in their projectsDr. Gunther HelingDirector for Embedded Software and SystemsVector Informatik gmbh前言为应对日益复杂的汽车电子软件开发、更新和维护的问题, AUTOSARAUTomotiveOpen System ARchitecture(汽车开放系统架构)联盟应运而生。在 AUTOSAR分层模型中软件模块及软件模块之间的接口定义更加标准化,使得整车厂、供应商、科硏机构之间可以方便地实现软件联合开发,为汽车工业的软件系统框架建立了一套开放的标准。与此同时,汽车电子控制单元对单片机的性能要求不断提高,车用32位多核处理器自2012年面世以来已逐渐广泛应用于汽车电子控制单元中。英飞凌科技和维克多( Vector)公司均为 AUTOSAR联盟的高级成员。英飞凌全新的32位多核架构单片机— AURIX引领全球最先进的车用微处理器技术,满足现在及未来汽车安全和安防所需要的应用要求; Vector在汽车电子开发工具、嵌入式软件组件和技术服务等方面具有领先地位。在上海大郡动力控制技术有限公司及徐性怡总裁的支持下,恰逢在国家重点研发计划资助课题——“电机控制器功能安全”(2016YFBO100804)中编者选用了英飞凌 AURIX产品家族系列中的单片机(TC275)和 Vector公司 AUTOSAR软件产品及工具来开发电机控制器软件系统。基于上述课题的研发经历及软件设计成果编著此书,旨在国内推广和普及遵循AUTOSAR规范的软件开发技术。本书分为基础篇和实战篇。基础篇包含1~3章。第1章概述了当前汽车电子软件的开发特点和趋势;第2章对比了多核单片机和单核单片机的特点,分析了多核单片机的优势和软件开发中的挑战;第3章介绍了 AUTOSAR的概念和架构,详细介绍了 AUTOSAR的基础软件层、实时运行环境层和应用层。实战篇包含4~9章,主要讲述基于 AURIX和 AUTOSAR的新能源汽车电机控制器的开发。其中,第4章介绍了新能源汽车发展趋势和电机控制器的开发方法,分别从控制算法、硬件结构和软件架构方面进行讲述;第5章介绍使用 VectorDa Vinci Developer开发电机控制器的软件架构,给出了配置SWC模块的实例;第6章介绍如何使用 Simulink进行应用层软件(例如控制算法)建模以及代码生成的相关内容;第7章介绍了使用 Vectorυ a Vinci Configurator Pro配置电机控制器的基础软件的详细步骤,包括CAN通信配置、MCAL配置以及其他基础软件模块配置等内容;第8章介绍了电机控制器算法的运行实体配置、 AUTOSAR多核OS设计和代码生成的相关内容;第9章介绍了软件代码的集成及其测试验证的相关内容本书由同济大学中德学院一维克多汽车技术联合实验室,同济大学一英飞凌汽车电子联合实验室编写。基础篇主要由朱元、吴志红编写,实战篇由朱元、陆科编写。全书由朱元组织统稿, Vector公司高路博士审阅。本书编写过程中得到了英飞凌科技和 Vector公司的大力支持,编者在此特别对英飞凌科技(中国)有限公司的徐辉女士、 Dirk geiger先生、杜曦先生、张立红先生、徐晶女士、陈汉顺先生,维克多汽车技术(上海)有限公司高路博士表示衷心的感谢。同时真挚地感谢 Math Works公司杜建福博士百忙之中为本书6.1和6.2章节提供了素材,并亲自编写了部分初稿。最后感谢本实验室胡力兴、赵建宁、李清晨、罗梦、王磊、董涛、王惜嘉、顾尉松、李超、张翟辉、仇里森、牛佳辉、周东东、韩光江等同学的资料整理、录人工作。本书适合具有一定嵌入式软件开发基础知识的读者,可作为高等院校本科生、研究生学习嵌入式软件开发的参考书,也可供汽车电子行业软件工程师学习和参考本书在编写过程中力求内容正确,书中所有的内容都经过英飞凌科技和 Vector专家审阅,也经过作者测试,并在科研项目中得到实际的应用。但由于我们的水平有限,编写时间紧张,缺点和错误之处在所难免,敬请读者指正著者2017年5月于同济大学目录目录Foreword前言基础篇第1章汽车电子的软件开发………………………………………………………………………………………31.1汽车电子系统简介…31.1.1概念1.1.2分类1.1.3工作原理1.1.4发展情况…………………………1.2汽车电子系统的开发…1.2.1汽车电子的组成部分:硬件和软件1.2.2硬件的开发方法5666781.2.3软件的开发方法1.3基于 AUTOSAR自顶向下地开发电机控制器1.4汽车电子系统的安全性第2章多核单片机在汽车电子系统中的应用……………………………………112.1单核单片机在汽车电子系统中的应用及局限性………………………………112.2多核单片机在汽车电子系统中的优势和软件开发中的挑战112.2.1多核处理器的优势…112.2.2多核软件开发所面临的问题122.2.3 AUTOSAR规范的应用……………………………………………………………122.3英飞凌 AURIX单片机的特点介绍132.3.1 AURIX系列单片机简介…132.3.2 AURIX的整体架构……………………142.3.3 AURIX系列单片机特色模块介绍…………………………………………………15第3章 AUTOSAR理论基础233.1 AUTOSAR简介…233.1.1目标……………………………………………………………………243.1.2、方法论263.2 AUTOSAR基础软件层…283.2.1微控制器抽象层…30基于 AUTOSAR规范的车用电机控制器软件开发3.2.2ECU抽象层……………………373.2.3服务层……………………………………………………………………………393.2.4 AUTOSAR操作系统183.2.5复杂驱动…………………………………………563.3 AUTOSAR运行时环境…………583.4 AUTOSAR应用层593.4.1 AUTOSAR软件组件593.4.2 AUTOSAR通信61实战篇第4章新能源汽车电机控制器…654.1新能源汽车及发展趋势…………………………………………………………………654.2电机控制器的开发…………………………………………………………………674.2.1控制算法674.2.2硬件结构…·:·4.2.3软件框架第5章使用 Da vinci Developer开发电机控制器软件架构………765.1 Vector相关工具链介绍5.2 Da Vinci Developer简介775.3 Da Vinci Developer入门……………785.3.1 Da vinci Developer安装方法5.3.2 Da vinci Developer界面说明……………………………………835.4使用 Da Vinci Developer配置SWC…5.4.1软件组件设计……………………………………………………………………………875.4.2通信接口设计…895.4.3通信端口设计………………………………………………………………915.4.4运行实体设计…………………………………………………………………935.4.5函数间变量设计…………………………………………………………………………95第6章使用 Simulink开发应用层6.1 MATLAR/ Simulink和 Embedded coder工具链介绍976.1.1 MATLAB/ Simulink基于模型的设计工具……76.1.2 Stateflow-建模和仿真决策工具986.1.3 Embedded coder代码生成和优化工具…………………………………996.2开发符合 AUTOSAR规范的应用层……………………………………………1006.2.1 AUTOSAR客户端、服务器…………1006.2.2 AUTOSAR标定参数…1036.2.3 AUTOSAR组件行为……………………………………………………………105
- 2021-05-06下载
- 积分:1