基于Apache+MySQL+PHP的软件项目管理系统的设计

发布时间:2010-10-22 11:16:06

基于Apache+MySQL+PHP的软件项目管理系统的设计

The Design of Apache+MySQL+PHP-bsaed Software Project Management System

北京师范大学信息科学学院 曾海军

指导教师 黄荣怀 朱小明

[摘要]

论文从软件工程的角度介绍了软件项目管理的概念、特征、原则和内容;分析了软件项目管理面临的困难和现存的问题以及产生这些问题和困难的原因,提出了解决这些问题的关键因素,着重分析了软件项目管理中的:配置管理、质量管理、风险管理和人员管理;提出了《软件项目计划书》编写方案;对现有的项目管理软件和国内应用状况做了深入的分析和对比,提出了基于Apache+MySQL+PHP的软件项目管理系统的设计方案,对于关键技术:用Apache建立Web站点、MySQL建库策略、PHP编程与应用进行了深入分析。论文的最后,提供了一个Demo模块:文档管理系统。

关键词

项目管理 软件项目管理 配置管理 质量管理 风险管理 人员管理 软件项目计划书 Apache MySQL PHP文档管理系统

[Abstract]

This article introduces the concept, feature, principle and content of the software projects management from the aspect of software engineering; analyzes the difficulties and existing problems faced by the software projects management and the reason why these difficulties and problems generate, puts forward the key factors on how to treat these problems, emphasizes on analyzing some points in the software projects management, they are: collocation administration, quality administration, risk administration and staff administration; advances the writing scenario of “the schemer of the software projects administration”; puts deep analysis and comparison of the existing projects management software and their domestic application, puts forward the designing scheme of the software projects management system based on the Apache+MySQL+PHP, for key techniques: analyzes deeply about using Apache to set up Websites, set up library strategy by MySQL PHP programming and its application. At the end of the article, provides a Demo module: Documents Administrative System.

Keywords

projects management, software projects management, collocation administration, quality administration, risk administration, staff administration, the schemer of the software projects administration, Apache MySQL PHP Document Administrative System

一、对软件项目管理的探讨 3

1.1.软件配置管理 5

1.1.1.软件配置管理应提供的功能 6

1.1.2.版本管理 6

1.1.3.配置管理软件PVCS 6.0 6

1.2.软件质量管理 7

1.2.1.软件质量保证计划 7

1.2.2.质量管理的基本原则 8

1.2.3.软件质量因素 8

1.2.4.软件评审 9

1.2.5.ISO9000.3软件质量认证体系 9

1.2.6.测试 9

1.3.软件风险管理 10

1.3.1.风险的分类 10

1.3.2.风险的识别 10

1.3.3.风险评估 10

1.3.4.风险的评价 11

1.3.5.风险的驾驭和监控 11

1.4.人员管理 11

1.4.1对项目经理的要求 12

1.4.2人员的通讯方式 12

1.4.3人力资源管理中的风险管理 12

二、编写《软件项目计划书》 12

三、项目管理软件应用浅析 13

四、基于Apache+MySQL+PHP的软件项目管理系统的关键技术 16

4.1.Apache建立Web站点 17

4.2.MySQL建库策略 17

4.3.PHP编程与应用 17

五、Demo系统 18

5.1文档管理系统 18

5.2后续工作 19

六、参考资料 20

6.1参考著作 20

6.2参考文章 20

6.3参考网站 22

七、多余的话 22

一、对软件项目管理的探讨

