当前位置:文档之家› 软件工程综合训-学习指南

软件工程综合训-学习指南

软件工程综合训-学习指南
软件工程综合训-学习指南

软件工程综合训-学习指南

一、填空题

1、提供的实训模板里,“评审参加人数”、“准备总人时”、“”、“”、“确认签字人数”处的数据,都可以根据填写内容自动计算得到,不需要填写。

2、常用的资源类视图有:、、“资源使用状况”视图等。

3、使用甘特图可以很方便地查看、和结束时间以及资源的信息,用户可以使用它来创建初始计划、查看和。

4、制定工作范围有两种办法,对于较小的项目,项目团队利用“”来生成一份一览表;对于稍大一些的项目,更好的方法是使用的方法来生成一份全面的清单。

5、是项目的最基础元素,其代表着为了完成项目目标所要进行的所有活动。

6、目进度管理知识领域主要包括、、进度计划制定和进度计划控制四大过程,它的目的是保证按时、合理、发挥最佳工作效率。

7、在Project 2003 中进行项目任务排序的定义时一般采用的方法,最终形成一套项目网络图。

8、意味着明确定义项目活动的开始和结束日期,这是一个反复确认的过程。

9、批准或评审;当前状态是用来表明,该需求项当前处于什么阶段,共分为:需求开发、、、实现与测试、、六个阶段。

10、做软件评估时,我们通过来制定详细的项目进度表。

11、工作职责是单元测试和集成测试。

12、WBS每细分一层都是对项目元素更细致的描述,细分的元素称为,其中最底层的工作细目叫。

13、完成了工作范围的制定,接下来就可以将工作分配到每个人,项目管理最重要的观点之一就是“”。是完成这一任务的最好选择。

14、Project提供了多种任务工期估计方法,其中是针对复杂项目颇为有效的一种

技术。

15、在制定项目计划的时候还应当注意和的结合,对于短期内的计划可以做出周密的规划,对于长期的计划,只需要给出指导性规划即可。

16、视图主要分为和。

17、Project2003空白项目应包含以下几列:WBS、、、工作量、开始时间、完成时间、、。

18、项目的特殊性决定了项目中必然包含有种种相互关联的和。

19、项目计划书包含项目WBS、、、项目里程碑的标识、以及。

20、是一种用于组织任务以便报告日程和跟踪成本的分层结构。

21、是根据项目范围、资源状况计划列出项目任务所需要的工期。估算的工期应该现实、有效并能保证质量。

22、引言部分一般说明项目的、、项目所使用的技术以及最后开发项目后所带来的好处等。

23、常用的任务类视图有:“甘特图”视图、、、“任务分配状况”视图等。

24、项目计划的第一步是项目范围定义,进而定义项目需要进行的、、责任以及项目组的结构。

25、需求来源内容可以通过选择方式输入,主要分为、、工程、研发、、、其它等七种来源;

26、测试人员与系统分析人员一起,执行单元测试、集成测试,并把测试中发现的缺陷记录进管理工具中。

27、根据对用户需求的收集,以自然语言方式来描述需求;

28、WBS每细分一层都是对项目元素更细致的描述,细分的元素称为工作细目,其中最底层的工作细目叫。

29、工作职责是单元测试和集成测试。

30、在提供的实训模板里,“评审参加人数”、“准备总人时”、“”、“”、“确认签字人数”处的数据,都可以根据填写内容自动计算得到,不需要填写。

31、一般软件过程定义包括:项目立项、项目策划、、、需求开

发、系统设计、、等几个过程。

32、视图主要分为和。

33、项目计划书包含项目WBS、、、项目里程碑的标识、以及。

34、关于目标的确定,必须符合原则,即目标必须明确、可行、具体和可以度量。

35、在估算工期时要充分考虑任务清单、合理的、因素以及环境因素对项目工期的影响。

36、意味着明确定义项目活动的开始和结束日期,这是一个反复确认的过程。

37、根据对用户需求的收集,以自然语言方式来描述需求;

38、就是在产品描述、任务清单的基础上,找出项目任务之间的依赖关系和特殊领域的依赖关系、工作顺序。

39、Project2003用于对制订的项目计划进行跟踪所用,一般应包含以下几列:WBS、任务名称、、、完成百分比、工期、、。

40、指的是该任务每隔一定时间就要例行发生,如每周的项目组例会。

41、文档人员根据系统实现及测试的进度,及时完成相关模块的产品支持文档,要求至少包含、

42、开发环境配置包括硬件和网络设备、、等内容。

43、任何一个项目组的形成过程都要经过分组、、、分配角色等几个阶段。

44、引言部分一般说明项目的、、项目所使用的技术以及最后开发项目后所带来的好处等。

45、WBS分解工作的主要产出物是和。

二、单选题

1、选中非连续单元格先按住()键,然后用鼠标左键逐个点击要选的单元格。

A、ALT

B、SHIFT

C、CTRL

D、BACKSPACE

2、选中连续单元格可以先选择该区域的第一个单元格,然后按下()键之后选

A、ALT

B、SHIFT

C、CTRL

D、BACKSPACE

3、在项目计划中,“里程碑”的任务工期一般是()

A、0

B、1

C、2

D、3

4、要查看项目的总体信息,可以使用()菜单下的“项目信息”命令

A、文件

B、项目

C、编辑

D、工具

5、在Project 2003 中输入新任务的时候,所有的任务起始日期默认都是项目的开始日期,工期为()天

A、0

B、1

C、2

D、3

6、在Project 2003中,对于两个任务间的相关性提供了()种不同的类型

A、1

B、2

C、3

D、4

7、下列()不是任务之间的相关性关系

A、FS

B、FD

C、SS

D、SF

8、需求优先级:分为1-5个级别,()是最最级别,在项目开发过程中要最

先实现

A、2

B、3

C、4

D、5

9、用户需求变更标识分为四种情况,不包括下列()。

A、增加

B、更新

C、删除

D、修改

10、编码组长与开发人员共同协商制订实现与测试阶段的阶段性计划,需经()审批方可执行。

A、项目经理

B、开发人员

C、测试人员

D、开发组长

11、下列哪一项不属于保密级别()

A、普通

B、加密

C、保密

D、机密

12、要更改项目的工作时间,请点击()菜单下的“更改工作时间”选项

A、文件

B、编辑

C、工具

D、选项

13、PERT分析方法是一种非常有效的工期估算技术,下列()情况不能用来计算可能的结果

A、最佳

B、预期

C、最差

D、一般

14、在()菜单上点击“工具栏”菜单项,再选择“PERT 分析”,将出现“PERT 分析”工具栏。

A、视图

B、编辑

C、格式

D、插入

15、下列不属于概要设计状态的是()

A、未编写

B、编写

C、评审通过

D、装订

16、对用例不需要在()处打对钩,其中打对钩用例的UUCW会自动计算得出

A、简单

B、普通

C、一般

D、复杂

17、一般情况下,源程序的注释量应在()以上。

A、5%

B、10%

C、20%

D、30%

18、程序模块要采用缩进风格编写,缩进的空格数为()个。

A、1

B、2

C、3

D、4

19、用例与角度之间的关联情况以下说法正确的是()

A、0-无关联

B、1-相当相关

C、2-密切相关

D、3-轻度关联

20、Project 提供最佳的弹性,以下说法中错误的是()

A、完成…开始地基要先建好才可以盖房子

B、开始…开始所有长官都到齐后才进行会议

C、完成…完成所有必要文件都备齐后才能结案

D、开始…完成地基要先建好才可以盖房子

21、模板文件的后缀名是()

A、*.mpt

B、*.pro

C、*.dot

D、*.xls

22、在Project 2003 中工期后面的()表示为估计工期

A、?

B、*

C、%

D、&

23、任务的进度如果同时发生在工作时间和非工作时间,需要将其设置为24小时制工期,这时候在普通的工期单位前面要加一个()前缀

A、a

B、b

C、d

D、e

24、选中整列,正确的方法是()

A、把光标置于单元格内,单击鼠标左键

B、左键在标识号单元格单击

C、列标题行和标识号列的交点处单击

D、左键单击列标题

25、在Project 2003 中工期后面的()表示为估计工期

A、?

B、*

C、%

D、&

26、函数规模应在()行以内

A、100

B、200

C、300

D、400

27、下列哪一项不是项目组分配角色项()

A、项目组长

B、开发人员

C、测试人员

D、管理人员

28、删除任务的操作方法可按()键。

A、Delete

B、Ctrl

C、Shift

D、Alt

三、判断题

1、系统测试是把软件、硬件和环境连在一起的全面测试。()

2、尽可能在软件生产过程中保证各阶段文件的正确性。()

3、完成测试作业后,为了缩短源程序的长度应删去源程序中的注释。()

