项目管理系统的设计与实现论文.doc
毕业设计(论文)题目:项目管理系统的设计与实现学生姓名:学号:学部(系):信息科学与技术学部专业年级:指导教师:职称或学位:2010年5月10日1目录摘要·····························································································································2ABSTRACT····················································································································31绪论······················································································································41.1课题研究背景······································································································41.2系统目标·············································································································41.3研究思路·············································································································42系统的开发工具与环境·····················································································62.1LOTUSDOMINO发展史···························································································62.2LOTUSDOMINO平台······························································································72.3LOTUSDOMINO平台的开发环境结构·····································································82.4LOTUSDOMINO的基础架构····················································································82.5LOTUSDOMINO的安装配置···················································································102.6LOTUSDOMINO的设计元素···················································································112.7LOTUSDOMINO的常用公式···················································································122.8LOTUSDOMINO常用的LS函数·············································································122.9LOTUSDOMINO开发的编程语言···········································································133需求分析···············································································································143.1系统需求分析····································································································143.2数据库需求分析··································································································153.3性能需求分析·····································································································174系统设计···············································································································184.1数据库中的设计元素···························································································184.2数据库实体图·····································································································184.3系统总功能模块设计···························································································185详细设计与实现·······································································································205.1表单的详细设计·································································································205.2建立试图············································································································265.3后台代理中的代码实现······················································································266测试与维护···············································································································336.1创建和测试应用程序··························································································336.2软件维护············································································································33结束语························································································································35参考文献·····················································································································36致谢·····················································································································372项目管理系统摘要随着计算机软硬件技术和网络通信技术的快速发展,使信息的交换和处理有了新的变革,各类信息的管理正逐步实现自动化。过去项目管理由手工方式记载项目信息,而实际过程中一个项目的实施是一个动态的过程,很多信息在实施的过程中需要修改,人工修改十分不方便,并且通知工作人员的过程很繁琐,迫切需要自动化的方式来管理项目信息,因此,我选择项目管理系统作为本次的课题。项目管理系统根据实际情况将一个项目分成三种状态:立项、准备、启动,将用户分为项目管理员和项目的实施负责人,不同用户拥有不同的权限,管理员负责录入和修改项目信息,项目实施负责人负责记录工作日志和工作总结。不同身份的用户登录可以执行不同的操作,这样不同的人员之间可以独立的操作,不会相互影响,修改过程也十分简便,对用户的计算机水平没有过高的要求,便于该系统的推广。另外该系统还可以实现向项目人员自动发送邮件的功能,减少了人工的操作。该系统基于LotusDomino平台实现。LotusDomino支持多种平台,可以在企业用户少,数据资料少的情况下,可以使用PC服务器,如果企业用户数量和数据资料增加到一定程度后再使用小型机,或增加几个PC服务器,它在办公自动化解决方案上非常有优势和潜能。关键字:项目,LotusDomino,管理3ProjectManagementSystemAbstractWiththecomputersoftwareandhardwaretechnologyandnetworkcommunicationtechnologysrapiddevelopmentmadeinformationexchangeandprocessinganewchange,themanagementofalltypesofinformationaregraduallyautomated.Projectmanagementoverthepastprojectinformationfromtherecordsbyhand,buttheactualprocessofimplementationofaprojectisadynamicprocess,alotofinformationinthecourseofimplementationneedtomodifytheartificialmodificationisveryinconvenient,andnotifythestaffoftheprocessiscomplicated,itisinurgentneedtouseautomatedwaystomanageprojectinformation,soIchoosethisprojectmanagementsystemasthesubject.Projectmanagementsystembasedontheactualsituationofaprojectdividedintothreecategories:projectplanning,preparation,launch,usersaredividedintoprojectandprogrammanagersandimplementersresponsibleperson,differentusershavedifferentpermissions,theadministratorresponsibleforentryandmodificationprojectsofinformation,projectleaderresponsibleforrecordinglogandthesummaryofthework.Differentidentitiesofuserslogontoperformdifferentoperations,sothatcanbeindependentlyamongdifferentoperations,willnotinteract,theamendmentprocessisalsoveryeasyontheuserscomputerwithoutthehighlevelrequirements,tofacilitatethepromotionofthesystem.Inadditionthesystemalsoallowsprojectpersonneltoautomaticallysende-mailfunction,reducedmanualoperation.ThesystemisbasedonLotusDominoplatform.LotusDominosupportsmultipleplatforms,itcanbesmallbusinessusers,datascarcity,youcanusethePCserver,ifthenumberofusersanddatabusinesstoacertainextentthenusethesmallmachine,orincreasethenumberofPCservers,ithasstrengthsandpotentialinofficeautomationsolutions.KeyWords:Project,LotusDomino,Management41绪论1.1课题研究背景一个公司可以承担很多项目,每个项目又包含很多的信息,有些信息在项目实施的过程中是动态需要修改,而有些信息是一旦输入后就不可以更改的,并且不同身份人员进行不同的操作,不可以越权操作,因此由人工进行管理十分麻烦,不同人员之间需要经常相互交流。而运用LotusDomino开发的项目管理系统可以简化人员的操作,大大提高工作效率。LotusDomino作为国际主流Intranet/Internet网络计算平台,具有单一架构的企业级信息集成和知识管理平台,提供工作流自动化及标准的Web服务、应用和开发环境,在企业级通信、协作、知识管理和Web应用方面拥有大量成功的应用。Domino/Notes是一个群件产品,具有完善的工作流控制、数据库复制技术和完善可靠的安全机制,尤其适合于处理各种非结构化与半结构化的文档数据、建立基于计算机网络的工作流应用。Lotus的群件模式包含三个技术领域,即通信、协同操作和协调运行。通信是指电子邮件的应用,协同操作是指群组共享公共论坛和工作区中的信息,协调运行是指工作流的自动化。LotusDomino的每个数据库都有一个访问控制列表(ACL),它规定了用户和服务器在数据库中享有那些特权。当用户每次打开ACL起作用的数据库时,用户名与ACL中用户名和组进行对照,以确定用户拥有何种类型的访问权。拥有不同权限的人员登录时可以显示不同的信息,并且可以修改不同的信息,还可以通过代理实现向多个人员发送邮件。1.2系统目标1项目管理员可以录入项目信息,录入后可以修改项目状态(3种状态:立项、准备、启动)。2项目启动后,可以在项目信息中选择项目成员(多人)及项目经理(1人),被选中的项目成员需要收到邮件通知。3项目经理可以在项目信息页面中添加项目日志及项目总结。1.3研究思路在本次设计中用到的设计元素包括表单、子表单、视图、代理、大纲、页面、帧、域、热点按钮。先是用单个表单实现部分功能,最后用帧结构来将各个表单信息综合显示。在一个数据库中共需建四个表单:第一个表单用于实现可以选择多人的功能。第二个表单用于实现可以选择单人的功能。第三个表单:5(1)通过新建域来实现项目信息的输入;(2)项目状态的改变通过域值的改变来实现,不同的状态可以修改的信息不同(3)当项目状态处于启动时,通过调用弹出窗口将选中的项目人员、项目经理保存在两个域中,在WebQueryOpen中运行一个代理,该代理实现的功能:分别向选中的项目人员、项目经理发送邮件;赋予选中的经理相应角色;实现跳转。(4)通过赋予项目管理员和项目经理Admin和Common的角色,来控制实现不同角色的人员登录可以显示不同部分的信息,项目经理登录时使项目日志项目总结的域可见,而其他人员不可见。第四个表单用来显示所有项目的信息并可以维护、删除项目。最后做一个大纲导航,通过帧结构集来显示各个部分的信息。62系统的开发工具与环境2.1LOTUSDOMINO发展史Notes和Domino的源头可以追溯到伊利诺斯州立大学Computer-basedEducationResearchLaboratory(CERL)编写的一些最早的计算机程序。1973年,CERL发布了一个名为PLATONotes的产品。在当时,PLATONotes的唯一功能就是为缺陷报告加上用户ID和日期的标签,以及保护文件避免被其他用户删除。然后系统开发人员可以对屏幕下方报告的问题作出反应。这种用户间的安全通信是PLATONotes的基础。1976年,发布了PLATOGroupNotes。GroupNotes采纳了PLATONotes的最初想法并加以扩展,可以让用户:创建按主题组织的私有notes文件(1)创建访问列表(2)阅读特定日期以后编写的所有notes文件并作出响应(3)创建匿名的notes文件(4)创建主控消息标志(directormessageflag)(5)标记文档中的注释(6)把notes文件连接到其他PLATO系统1986年8月,产品基本完成,展示了它那独到的功能,具备了初步的文档。它已经准备好发送给的一个Lotus国际用户了。当时,Lotus评估并接受了该产品。Lotus于1987年买断了Notes的版权。Notes的第一个版本在1989年推出。出现在市场上的第一年中,卖出了超过35,000份Notes拷贝。Notes客户机需要DOS3.1或OS/2。Notes服务器需要DOS3.1、4.0或OS/2。1995年7月,IBM买下了Lotus,主要是为了获得Notes技术。这次并购对Notes产生了积极的影响。在并购之前,Notes开发人员感觉到自己面临着战略上的某些不确定性,这是因为Web的主导地位日渐突出,市场竞争越来越激烈。IBM的并购提供了强大的资金支持,能够应用世界一流的技术,包括后来成为Domino的HTTP服务器,以及增强销售力量。现在Notes被销售给绝大多数财富500强的企业,而且是卖给整个公司而不是其中的一个部门。这些积极的影响使得Notes开发人员能够投入长期的项目。1996年,随着Notes4.0的发布,业务和技术竞争爆发了:消息产品、Web服务器以及这些产品的开发系统。1996年12月,Lotus将Notes4.5服务器产品的品牌名称改为“Domino4.5,PoweredbyNotes”,发布了Domino4.5服务器和Notes4.5客户机。Domino将NotesRelease4.0服务器改造成了交互式Web应用服务器。这种服务器把互联网标