项目管理就是指把各种系统、方法和人员结合在一起,在规定的时间预算质量目标范围内完成项目的各项工作;有效的项目管理是指在规定用来实现具体目标和指标的相对数是时间内,对组织机构资源进行计划、引导和控制工作。(引自《项目管理知识指南》

软件是计算机系统中与硬件相互依存的另一部分,它是包括程序数据及其相关文档的完整集合;软件项目管理是为了使软件项目能够按照预定的成本进度质量顺利完成,而对成本、人员、进度、质量、风险等进行分析和管理的活动。

软件开发的特征:

软件的整个过程都是设计过程(没有制造过程),是人的智力活动;

软件开发不需要使用大量的物质资源,而主要是人力资源;

软件的开发至今尚未完全摆脱手工艺的开发方式;

软件的开发和运行常常受计算机系统的限制;

软件是一种逻辑实体,而不是具体的物理实体;软件开发的产品只是程序代码和技术文件,并没有其他的物质结果。

基于上述特点,软件项目管理与其他项目管理相比,有很大的独特性,软件项目管理系统也不同于其他项目管理系统:

文档(包括程序代码)的管理是软件项目管理的基础;

人力资源建设是软件项目管理的核心;

成本进度质量风险是项目管理的对象;

协作是软件项目顺利实施的保证。

软件项目管理的困难:

智力密集,可见性差;

单件生产;

劳动密集,自动化程度低;

使用方法繁琐,维护困难;

软件工作渗透了人的因素。

目前软件开发中面临的问题:

在有限的时间、资金内,要满足不断增长的软件产品质量要求;

开发的环境日益复杂,代码共享日益困难,需跨越的平台增多;

程序的规模越来越大;

软件的重用性需要提高;

软件的维护越来越困难。

在八十年代初,著名软件工程专家B.W.Boehm总结出的软件开发时需遵循的七条基本原则

用分阶段的生命周期计划严格管理;

坚持进行阶段评审;

实行严格的产品控制;

采用现代程序设计技术;

结果应能够清楚地审查;

开发小组地人员应该少而精;

承认不断改进软件工程实践地必要性。

造成软件失误的原因:

在总结和分析足够数量失误的软件项目后,看出其原因大多与管理工作有关:

在软件项目开始阶段,遇到的问题往往是可供利用的资料太少、项目负责人的责任不明确、项目的定义模糊、没有计划和计划过分粗糙、资源要求未按时做出安排而落空、没有明确规定子项目完成的标准、缺乏使用工具的知识、项目已更动,但预算未随之改变;

在软件项目执行过程中可能会发生的问题是项目审查只注意琐事而走过场、人员变动造成对工作的干扰、项目进行情况未能定期汇报、对阶段评审中发现的问题如何处置未做出明确的规定、资源要求并不像原来预计的那样大、未能做到严格遵循需求说明书、项目管理人员不足;

项目进行到最后阶段可能会发生的问题是未做出质量评价、取得的知识和经验很少交流、未对人员工作情况做出评定、未作严格移交、扩充性建议未写入文档资料。

总之,问题涉及到软件项目研制中的计划制定、进度估计、资源使用、人员配备、组织结构和管理方法等软件管理的许多侧面。

软件项目成功的关键因素:

项目经理必须关注项目成功的三个标准:准时、预算控制在既定的范围内、质量得到经理和用户们的赞许

任何事都应当先规划再执行;

项目经理必须以自己的实际行动向项目小组成员传递一种紧迫感;

成功的项目应使用一种可以度量且被证实的项目生命周期;

所有项目目标和项目活动必须生动形象地得以交流和沟通;

采用渐进的方式逐步实现目标;

项目应得到明确的许可,并由投资方签字实施;

要想获得项目成功必须对项目目标进行透彻的分析;

项目经理应当责权对等;

项目投资方和用户应当主动介入,不能被动地坐享其成;

项目的实施应当采用市场运作机制;

项目经理应当获得项目小组成员的最佳人选。

软件项目管理组织的实体形式是项目管理委员会

项目管理小组

项目评审小组

软件产品项目组

软件项目管理的内容

从软件工程的角度讲,软件生存期(软件孕育、诞生、成长、成熟、衰亡的过程)包括六个阶段(软件生存期模型不同

制定计划Planning

需求分析和定义Requirement Analysis and Definition

软件设计Software Design

程序编写Coding, Programming

软件测试Testing

运行/维护Running/Maintenance

重点是将软件配置管理软件质量管理软件风险管理开发人员管理四方面内容导入软件开发的整个阶段。

1.1.软件配置管理

软件配置管理简称SCMSoftware Configuration Management的缩写),是在团队开发中,标识、控制和管理软件变更的一种管理。配置管理的使用取决于项目规模复杂性以及风险水平。软件的规模越大,配置管理就显得越重要。

1.1.1.软件配置管理应提供的功能

ISO9000.3中,对配置管理系统的功能作了如下描述:

1) 唯一地标识每个软件项的版本;