4、编码时应尽可能使用局部变量。()

5、选择时间效率和空间效率尽可能高的算法。()

6、软件生命周期中,测试的工作量最大。()

7、应尽量使用全局变量。()

8、任何情况下,对象模型始终是最重要、最基本的。()

9、OOA和OOD之间的界限是模糊的。()

10、在OOA过程中,需要严格遵守自顶向下的原则。()

11、面向对象方法中的对象就是结构化方法中的模块。()

12、对象模型中的五个层次缺一不可。()

13、任何情况下,对象模型始终是最重要、最基本的。()

14、系统测试是把软件、硬件和环境连在一起的全面测试。()

15、编码时应尽可能使用局部变量。()

16、一个模块的扇入是指该模块被其它模块调用的个数,扇入应尽可能的小。()

17、盒图的主要优点之一是强制设计人员采用结构化设计方法。()

四.简答题

1、一般IT企业产品研发过程中,项目类型可以分为哪几类?

2、测试人员和文档人员职责?

3、实训时采用的生命周期“瀑布模型”主要完成的内容?

4、《用户界面设计》填写指导包括的内容?

5、项目管理人员可以通过哪此方法提高任务的工期估算的精确度?

6、系统分析人员角色职责?

7、使用“任务状况分配”视图可以进行哪些操作?

8、进度表的确定应根据哪些方面进行考虑?

9、影响设计的需求约束因素有哪些?

10、编码规范的基本约定标识符命名规则内容?

11、开发人员角色职责?

12、在“甘特图”视图中通常要完成哪些工作?

13、在编制进度计划时必须加以考虑哪三类限制?

14、在需求开发部分,主要形成的文档有哪些?

15、编码规范的基本约定程序效率内容?

16、立项报告的主要内容?

17、在PERT方法中,有哪三种类型的估计工期?

18、从哪几个方面来描述接口需求项?

19、项目进度控制的结果是什么?

20、性能需求项用来描述系统的性能特征有哪些?

21、《项目开发计划书》中主要内容有哪些?

22、项目计划的制定一般要经历哪几个步骤?

23、盈余分析的基础及涉及三个关键值?

24、良好编码习惯的好处?

25、可靠性需求项可在哪几个方面对系统可靠性进行描述?

五、应用题

1、某培训中心要研制一个计算机管理系统。它的业务是:

将学员发来的信件收集分类后,按几种不同的情况处理。

1)如果是报名的,则将报名数据送给负责报名事务的职员,他们将查阅课程文件,检查该课程是否额满,然后在学生文件、课程文件上登记,并开出报告单交财务部门,财务人员开出发票给学生。

2)如果是想注销原来已选修的课程,则由注销人员在课程文件、学生文件和帐目文件上做相应的修改,并给学生注销单。

3)如果是付款的,则由财务人员在帐目文件上登记,也给学生一张收费收据。

要求:

(1)对以上问题画出数据流程图。(5分)

(2)画出该培训管理的软件结构图的主图。(5分)

2、请使用PAD图和PDL语言描述在数组A(1)~A(10)中找最大数的算法。

3、某商场在“五一”期间,顾客购物时收费有4种情况:普通顾客一次购物累计少于100元,按A类标准收费(不打折),一次购物累计多于或等于100元,按B类标准收费(打9折);会员顾客一次购物累计少于1000元,按C类标准收费(打8折),一次购物累计等于或多于1000元,按D类标准收费(打7折)。请使用PAD图来设计收费算法。

4、变量的命名规则一般规定如下:变量名的长度不多于40个字符,第一个字符必须为英文字母,其他字母可以英文字母、数字以及下划线的任意组合。请用等价分类法设计测试用例。一个规模为20KLOC的商用微机远程通信的嵌入型软件,使用中间COCOMO模型进行软件成本估算。如果分析员与程序员的工资都按每月5000元人民币计算,则该项目的开发人员的工资总额为多少?

参考答案

一、填空题

1、实到人数、评审总人时

2、“资源工作表”视图、“资源图表”视图

3、任务的工期、开始项目日程、调整计划

4、头脑风暴工作分解结构

5、任务

6、任务排序、任务工期估计完成项目分配资源

7、网络图

8、制定项目的进度计划

9、详细计划系统设计系统测试系统验收

10、UCP方法

11、测试人员

12、工作细目工作包

13、责任到人责任矩阵

14、PERT法

15、长期计划短期计划

16、任务类视图资源类视图

17、任务名称、工作前置任务、资源名称

18、任务不可预知的风险

19、项目的进度计划、任务分配表风险标识范围变更管理流程

20、WBS

21、任务工期估算

22、开发背景、项目的特点

23、“网络图”视图、“日历”视图

24、活动、角色

25、用户市场公司高层

26、bug

27、需求项内容

28、工作包

29、测试人员

30、实到人数、评审总人时

31、项目跟踪、项目结项实现与测试、配置管理

32、任务类视图资源类视图

33、项目的进度计划、任务分配表风险标识范围变更管理流程

34、SMART

35、资源需求、人员的能力

36、制定项目的进度计划

37、需求项内容

38、任务排序

39、实际开始时间、实际完成时间实际工作量、剩余工期

40、周期性任务

41、《用户操作手册》《联机帮助》

42、软件开发工具、测试工具

43、选出小组组长、讨论小组的角色

44、开发背景、项目的特点

45、WBS WBS字典

二、单选题

1、C

2、B

3、A

4、B

5、B

6、D

7、D

8、D

9、B 10、A

11、B 12、C 13、D 14、A15、D

16、C 17、C 18、D 19、A20、D

21、A22、A23、D 24、D 25、A

26、B 27、D 28、A

三、判断题

1、√

2、√

3、×

4、√

5、×

6、√

7、×

8、√

9、×10、×

11、√ 12、×13、√ 14、√ 15、√

16、×17、√

四、简答题

1、合同定制类:以双方签订的合同作为研发的主要内容及验收标准的项目。

新产品研发类:是指需要研发的产品或其应用领域对企业来说是全新的,研发管理过程应当更加严格。

产品升级类:重点考虑的是已有产品在市场或用户中的反馈。

技术服务类:采用的开发过程相对比较简化,可以采用敏捷过程进行开发。

软件外包类:按软件开发阶段分阶段的部分工作外包完成。

2、测试人员职责:

(1)为项目制定测试计划,并按得到批准的计划开展活动;

(2)为项目编写集成测试及系统测试用例,并执行软件测试过程;

(3)测试的审查和验证;

(4)测试完后,编写测试报告。

文档人员职责:

负责系统使用说明书或用户手册、系统联机帮助、安装程序的编写等。

3、主要完成的内容:

《项目立项》→《项目初步计划》→《需求分析》→《项目详细计划》→《系统设计》→《系统编码》→《集成测试》→《系统测试》→《产品发布》→《项目总结》。

4、《用户界面设计》填写指导包括的内容

(1)应当遵循的界面设计规范。

(2)界面的关系图和工作流程图:所有界面视图分配唯一的标识符,绘制各个界面之间的系统图和工作流程图。

(3)主界面:绘制主界面的视图,说明主界面中所有对象的功能和操作方式。

(4)子界面:绘制子界面的视图,说明子界面中所有对象的功能和操作方式。

(5)美学设计:阐述界面布局、色彩等理由。

5、项目管理人员可以通过下列方法提高任务的工期估算的精确度:

参照历史信息:利用过去的经验和其他人过去完成类似项目的经验,调阅相关的项目文件,标注出新任务与过去完成的类似任务的差别,然后在估算任务工期时考虑这些差异。

项目团队的知识:在进行工期估计的时候,可以充分利用项目团队成员的知识。

专家判断:可以请曾经管理过类似项目的人,如一些咨询机构、专业团体等来帮助估计任务工期,专家判断主要依赖于历史的经验和信息,当然其时间估计的结果也具有一定的不确定性和风险。

类比估计:类比估计意味着以先前的类似的实际项目的工作时间来推测估计当前项目各工作的实际时间。

业界标准:业界标准一般会给出项目实施的完备指导,如果项目可以按照业界标准来执行,其工期估计可以参照业界标准中的相关说明来完成。

6、系统分析人员角色职责包括:

(1)调查、分析并定义需求,填写相应的需求文档,尽最大努力使需求文档能够正确无误地反映用户的真实意愿;

(2)根据需求文档设计软件系统的体系结构、用户界面、数据库、模块等;

(3)在设计完后,参与系统的测试。

7、使用“任务状况分配”视图可以进行如下操作:

(1)给任务分配人员和其他资源。

(2)同时输入并编辑任务信息和资源信息。

(3)在资源间更均衡地进行任务。

(4)计算出每种资源在特定任务中的计划工时数。

