《网上招投标系统实现评标11035.pdf》由会员分享,可在线阅读,更多相关《网上招投标系统实现评标11035.pdf(14页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、数学与计算机学院 课程设计说明书 课 程 名 称:软件工程课程设计 课 程 代 码:8404831 题 目:网上招投标系统-实现评标模块 年级/专业/班:2009 级软件工程 4 班 学 生 姓 名:学 号:开 始 时 间:2011 年 05 月 23 日 完 成 时 间:2011 年 06 月 06 日 课程设计成绩:学习态度及平时成绩(30)技术水平与实际能力(20)创新(5)说明书(计算书、图纸、分析报告)撰写质量(45)总 分(100)指导教师签名:年 月 日 软件工程 课程设计任务书 学院名称:数学与计算机学院 课程代码:_ 8404131_ 专业:软件工程 年级:2009 级 一、
2、设计题目 网上招标投标系统-实现投标模块。二、主要内容 招投标所面临的具体问题出发,基于互联网平台,实现了招标、投标、评标工作的网络化、电子化作业。根据项目规划进行招投标管理,依据具体招标项目,招标方可以通过系统编制招标计划、发布招标信息、管理招标过程并进行评标定标。投标方通过互联网能够方便参与其中,向招标方发去投标意向,在得到招标方邀标之后可以通过系统进行投标管理。在整个招投标过程中,系统对过程资料和投标资料进行严格管理。评标专家可以进行远程多方面综合网上评标,决定最终中标方并在网上公布中标信息。系统招投标管理具有强大的网络化协同作业功能,支持多种招标、评标、开标方式,具备严格的招标流程管理
3、和严谨的安全管理体系,能够杜绝招投标信息泄露,防止暗箱操作,确保招投标和评标工作的公平、公正、公开,降低招投标成本,提高了招投标工作效率。三、具体要求及应提交的材料 具体要求:本课程设计要求学生运用软件工程的思想,严格按照软件生命周期各阶段的目的和任务,完成对系统的分析、设计、编码、及测试。1完成系统的需求分析 2完成系统的设计:针对分析阶段提出的软件要求,给出实现的方案和具体细节的说明。(1)导出系统的数据流程图和功能模块图。(2)设计数据库。使用 Microsoft Access 创建数据库。确定数据库中数据表的组成。确定数据表中字段的构成、主键字段和有关字段的约束条件等。依靠数据表中主键
4、字段建立数据表之间的关系,并由此建立数据表之间的参照完整性约束。(3)根据功能确定软件模块组成及调用关系。(4)确定每个模块的数据结构及算法。3编码 建造模块,在可视化编程环境下,按照软件设计要求制作界面和完成对模块的编码,由此使软件设计具体化为软件作品。4.测试 编写合适的测试用例完成系统的测试工作并分析结果。5编写课程设计报告 应提交材料:1上交源程序:学生按照课程设计的具体要求所开发的所有源程序(应该放到一个文件夹中);2课程设计报告的打印稿和电子稿;四、主要技术路线提示 1认真阅读相关知识,完成系统的功能分析和系统设计 2选用 ACCESS 作为 DBMS 五、进度安排 序号 设计内容
5、 天数 1 分析设计内容,给出解决方案 3 2 创建数据库及建表 3 3 可视化界面设计 3 4 对所建数据库进行设计,整理设计思路,编码、测试,写出课程设计报告 3 5 指导老师检查设计结果并做成绩评定 2 总 计 14 六、参考资料 1 张海藩.软件工程导论.北京:清华大学出版社,2004 2 陈明.实用软件工程基础.北京:清华大学出版社,2003 3 殷人昆.实用软件工程.北京:清华大学出版社,2003 指导教师 签名日期 年 月 日 系 主 任 审核日期 年 月 日 目 录 1.前言 1 2.需求分析 2.功能分析 3.方案分析 4 3.概要设计 4.数据结构 4.逻辑结构与物理结构
6、5.功能模块划分 5 3.3.1结构框图5 3.3.2程序流图5 4.详细设计 6.数据类型定义 6.专家选取 6 评分项目设定 8 .专家评分 10 5实现与调试分析 12 实现环境 12 语言选择 12 调试分析 12 6测试分析 13 测试用例 13 专家选取13 评分项目设定13 专家评分13 测试结果 14 性能分析 15 7用户手册 16 总结 17 致谢 18 参考文献 19 前言 随着信息社会和知识经济时代的到来,新科学、新技术不断涌现,随着计算 机网络的快速发展,招投标也由原来的手工操作方式逐步转变到在Internet网上进行的方式。网上招投标是指通过专用招投标电子商务平台,
7、将招投标过程中的各个角色,如招标方、投标方、评标专家、政府监督机构等连接起来,企业、机关和个人在网上传递投标数据,评标、开标均采用电子手段,通过网络发布中标结果的一种招投标方式。凭借互联网的运行成本低、覆盖面广的优势,网上招投标将传统的招投标过程转变为一个简单、方便、快捷的过程,并通过无处不在的网络将招投标信息传送到各行各业。2.需求分析 需求分析原理 用户是任何系统赖以生存和发展的基础。系统在开发前了解用户的需求是系 统成功的关键步骤。用户需求是用户对要开发的系统提出的各种要求和期望,包 括系统的功能、性能、可靠性、保密、交互方式等技术性要求和资金强度、交付 时间、资源使用限制等非技术性要求
8、。为了了解系统的用户需求,进行系统的需 求分析必不可少。需求分析是开发网上招投标系统前的基础,它通过与系统潜在 用户进行书面和口头调查交流,得到用户需要从系统所要求获取的信息和所要求 的功能。同时根据系统数据的软件设计要求进行整理,达到系统要求的概况描述。1用户情况 不同级别的用户对信息的需求和管理权限是不同的,系统应设计完善的权限 系统来保障系统正常稳定运行。2功能要求 打破原有信息孤立和信息重复建设的局限,系统能提供规范化和标准化的数 据,提供异种数据的互换、融合及数据的传输与同步;实现信息系统的集成访问。3性能要求 1)安全性:包括数据安全和用户安全。一方面要求具有数据保密并安全传输 的
9、功能、具有数据备份及安全恢复功能,方便的数据维护功能以及数据传 输加密机制;另一方面要求用户信息的保密和安全,具有严密的用户保密 和认证体系。2)稳定性:基于网络运行的系统与其它系统相比具有更多的用户数量,因此 更需要考虑系统的稳定性。传统的系统在单机或少量用户的情况下运行良好,但在大量网络并发用户的情况下却会导致系统崩溃。稳定性包括:一是要求支持并发的多用户访问,支持网络的大量用户点击。二是系统对一般故障的自动恢复能力,系统维护方便快捷。3)高效性:系统的等待时延对于用户使用系统的主观印象很不好,网络系统的时延包括网络传输时延和系统反应时延,网络传输时延取决于现行的网络软硬件,在单个系统中往
10、往无法改变。所以只有提高系统反应时延来提高系统的性能。因此需要设计系统查询、分析和处理功能的快速实现,尽量缩短系统的反应时间。功能分析 具体实施方案 评分 图 数据流图 图 E-R 图 方案分析 面向对象设计,将属性和方法统一封装于一体,采用自上而下的结构话设计思想对其进行逐步求精以实现功能。3.概要设计 数据结构 专家抽选 评分项目设定 专家评分 投标方 专家 投标方 ID 公司名称 邮政编码 联系电话 联系地址 电子邮箱 负责人 专家 评 分 姓名 联系电话 职业 联系地址 工作单位 项目 评标管理 项目种类 被评分公司名称 评分项目名称 专家给出的分数 评分时间 项目编号 评分信息 图
11、评分信息 E-R 图 逻辑结构与物理结构 将上述的 E-R 图转换为关系模式,如下:投标方(ID,公司名称,联系电话,联系地址,邮政编码,电子邮箱,负责人)专家(姓名,职业,联系电话,联系地址,工作单位);评分信息(评分项目名称,项目编号,项目种类,被评分公司,专家给出的分数,评分有效性,评分时间);功能模块划分 评标管理主要包括以下功能模块:专家的选取,项目的设定,专家评分。以下为个功能模块进行简略描述:专家抽选:选出合适的奇数个专家;项目的设定:设定要涉及的评分项目;专家评分:专家选取竞标公司进行评分。结构框图 流程图 4.详细设计 抽象数据类定义 Class Score private:
12、char*Score_project;int Project_id;char kind;char*Score_company;char*Score_name;int Grade;char Score_whether;int Score_time;public:评分有效性 评标管理 专家抽选 评分项目设定 专家评分 制定评分项目 专家抽选 专家评分 公布评分结果 专家抽选 为了可以更公平、公正的实现招投标的整个过程,在设计本系统的过程中加 入了专家抽选的功能。专家抽选流程如图所示,首先要根据项目设定抽选专 家的范围及标准,再由招标方通过专家抽选页面,按要求在众多的专家中,找出 适合的专家。然后由
13、招投标双方经过商议确定奇数个为此项目评分的专家,最后 在这些专家中选出规定个数的专家来进行评分,并向所有被选出参加评分的专家 发出邀请。专家抽选用例图形象的显示了专家抽选流程中涉及到的各种操作,如图 所示。专家抽选用例说明对该用例图进行了简要的介绍,如表所示。表:专家抽选用例说明 用例说明 专家抽选 简要说明 设定规则选择专家 参与者 招标代表 前置条件 登录系统 主流事件 1.设定专家过滤规则 2.选择专家 3.向专家发起邀请 后置条件 专家评标 图:专家抽选用例图 图:专家抽选流程图 评分项目设定 由于招标项目的不确定性,所以每次评标时的评分项目也不尽相同,这样就 需要在专家为各个公司评分
14、前,由招标方确定所有的评分项目。在系统刚投入使 用时评分项目是没有的,为了以后使用上的方便,在使用过程中应该由招标方将 这些评分项目存储到数据库中。在这里要注意的是评分项目是由大项和小项组成 的,在一个大项下可以存在着若干个小项,也可以不存在小项。有时需要在某个 大项下增加的一个小项可能会和某一个大项是重名的,在这种情况下系统并不会 报错,但是如果新增加大项的名称与已有的某个大项名称重名就会报错,并且提 设定专家范围及标准 选出合适专家 确定奇数个专家 选出专家 向专家发出邀请 示为此大项重新命名。在设定评分项目时需要先确定所有的大项,再为各个大项添加所需的小项。所以如果有缺少项目的情况,要先
15、添加大项,再在相应的大项下添加小项。有的评分项目设定完成后,再把新添加的项目存储到数据库中相应的表下,方便以后使用。评分项目设定用例图形象的显示了评分项目设定流程中涉及到的各种操作,如图所示。评分项目设定用例说明对该用例图进行了简要的介绍,如表所示。表:评分项目设定用例说明 用例说明 设定评分项目 简要说明 设定评分项目 参与者 招标代表 前置条件 登录系统 主流事件 1.设定评分项目 2.添加评分大项 3.添加评分小项 4.检查完整性 后置条件 专家评分 图:评分项目设定流程图 图:评分项目用例图 4.3 专家评分 专家评分流程如图所示,专家先通过登陆页面登陆到系统,在专家评分 页面里按照招
16、标项目,筛选出这次评标工作所需要评分的公司,然后为这些公司 评分。由于在为公司评分时只能逐个进行,所以在选择评分公司时,使用的是单 选而不时复选。这样一来在为其中一个公司评分完毕后,需要选择是否继续评分。如果还要继续评分则在提交评分结果后,返回选择其他公司继续评分,直到为所 有需要评分的公司评分完毕;如果只是为这一家公司评分,则评分完毕后直接提 交评分结果。所有评分结果一经提交将只可查看不可修改。专家评分用例图形象的显示了专家评分流程中涉及到的各种操作,如图 所示。专家评分用例说明对该用例图进行了简要的介绍,如表所示。表:专家评分用例说明 用例说明 专家评分 简要说明 专家给个竞标公司评分 参
17、与者 专家 前置条件 专家选择,评分项目 主流事件 1.选择评标项目 2.选择竞标公司 3.评分 后置条件 中标信息发布 图:专家评分用例图 是 图:专家评分流程图 5.实现与调试分析 实现环境 Windows 环境+visual studio 2010 语言选择 C+5.3 调试分析 成功测试后,为了找出产生症状的原因,以便改正错误,做了调试分析。在调试过程中通常的3种途径为:蛮干法,回溯法,原因排除法。而我们一般采用的是回溯法。图:调试 图:调试结果 6.测试分析 测试用例 测试方法有白盒测试和黑盒测试两种。黑盒测试法把程序看作一个黑盒子,完全不考虑程序的内部结构和处理过程,而白盒测试的前
18、提是把程序完全堪称装在一个白盒子里,测试者完全知道程序的结构和处理算法。故采用的是白盒测试。专家选取 姓名:Tom;职位:教授;联系地址:北京;工作单位:北京大学;评分项目设定 项目编号:001;项目名称:维护 评分项目的设立 选择评标项目 选择评标公司 为竞标公司评分 提交评分结果,并标注已评分 退出评分 是否继续评分 评分项目名称:维护 项目编号:001 项目种类:3 被评分公司名称:传奇 评分专家姓名:Tom;专家给出的分数:30 评分是否有效:Y 评分时间:1997-08-08 测试结果 图:专家选取的测试结果 图:评分项目设立的测试结果 图:录入评分信息的测试结果 图:显示评分信息的
19、测试结果 性能分析 1、结构设计不合理造成性能问题 结构设计包括程序结构设计和数据结构设计,这两部分一定要综合考虑,但我发现大多数的软件对程序结构设计偏重的多,对数据结构设计考虑的不太充分。2、程序编写过程中非优化语句 很多方面都会导致系统的性能下降。7.用户手册 总结 软件工程作为我们专业的主要课程之一,虽然刚接触时对这门课程并没有什么兴趣而言,感觉都是些纯理论的枯燥乏味的东西,但通过此次课程设计发现软件工程的重要性是不容置疑的,了解到了软件工程的严谨性,每一步都必须脚踏实地,不然软件的开发和维护将在后期付出沉重的代价。此次学习也让我累积了点滴对此们主干课程的兴趣,引起了我的重视。这次课程设
20、计历时2个星期,对于我个人来说,发现时间是如此的仓促!从查阅资料,建立编程思路,着手编程,开始写报告到完成交差,每个流程都花了很长一段时间!特别是对于“网上招投标系统”的招投标根本不了解和理解,不知道流程,查阅许多资料终于懂点滴招投标的相关信息后,发现这个是基于web的系统,会用到基于web的编程开发,数据库等,B/S,C/S等结构,于是茫然不知所措。但对于的开发应用有点感兴趣,于是本人怀着信心去自学,但结果很明显的,时间来不及让我学一门新语言和新开发环境,数据库等让我完成课程设计。大概碌碌无为的忙了一个星期后赶快收手,用VC+编一个应用台控制程序。但问题来了,这些流程按照我们C或者C+编应同
21、台控制程序的话根本不知如何是好,仅仅是输入和显示操作,没有什么更改,删除等操作,只是一个设定评分项目,选取专家,专家评分的流程,于是我简单把三者叠加统统弄成一个输入评分信息!通过这次课程设计,了解到对软件工程的学习缺乏,对C或C+的学习部深入,编程能力和思维欠缺,待慢慢提高!对于我们软件工程专业的本科生来说,实践至关重要,而这种实践能力不能仅仅通过教学和平时上机是远远不够的,课程设计让我们学习很多课堂上和平时上机学不到的东西。虽然课程设计做得不成功,但相信在磨练过程中慢慢得到提高,羽翼会更丰满的!致谢 感谢唐剑梅老师这个学期对我的教学,让我学习了软件工程的相关知识,对我以后的学习提供了巨大的帮
22、助,特别在课程设计时体现了理论的重要性,理论是实践的基础。特别感谢陈红红老师在课程设计中给予我的巨大帮助,让我掌握了课程设计的基本思路和学习方法。真诚谢谢在课程设计提供资料给我和给我帮助的同学。参考文献 1 张海藩.软件工程导论.北京:清华大学出版社,2004 2 陈明.实用软件工程基础.北京:清华大学出版社,2003 3 殷人昆.实用软件工程.北京:清华大学出版社,2003 4 张海藩.软件工程.北京:清华大学出版社,5朱丽华,朱建,俞琼.面向对象程序设计及 C+北京:人民邮电出版社,2007#include#include#include#include using namespace s
23、td;class pb_message public:string Project_id;string Project_name;string Company_name;int Score;public:void print(ostream&out);void read(istream&in);void write();void show();int getTotal_Score(string c);void Serach_Score();void Result();int pb_message:getTotal_Score(string c)ead(std:cin);psi.print(fo
24、ut);();void pb_message:Serach_Score()ead(fin);psi.print(cout);int main()pb_message A;char n;do system(cls);system(color 0E);int x;printf(*欢迎进入评标管理系统 *n);printf(n);printf(主 菜 单 n);printf(n);printf(1.显示投标信息 n);printf(2.评分 n);printf(3.显示评分信息 n);printf(4.查询公司总得分 n);printf(5、公布评分结果 n);printf(n);printf(Forever Love U.)n);printf(n);coutx;switch(x)case 1:system(cls);ReadFile();break;case 2:system(cls);ReadFile();();break;case 3:system(cls);();break;case 4:system(cls);();break;case 5:system(cls);Result();break;default:break;coutendl;coutendl;coutn;while(n=y|n=Y);return 0;