2) 标识共同构成一完整产品的特定版本的每一软件项的版本;

3) 控制由两个或多个独立工作的人员同时对一给定软件项的更新;

4) 控制由两个或多个独立工作的人员同时对一给定软件项的更新;

5) 按要求在一个或多个位置对复杂产品的更新进行协调;

6) 标识并跟踪所有的措施和更改;这些措施和更改是在从开始直到放行期间,由于更改请求或问题引起的。

1.1.2.版本管理

软件配置管理分为版本管理问题跟踪建立管理三个部分,其中版本管理是基础。版本管理应完成以下主要任务:

建立项目;

重构任何修订版的某一项或某一文件;

利用加锁技术防止覆盖;

当增加一个修订版时要求输入变更描述;

提供比较任意两个修订版的使用工具;

采用增量存储方式;

提供对修订版历史和锁定状态的报告功能;

提供归并功能;

允许在任何时候重构任何版本;

权限的设置;

晋升模型的建立;

提供各种报告。

1.1.3.配置管理软件PVCS 6.0

PVCS6.0是一套非常优秀的配置管理软件,它能够实现配置管理中的各项要求,并且能和多种流行开发平台集成,为配置管理提供了很大的方便。

1.2.软件质量管理

随着软件开发的规模越来越大,软件的质量问题显得越来越突出。软件质量的控制不单单是一个软件测试问题,在软件开发的所有阶段都应该引入质量管理。加强国家标准“信息技术软件生存期过程”(GB/T8566--1995)的规范管理,通过ISO 9000.3

1.2.1.软件质量保证计划

在进行软件开发前,需要有一个《软件质量保证计划》。目前较常用的是ANSI/IEEE STOL730—1984983--1986标准,包括以下内容:

1. 计划目的

2. 参考文献

3. 管理

组织

任务

责任

4. 文档

目的

要求的软件工程文档

其他文档

5. 标准和约定

6. 评审和审计

目的

评审要求

软件需求的评审

设计评审

软件验证和确认评审

功能评审

物理评审

内部过程评审

管理评审

7. 测试

8. 问题报告和改正活动

9. 工具、技术和方法

10. 媒体控制

11. 供应者控制

12. 记录、收集、维护和保密

13. 培训

14. 风险管理

1.2.2.质量管理的基本原则

控制所有过程的质量;

过程控制的出发点是预防不合格;

质量管理的中心任务是建立并实施文件化的质量体系;

持续的质量改进;

有效的质量体系应满足顾客和组织内部双方的需要和利益;

定期评价质量体系;

搞好质量管理关键在于领导。

1.2.3.软件质量因素

正确性:系统满足规格说明和用户目标的程度,即,在预定环境下能正确地完成预期功能的程度。

健壮性:在硬件发生故障、输入的数据无效或操作错误等意外环境下,系统能做出适当响应的程度。

效率:为了完成预定的功能,系统需要的计算资源的多少。

完整性(安全性):对未经授权的人使用软件或数据的企图,系统能过控制(禁止)的程度。

可用性:系统在完成预定应该完成的功能时令人满意的程度。

风险:按预定的成本和进度把系统开发出来,并且为用户所满意的概率。

可理解性:理解和使用该系统的容易程度。

可维修性:诊断和改正在运行现场发现的错误所需要的工作量的大小。

灵活性(适应性):修改或改进正在运行的系统需要的工作量的多少。

可测试性:软件容易测试的程度。

可移植性:把程序从一种硬件配置和(或)软件系统环境转移到另一种配置和环境时,需要的工作量多少。有一种定量度量的方法是:用原来程序设计和调试的成本除移植时需用的费用。

可再用性:再其他应用中该程序可以被再次使用的程度(或范围)。

互运行性:把该系统和另一个系统结合起来需要的工作量的多少。

1.2.4.软件评审

软件评审并不是在软件开发完毕后进行评审,而是在软件开发的各个阶段都要进行评审。因为在软件开发的各个阶段都可能产生错误,如果这些错误不及时发现并纠正,会不断地扩大,最后可能导致开发的失败。

1.2.5.ISO9000.3软件质量认证体系