(5)通过设置工时分布,改变某种资源投入到某项任务中的工时数。

(6)对任务进行拆分,使任务的第二部分开始于较晚的日期。

8、进度表的确定应根据以下进行考虑:

项目网络图、估算的活动工期、资源需求、资源共享情况、项目执行的工作日历、进度限制、最早和最晚时间、风险管理计划、活动特征等统一考虑。

9、影响设计的需求约束因素有:

运行平台约束;

软件、硬件环境;

接口/协议的约束;

用户界面的约束;

软件质量的约束。

10、标识符命名规则:

(1)命名要清晰、明了、有明确含义,同时使用完整的单词或大家基本可以理解的缩写,避免使人产生误解;

(2)命名中若出现特殊的缩写,则要有注释说明,自己特有的命名风格,要自始至终保持一致,不可来回变化;

(3)对于变量命名,禁止使用单个字符,建议除了要有具体含义外,还能表明其变量类型、数据类型等;

(4)命名规范必须与所使用的系统风格保持一致,并在同一项目中统一。

11、开发人员角色职责包括:

(1)对系统使用的技术进行预研,并搭建系统开发框架;

(2)根据系统设计文档,编写软件系统的代码;

(3)随时测试和检查自己的代码,及时清除代码中的缺陷;

(4)编写系统安装程序及安装文档哪个。

12、在“甘特图”视图中通常要完成的工作有:

(1)通过输入任务和设置每项任务所用的时间创建项目。

(2)通过链接任务来建立任务之间的顺序相关性以完成项目的日程排定。

(3)将人员和其他资源分配给任务。

(4)查看任务的时间进度。通过对任务的计划日期同其实际开始和完成日期进行比较,并检查每个任务的进度来跟踪和分析整个项目的进度。

(5)拆分任务,即在任务的执行过程暂时中断任务,然后在以后的日程中再继续该任务。

13、在编制进度计划时必须加以考虑以下三类限制:

强制性日期:某些工作细目应项目干系人的要求必须在某一特定日期完成。

关键事件或里程碑事件:项目干系人提出在某一特定日期前完成某些重要工作事件,一旦定下来,这些日期就很难被更改了。

前置与延搁时间:为了精确说明任务间相互关系,需对任务的前置和延搁时间有一说明。14、在需求开发部分,主要形成的文档有:

《用户需求调查单》:在实训中可以不需要;

《用户需求列表》:系统分析人员编写;

《用户需求说明书》:以分析人员为主,测试人员为辅;

《用户需求跟踪矩阵》:项目经理或指定专人填写并跟踪;

《软件需求规格说明书》:以分析人员为主,测试人员为辅以及评审相关的表格及会议记录。

15、程序效率:

(1)编写时要经常注意程序的效率;保证软件系统的正确性、稳定性、可靠性、可测试性,提高代码效率;

(2)局部效率应为全局效率服务;

(3)循环体内工作量最小化;

(4)仔细分析算法并进行优化;

(5)在保证质量的情况下应压缩代码,去掉不需要的代码;

(6)不要一味追求紧簇代码。

16、立项报告的主要内容:

(1)市场可行性、技术可行性、资源可行性等内容。

(2)系统所使用资源的估计,如多少人月工作量,计算出工资性预算,设备投入预算等。(3)对风险进行分析,并提出控制策略。

(4)从研发的角度为市场推广及工程实施可以提供什么样的建议、方案及帮助等。

17、在PERT方法中,有以下三种类型的估计工期:

乐观工期:即预计在最佳可能情况下任务的有效工作时间总范围,为从任务的乐观开始时间到乐观完成时间之间的时间量;

悲观工期:即预计在最差可能情况下任务的有效工作时间总范围,为从任务的悲观开始时间到悲观完成时间之间的时间量;

预期工期:即任务活动工作时间的预期总范围,为从任务的预期开始时间到预期完成时间之间的时间量。

18、从以下四个方面来描述:

(1)用户界面。说明软件将实现的用户界面。

(2)硬件接口。指出软件所支持的所有硬件接口,其中包括逻辑结构、物理地址、预期行为等。

(3)软件接口。说明软件系统中与其他构件之间的软件接口。这些构件可以是购入的构件、取自其他应用程序重新利用的构件,也可以是为此客户需求说明范围之外的子系统开发,但该软件应用程序必须与之交互的构件。

(4)通信接口。说明与其他系统或设备的所有通信接口。

19、项目进度控制的结果是:

进度的更新:进度更新指根据进行执行情况对计划进行调整。如有必要,必须把计划更新结果通知有关方面。进度更新有时需要对项目的其它计划进行调整。在有些情况,进度延迟十分严重以致需要提出新的基准进度,给今后的工作提供现实的数据。

纠正措施:指采取纠正措施使进度与项目计划一致。在进度管理领域中,纠正措施是指加速活动以确保活动能按时完成或尽可能减少延迟时间。

教训与经验:进度产生差异的原因,采取纠正措施的理由以及其它方面的经验教训应被记录下来,成为执行组织在本项目和今后其它项目的历史数据与资料。

20、性能需求项用来描述系统的性能特征有:

(1)对事物的响应时间;

(2)吞吐量,每秒处理的事物数;

(3)容量,系统可以容纳的客户数或事物数;

(4)并发处理量,同时可以有多少用户访问该系统;

(5)资源利用情况,如内存、磁盘、通信等。

21、《项目开发计划书》中主要内容有:

引言部分;

软件过程定义部分;

生命周期定义部分;

关键计算机资源部分;

度量目标部分;

任务分解和进度安排部分;

22、项目计划的制定一般要经历以下4个步骤:

(1)明确项目目标

(2)制定项目工作范围

(3)在项目组内分配任务职责

(4)统筹规划项目间活动的关联

23、盈余分析的基础及涉及三个关键值:

(1)项目计划中规划的各个任务的计划工作量,即计划工作的计划工作量(BCWS)。BCWS 是到选定状态日期为止的比较基准成本。计划工作量值存储在比较基准域中,或者如果保存了多个比较基准,应分别保存在“比较基准1”到“比较基准10”域中。

(2)到状态日期为止,完成所有任务或部分任务所需的实际成本,即已完成工作的实际工作量(ACWP)。

(3)在状态日期前完成的工时值(以货币进行度量),实际上就是已完成工时的盈余值,称为已完成工作的计划工作量(BCWP)。该值按单项任务进行计算,但在总体水平上进行分析。

24、良好编码习惯的好处:

(1)方便代码的交流和维护;

(2)不影响编码的效率,不与大众习惯冲突;

(3)使代码更美观、阅读更方便;

(4)使代码的逻辑更清晰、更易于理解。

25、在以下几个方面对系统可靠性进行描述:

(1)平均故障间隔时间(MTBF)。通常表示为小时数,但也可以表示为天数、月数或年数,表示系统平均多长时间出一次故障。

(2)平均修复时间(MTTR)。系统在发生故障后可以暂停运行的时间,需要多长时间可以修复。

(3)最高错误或缺陷率。通常表示为每千行代码的错误数目或每个功能的错误数目。

五、应用题

(1)数据流图(5分)

(2)软件结构(5分)

2、PDL语言:

N=1

WHILE N<=10 DO

IF A(N)<=A(N+1)MAX =A(N+1);

ELSE MAX =A(N)ENDIF;

N=N+1;

ENDWHILE;

PAD图:

3、

4、

①划分等价类

②设计测试用例

软件工程职工信息管理系统文档

目录 1可行性研究报告 (2) 1.1可行性研究分析 (2) 1.2处理流程和业务流程 (3) 1.3可行性分析 (5) 2 需求分析 (7) 2.1需求概述 (7) 2.2功能性需求 (7) 2.3非功能性需求 (8) 3 概要设计 (9) 3.1总体设计 (9) 3.2接口设计 (11) 3.3系统出错处理设计 (12) 4详细设计 (13) 4.1连接数据库设计说明 (13) 4.2用户登录设计说明 (14) 5系统实现 (16) 5.1主要模块的设计说明和程序代码 (16) 6测试 (31) 6.1测试概要 (31) 6.2测试结果及发现 (32) 7总结 (35) 1小组总结 (35) 2个人总结 (35)

1 可行性研究报告 本项目开发计划旨在明确规范开发过程,保证项目质量,统一小组成员对项目的理解,并对其开发工作提供指导;同时还作为项目通过评审的依据。并说明该软件开发项目的实现在技术上、经济上和社会因素上的可行性,评述为了合理地达到开发目标可供选择的各种可能实施方案,说明并论证所选定实施方案的理由。 1.1可行性研究分析 要求 A、功能: 1)用户: 查询 登录系统前台,系统根据输入的用户名自动查询数据库,并显示在我的资料页面中。 注册 用户进入系统可注册新用户,系统将自动将输入的数据存入数据库中。 退出系统 用户操作完成后可点击“退出”按钮退出系统。 2)管理员 管理员可登录系统后台,可查看所有职工的个人资料信息,可对职工的个人资料进行增、删、改、查,可修改管理员密码。操作完成,可退出后台。 目标 尽量做到人力与系统使用的高效和方便,功能尽可能齐全,设备费用的减少,采用现代程序设计技术,人员利用率尽可能提高。

