企业人事工资管理系统C#(共28页).doc
精选优质文档-倾情为你奉上 四川师范大学本科毕业设计企业人事工资管理系统学生姓名学 号所 在 系计算机科学与技术系专业名称网络技术班 级指导教师四川师范大学成都学院二一二年五月专心-专注-专业 企业人事工资管理系统学生: 指导教师:内容摘要:在当今社会,互联网技术空前发展,给人们的工作、生活带来了极大的高效和便利,电子化、信息化已经成为节约运营成本,提高工作效率的首选。鉴于当前大量企业的人事管理尚处于手工作业阶段,不但效率低下,而且还常常因为管理的不慎而出现漏洞。因此根据部分企业提供的需求,设计了此企业人事管理系统,以帮助企业达到人事管理办公自动化、节约管理成本、提高企业工作效率的目的。本企业人事管理系统主要针对企业员工的信息以及跟人事相关的工作流程进行集中的管理,方便企业建立一个完善、强大的员工信息数据库。它是以.NET2008.和SQL 2005数据库作为开发平台。使用C# 设计操作控件和编写操作程序,完成数据输入、修改、存储、调用查询等功能;并使用SQL 2005数据库形成数据表,进行数据存储。本文详细介绍了企业人事管理系统的功能需求,系统设计和具体实现。并简要介绍了系统开发采用的过程方法。关键词: 人事管理 数据库 SQL 2005 C#The enterprise personnel management systemAbstract:In today's society, the Internet technology development, the people's work, life has brought great efficient and convenient, electronic, information technology has already become the save operation cost, improve work efficiency of choice. In view of the large number of enterprise personnel management is still in the stage of manual operation, not only inefficient, but also often because of careless management loopholes. According to some enterprises to provide for the needs, design of the enterprise personnel management system, personnel management to help enterprises achieve office automation, save administrative costs, improve enterprise efficiency.The enterprise personnel management system for enterprise employees information and personnel associated with the workflow for centralized management, convenient for enterprises to establish a perfect, strong staff information database. It is based on NET2008 and SQL 2005 database as development platform. The use of C # design operation control and the preparation of operating procedures, data input, modification, storage, call inquiries and other functions; and the use of SQL 2005 database data tables, data storage.This paper introduced in detail the enterprise personnel management system function, system design and implementation. And briefly introduced the system development uses the process method.Keywords: Personnel Management Database SQL 2005 C#目 录企业人事管理系统前言在这个信息迅速膨胀的社会,各行各业所要管理、涉及的数据信息量越来越多、越来越大。随着当前许多中、小型企业的发展壮大,员工数量不断的增加。随之而来的管理成本也在不断提高。考虑到当前大量企业的人事管理尚处于手工作业阶段,不但效率低下,还常常因为管理的不慎而出现漏洞。因此根据部分企业提供的需求,设计出了此企业人事管理系统,以帮助企业达到人事管理办公自动化、节约管理成本、提高企业工作效率的目的。企业人事管理系统是一个典型的管理信息系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。企业人事管理系统可以提供丰富的功能,降低企业人事管理工作的强度,提高企业人事管理工作的效率,并依靠系统的网络功能为人事管理的使用创造良好的条件,从而能够适应企业人事管理的要求,推动企业人事管理的信息化建设。根据大多数企业的人事管理需求,本论文就该人事管理系统的设计与实现进行了深入分析探讨:首先对系统的需求分析做了描述,然后介绍了系统的设计和实现,最后进行了系统测试。本企业人事管理系统采用基于客户端/服务端(C/S)模式开发,服务端采用SQL Server2005数据库服务器作为数据处理和存储平台,客户端应用程序采用Visual Stdio.NET 2008进行开发,开发语言选用C。用户必须使用客户端应用程序才能对服务端数据进行操作。1 企业人事管理系统开发基础1.1管理系统简介1.1.1管理信息系统管理信息系统(MIS)是一个由人、计算机等组成的进行信息收集、传递、存储、维护和使用的系统。管理信息系统是信息系统的一个分支之一,经过30多年的发展,已经成为一个具有自身概念、理论、结构、体系和开发方法集管理科学、信息科学、系统科学及计算机科学等覆盖多学科的综合性学科。管理信息系统的结构通常由四个部分组成:信息源、信息处理器、信息用户和信息管理者。管理信息系统的主要任务一般要实现对基础数据的严格管理和处理,确定信息处理过程的标准化,高效的完成日常处理业务、优化分配各种资源,包括人力、物力、财力等。MIS是一个人机结合的辅助管理系统,管理和决策的主题是人,计算机仅是辅助的设备。目前国内使用和发展的MIS平台模式大体上分为两种:Web浏览器/服务器(Browser/Server,简称B/S)模式和客户机/服务器(Client/Server,简称C/S)模式。当前企业信息管理系统正在从C/S结构向B/S结构转移,但是由于安全性等方面的因素,C/S结构的管理信息系统仍然占据企业管理信息系统的主流。C/S模式系统以服务器作为数据处理和存储平台,在终端设计有专门的应用程序进行数据的采集和初次处理,再将数据传递到服务器端,用户必须使用客户端应用程序才能对数据进行操作。C/S模式具有以下优点和缺点:C/S 模式的优点:操作界面漂亮、形式多样,可以充分满足客户自身的个性化要求。C/S结构的管理信息系统具有较强的事务处理能力,能实现复杂的业务流程。由于客户端实现与服务器的直接相连,没有中间环节,因此响应速度快。软件功能设计个性化,具有直观、简单、方便的特点,可以满足客户个性化的功能要求;如自由制表的功能在C/S 模式下就能够实现,在B/S 模式下就很难实现或运行效率很低。C/S 模式的缺点:兼容性差,对于不同的开发工具,具有较大的局限性。若采用不同工具,开发成本较高,需要具有一定专业水准的技术人员才能完成。需要专门的客户端安装程序,分布功能弱,针对点多面广且不具备网络条件的用户群体,不能够实现快速部署安装和配置。1.1.2 企业人事管理系统的开发方法企业人事管理系统的开发是一个复杂的工程,它涉及到计算机处理技术、系统理论、组织结构、管理功能、管理知识等各方面的问题,至今没有一种统一完备的开发方法。但是每一种开发方法都要遵循相应的开发策略: 系统开发原则。 系统要解决的问题。 系统开发前的准备工作。 系统可行性研究,确定系统要实现的目标。 系统开发方法的选择和开发计划的定制。1.2 SQL Server 2005及C# 简介1.2.1 SQL Server 20005数据库简介与 Microsoft Visual Studio、Microsoft Office System 以及新的开发工具包(包括 Business Intelligence Development Studio)的紧密集成使 SQL Server 2005 与众不同。无论您是开发人员、数据库管理员、信息工作者还是决策者,SQL Server 2005 都可以为您提供创新的解决方案,帮助您从数据中更多地获益。 SQL Server 2005和SQL Server 2005 Express 都是微软开发的,一个全面的数据库平台,Express是SQL Server2005的免费版本,他们功能完全相同2005Express使用集成的商业智能 (BI) 工具提供了企业级的数据管理。SQL Server 2005Express 数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序。SQL Server 2005Express 数据引擎是本企业数据管理解决方案的核心。此外 SQL Server 2005Express 结合了分析、报表、集成和通知功能。这使您的企业可以构建和部署经济有效的 BI 解决方案,帮助您的团队通过记分卡、Dashboard、Web services 和移动设备将数据应用推向业务的各个领域。正是基于SQL 2005的各项基本功能和应用开发需求,我选择了SQL Server 2005作为后台数据库设计。1.2.2 C#简介在过去,C和C+已经成为在商业软件领域中应用最广泛的开发语言。它们为程序员提供了十分灵活的操作,不过同时也牺牲了一定的效率。对于C/C+用户来说,最理想的解决方案无疑是在快速开发的同时又可以调用底层平台的所有功能。他们想要一种和最新的网络标准保持同步并且能和已有的应用程序良好整合的环境。另外,一些C/C+开发人员还需要在必要的时候进行一些底层的编程。C# (C sharp) 是微软对这一问题的解决方案。C#是一种最新的、面向对象的编程语言。它使得程序员可以快速地编写各种基于Microsoft .NET平台的应用程序,Microsoft .NET提供了一系列的工具和服务来最大程度的开发利用计算与通讯领域。 正是由于C#面向对象的卓越设计,使它成为构建各类组件的理想之选无论是高级的商业对象还是系统级的应用程序。使用简单的C#语言结构,这些组件可以方便的转化为XML 网络服务,从而使它们可以由任何语言在任何操作系统上通过Internet进行调用。 最重要的是,C#使得C+程序员可以高效的开发程序,而绝不损失C/C+原有的强大的功能。因为这种继承关系,C#与C/C+具有极大的相似性,熟悉类似语言的开发者可以很快的转向C#。C#具有以下的优点:A.简单 n C#中指针已经消失。 n C#中":"或"->"操作符是没用的。 n 原始数据类型可变的数据范围像Integer,Floats等。n 不安全的操作,比方说直接内存操作不被允许了。n 因为它是基于.NET平台的,它继承了自动内存管理和垃圾回收的特点。n 整形数值0和1不再作为布尔值出现.C#中的布尔值是纯粹的true和false值而且没有更多的"="操作符和"="操作符错误."="被用于进行比较操作而"="被用做赋值操作。B.现代 n C#拥有内建的支持来将任何组件转换成一个web service,运行在任何平台上的任何应用程序都可以通过互联网来使用这个服务。n C#建立在当前的潮流上,对于创建相互兼容的,可伸缩的,健壮的应用程序来说是非常强大和简单的。 C.面向对象n C#支持数据封装,继承,多态和对象界面(即java中的interface关键字)。n ( int , float ,double)在java中都不是对象,但是C#引入和结构体(structs)来使原始数据类型变成对象int i=1;String a=i Tostring(); D.类型安全n 在C#中我们不能进行不安全的类型转换像将double转换成boolean.。n 值类型(常量类型)被初始化为零值而引用类型(对象和类被编译器自动初始化为零值。2 企业人事管理系统设计方案2.1 系统需求分析性能需求:整个系统应当操作简便,界面友好,维护简便。数据库要求运行稳定,执行速度快,数据安全性高。软件系统本身运行对计算机硬件平台和操作系统平台要求适中。功能需求:系统功能主要包括以下几个方面:一、基础信息管理。 包括基础数据和员工提示信息。二、人事管理。包括人事档案浏览,人事资料查询,人事资料统计. 三、备忘记录。包括日常记事,通讯录.四、数据库。包括备份/还原数据库,清空数据库 。五、工具管理。包括计算器,记事本。六、系统管理。包括重新登录,用户设置,系统退出。 各模块功能如下:基础信息管理此功能模块主要完成员工基础信息的管理,包括民族类别设置,职工类别设置,文化程度设置,政治面貌设置部门类别设置工资类别设置,职务类别设置,职称类别设置等子模块,主要目的是协助人事管理新老员工的大量信息。员工信息部分,只要为企业员工生日提醒和员工合同提醒。人事管理此功能模块主要提供给管理员查询员工信息档案,协助管理人员根据条件快速定位员工以及对员工信息的统计分析。通过此功能模块,管理人员可以对大量员工的详细情况进行统计,例如年龄段分析,工龄分析等。备忘记录此功能模块主要是提供日常记事功能和通讯录管理。数据库此功能模块主要是对整个企业人事管理系统的数据进行备份清空和还原操作等。工具管理此功能包括计算器和记事本,方便人事管理系统使用者方便计算记事等。系统管理此部分可以重新登录系统,更改系统试用设置,系统退出等用户需求: 由于此管理系统主要是针对大多数企业的人事管理部门管理公司内部人事而开发,它仅仅是提供给人事管理部门的工作人员使用,也就是说用户角色单一,他们都是系统的管理者,享有平等的权限.系统管理员点击用户管理,可以对用户信息表进行查询,编辑,删除,添加新用户等操作。合法用户在成功登陆系统后可以进行系统的整体操作。超级管理员还可以为不同登录用户分配不同的权限操作。2.2系统设计原则A、实用性原则要力求最大限度地满足实际工作需要,充分考虑各业务层次、各管理环节数据处理的实用性,把满足客户生产和管理业务作为第一要素进行考虑。B、用户界面设计原则图形化原则:用户界面的设计应做到美观大方。用户界面应直观、明了、条理清晰。实现“傻瓜型”管理易学、易用、易管理。C、安全可靠性原则应用软件与数据库系统的设计要做到安全可靠,防止非法用户的入侵。数据库的备份策略恰当,以防灾难性事故发生。D、可扩展性与可维护性原则为适应将来的系统发展,MIS系统应该具有良好的可扩展性和可维护性。软件设计尽可能模块化、组件化、是应用系统可灵活配置,适应不同的情况。E、数据库设计原则对数据库的设计因该体现一致性、完整性、安全性、可伸缩性和规范化。3 企业人事管理系统的设计3.1 系统设计概要系统设计要在理解需求和分析需求之后才能正确搭建。理解需求是在问题及其最终解决方案之间架设桥梁的第一步也是至关重要的一步。开发者只有和客户充分理解需求之后才能开始设计系统。否则,对需求定义的任何改进,在设计上都必须大量返工。分析需求是从客户的需求中提取出软件系统能够帮助用户解决的业务问题,通过对用户业务问题的分析,规划出系统的功能模块,即定义用例。这个步骤是对理解需求的升华,直接关系到该系统的质量。根据第三章的需求分析,企业人事管理系统采用基于客户端/服务端(C/S)模式开发,服务端采用SQL Server2005数据库服务器作数据处理和存储平台,客户端应用程序采用Visual Stdio.NET 2008进行开发,开发语言选用C。用户必须使用客户端应用程序才能对服务端数据进行操作。3.2 数据库的设计根据需求分析,本系统后台数据库共分为24个表,由于篇幅限制这里只给出部分数据库表,以下分别给出部分数据库表的简单描述。tb_Login (登录信息表)该表存储登录帐号的基本信息。以供登录密码验证,显示用户身份用。如表表3.2-1。表3.2-1 用户基本信息字段名字段类型是否主键说明IDvarchar(5)是编号Namevarchar(20)否登录名Passvarchar(20)否登录密码tb_Branch (部门信息表),该表存储部门基本信息。表3.2-2 部门信息字段名字段类型是否主键说明IDint是部门编号BranchNamevarchar(20)否部门名称tb_Stuffbusic (员工信息表)存储员工的基本信息。表3.2-3 员工基本信息字段名字段类型是否主键说明IDvarchar(5)是编号StuffNamevarchar(20)否Folkvarchar(20)否Birthdaydatetime否Ageint否Kulturvarchar(14)否Marriagevarchar(4)否Sexvarchar(4)否Visagevarchar(14)否IDCardvarchar(20)否表3.2-4 员工基本信息WorkLengthintEmployeevarchar(20)否Businessvarchar(10)否Laboragevarchar(10)否Branchvarchar(14)否Duthcallvarchar(14)否Phonevarchar(14)否Handsetvarchar(11)否Schoolvarchar(24)否Specialityvarchar(20)否GraduateDatedatetime否Addressvarchar(50)否Photoimage否BeAwarevarchar(30)否Cityvarchar(30)否M_Payfloat否Bankvarchar(20)否Pact_Bdatetime否Pact_Edatetime否3.3 系统模块的设计经过对系统的整体需求有了深刻了解之后,确定本企业人事管理系统的功能管理模块包括: 基础信息管理 人事管理 备忘记录 数据库 工具管理 系统管理图3.3-1 管理模块框架图用例图标记了企业人事管理系统的所有用例,并形象地描述了各用例与用户角色之间的关系。如图3.3-2所示。企业人事管理系统管理工作人员基础信息管理数据库备忘记录系统管理管理管理工具管理人事管理图3.3-2用例图3.4系统界面设计用户界面:又称人机界面,实现用户与计算机之间得通信,以控制计算机或进行用户和计算机之间得传送得系统部件。虽然说程序设计最核心的地方是程序的功能,但程序的界面设计是不可忽视的,它直接影响到程序的易用性。尤其在Windows时代,一个良好的应用界面会给你的程序锦上添花,甚至有画龙点睛之韵味。本企业人事管理系统严格遵守用户界面设计规范.系统坚持图形用户界面(GUI)设计原则,界面直观、对用户透明,用户接触软件后对界面上对应的功能一目了然、不需要多少培训就可以方便使用本应用系统。本企业人事管理系统在界面设计中也保持了界面的一致性。一致性既包括使用标准的控件,也指使用相同的信息表现方法,如在字体、标签风格、颜色、术语、显示错误信息等方面确保一致。3.5典型代码设计用户登陆功能的代码设计:IF(用户名和密码均不为空)/处理登录用户信息else /消息框显示“请将登录信息添写完整!”说明:此段代码设计主要是实现合法用户的正常登陆,如果用户名为空,密码为空,或用户名不存在,都将不能正常登陆该系统。更改密码功能的代码设计:IF不输入密码消息框显示不允许密码为空IF密码与确认密码不等消息框显示两次输入密码不一致ELSE存储新的密码退出更改密码界面说明:此段代码设计主要是实现更改密码的功能.不允许密码为空,并且密码与确认密码要相同.成功修改密码后,数据库存储新的密码,然后退出更改密码的界面.用户管理中添加用户信息的具体代码实现:private void button1_Click(object sender, EventArgs e) if (text_Name.Text = "" && text_Pass.Text = "") MessageBox.Show("请将用户名和密码添加完整。"); return; DSet = MyDataClass.getDataSet("select Name from tb_Login where Name='" + text_Name.Text + "'", "tb_Login"); if (int)this.Tag = 2 && text_Name.Text = ModuleClass.MyModule.User_Name) MyDataClass.getsqlcom("update tb_Login set Name='" + text_Name.Text + "',Pass='" + text_Pass.Text + "' where ID='" + ModuleClass.MyModule.User_ID + "'"); return; if (DSet.Tables0.Rows.Count > 0) MessageBox.Show("当前用户名已存在,请重新输入。"); text_Name.Text = "" text_Pass.Text = "" return; if (int)this.Tag = 1) AutoID = MyMC.GetAutocoding("tb_Login", "ID"); MyDataClass.getsqlcom("insert into tb_Login (ID,Name,Pass) values('" + AutoID + "','" + text_Name.Text + "','" + text_Pass.Text + "')"); MyMC.ADD_Pope(AutoID, 0); MessageBox.Show("添加成功。"); else MyDataClass.getsqlcom("update tb_Login set Name='" + text_Name.Text + "',Pass='" + text_Pass.Text + "' where ID='" + ModuleClass.MyModule.User_ID + "'"); if (ModuleClass.MyModule.User_ID = DataClass.MyMeans.Login_ID) DataClass.MyMeans.Login_Name = text_Name.Text; MessageBox.Show("修改成功。"); this.Close(); 说明:此段代码主要是实现用户管理中添加用户的功能.添加的用户名不能为空,密码与确认密码应相同,所属用户部门在下拉菜单中选择,从而完成一次添加用户过程。由于篇幅有限,仅对部分功能给出设计思路和具体实现。4 系统测试4.1 测试环境4.1.1 硬件环境普通计算机配置4.1.2 软件环境系统软件:WindowsXP工具软件:.NET 2008、SQL Server 2005。4.2 主要模块测试4.2.1系统登陆模块经过上面各节的工作后,基本上完成了一个档企业人事管理系统的开发。经过编译后,在菜单中选择调试->启动调试命令,则会出现系统的登录界面,如图4.2.1-1所示。图4.2.1-1 系统登陆图输入用户名和密码,单击“登录”按钮,当身份验证成功后进入企业人事管理系统主界面.如果密码错误则会显示出错提示,如图4.2.1-2所示。图4.2.1-2 系统登陆界面用户登陆成功后.进入系统主界面.在主界面中可以进行系统的管理.比如更改密码,退出和注销。测试更改密码功能如图所示,用户输入新的密码,确认密码与密码相同,点确定按钮,则完成了密码更改的操作.如下图4.2.1-3所示。图4.2.1-3 更改密码界面图单击重新登录选项,则会弹出一个对话框,要求用户重新输入登录信息.操作界面如图4.2.1-4所示。图4.2.1-4 系统重新登录界面图4.2.2基础信息管理模块信息管理模块中包含员工基础信息的管理,包括民族类别设置,职工类别设置,文化程度设置,政治面貌设置部门类别设置工资类别设置,职务类别设置,职称类别设置等子模块,主要目的是协助人事管理新老员工的大量信息。员工信息部分,主要为企业员工生日提醒和员工合同提醒。在各个子模块部分,分别测试了添加,修改,删除等功能。如图4.2.2-1所示。图4.2.2-1 基础信息管理模块然后我们来测试用户管理子模块,在此模块中可以完成用户的添加,删除和修改功能.如图4.2.2-2所示。图4.2.2-2 基础信息管理模块子模块部分 图4.2.2-3 基础信息管理模块子模块部分 图4.2.2-4 基础信息管理模块子模块部分最后是基础信息管理模块子模块员工提示,包括员工的生日提醒和合同提醒等.测试出来的效果如图所示。 图4.2.2-5 员工提示信息界面图图4.2.2-6 员工提示信息界面图4.2.3人事管理进入人事管理,就可以看到如下图4.2.3-1所示的内容,在此模块中,主要包括人事档案浏览人事资料查询,人事资料统计功能,此部分功能为企业了解企业人事信息起到了非常关键的作用。图4.2.3-1 人事管理图4.2.4备忘记录备忘记录包括日常记事,和同事通讯录,通过此部分可以方便记录日常事务和联系企业人员。如图4.2.4-1 日常记事。图4.2.4-1 日常记事4.2.5数据库此部分主要用户管理系统数据的备份还原操作。及时的备份企业数据能防止突发情况导致企业数据丢失。如图4.2.5-1图4.2.5-1 备份数据5 结 束 语由于篇幅所限,仅对企业人事管理系统的大部分功能进行了测试和讲解,其他功能模块的实现请通过系统操作查看。系统在上述软硬件环境下,通过对详细设计功能作出测试,结果能够达到预期功能。在开发过程中,我深深体会到了.NET技术的魅力,认识到在网络经济到来的今天,掌握好一门计算机语言,并把它运用到力所能及的应用程序开发中去的重要性和现实意义。我这次毕业设计的目标是建立一个基于C/S的企业人事管理系统,它用到的开发工具是Visual studio.NET 中的Visual C#语言,SQL Server数据库。最后完成了预定的功能的开发,包括:员工基本信息管理、员工基本信息统计、人事管理、数据库管理、用户信息管理、账号管理等功能的设计与实现。本学期的毕业设计使我经历了一个完整的软件开发过程。设计此软件,对于没有开发经验的我来说,无疑是一个巨大的挑战。从学习开发数据库,选择题目,需求分析,总体设计,详细设计直到最后编码测试,一步一步学习,一点一点积累,最后形成一个完整的系统,这对我来说也是一个很大的考验。由于是第一次编写这样的软件,没有经验,前期工作做的不是很好,多亏了老师的指导与同学的帮助,才得以重上征途,但已浪费了很多时间。由于个人能力及时间有限,有一些实际问题没有考虑到。软件中不可避免地存在着不足和疏漏,有待进一步完善。所以,最后所完成的系统还显得较为稚嫩,原计划的一些功能还来不及实现,比如报表打印,住房公积金和社保金的网上处理等都未实现。但是,通过本次程序设计,开阔了自己的视野,拓宽了自己的知识面,提高了认识和学习新事物的能力,特别是增强了自己在程序设计方面的信心和动手实践能力,这些对于未来的工作无疑将是一笔宝贵的财富。本文是在指导老师的热情关心和指导下完成的,他渊博的知识和严谨的治学作风使我受益匪浅,对顺利完成本课题起到了极大的作用。在此向他表示我最衷心的感谢!在论文完成过程中,本人还得到了所有教过我的老师和同学们的热心帮助,本人向他们表示深深的谢意!最后向在百忙之中评审本文的各位老师表示衷心的感谢!参考文献:1 刘烨: C#编程及应用程序开发教程,清华大学出版社,2004.2,P33-P452 郭文夷: C#.NET可视化程序设计,华东理工大学出版社,2005.5,P331-P4513 孙岩:SQL Server 2000系统管理员宝典,清华大学出版社,2005.4,P37-P45 4 闪四清: SQL Server 实用简明教程,清华大学出版社,2003.5,P33-P475 郭胜: C#.NET程序设计教程,清华大学出版社,2005.1,P133-P1476 Charles Wright:C#编程技术与技巧,机械工业出版,2003.2,P33-P457 胡百敬:SQL Server2005数据库开发详解,电子工业出版社,2006.5,P330-P450