ISO9000.3ISO9000质量体系认证中关于计算机软件质量管理和质量保证标准部分。它从管理职责、质量体系、合同评审、设计控制、文件和资料控制、采购、顾客提供产品的控制、产品标识和可追溯性、过程控制、检验和试验、检验/测量和试验设备的控制、检验和试验状态、不合格品的控制、纠正和预防措施、搬运/贮存/包装/防护和交付、质量记录的控制、内部质量审核、培训、服务、统计系统等二个方面对软件质量进行了要求。

1.2.6.测试

软件测试是软件开发的一个重要环节,同时也是软件质量保证的一个重要环节。所谓测试就是用已知的输入在已知环境中动态地执行系统(或系统的部件)。测试一般包括单元测试、模块测试、集成测试和系统测试。如果测试结果与预期结果不一致,则很可能是发现了系统中的错误,测试过程中将产生下述基本文档:

测试计划:确定测试范围、方法、和需要的资源等。

测试过程:详细描述和每个测试方案有关的测试步骤和数据(包括测试数据及预期的结果)。

测试结果:把每次测试运行的结果归入文档,如果运行出错,则应产生问题报告,并且必须经过调试解决所发现的问题。测试结果:把每次测试运行的结果归入文档,如果运行出错,则应产生问题报告,并且必须经过调试解决所发现的问题。  

1.3.软件风险管理

软件项目管理存在着风险,如果我们提前重视风险,并且有所防范,就可以最大限度减少风险的发生。进行风险管理是有效的手段。

1.3.1.风险的分类

根据风险内容,我们可以将风险分为:

项目风险(成本提高,时间延长等);

技术风险(技术不成熟等);

商业风险(销售问题等);

战略风险(公司的经营战略发生了变化);

管理风险(公司管理人员是否成熟等);

预算风险(预算是否准确等)。

另外,我们还可以将风险分为已知风险(如员工离职等)、可预报风险(从以往经验得出可能有风险的)和不可预知风险

1.3.2.风险的识别

风险识别的有效方法是建立风险项目检查表。主要涉及以下几方面检查:

产品规模风险检查

业务影响风险检查

与客户相关的风险检查

过程风险检查

技术风险检查

开发环境风险检查

与人员的模式和经验有关的风险检查

1.3.3.风险评估

风险评估主要从下面七个方面进行:

发生的可能性

发生的结果(影响)

建立一个尺度表示风险可能性(如,极罕见、罕见、普通、可能、极可能)

描述风险带来的后果

估计对产品和项目的影响

确定风险评估的正确性

根据影响排定有限队列

另外,要对每个风险的表现、范围、时间做出尽量准确的判断。

1.3.4.风险的评价

对风险的评价主要依据三个因素:风险描述、风险概率和风险影响。从成本、进度及性能三个方面对风险进行评价。确定项目的中止点,在中止点出再一次进行风险评价。

1.3.5.风险的驾驭和监控

风险的驾驭与监控主要靠管理者的经验来实施。如,某开发人员的离职概率是0.7,离职后会对项目造成一定的影响,则该风险驾驭和监控的策略如下:

与在职人员协商,确定流动原因。

在项目开始前,把缓解这些流动原因的工作列入风险驾驭计划。

项目开始时,作好人是会流动的准备,采取一些措施确保人员一旦离开时,项目仍能继续。

制定文档标准,并建立一种机制,保证文档及时产生。

对所有工作进行细微详审,使更多人能够按计划进度完成自己的工作。

对每个关键性技术人员培养后备人员。

在考虑风险成本之后,决定是否采用上述策略。

1.4.人员管理

科技发展以人为本,软件工作是一种智力活动,软件项目管理的核心是人力资源建设。

1.4.1对项目经理的要求

能够使小组每个成员都能发挥能力

有一定的组织能力

能够使小组每位成员有成就感

有提出解决问题方案的能力

对问题的理解有一定的深度

要能让成员知道软件质量的重要性

1.4.2人员的通讯方式

(1) 正式非个人方式,如正式会议等;

(2) 正式个人之间交流,如成员之间的正式讨论等(一般不形成决议);

(3) 非正式个人之间交流,如个人之间的自由交流等;

(4) 电子通讯,如E-MAIL(电子邮件)、BBS(电子公告板系统)等;