软件工程实训心得体会3篇

软件工程实训心得体会3篇 软件工程实训心得体会一:软件工程实训心得体会 这次软件工程实训是从2010.12.26号开始的,截至2010.12.31号.实训内容是用java相关知识(主要是jsp)做一个物流配送系统.下面谈谈对这次实训的看法. 因为自己平时对java知识储备不足,特别是jsp这一块基本不了解怎么回事,所以一拿到这个项目,我心里都是没有底的,再加上我被分到的那个组,我知道就意味着是我一个人在战斗了.呵呵,26号,实训开始了,我们的老师是来自中软国际公司的程序员,一个是周褀,一个是朱映,都是一身朴素的着装,让我感觉做软件的也没什么两样.老师介绍了自己之后,就直接切入正题了,分析了下我们各个组的系统,即将用到的知识,然后就总体把觉得需要补充的知识(jsp和数据库连接等这几块)给我们实际操作了下,因为当时看到用jsp,还讲的那么认真,当时我就后悔了,平时要是多听点,现在老师这么认真的给我们讲,这是一个多么难得的机会啊.后悔也没用啊,开始还勉强能理解一点,后来就直接晕了.然后再给大家介绍了一些即将用到的工具,比如rationalrose,svn,myeclipse等等.接下来的几天就不再细讲了.下面谈谈通过这次实训的心得体会吧. 通过这次实训,让我了解到工程开发的过程,可行性分析——> 需求分析——> 概要设计——> 详细设计——> 代码编写——> 测试——> 验收.从技术方面上,我开始jsp基础基本上就是零的,在老师和syz2(另外一个物流小组,我一个人基本上是跟她们做的,或者说是

看着她们做的)的帮助下,对jsp有了一个大概的认识.其实实训开 始前,我还以为做个系统没什么大不了,可是当真正拿到一个项目,我却真的无从下手了,而且就是在知道需求分析和详细设计,在代码编 写时,一样寸步难行.通过这个实训,也让我了解到,团队协作是多么 的重要.一个人的精力是多么的有限.进一步理解到,企业为什么如此重视团队协作.同时借用老师的话就是团队协作固然重要,但是是建 立在个人素质的基础上,假设你个人素质不行,将会影响到整个团队,就别提对团队作更多贡献了.**老师说这几句话的时候,朝向了我,估计是有特殊意义的吧,所以,我将谨记老师的教导. 还有一个收获是从一个同学(小胖)那里得到的,他的那组成员跟我的这组大体一样,我倒是觉得没什么了,不过他倒是很重视这个 问题吧.然后他说出来,我也觉得这个问题确实其实是个大的问题.就是不管你会不会这门技术,会不会做这个东西,态度要正确才好,就算你不会做,你也应该认真的对待,将来出身到社会,就不是说像你现在,不会做就不做,跑去玩游戏了.小胖说出了这段话,也在我身上有了一个印证,虽然我jsp技术知识为0,但我也还是在认真的跟着他们一 起做,不会做,就多问,毕竟现在我们是学生,可以毫不顾忌的询问各 种问题,老师也会尽力为你回答.将来出身社会就不一样了.虽然,我 就算个打酱油的水平,但是这个酱油也要打得有涵量啊.不管怎么样,我能对自己有个交待,虽然我不会,但是这次实训我确实是认真对待了,六天的实训,除了晚上加班外,还花了2个通宵来完成不同阶段的任务,完成与否也不重要了,我至少我做了,这点,是这次我应该对自 己的一个肯定. 这次实训的心得基本上就是这些了,最后特别感谢中软国际带我们的那两个老师(周褀,朱映),这两个老师对待我们很平易近人,对我们提出的问题,总是不光解决了,还进行了扩展,晚上也跟我们一起加班加到很晚,印象尤其深刻就是朱映老师为了给小胖解决一个问题, 脸都变红了,还在继续努力,这点我并不会觉得老师知识储备不够,我想应该是这个问题的突发吧,一时没想到怎么处理.相反让我感觉更 多的就是老师很认真,很负责.还要感谢就是syz2小组的倾力支持, 辅导. 软件工程实训心得体会二:软件工程实践学习心得(2607字)

软件工程导论期末考试试题和答案

1.软件生存周期一般可分为__问题定义__、可行性研究、_需求分析_____、设计编码、__ 测试________、运行与维护阶段。 2.按软件的功能进行划分,软件可以划分为系统软件、支撑软件 和应用软件。 3.可行性研究主要集中在以下四个方面经济可行性、技术可行 性、法律可行性和抉择。 4.用户界面的可使用性是用户界面设计最重要的也是最基本的目标。 5.常见的软件概要设计方法有3大类:以数据流图为基础构造模块结构的___结构化设计 方法_________,以数据结构为基础构造模块的__jackson方法__________,以对象、类、继承和通信为基础的__面向对象设计方法__________。 6.__数据流图________和__数据字典___共同构成系统的逻辑模型。 7.软件测试的方法有__分析方法________和___非分析方法_______(即黑盒法)。 8.单元测试一般以___白盒_____________测试为主,___黑盒______测试为辅。 9.成本估计方法主要有__自底向上估计________、_自顶向下估计_________和算法模型估 计三种类型。 1.下列哪个阶段不属于软件生存周期的三大阶段( C )。 A、计划阶段 B、开发阶段 C、编码阶段 D、维护阶段 2.需求分析是(A )。 3.A、软件开发工作的基础B、软件生存周期的开始 4.C、由系统分析员单独完成的D、由用户自己单独完成的 5.原型化方法是软件开发中一类常用的方法,它与结构化方法相比较,更需要(B )。 6.A、明确的需求定义B、完整的生命周期 7.C、较长的开发时间D、熟练的开发人员 8.软件维护时,对测试阶段未发现的错误进行测试、诊断、定位、纠错,直至修改的回归 测试过程称为( A )。 9.A、改正性维护B、适应性维护 10.C、完善性维护D、预防性维护 11.一般说来,投入运行的软件系统中有错误(A )。

银行管理系统—软件工程

银行存储管理系统设计 专业:信息与计算科学 课程:软件工程 一、问题定义

银行存储管理系统工作繁琐,包含大量数据信息数据,因此就需要一个完善的银行管理系统来实现这些数据的有效管理。但是,随着经济和科学技术的飞速发展,传统的银行存储管理系统已经不能满足广大客户的需求,也不能及时跟上计算机网络发展的步调,故而我们急需开发一个高效、安全、便捷、互联的银行存储管理系统,该系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充、维护。系统分为三大模块,分别为存款模块、取款模块、用户管理模块,用来实现用户的开户、销户、存款以及取款等业务。该系统在功能上不断完善和加强,也使得存储管理规范化、程序化、科学化,满足了客户的需求。 二、可行性研究 1、对现有系统的分析 当前大多数系统所思用的银行存储系统办理业务时手续繁多,例如要填写存取款表,然后再交由业务员输入资料,最后还要在存取款单上签名确认,人工业务操作过多,需要大量的业务工作人员,同时严重影响了工作效率,以致客户在等待办理手续的搞到不耐烦,且出错率高。 2、系统可行性研究 2.1、技术可行性: 技术可行性包括以下几个方面:硬件,系统软件,应用软件,技术人员。针对这四个方面可行性都是没有问题的,本系统采用java编程语言和Access数据库。目前,数据库产品较多,每种产品都具有各自的特点和适用范围,因此,在选择数据库时,应考虑数据库应用的特点及适用范围,选择最合适的。 2.2、经济可行性: 本银行管理系统能使银行业务员便捷的处理银行信息数据;能够促进银行的体制改革,提高工作效率,减少手工工作人员及费用等,这些都是使用系统所带来的间接收益。同时也促进了银行信息化的进程,提高银行的管理效率。 2.3、操作可行性: 本银行管理系统的操作简单,且界面友好,系统的操作流程是银行业务员所熟悉的。系统能够实现其各个功能,在当前操作环境下也能够很好的运行。 3、开发的新系统

软件工程心得体会