(5) 成员网络,如成员与小组之外或公司之外有经验的相关人员进行交流;

在实践中发现,(5)的通讯效率最高,其次是(1)。

1.4.3人力资源管理中的风险管理

在进行人力资源管理时,我们往往重视招聘、培训、考评、薪资等各个具体内容的操作,而忽视了其中的风险管理问题。其实,每个企业在人事管理中都可能遇到风险,如招聘失败、新政策引起员工不满、技术骨干突然离职等等,这些事件会影响公司的正常运转,甚至会对公司造成致命的打击。如何防范这些风险的发生,是我们应该研究的问题。特别是高新技术企业,由于对人的依赖更大,所以更需要重视人力资源管理中的风险管理。

二、编写《软件项目计划书》

项目组成立的第一件事是编写《软件开发计划书》,在计划书中描述开发日程安排、资源需求、项目管理等各项情况的大体内容。计划书主要向各相关人员发放,使他们大体了解该软件项目的情况。对于计划书的每个内容,都应有相应具体实施手册,这些手册是供项目组相关成员使用的。

《软件项目计划书》一般应该包括下述内容:

1. 引言

计划的目的

项目的范围和目标

2. 项目估算

使用的历史数据

使用的评估技术

工作量、成本、时间估算

3. 风险管理战略

风险识别

有关风险的讨论

风险管理计划

4. 日程

项目工作分解结构

时限图(甘特图)

资源表

5. 项目资源

人员

硬件和软件

特别资源

6. 人员组织

组织结构

管理报告

7. 跟踪和控制机制

质量保证和控制

变化管理和控制

8. 附录

三、项目管理软件应用浅析

目前项目管理软件根据功能和价格水平被分为两个档次

一种是高档项目管理软件,是供专业项目管理人士使用的软件,这类软件功能强大,价格一般在2000美元以上,如Primavera公司的P3Gores技术公司的 ArtemisABT公司的WorkBenchWelcom公司的OpenPlan等。

另一类是低档项目管理软件,应用于一些中小型项目,这类软件虽功能不是很齐全,但价格较便宜,如 TimeLine公司的TimeLineScitor公司的ProjectSchedulerPrimavera公司的 SureTrakMicrosoft公司的Project98/2000等。

项目管理软件在我国的应用起步较早,80年代初期就有很多单位开始使用。

到了90年代,随着与国际接轨的需要,国内很多单位已接收了国外项目管理的思路,很多单位也引进了国际先进的项目管理软件,已经积累了部分经验和数据。目前在国内使用项目管理软件进行项目管理的项目和企业已有上千家。综合国内的应用情况,分为以下几种:

运用项目管理软件编排进度计划,在项目投标以及工程开工之前均能用这些软件来编制计划。

通过进度和资源结合使用,分析资源的强度和资源的使用安排是否满足要求。

根据施工组织措施来编制进度和资源计划,根据计划来安排生产,通过计划对进度进行控制。

项目管理的数据与企业管理信息系统(MIS)集成,通过数据共享,减少重复输入。

通过InternetIntranet对远程项目进行控制。

使用项目管理软件辅助项目管理已经成为项目经理们的共识;使用项目管理软件进行项目管理可以提高项目的管理水平,增强计划的可执行性,提高资源的有效配置,加强成本管理,提高企业的竞争能力。

在项目上应用项目管理软件系统首先要解决两个问题:

其一是自主开发还是引进为主,再做二次开发?对核心软件还是以引进为主,在此基础上做少量二次开发工作,以满足工程的某些特殊需求。

其二是项目管理的核心是什么?对于项目管理的核心问题,有人说是进度管理,有人说是成本管理,也有人说是合同管理,这要根据项目的不同情形而定。确定了核心之后,就应围绕着核心来构筑项目管理系统。先确定核心软件,然后再着手开发和引进周边软件系统。切忌把整个项目管理软件系统搞得很大、很全,重点不突出,核心数据湮没在整个项目信息的汪洋大海中。

现在介绍两个项目管理软件:

开发过程管理软件PVCS

PVCS是软件开发管理工业领域遥遥领先的领导者”

PVCS是世界领先的软件开发管理工具,市场占有率达70%以上,是公认的事实上的工业标准。“PVCS是软件开发管理工业领域遥遥领先的领导者”。PVCS作为当今优秀的软件开发管理解决方案,通过对软件开发过程中产生的变更进行追踪、组织、管理和控制,建立规范化的软件开发环境,日益成为全球越来越多的软件机构解除困境的首选工具。

PVCS是软件开发的基础结构,就像建造房屋或任何一个新的建筑物,大部分时间和精力要花在地基的构造,以及道路、布线、电力、水源等基础设施的建设上。PVCS在软件开发过程中可以完善地管理软件系统中的多重版本;自动创建完整的文档,保障软件的维护;全面记载系统开发的历史过程,包括谁作了修改,修改了什么,为什么修改;管理和追踪开发过程中危害软件质量以及影响开发周期的缺陷和变化;管理需求分析等。其优势:

1) 规范开发过程,缩短开发所需的时间,减少开发成本;

2) 完整详细地记载了开发历史过程,便于软件维护;

3) 通过排除开发中的错误、加强软件一致性和可重用性提高软件质量。

Microsoft Project 2000

“微软的东西一般比较具有人性化,很好用”

Microsoft Project 是一种功能强大而灵活的项目管理工具,可以用于控制简单或复杂的项目。它能够帮助您安排和追踪所有的活动,从而使您对它们的进度了如指掌。

关于Microsoft Project 2000的具体介绍,我们可以参看他的帮助文件。个人觉得,项目管理软件达到如此的境界已经很了不起了,我的很多想法和模型都是参考了他的经验的,只是我增加了网络共享的功能;我的论文的另一个特色是实现了文档管理功能。

四、基于Apache+MySQL+PHP的软件项目管理系统的关键技术

选择Apache+MySQL+PHP模型,构建项目管理平台需要解决如下关键技术:

4.1.Apache建立Web站点

Apache服务器的设置文件位于/usr/local/apache/conf/目录下,传统上使用三个配置文件httpd.conf,access.confsrm.conf,来配置Apache服务器的行为。

httpd.conf提供了最基本的服务器配置,是对守护程序httpd如何运行的技术描述;

srm.conf是服务器的资源映射文件,告诉服务器各种文件的类型,以及如何支持这些文件;

access.conf用于配置服务器的访问权限,控制不同用户和计算机的访问限制;

这三个配置文件控制着服务器的各个方面的特性,因此为了正常运行服务器便需要设置好这三个文件。

建立Web站点是构建基于Apache+MySQL+PHP的软件项目管理平台的前提条件。

4.2.MySQL建库策略

数据库的设计和建设是软件项目管理平台构建的基础。

MySQL是一种小型的、紧密的数据服务器,支持标准SQL

PHPMySQL都是免费的开放源码;

PHPMySQL合理且有效的结合在一起可以建设精致的数据库应用系统;

二者的结合可以在WINDOWS中发展,在UNIX/Linux中做服务。

因为还没有建立具体的模型,也就没有设计数据词典。建库策略主要涉及数据类型(数字类型、日期时间类型、字符(串)类型、枚举和集合类型)。

4.3.PHP编程与应用

PHP是服务器端的内嵌HTML脚本编程语言,由于PHP具有快速、可靠、跨平台应用、源代码开放等特点,使得PHP成为最受欢迎的服务器端Script语言之一。

作为最基本的应用,PHP能够完成任何其他CGI程序所能完成的任务,如收集表格数据、产生动态页内容,或者发送、接收cookies

PHP最强大、最突出的特性在于它能支持大量的数据库,这使得编写支持数据库的网页变得越来越简单。尤其是对于MySQL等数据库的存取,非常直接、简练,没有额外的开销,简直就如同一支手直接伸入数据库抓去东西一样!

PHP同时也支持使用其他协议的服务,如IMAPSNMPNNTPPOP3HTTP等。用户也可以开创全新的网络服务方式,与其他协议相互作用。

当然,人无完人,金无赤金。PHP现在一个比较大的缺陷在于,它仅是一个脚本开发和运行环境,还不支持ASP中的ActiveX类似的组件开发,或者JSP中的Servlet。这一点限制了它在对业务有专门性要求的领域的应用。但是,这种缺陷可能是暂时的,毕竟PHP被广为人知还没有几年时间,而现在全球很多程序员正日夜对它做升级开发,相信PHP不断有惊人表现。