软件工程心得体会 未接触软件工程之前一直都很想学这门课程,因为觉得这门课很牛,是那些有工程师称号的高手才摆弄的东西。学了一个学期的软件工程课,终于知道了个软件工程的大概。学的时候总觉得很抽象,理解起来好像不难,但总是摸不着头脑一种很茫然的感觉。 曾经以为程序就是软件,软件就是程序。学习这门课程第一个收获是,知道了二者的不同之处。以前做过的一些小型的软件比如加密软件,我也只是在程序旁边附上一个软件的说明,看来已经很接近作坊了。不过大的项目没有接触过,用软件工程的方法还是第一次。我想也是程序的不断复杂化导致了软件危机的发生,使得人们不得不探索新的解决方法。 经过倪老师的讲解,理解了软件工程,就是一套用于软件的团队开发,以提高软件质量和程序员工作效率为目的的规范。其核心就是,对于软件开发的5个重要组成部分:需求分析,设计,编码,调试,维护,如何组织这5个部分的工作,以及如何完成每一个工作。 吾生也有涯,而知也无涯,学习永无止境。起初,对软件工程处于一知半解的状态,分工比较混乱。在划分模块后明确了各自分工,渐渐形成良性循环。 在学习过程中,知道了团队合作十分重要,争议固然存在,但通过讨论、协商,群策群力,在不断磨合中能够达成一致与默契。团队成员中能力各有高下,互相尊重,各取所长,不宜妄自菲薄。组长多加协调,组员积极配合,才能合作愉快。 学习能力体现在能尽快接受新的知识,顺应变化,学为所用。上《软件工程导论》这门课,我的收获大概如下: 我们为什么需要软件工程呢?上面已经给出了一些原因。专业点讲,软件工程最终是为了实现“软件制造业”的社会化,工业化大生产,提高其劳动生产效率。只有如此,软件业才能实现社会化,工业化大生产,才能“做大做强”。没有管理的设计是失败和混乱的设计,没有设计指导的编程是无序的忙碌的。根据开发的软件的规模,应该适当程度的运用软件工程化的思想,需要灵活,毕竟我们开发的软件大多数是中小型的,大型的并不多见(我是这么认为的)。但只要涉及人员间的交流和沟通,或多或少都要需要软件工程才能更有效率,工作成果更稳定。 其实开发软件,就像是解决一个逻辑问题。想想自己平时是怎样写程序的。首先是要有一个想法,即我写的这个程序是要干什么的;然后就是对要实现的核心功能大概构思一种或多种实现方法,并从中选出一种自认为是较好的;接下来就是将涉及的各种主要或次要功能分成各个模块;最后就是分模块来编码和DEBUG。在我看来,除了第一步外,其余的步骤应该是一个循环的过程。在编码的过程中,你总是需要不断地回过头来修改原先的模块设计,甚至最初选定的实现算法。 具体到每一步的工作要怎样完成,是非常灵活的,只要把握住大体的方向就行。在进行分析,设计,编码,调试,维护这几部分的工作的时候,最核心的就是文档的编写。 1.可行性分析就是关于当前项目能不能干的分析结果。 2.项目描述这是在决定立项以后,对当前项目的一份扼要说明。 3.需求分析就是对客户要求的功能的定义。 4.软件设计这就是对程序的每一个模块的详细设计的说明文档。 5.开发日志我一直都认为这是文档中最有趣的部分。开发日志相当于编码阶段的文档,它的形式可以很随意,主要是记录一些在写程序时突然萌发的灵感,或对代码的一些微小的修改,或对程序结构的一些微小变动等,还要对上述这些修改变动作些说明。 6.测试分析用于指出程序存在或潜在的缺陷和错误,以及程序性能的数字描述。

软件工程课程表

软件工程专业本科教学计划 专业代码080611W (国家)0406 (学校) 一、培养目标和基本规格 (一) 培养目标 软件工程专业本科生的培养目标是:针对国民经济信息化建设和发展的需要,面向软件产业界对软件工程技术人才的需求,培养具有良好的综合素质、良好的职业道德、扎实的软件工程理论知识及较强的英语综合应用能力,掌握自然科学和与软件有关的法律基础知识、具有自主学习和使用先进软件开发技术和工具的能力,具有软件开发实践和项目组织的初步经验,具有创新、创业、竞争意识和团队精神。学生毕业后能从事大型软件项目的开发,具有软件企业所需要的较高层次的软件工程技术和管理人才的素质,能适应技术进步和社会需求变化对高素质软件工程专门人才的基本要求。 (二) 培养规格 本专业学生应掌握软件工程领域坚实的基础理论和宽广的专业知识,具有良好的系统分析、设计及软件工程项目的组织与管理能力,具备运用先进软件开发技术、方法和工具的能力,具备与软件有关的法律知识,具备独立工作能力和团队精神。 毕业生应获得以下几方面的知识和能力: 1、掌握软件工程专业的基本理论、基本知识和基本技能,特别是软件项目管理与开发技术、信息系统的分析与设计技术、网络数据库开发技术、网络信息安全和嵌入式软件开发技术; 2、熟练掌握需求分析和建模、软件设计和实现、软件评审与测试、软件过程改进与项目管理、设计人机交互界面的基本方法,能运用先进软件技术和开发工具进行软件系统的开发与维护工作。 3、掌握与软件有关的法律法规、国际惯例,具备自觉运用法律知识进行软件知识产权保护的素质。 4、具有创业意识、创新精神和良好的职业素质,具有良好的人际沟通能力和团队精神。 5、了解软件工程领域的最新成果、发展动态和法律法规; 6、具有良好的英语写作和交际能力,外语水平达到规定的等级要求。 二、学制:四年。 三、授予学位:工学学士。

2019最新软件工程导论期末考试题库及答案

2019最新软件工程导论期末考试题库及答案 1.填空题 1.一般来说,可以从__一致性__、_完整性___、_现实性____和_有效性___四个方面验证软件需求的正确性。 2.IPO图是_输入、处理和输出图_的简称,它是美国IBM 公司发展完善起来的一种图形工具。 3.系统流程图是描述__物理模型__的传统工具,用图形符 号表达了系统中各种元素之间的_____信息流动_____情况。4.数据流图中的箭头表示数据流,椭圆或圆形表示数据处理,矩形表示数据的源点/终点。5.软件测试的步骤按顺序分别是:___单元测试_____、子系统测试、系统测试(子系统和系统测试通常称为集 成测试)、__确认测试__和_____系统测试(集成测试)____ 6.软件生命周期一般可分为_问题定义_、可行性研究、_需求分析_、设计编码、_测试_、运行与维护阶段。 7.可行性研究主要集中在以下四个方面_经济可行性_、__技术可行性____、__法律可行性___和抉择。 8.在结构化设计中,HIPO图应用在总体设计阶段,由IPO图和_层次图_两部分组成。 9.复杂问题的对象模型通常由下述五个层次组成:主题层、___类与对象_层、__结构___层、_属性_层和__服务_层。 10.实施精化设计的目标是基于模块的“高内聚低耦合” 的原则,提高模块的_独立性。 11.软件生命周期一般可分为___问题定义_、可行性研究、__需求分析__、概要设计__、详细设计、编码、__软件测试_、运行与维护阶段。 12.面向对象的数据存储管理模式分为__文件__、_关系数据库__和__面向对象数据库___三种。 13.单元测试一般以_白盒_测试为主,__黑盒__测试为辅。

软件工程-图书管理系统

淮海工学院计算机科学系实验报告书 课程名:《软件工程》 题目:结构化分析实验 班级:软件122 学号: 姓名:

结构化分析实验报告要求 1目的与要求: 1)系统学习和理解结构化软件工程分析阶段的基本概念、原理、技术和方法; 2)熟练掌握分析阶段各种建模工具,如数据流图、E-R图、状态图等基本含义和应用方法; 3)通过理论学习和试验要逐步提高运用软件工程基本理论、技术和方法解决实际问题的能力; 4)请借阅有关Microsoft Office Visio 系统,预习系统有关的结构化分析建模工具和使用方法; 5)按照实验题目要求独立完成实验容,如发现拷贝、抄袭者严肃处理; 6)认真书写实验报告,并于本周5前按时提交,不得延误。电子报告由学习委员打包全部提交,纸质报告每班5份,由学习委员合理安排。 2 实验容或题目 1.上网查询相关软件工程及其环境,了解有关软件工程环境(software development environment)、集成化软件工程环境的基本工具配置。(:.51cmm.; https://www.doczj.com/doc/e08431740.html,/ ; .sercenter.; https://www.doczj.com/doc/e08431740.html, ;https://www.doczj.com/doc/e08431740.html,/ ; https://www.doczj.com/doc/e08431740.html, ;.standar https://www.doczj.com/doc/e08431740.html, ; 2.下载有关软件工程标准,如国际ISO9000-3、国家GB8567-1988、2006和行业标准等,打 包存储到自己的U盘上,重点阅读和理解软件各个阶段标准文档的编写指南; 3.运行和了解Visio绘图工具的基本功能,并熟练掌握各种分析建模工具的操作使用方法, 如数据流图、E-R图、状态图等。 4.根据自己的知识兴趣自选一小项目(如图书管理、成绩管理、学籍管理等系统)或选择一 作业题(小题目)进行系统分析,然后建立系统的功能模型、数据模型和行为模型,并细 化到合理的层次和程度。要求在上机前画好系统的三个模型。注意:选题应根据自己的兴 趣选择,且本学期所有实验均以此题目做实验,选题原则突出简单、实用。 3 实验步骤与源程序 图书管理系统 (1)系统概述 1)系统开发背景 为了广大学生学习,开阔学生的视野,大部分学校都设立了图书馆。学生可以根据自己的兴趣爱好,到图书馆借阅自己喜欢的图书,由于图书馆的图书数量众多,利用手工操作管理图书的不仅仅会耗费学生和工作人员大量的时间和精力,效率以及准确性也很低。如何让图书管理更方便更高效,已成为一个重要的问题。

软件工程实习心得体会-

软件工程实习心得体会| 软件工程实习心得体会一 时间过的很快,转眼间已经实习将近5个月,其中有2个月是属于完全被流放的。 最先在内部系统组参与内部管理系统开发 (struts+mysql+spring+hibernate),之后是去做网络交换机软件的脚本测试。现在又回归内部系统,虽然在脚本组期间,编码能力被别人甩在后头,但至少具有了一些测试经验。 至少自己做的东西,是真正交付到了客户手上,到也稍微有些成就感。 1、浅谈测试 一直以来,我都认为测试是脱离了软件工程范围的工作,不以为屑。但在实际情况中,测试是既重要且难以精湛的.其真正的压力,在于找不到bug,责任在你,而不在于编码人员。一般的测试人

员不懂编码,他们靠的是日以累计的经验总结和想象力。而要做到高级测试工程师,则一定要懂编码,因为这是你完全掌握整个系统的方方面面具体运作的前提。但占主导地位的,还是大型系统的集成测试经验。实际项目中,编码时间一般只占30%左右,真正耗费时间的是it阶段的找bug与对应bug,此阶段基本评定了coder的编码质量。 2、程序员的困惑 有些人,以为教学视频和代码看多,自己就懂的多,实际做起来,却不知从何下手,问题在那?如何定位?如何解决?通通跟一样能力有关,debug追踪能力,也称调试。在项目组工作不愁源码资源,但问题是蛋糕摆在面前,你如何去消化? 有位同事告诉我:代码看几遍都没用,要去抄,例如一个查询模块,在此基础上去做具体记录的历史记录查询模块,你可能会觉得很简单,但实际情况却往往报一堆异常,配置问题涉及到方方面面,以及数据库字段,传值问题等等,一大堆对于新人来说很郁闷的问题。但不用怕,只要学会调试,一个个问题去追踪,一个个去解决,自然

软件工程导论课程教学大纲

《软件工程导论》课程教学大纲 一、课程性质、地位和作用 《软件工程导论》是是软件工程专业的专业基础课程,属必修课。 本课程主要讲述建造软件系统的基本方法、技术、流程、工具及规范等。通过学习可以使学生了解软件工程的基本概念、基本原理、实用的开发方法和技术;了解软件工程各领域的基本内容和发展动向;学习用工程化的方法开发软件项目,初步掌握开发过程中应遵循的流程、准则、标准和规范。本门课程为将来从事软件开发学生的软件工程师之路奠定坚实的基础。 二、课程教学对象、目的和要求 本课程适用于软件工程、计算机应用等从事软件开发的本科专业。课程教学目的、要求: (一)从教学内容上,应使学生了解软件工程的基本概念,主要包括软件与软件开发的基本过程,软件危机与软件工程。掌握个人软件开发过程的基本内容和方法,了解软件开发模型及结构化软件设计方法,以及软件质量保证基本内容。(二)从能力方面,应使学生通过对软件工程基本概念和方法的学习和课后练习,培养学生养成规范化个人开发的良好习惯,培养学生按照软件工程的基本过程和方法来设计和开发软件。 (三)从教学方法上,在课堂理论教学中,采用学生可以理解的软件开发素材,通过一边实践一边讲解的方法,讲解软件过程的基本思想和方法,通过学生完成与实践结合的作业,调动学生的积极性,使软件工程的基本思想逐步植根于学生头脑中。 三、相关课程及关系 本课程的先修课程是“C语言程序设计”和“数据结构”等程序设计课程,学习应在学生具有一定的编程能力基础上进行。本课程为后续的“软件制造工程”和“软件设计工程”等课程打下了必要的理论基础。 四、课程内容及学时分配 总学时:32学时 (一)绪论1学时 1、软件工程及其重要性 2、软件开发需要软件工程 3、软件工程课程体系架构(需要什么软件工程) 、课堂的组织、学习方法、章节安排与考核4. 要求学生了解软件工程的起源,软件工程在软件开发中的作用,了解软件工程课程体系。 (二)软件与软件工程4学时 1、软件及软件分类 2、软件工程的由来及概念 3、软件生命周期 4、软件开发与软件开发方法 5、软件工程工具和环境 6、软件开发项目管理介绍

软件工程导论期末考试题

一、单项选择题 1.适合于面向对象方法学的软件生存周期模型是( B ) A.瀑布模型 B.喷泉模型 C.螺旋模型 D.增量模型 2.从实用角度看,数据规范化程度在大多数场合选用第( C )范式。 A. 1 B.2 C.3 D.5 3. 可行性分析研究的目的是( A )。 A.项目值得开发否 B.争取项目 C.开发项目 D.规划项目 4. 模块的内聚性最高的是 ( D ) A.逻辑内聚 B.时间内聚 C.偶然内聚 D.功能内聚 5.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做 ( B ) A. 软件工程 B. 软件危机 C. 软件周期 D. 软件产生 6. 需求分析阶段的任务是确定( D ) A.软件开发方法 B.软件开发工具 C.软件开发费 D.软件系统的功能 7. 完整的软件结构通常用( B )图来表示。 A. IPO 图 B. HIPO 图 C.PAD 图 D.DFD 图 8. 在白盒法技术测试用例的设计中( A )是最弱的覆盖标准。 A.语句 B.路径 C.条件组合 D.判定 9?对象实现了数据和操作的结合,使数据和操作( C )于对象的统一体中。 A.结合 B.隐藏 C.封装 D.抽象 10. 在数据流图中,圆代表( C )。 A.源点 B.终点 C.加工 D.模块 11. 模块内聚度越高,说明模块内各成分彼此结合的程度越( B )。 A.松散 B.紧密 C.无法判断 D.相等 12. 软件测试方法中,黑盒、白盒测试法是常用的方法,其中黑盒测试主要用于测试( B )。 A.结构合理性 B.软件外部功能 C.程序正确性 D.程序内部逻辑 13. 面向对象开发方法中, ( C )是占主导地位的标准建模语言。 A.Booch 方法 B.Coad 方法 C.UML 语言 D.OMT 方法 14. 软件需求分析的主要任务是准确地定义出要开发的软件系统是( C ) A.如何做 B.怎么做 C.做什么 D.对谁做 15. 结构化程序设计的一种基本方法是( C ) A.筛选法 B.迭代法 C.逐步求精法 D.递归法 二、填空题 1. 目前使用最广泛的软件工 程学方法分别是传统方法学和(面向对象方法学 ) )和事务流。 文档 ) 。 ( 重复 )三种结构。 自顶向下 的集成测试方法,对软件结构中下层使 6. 软件维护包括 ( 改正性维护 )、适应性维护、完善性维护、预防性维护。 7. 面向对象方法学建模得到的三个基本子模型是 (对象建模 ) .动态模型、功能模型。 8. 复杂大型问题的对象模型通常由主题 2. 数据流图中信息流的类型有(变换流 3. 软件的定义是:软件 =程序+数据+ 4. 经典结构程序设计包括顺序、选择和 5. 集成测试时对软件结构中上层使用 用 ( 自底向上 ) 的集成测试方法。

软件工程图书管理系统资料

软件工程实验报告题目:图书管理系统 班级:姓名:学号:2014250 班级:姓名:学号:2014250 班级:姓名:学号:2014250 完成日期:2016 年12 月15 日

摘要 随着知识化和信息化新经济时代的到来,作为信息技术龙头的计算机及软件技术突飞猛进,UML成为一种不可或缺的工具。UML是一种定义良好、易于表达、功能强大且普遍适用的建模语言。它溶入了软件工程领域的新思想、新方法和新技术。它的作用域不限于支持面向对象的分析与设计,还支持从需求分析开始的软件开发的全过程。用现有的知识,按照软件工程思想和系统的开发步骤,以图书管理的应用需求为背景,分析设计了图书管理系统,并利用Rational Rose对系统进行建模,完成用例图和类图的构建,为后期的程序设计提供标准。 根据建模需求分析,总结出本系统的参与者有借阅者和图书管理员两类。根据其职能不同,借阅者只能使用该系统借书、预订书刊以及还书。图书管理员则可使用系统进行图书馆业务的管理工作,如借阅者,书刊等的信息维护。系统可实现书籍信息的添加、修改、删除等功能,这就保证了数据库信息的一致性和统一性、安全性。 该系统以面向对象理论和数据库管理信息系统开发相关知识为依据,介绍了设计开发中的模块设计和数据与程序的连接,使SQL server 2008与Visual Studio 2010得到了有效的结合。 关键词:图书管理系统;UML;Rational Rose;面向对象

目录 1 需求分析 ............................................................................................ 错误!未定义书签。 1.1 开发背景及意义 (4) 1.2 功能需求 (4) 2 系统建模 (8) 2.1 创建系统用例模型 (8) 2.1.1 确定参与者 (8) 2.1.2 参与者的用例图 .............................................................. 错误!未定义书签。 2.2 系统的时序图 ............................................................................ 错误!未定义书签。 2.2.1 确定系统参与者的属性 .................................................. 错误!未定义书签。 2.2.2 确定系统主要业务实体类 .............................................. 错误!未定义书签。 2.2.3 确定系统类之间的关系 .................................................. 错误!未定义书签。 2.3 系统的协作图 .......................................................................... 错误!未定义书签。 2.3.1 创建序列图和协作图 ...................................................... 错误!未定义书签。 2.3.2 创建状态图 ...................................................................... 错误!未定义书签。 2.3.2 创建活动图 ...................................................................... 错误!未定义书签。 2.4 创建系统的部署摸型 .............................................................. 错误!未定义书签。

软件工程实训报告总结

软件工程实训报告总结 软件工程实践作为软件工程专业本科生企业实习前的综合实践课程在培养体系中占有重要地位,怎样写软件工程实训报告? 篇一:软件工程实训总结转眼间实训已过去一段时间,之前的兴奋、喜悦如今已经让我熟悉,在实训的每一天都会让我有成为一名真正的财富者拥有的冲动。也许,在这期间不一定会让一个人有着翻天覆地的变化,但变化就是这样一点一点产生的。通过这一期的实训,虽然倍感折磨,但是收获却是很大的,学习中我不但有了学习成果的喜悦,而且自己也日渐成熟,有种说不出的喜悦。 在实训的过程中,我深深的体会到了自己在专业知识方面的欠缺和不足,也意识到了自己作为计算机软件专业的学生,要想在以后的 职业中崭露头角,除了要有过硬的理论知识,健康的体魄之外,还必须具备良好的心理素质,是自己在以后的途中无论经历什么样的困难,都立于不败之地。通过实训老师的课堂讲解与企业文化标准的培训,使我加深了对自己专业的认识,从而确定自己以后的努力方向,要想在短暂的实训时间内尽多的学到东西,就需要我们跟老师或同学进行良好的沟通,加深彼此的了解,只有我们跟老师多沟通,让老师更了解我们,才能更真切的对我们进行培训工作。由此,班级

的文化“共享”就在生活中慢慢形成了。 “纸上得来终觉浅,绝知此事要躬行!”在这短短的时间里,让我深深的感觉到自己在实际应用中所学来专业知识的匮乏。让我真真领悟到“学无止境”这句话的涵义。而老师在专业认识周到中所讲的,都是课本上没有而对我们非常有实际意义的。这又给我们的实训增添了浓墨淡彩的光辉。我懂得了实际生活中,专业知识是怎样应用与实践的。在这些过程中,我不仅知道了职业生涯所需具备的专业知识,而且让我深深体会到一个团队中的各个成员合作的重要性,要善于团队合作,善于利用别人的智慧,这才是大智慧。靠单一的力量是很难完成一个大项目的,在进行团队合作的时候,还要耐心听取每一个成员的意见,是我们的组合达到更加完美。 这次实训除了让我明白工作中需要能力,素质,知识之外,更重要的是学会了如何去完成一个任务,懂得了享受工作。当遇到问题,冷静,想办法一点一点的排除障碍,到最后获取成功,一种自信心就由然而生,这应该就是工作的乐趣。有时候不懂的就需要问别人了, 虚心请教,从别人的身上真的能学到自己没有的东西,每一次的挫折都会使我更接近成功。还有学会了在工作中与人的合作与交流,同乐同累,合作互助,这是团体的精神,也是必须学习的东西。

软件工程专业课程

软件工程专业的课程体系设计
骆 斌 张大良 邵 栋1 210093)
(南京大学软件学院 1、引言
南京市汉口路 22 号
软件工程是指开发、操作和维护软件系统的系统、规范、可度量的方法。从历史上看, 软件工程学科曾是计算机科学的一个分支,但随着软件产业不断发展的需求,传统的计算 机学科逐步上升到计算学科, 2001 年 IEEE 发布的计算学科教学规划把计算学科划分为计算 机科学、计算机工程、软件工程、信息系统、信息技术和其他有待发展的学科等子学科, 标志了软件工程这个名词作为与计算机理论相对应的各种软件实践技术的总称已经得到世 界范围内的公认。 我国在 2001 年底推出了示范性软件学院计划,把我国软件工程专业定位在面向软件产 业培养高素质的工程型软件实用人才。围绕这一定位,软件工程教育应该围绕大型软件开 发过程中的工程方法、关键技术和相关工具展开,在专业教学过程力图使得学生具备科学 世界观,掌握科学方法,具有扎实软件基础,受到良好软件工程训练,熟悉软件应用和工 具,参与过实际项目,拥有较好职业素质。 本文研究软件工程专业的课程体系设计,在研究过程中引入了科学的方法,参照 IEEE CC2001 的成熟做法, 首先明确专业的学科定位和人才培养定位, 然后建立相关的知识体系, 再后确定课程体系,最后确定课程设置和教学计划。 2、软件工程专业的相关知识领域简介 课程体系必须建立在对本专业知识体系的全面研究之上。作为软件工程专业人才培养 的基本依据,我校编写的《复合型软件实用人才的知识体系》定义了基本素质 BAS,计算 机软件基础 CSE,软件工程与软件管理 SEM,数学、工程和职业基础 MEP,软件系统与应 用 SSA,软件工具与产品 STP 等 6 个知识体系子类,并在各子类之下细分为知识领域、知 识单元和知识点三级。为方便讨论课程体系设计,现将与专业相关的 5 个子类的知识领域 简单列举如下: 1)CSE 定义了从事软件工作所应具备的软件专业基础知识,包括离散数学基础 CSE.DS,程序设计与算法基础 CSE.PF,计算机硬件基础 CSE.CH,系统软件基础 CSE.SS, 数据库应用基础 CSE.DB,网络通信基础 CSE.NC 和软件构造技术 CSE.CT 等知识领域。 2)SEM 定义了软件工程与软件管理知识,包括软件模型与分析 SEM.MA,软件设计 SEM.DE,软件检验和有效性验证 SEM.VV,软件演化 SEM.EV,软件过程 SEM.PR,软件 质量 SEM.QA 和软件管理 SEM.MG 等知识领域。 3)MEP 定义从事软件工作所应具备的数学、工程和职业知识,包括软件的数学基础 MEP.MF,软件的工程基础 MEP.EF,软件行业的职业素质 MEP.PP,软件业的外国语能力 MEP.FL 等知识领域。 4)SSA 定义从事某一方面软件工作应具备的专业或领域应用知识,包括网络工程与网 络应用 https://www.doczj.com/doc/e08431740.html,(计算机网络进阶 AN,分布式计算 DC,多媒体技术 MM) ,嵌入式与实时
1
骆斌,教授,副院长,博士;张大良,教授,副校长,软件学院教学委员会主任;邵栋,讲师。联系邮件, luobin@https://www.doczj.com/doc/e08431740.html,。