实践证明Apache+MySQL+PHP是最佳搭配。

五、Demo系统

我认为,软件项目管理中的文档管理是其基础,实际上,管理和共享文档的方式有很多中:

最方便的是FTP管理模式,但其对筛选和查询支持不足;

静态HTML方式工作量大和更新不及时;

邮件方式对协作有相当的限制。

我和合作伙伴采用Apache+MySQL+PHP开发了一个文档管理系统,目前还只是一个雏形,希望功能完善后能作为软件项目管理系统的一个模块。

5.1文档管理系统

MySQL+PHP的支持系统是Windows2000 Server,也完全也支持Unix/Linux系统;

MySQL的支持系统是FreeBSD,可以扩展到Windows2000 Server/Unix操作系统;

数据库和程序在不同的服务器,相对独立和安全;

文档的基本操作:添加、修改、锁定、解锁、推荐和删除等待,并有强大功能的搜索、评论、浏览、推荐给朋友等功能,并对安全性进行着重加强。

“完善中的文档管理系统”

目前还只是一个独立的模块,许多功能和设计思想的实现有许多工作要做。

5.2后续工作

3个月的时间构建完整的软件项目管理平台是非常困难的,我预计真个系统的设计开发周期是18个月时间,其中包括测试和试用,形成产品需要更多工作要做,后续工作主要包括:

继续调研,确定系统的功能和设计方案;

编写《AMPPMS软件开发文档》;

建立基于Apache+MySQL+PHP的软件项目管理系统模型:这是整个工作的关键;

组建开发团队,进行系统开发;

试用和产品推广。

六、参考资料

6.1参考著作

(1) 《实用软件工程》(第二版),郑人杰等,清华大学出版社,19974

(2) 《软件工程Java语言实现》(Software Engineering with Java)(第四版),(美)Stephen. Schach,机械工业出版社,19993

(3) PHP4.0程序员参考》(PHP4.0 Programmer’s Reference),希望图书创作室,北京希望电子出版社,20008

(4) Unix技术大全》,Robin Burk,机械工业出版社,19978

(5) Windows 2000 Server系统实务》,施威铭研究室,人民邮电出版社,200011

(6) 《计算机网络》(Computer Networks)(第三版),Andrew S. Tanenbaum19987

(7) 《数据仓库》(Building 他和DataWarehouse)(第二版),W.H.Inmon,机械工业出版社,20005

(8) Visual InterDev6网络开发宝典》,Richard Mansfield, Debbie Revette,人民邮电出版社,19995

(9) 网络工程丛书:《IP网络路由基础》(IP Routing Primer),《网络互联故障排除手册》(Internetworking Troubleshooting Handbook),《因特网的路由选择技术》(Internet Routing Architectures),电子工业出版社,199910

(10) 《成功的项目管理》,(美)吉多、(美)克莱门斯,机械工业出版社,199910

6.2参考文章

(1) ISO9000族标准的主要内容

(2) 获得项目管理的"上岗证"

(3) 如何从管理到领导--HR呼唤角色转换

(4) 什么是项目管理

(5) 项目管理提示

(6) 项目管理中需要处理好的四个问题(国家电力公司西北电力设计院 荣永华)

(7) 如何让HR管理更加专业化

(8) 知识型职业经理人

(9) 请走出HR管理的五大误区

(10) 企业"立人"的四大法则

(11) 如何建立最高管理团队

(12) 公司需要什么样的HR管理

(13) 如何从管理到领导--HR呼唤角色转换

(14) ERP实施的项目管理(施能自《IT经理世界》)

(15) 项目管理:业绩为上(朱小凡编译)

(16) 对工程项目管理系统的理解(by AMT 罗清江)

(17) 国际工程的项目管理模式

(18) 项目成功的12个关键原则(by AMT 施国良编译)

(19) 一切都将成为项目(袁丽 IT经理世界》)

(20) 系统集成项目实施的管理(by AMT 胡文光)

(21) 三峡工程的进度管理(中国长江三峡工程开发总公司工程信息部)