软件工程导论》期末考试试题与答案

《软件工程导论》期末考试-试题与答案 一、填空题 1.软件工程中的结构化分析 SA 是一种面向________的分析方法。 2.软件模块独立性的两个定性度量标准是_________________。 3.软件开发是一个自顶向下逐步细化和求精的过程,而软件测试是一个________的过程。 4. ________和数据字典共同构成了系统的逻辑模型 5. ___________是一种黑盒测试技术,这种技术把程序的输入域划分为若干个数据类,据此导出测试用例。二、单选 题 1.在软件危机中表现出来的软件质量差的问题,其原因是_______。A.软件 研发人员素质太差B.用户经常干预软件系统的研发工作C.没有软件质量标 准 D.软件开发人员不遵守软件质量标准2.在软件质量因素中,软件在异常条件下仍能运 行的能力成为软件的_____。A.安全性B.健壮性C.可用性D.可靠性 3.在下列测试技术中,______不属于黑盒测试技术。A.等价 划分B.边界值分析C.错误推测D.逻辑覆盖 4.软件工程方法是在实践中不断发展着的方法,而早期的软件工程方法主要是指______。A.原型化方法B.结构化方法C.功能化方法D.面向对象方法 5. ______是把对象的属性和操作结合在一起,构成一个独立的对象,其内部信息对外界是 隐蔽的,外界只能通过有限的接口与对象发生联系。A.多态 B.继承C.封装D.消息 6. Jackson 方法是在软件开发过程中常用的方法,使用 Jackson 方法时可以实现______。A.从数据结构导出程序结构B.从数据流图导出初始结构图C.从模块结构导出数据结构D.从模块结构导出程序结构 7.软件测试时为了________而执行程序的过程。A.纠正 错误B.发现错误 C.避免错误 D.证明错误 8.在软件系统中,一个模块应具有什么样的功能,这是由_____决定的。A.总体 设计B.需求分析C.详细设计D.程序设计 9.面向对象分析是对系统进行_________的一种方法。A.需求 分析B.程序设计C.设计评审D.测试验收 10.软件文档是软件工程实施中的重要部分,它不仅是软件开发各阶段的重要依据,而 且影响软件的_______。A.可理解 性B.可维护性C.可扩展性D.可 移植

软件工程仓库管理系统

软件设计书 仓库管理系统 系别:应用数学系 专业:信息与计算科学 班级:1204 学号:2012060437 姓名:闫丹爱

第一章可行性研究报告 1.1引言 1.1.1目的 本软件是用来有效的管理超市仓库货物数量及种类,以方便超市工作人员可以全面的了解超市仓库库存货物数量和种类来方便高效的管理超市仓库。 该项目可行性研究报告也是对超市仓库管理系统的全面考虑,是项目分析员进行进一步工作的前提,是软件开发人员成功的开发项目的前提.此分析研究报告可以使软件开发团体尽可能早的估计研制课题的可行性,可以在定义阶段较早的认识到系统方案的缺陷,可以节省时间、财力和精力,并且避免了专业方面的困难.及早地预测项目的可行性,在可行的前提下获得最好的实施方案。 1.1.2背景 随着社会的不断发展,物质的不断丰富,为了满足人们的需求,超市的货物也是越来越丰富。为了方便超市管理人员及时有效的了解仓库情况,更好的管理超市货物,提高管理效率,从而提出本软件。 1.2.要求和目标 1.2.1基本要求 ·功能:具有一定权限的管理人员可以对货物的售出和补充,以及新增加的商品和种类及时的进行修改,同时还具有缺货提示功能。 ·性能:详实有效的罗列出商品货物的数量和种类,来方便超市管理人员。 ·输入:具有一定权限的管理人员对货物数量种类进行修改。 ·输出:查询结果。 系统功能模块图1-1, 图1-1系统功能模块图 录入货物信息、更新 查看管理人员

功能模块及流图的简要描述:首先超市管理人员需要登录系统,如果登陆成功则以进入系统进行操作,否则会提示错误,要求重新登录。登录成功后,管理人员可以根据自己的需要进行操作。当添加货物种类,更改货物数量,都需要管理人员登录系统后才能操作。当货物数量较少时,系统会自动提示管理人员要进货了。本系统还可以管理管理人员的登录,即可以对有权限操作该系统的人员进行增、删、改功能。 ·在安全与保密方面的要求:对于有权限的人员才可以进行对系统的操作。 1.2.2开发目标 ①方便使用者对仓库货物的查询、删除、更新,减少人力和设备的需求。 ②方便了解进出仓库货物情况。 ③及时为用户发出缺货提示。 ④提高工作的效率。 ⑤降低仓库管理及维护费用。 1.2.3具备条件 ①开发条件:计算机实验室所提供的环境即可。 ②开发时间:开发的全过程必须在3个月内完成。 ③开发所需的经费:无。 ④运行的系统:Window 7以上版本即可 ⑤数据库:sqlserver 2000或者sqlsever 2005 1.3.社会因素方面的可行性 1.3.1法律方面的可行性 该系统的开发和研制,将不会侵犯他人、集体和国家的利益,不会违犯国家政策和法律。 1.3.2使用方面的可行性 该系统操做简单,不需要专业培训,一般人员即可胜任。 1.4.结论 综上所述,该项目应立即开始进行研发。从人力资源优化角度来说,可以充分利用人力资源。从经济利益的角度来看,即时开发完成即可用,可以立即赢利。但系统仍旧有些不足,例如修改方面还需人工手动修改数量等。在系统的交付使用中如有不足还望指出,以便改进。 第二章仓库管理系统需求分析 本系统的主要需求者是超市后台管理员。 2.1.本项目概述 本项目所开发的超市仓库管理系统完成超市管理员对货物的管理,减少数据漏掉的情况,更方便管理人员的浏览和操作,节省了人力物力。 2.2.系统一般性描述 由于本系统的数据还算不上大型的。所以数据库服务器与web服务器共用同一台计算机。系统中的货物信息和管理员信息都存放在sqlserver 数据库中。 2.2.1系统的用例图‘图2-1系统用例图’,用例图说明:

《软件工程》学习心得

《软件工程》学习心得 时光匆匆,不知不觉间《软件工程》的课程已经快学完,虽说没有具体的项目来开发应用,但我们知道软件工程就是将系统化的,规范化的,可度量的方法应用于软件的开发,运行与维护的过程,在整个学习期间,总的来说还就是学到了很多实用的东西,老师的介绍,教会我们如何去分析与处理问题,教会我们编写项目软件的流程与注意事项,总的来说还就是获益匪浅的。 初学软件工程,或许很多人都会迷茫,不知道软件工程学有何用,其实,软件工程还没有精确地定义,但老师的实例我就是深有体会,比如巧用建筑学知识,软件工程可以指导您分析出框架结构,项目实现的大体步骤及具体的细节等等,高效的开发、使用及维护软件,软件工程就是必不可少的。 下面我来回顾一下各章的内容,第一章初识软件工程,这一章主要讲解的就是一些概念性与基础性的内容,例如软件的概念、特性,软件危机的主要表现,软件工程的概念以及软件生存期、典型生存期模型等等。第二章软件需求分析,这一章主要讲了需求分析的任务,需求分析的步骤及各种描述工具、分析文档;需求的各种描述工具有实体关系图、数据流图、数据字典、等等;这就是软件项目开发的第一步。第三章软件设计,本章详细介绍了概要设计、详细设计及用户界面设计,我们掌握概要设计方法及详细设计方法。第四章程序编码,这一章重点讲解了结构化程序设计,设计风格及效率,程序设计语言的选择。第五章面向对象技术,这一章重点讲解了面向对象的概念、分析及设计,掌握什么就是面向对象,面向对象有哪些优缺点,了解面向对象的分析与设计方法。第六章统一建模语言UML,本章讲解了静动态建模机制,理解UML的形成、内容、特点及应用领域并掌握例图、类图进行静态建模的方法。第七章软件测试,本章详细介绍了软件测试方法及黑白盒测试用例设计方法,还讲解了软件测试步骤。第八章软件维护,本章主要介绍软件维护的任务、软件维护活动以及软件维护方法进行了介绍。 在学习软件工程过程中,或许有诸多不解,我们要从整体概念上较好地理解与把握、学好软件工程,学习时要注意多瞧多练要注意结合实际,更要多思考,面对错误不要一范就问,要尝试自己去解决。但就是还要注意什么都学,肯定就是什么都学不透的,要集中精力打攻坚战,学习软件工程首先要明白自己的学习目标究竟就是什么,根据自己的实际工作出发,有针对性的在相应的学习方向上进行提高,制定出详细的学习规划。还要注意与其她科目的相辅相成,就像我们在学习面向对象分析的时候要结合大一学习的面向对象及其方法学这一专业科目进行研究拓展,多思多想,把从各个科目学到的知识通汇贯通。 在写软件的时候,我们首先要有整体的结构与思路,这样才能照着一定的思想一定思路去写下去,有人说其实写软件并不难,只要给您一个思路您就可以不断地往下写。我觉得确就是如此,其实我们平时写软件我觉得并不就是很难的事,平时即使遇到处理不了的技术问题,哪里编译出现错误等等其实都可以在网上提问。技术问题一般我们都可以在网上得到答案,但软件的思想不就是我们瞧了一下就能真正理解的。

相关主题
文本预览
相关文档 最新文档