(22) 高速公路工程计算机合同管理的案例--京沪高速公路河北段公路工程合同管理(上海普华应用软件有限公司 邢克俭 河北省京沪高速公路建设管理处 徐磊)

(23) 项目管理软件应用浅析(上海普华应用软件有限公司 汪清生)

(24) 微软项目管理软件的二次开发(航空工业总公司六二五所 王书森)

(25) 配置管理--实施软件质量管理的关键(湖南创发邮电通信技术开发有限公司 熊绳祖)

(26) 完善的项目交流与管理软件--Microsoft Project 98 中文版

(27) MIS系统开发中的项目管理(李弋 姚平)

(28) 论工程管理在系统集成中的作用(曙光信息产业有限公司 沈华 阎保平 黑龙江省通信软件工程局 郭利江 邴歌今)

(29) 对软件项目管理的探讨(by AMT 李剑)

(30) 项目管理概述

(31) 项目管理的适用性

(32) 现代工业企业中的项目管理

(33) 为什么要对项目管理进行计划与控制

(34) 项目计划的特点及其主要内容

(35) 项目进度计划方法

(36) 项目成本估算

(37) 项目控制的一般方法

(38) 以计算机为基础的项目管理信息和控制系统

(39) 工作分解结构(WBS)在项目控制中的应用

(40) 项目管理组织项目管理与网络计划技术

(41) Microsoft Project 98中文版对促进我国项目管理现代化的重要作用(吴乃柏 《工业工程与管理》)

(42) ERP产品国内企业用户名录(by AMT整理)

(43) 国内企业管理应用软件厂商名录(by AMT整理)

(44) 开发过程管理软件PVCS(朱春燕,BBS水木清华站:精华区)

(45) 配置Apache服务器(王波,http://www.sina.com.cn

(46) PHP+MYSQL的文章管理系统

(47) 也谈 PHP MYSQL

(48) MySQL的数据类型和建库策略

(49) PHP应用技巧二则

(50) 数据挖掘概述

6.3参考网站

(1) 企业资源管理研究中心(AMT)(http://www.amteam.org/default.htm

(2) 奥索网 Open Source Onlinehttp://www.oso.com.cn/

(3) 新浪网(http://www.sina.com.cn

(4) LinuxAid 专业技术服务网站(http://www.linuxaid.com.cn/

(5) ISOhttp://www.iso.ch/

(6) 北大天网(http://e.pku.edu.cn

七、多余的话

关于我的论文和我的论文过程,我还想在说几句,或者说我想告诉大家我作了什么工作,还有那些工作是想做没有作的,还有一些是我的迷惑。

1. 我为什么要选择这个论文题目?

我在准备的论文的时候,因为原来在处理软件工程的作业的时候,发现了一些写《计算机软件开发文档》的工具,以为能找到很多项目管理软件,实际上很失望,我最后只找到了4个相关软件,包括一位朋友从武汉快递给我的Microsoft Project 2000,由此可见,项目管理在国内还是大有市场的,我的论文也是有积极的意义的。

实际上,我的论文题目是有变化的:

Linux环境下构建项目管理平台

基于Apache+MySQL+PHP的项目管理系统的设计与开发

基于Apache+MySQL+PHP的项目管理系统的设计

基于Apache+MySQL+PHP的软件项目管理系统的设计

题目的变化也说明我的设计思想逐步成熟,也认识到工作的意义和困难。

2. 我做了那些工作?

《论文日程安排》和《我的论文技术学习时间表》

参考著作:10

参考文章:50

参考网站:6

其中这50多篇文章我是认真看过的,很有收获和体会。

3.没有实现的目标?

原计划是要建立基于Apache+MySQL+PHP的软件项目管理系统模型的,但一直没有成功,所以在这儿产生了瓶颈。

另外,技术实现上还有诸多的困难要克服,一些关键技术也需要进一步探讨。

4.特别感谢

感谢黄荣怀老师、朱小明老师、陈星火老师的悉心指导,感谢陈硕、赵国庆同学的支持,感谢我的哥哥给予我的鼓励,感谢我父母的关心!

四年的大学生活,我学会了生存、做事、做人和协作,未来还需要更加勤奋的工作,相信生活会灿烂!

基于Apache+MySQL+PHP的软件项目管理系统的设计

相关推荐