软件作业
软件工程作业1

软件工程作业1一、选择题:1.开发软件所需高成本和产物的低质量之间有着锋利的矛盾,这种现象称做〔C〕。
2.瀑布模型本质上是一种〔A 〕模型。
3.瀑布模型存在的问题是〔B 〕。
A.用户容易参与开发 B.缺乏灵活性C.用户与开发者易沟通 D.适用可变需求4.螺旋模型是一种将瀑布模型和〔A〕结合起来的软件开发模型。
A.增量模型B.专家系统C.喷泉模型D.变换模型5.原型化方法是用户和设计者之间执行的一种交互构成,适用于〔A〕系统。
A.需求不确定性高的 B.需求确定的C.打点信息 D.实时6.以下有关软件工程的尺度,属于国际尺度的是(D )7.布局化方法是一种基于〔D〕的方法。
A.数据布局B.程序布局C.算法D.数据流8.软件可行性研究本色上是要进行一次( A)需求阐发、设计过程。
A、简化、压缩的B、详细的C、彻底的D、深入的9.可行性研究的目的是〔D〕A、阐发开发系统的必要性B、确定系统建设的方案C、阐发系统风险D、确定是否值得开发系统10.设年利率为i,现存入p元,不计复利,n年后可得钱数为〔C〕。
A、P×(1+i*n)B、P× (i+1)*nC、p×(1+i)nD、p×(i+n)11.可行性研究是在〔A〕之前A、系统开发B、测试C、试运行D、集成测试12.可行性研究需要的时间长短取决于系统的规模,一般来说,可行性研究的成本只是预期总成本的〔C〕。
A、1%B、20%C、8%D、50%13.我国正式发布实施的〔B〕对计算机病毒的定义具有法律性、权威性。
A.计算机软件庇护条例B.中华人民共和国计算机信息系统安然庇护条例C.中华人民共和国著作权法D.计算机病毒防治打点方法14.效率是一个性能要求,因此应当在以下哪个阶段规定?BA、可行性阐发B、需求阐发C、概要设计D、详细设计15.需求规格说明书的作用不包罗〔D〕A、软件验收的依据B、用户与开发人员对软件要做什么的共同理解C、软件可行性研究的依据D、软件设计的依据16.数据字典是用来定义〔D〕中的各个成份的具体含义的。
软件开发与测试技术作业指导书

软件开发与测试技术作业指导书第1章软件开发基础 (3)1.1 软件开发生命周期 (3)1.2 程序设计语言 (4)1.3 开发工具与环境 (4)第2章软件测试概述 (4)2.1 软件测试的定义与目的 (4)2.2 软件测试的分类 (5)2.3 软件测试流程 (6)第3章需求分析 (6)3.1 需求分析的重要性 (6)3.2 需求获取方法 (6)3.3 需求规格说明书 (7)第4章设计与架构 (8)4.1 软件设计原则 (8)4.1.1 模块化原则 (8)4.1.2 抽象原则 (8)4.1.3 信息隐藏原则 (8)4.1.4 开放封闭原则 (8)4.2 设计模式 (8)4.2.1 创建型模式 (8)4.2.2 结构型模式 (9)4.2.3 行为型模式 (9)4.3 软件架构 (9)4.3.1 分层架构 (9)4.3.2 客户端服务器架构 (9)4.3.3 微服务架构 (9)4.3.4 事件驱动架构 (9)4.3.5 云计算架构 (9)第5章编码与实现 (10)5.1 编码规范 (10)5.1.1 通用规范 (10)5.1.2 语言特定规范 (10)5.2 代码质量 (10)5.2.1 可维护性 (10)5.2.2 可读性 (10)5.2.3 可靠性 (11)5.3 代码审查 (11)5.3.1 审查流程 (11)5.3.2 审查内容 (11)第6章单元测试 (11)6.1 单元测试概述 (11)6.3 单元测试策略 (12)第7章集成测试 (12)7.1 集成测试概述 (12)7.2 集成测试策略 (13)7.2.1 自下而上集成测试 (13)7.2.2 自上而下集成测试 (13)7.2.3 大棒集成测试 (13)7.2.4 基于功能的集成测试 (13)7.2.5 基于接口的集成测试 (13)7.3 集成测试用例设计 (13)7.3.1 设计原则 (13)7.3.2 设计方法 (14)第8章系统测试 (14)8.1 系统测试概述 (14)8.2 功能测试 (14)8.2.1 等价类划分法 (14)8.2.2 边界值分析法 (14)8.2.3 错误推测法 (14)8.2.4 功能测试用例设计 (14)8.2.5 功能测试执行与缺陷跟踪 (14)8.3 功能测试 (14)8.3.1 功能测试概述 (15)8.3.2 功能测试指标 (15)8.3.3 功能测试方法 (15)8.3.4 功能测试工具 (15)8.3.5 功能瓶颈分析及优化 (15)8.4 安全测试 (15)8.4.1 安全测试概述 (15)8.4.2 常见安全漏洞 (15)8.4.3 安全测试方法 (15)8.4.4 安全测试工具 (15)8.4.5 安全测试策略与实施 (15)第9章验收测试与上线 (15)9.1 验收测试 (15)9.1.1 验收测试概述 (15)9.1.2 验收测试准备 (15)9.1.3 验收测试实施 (16)9.1.4 验收测试通过标准 (16)9.2 上线流程 (16)9.2.1 上线准备 (16)9.2.2 上线实施 (16)9.2.3 上线后评估 (16)9.3 生产环境监控 (16)9.3.2 监控内容 (17)9.3.3 监控工具与策略 (17)第10章软件测试管理 (17)10.1 测试计划与策略 (17)10.1.1 测试目标 (17)10.1.2 测试范围 (17)10.1.3 测试方法 (17)10.1.4 测试流程 (17)10.1.5 测试策略 (17)10.2 测试团队组织 (17)10.2.1 测试团队角色与职责 (17)10.2.2 测试团队人员配置 (18)10.2.3 测试团队协作 (18)10.3 测试工具与自动化 (18)10.3.1 测试工具的选择 (18)10.3.2 自动化测试 (18)10.3.3 自动化测试实施 (18)10.4 持续集成与持续部署 (18)10.4.1 持续集成 (18)10.4.2 持续部署 (18)10.4.3 持续集成与持续部署工具 (18)10.4.4 持续集成与持续部署实践 (18)第1章软件开发基础1.1 软件开发生命周期软件开发生命周期(SDLC)是指从软件需求的识别到软件退役的整个过程中,软件开发所经历的一系列阶段。
软件工程作业

软件工程-作业一、判断(共计50分,每题2.5分)1、测试计划、测试用例和有关的分析报告一般不用长期保存。
()A. 正确B. 错误参考答案:B2、类封装比对象封装更具体,更细致。
()A. 正确B. 错误参考答案:B3、用黑盒法测试时,测试用例是根据程序内部逻辑设计的。
()A. 正确B. 错误参考答案:B4、面向对象设计的结果,既可以用面向对象语言,也可以用非面向对象语言实现。
()A. 正确B. 错误参考答案:A5、数据流图是结构化设计的最基本的工具。
()A. 正确B. 错误参考答案:B6、良好的面向对象程序设计风格,既包括传统的程序设计风格,也包括为适应而面向对象方法所特有的概念(如继承性)而必须遵循的一些新准则。
()A. 正确B. 错误参考答案:A7、模块化程序设计中,模块越小,模块化的优点越明显。
()A. 正确B. 错误参考答案:B8、软件测试的目的是证明软件是正确的。
()A. 正确B. 错误参考答案:B9、在软件开发中采用原型系统策略的主要困难是成本问题。
()A. 正确B. 错误参考答案:A10、结构化分析是面向数据流进行需求分析的方法。
()A. 正确B. 错误参考答案:A11、质量保证是为了保证产品和服务充分满足消费者要求的质量而进行的有计划,有组织的活动。
()A. 正确B. 错误参考答案:A12、白盒测试无需考虑模块内部执行过程和程序结构,只要了解模块的功能即可。
()A. 正确B. 错误参考答案:B13、软件测试目的是尽可能多地发现软件中存在的错误,将它作为纠错的依据。
()A. 正确B. 错误参考答案:B14、UML是一种面向对象的建模方法。
()A. 正确B. 错误参考答案:B15、类是指具有相同或相似性质的对象的抽象,类的具体化就是对象。
()A. 正确B. 错误参考答案:B16、开发一个软件项目总存在某些不确定性,即存在风险。
有些风险如果控制得不好,可能导致灾难性的后果。
()A. 正确B. 错误参考答案:A17、软件维护的目的就是修改程序中的错误。
软件工程大作业(2)(答案)

软件工程大作业(2)(答案)软件工程作业第二部分一、填空1.结构化分析方法的分析策略是___自顶向下逐步求精_______。
2.衡量模块独立性的两个定性标准是_耦合性与内聚性________。
3.软件集成测试的方法主要有两种,它们是___渐增式与非渐增式测试_______。
4.继承性是子类自动共享其父类的__数据结构和方法____________机制。
5.在面向对象方法中,人们常用状态图描述类中对象的___动态行为________。
6.规定功能的软件,在一定程度上能从错误状态自动恢复到正常状态,则称该软件为____容错_____软件。
7.可行性研究的目的是用最小的代价在尽可能短的时间内确定该软件项目_是否值得开发_。
8.需求分析阶段,分析人员要确定对问题的综合需求,其中最主要的是__功能需求_。
9.软件生存周期中时间最长、花费的精力和费用最多的一个阶段是__维护_____阶段。
10.对象之间进行通信叫做__消息_____。
11.计算机辅助软件工程这一术语的英文缩写为_CASE_______。
12.McCall提出的软件质量模型包括______11________个软件质量特性。
13.为了便于对照检查,测试用例应由输入数据和预期的___输出结果____两部分组成。
14.软件结构是以____模块__________为基础而组成的一种控制层次结构。
15.结构化语言(PDL)是介于自然语言和____形式语言____之间的一种半形式语言。
16.软件概要设计的主要任务就是__软件结构的设计______。
17.结构化程序设计方法是使用___三种基本控制结构____构造程序。
18.软件开发是一个自顶向下逐步细化和求精过程,而软件测试是一个__自底向上或相反顺序 _____集成的过程。
19.在建立对象的功能模型时,使用的数据流图中包含有处理、数据流、动作对象和__数据存储对象_____。
二、选择1.UML是软件开发中的一个重要工具,它主要应用于哪种软件开发方法( C )A、基于瀑布模型的结构化方法B、基于需求动态定义的原型化方法C、基于对象的面向对象的方法D、基于数据的数据流开发方法2.面向对象的开发方法中,(B)将是面向对象技术领域内占主导地位的标准建模语言。
《软件工程作业》考试复习题库(含答案)

《软件工程作业》考试复习题库(含答案)一、选择题1. 软件工程的三要素不包括以下哪项?A. 软件开发B. 软件维护C. 软件管理D. 软件设计答案:B2. 下列哪种编程范式主要用于软件工程中的面向对象编程?A. 命令式编程B. 函数式编程C. 面向对象编程D. 逻辑编程答案:C3. 在软件开发过程中,以下哪个阶段产生的文档最多?A. 需求分析B. 设计C. 编码D. 测试答案:A4. 以下哪个软件工程方法学强调在软件开发过程中使用迭代和增量开发?A. 敏捷开发B. 水晶方法C. 瀑布模型D. 敏捷开发与水晶方法的结合答案:A5. 以下哪个工具常用于软件需求分析阶段的模型建立?A. UML图B. 数据流程图C. 状态转换图D. 时序图答案:B二、填空题1. 软件工程的目的是提高软件的______、______和______。
答案:可用性、可靠性、可维护性2. 软件开发生命周期包括______、______、______、______和______。
答案:需求分析、设计、编码、测试、维护3. 在软件需求分析阶段,常用的方法有______、______和______。
答案:数据流程图、实体关系图、状态转换图4. 软件设计分为______设计和______设计。
答案:架构设计、详细设计5. 软件测试的目的不包括以下哪项______。
答案:找出软件的错误三、判断题1. 软件工程是计算机科学的一个分支。
()答案:正确2. 软件工程适用于所有类型的软件开发项目。
()答案:错误3. 敏捷开发方法适用于所有类型的软件开发项目。
()答案:错误4. 软件测试是软件开发过程中的最后一个阶段。
()答案:错误5. 软件维护是软件开发过程中的重要环节。
()答案:正确四、简答题1. 简述软件工程的定义及目标。
答案:软件工程是应用计算机科学、数学原理和方法来设计、开发、测试和维护软件的一门学科。
其目标包括提高软件的可用性、可靠性和可维护性,降低软件开发成本,提高软件开发效率。
软件工程作业参考答案

《软件工程》作业参考答案作业一1.与硬件相比,软件具有哪些特点?答:与硬件相比,软件具有以下不同的特点:(1)软件是逻辑的,而不是物理的产品。
逻辑往往实际只存在于人的头脑当中,软件的开发过程极难加以控制。
(2)软件是由开发或工程化而形成的,没有明显的制造过程。
软件成本集中于"开"上,意味着软件项目不能象硬件制造项目那样来管理。
(3)软件在运行和使用期间,不存在硬件那样的磨损和老化问题,但它存在退化问题,开发人员必须维护软件。
(4)大多数软件是自定的,而不是通过已有构件组装而成的。
迄今为止,软件的开发尚未完全摆脱手工的方式。
(5)软件成本相当昂贵。
(6)软件本身是复杂的。
软件比任何其他人类制造的结构更复杂,甚至硬件的复杂性和软件相比也是微不足道的。
软件本质上的复杂性是软件产品难以理解,影响软件过程的管理,并使维护过程十分复杂。
2.系统工程过程主要包含哪些基本阶段?各阶段主要完成什么工作?答:系统工程过程主要包括:系统需求定义阶段、系统设计阶段、子系统开发阶段、系统整合(集成)阶段、系统安装阶段、系统运行与进化阶段、系统退役阶段。
(1)系统需求定义阶段,通过与系统各类用户协商讨论,确定系统整体的需求。
包括系统必须提供的基本功能,非功能的系统总体特性(可用性、性能、安全性等),系统的边界及限制条件等。
(2)系统设计阶段,要做的是如何将不同的组件整合成一个能提供所需功能的系统。
(3)子系统开发阶段,实现在系统设计阶段识别出来的那些子系统,若这个子系统本身又是一个大系统,则可能又进入另一个系统工程过程中。
若子系统是一个软件系统,那么包括需求、设计和实现等这样的一个软件过程就启动了。
(4)系统整合阶段,将一个个独立开发的子系统整合为一个完整的大系统。
(5)系统安装阶段,系统进入实际的工作环境。
(6)系统运行与进化阶段,一旦系统安装完毕就进入运行阶段,运行一个系统可能包括组织操作人员培训并且改变正常的工作过程以适应新的系统,因为系统描述可能包含错误或遗漏,所以未被发现的问题可能在这个阶段出现。
软件作业
软件产品的开发主要是( D )。
A.复制B.再生产C.拷贝D.研制2.作坊式小团体合作生产方式的时代是( C )时代。
A.程序设计B.软件生产自动化C.程序系统D.软件工程3.软件工程与计算机科学性质不同,软件工程着重于( C )。
A.理论研究B.原理探讨C.建造软件系统D.原理的理论4.将每个模块的控制结构转换成计算机可接受的程序代码是( A )阶段的任务。
A.编码B.需求分析C.详细设计D.测试5.可行性研究的目的是决定( B )。
A.开发项目B.项目值得开发否C.规划项目D.维护项目6.SA方法用DFD描述( D ) 。
A.系统的控制流程 B.系统的数据结构C.系统的基本加工 D.系统的功能7.进行需求分析可使用多种工具,但( C )是不适用的。
A. 数据流图(DFD)B. 判定表C. PAD图D. 数据字典8.结构化分析(SA)方法将欲开发的软件系统分解为若干基本加工,并对加工进行说明,下述是常用的说明工具,其中便于对加工出现的组合条件的说明工具是( A )。
a.结构化语言;b.判定树;c.判定表。
A. b和cB. a,b和cC. a和cD. a和b9.软件概要设计结束后得到( B )。
A.初始化的软件结构图B.优化后的软件结构图C.模块详细的算法D.程序编码10.软件设计阶段一般又可分为 ( B )。
A.逻辑设计与功能设计B.概要设计与详细设计C.概念设计与物理设计D.模型设计与程序设计11.软件设计中划分模块的一个准则是( C )。
A.低内聚低耦合B.低内聚高耦合C.高内聚低耦合D.高内聚高耦合12.PDL是软件开发过程中用于( C )阶段的描述工具。
A.需求分析B.概要设计C.详细设计D.编程13.下列语言中哪个语言是低级语言( D )A. PASCALB.VISUAL BASICC. C++D.汇编语言14.软件测试的目的是( B )。
A.试验性运行软件B.发现软件错误C.证明软件正确D.找出软件中全部错误15.软件测试中,白盒法是通过分析程序的( B )来设计测试用例的。
软件开发行业作业指导书
软件开发行业作业指导书第1章软件开发基础 (4)1.1 软件开发概述 (4)1.1.1 软件定义 (4)1.1.2 软件开发目的 (4)1.1.3 软件开发层次 (4)1.2 软件开发生命周期 (4)1.2.1 需求分析 (4)1.2.2 设计 (4)1.2.3 编码 (4)1.2.4 测试 (4)1.2.5 维护 (5)1.3 常用软件开发模型 (5)1.3.1 瀑布模型 (5)1.3.2 快速原型模型 (5)1.3.3 迭代模型 (5)1.3.4 敏捷开发模型 (5)1.3.5 喷泉模型 (5)1.3.6 智能化开发模型 (5)第2章需求分析 (5)2.1 需求获取 (5)2.1.1 用户访谈 (5)2.1.2 调查问卷 (6)2.1.3 竞品分析 (6)2.1.4 需求工作坊 (6)2.2 需求分析 (6)2.2.1 功能需求分析 (6)2.2.2 功能需求分析 (6)2.2.3 可用性需求分析 (6)2.2.4 安全性需求分析 (6)2.2.5 兼容性需求分析 (6)2.3 需求规格说明书 (6)2.3.1 引言 (6)2.3.2 总体描述 (7)2.3.3 功能需求 (7)2.3.4 功能需求 (7)2.3.5 可用性需求 (7)2.3.6 安全性需求 (7)2.3.7 兼容性需求 (7)2.3.8 界面需求 (7)2.3.9 系统约束 (7)2.3.10 附录 (7)第3章系统设计 (7)3.1 架构设计 (7)3.1.1 系统结构 (7)3.1.2 层次划分 (7)3.1.3 模块划分 (8)3.1.4 关键技术与选型 (8)3.2 模块设计 (8)3.2.1 用户模块 (8)3.2.2 业务模块 (8)3.2.3 系统管理模块 (8)3.3 数据库设计 (9)3.3.1 表结构设计 (9)3.3.2 索引设计 (9)3.3.3 存储过程设计 (9)第4章编码实现 (9)4.1 编程规范 (9)4.1.1 通用规范 (9)4.1.2 命名规范 (9)4.1.3 代码结构规范 (9)4.2 代码审查 (10)4.2.1 审查流程 (10)4.2.2 审查内容 (10)4.3 版本控制 (10)4.3.1 版本控制工具 (10)4.3.2 提交规范 (10)4.3.3 分支管理 (10)第5章软件测试 (10)5.1 测试策略 (11)5.1.1 目的与原则 (11)5.1.2 测试范围与对象 (11)5.1.3 测试方法与工具 (11)5.2 单元测试 (11)5.2.1 目的与原则 (11)5.2.2 测试内容 (11)5.2.3 测试方法与工具 (12)5.3 集成测试与系统测试 (12)5.3.1 集成测试 (12)5.3.2 系统测试 (12)第6章软件部署与维护 (12)6.1 软件部署 (12)6.1.1 部署前准备 (12)6.1.2 部署流程 (12)6.1.3 部署策略 (13)6.2 软件维护 (13)6.2.2 维护内容 (13)6.2.3 维护流程 (13)6.3 软件升级与更新 (13)6.3.1 升级策略 (13)6.3.2 更新流程 (13)第7章软件项目管理 (14)7.1 项目规划 (14)7.1.1 项目目标 (14)7.1.2 项目团队组织 (14)7.1.3 项目计划 (14)7.1.4 资源规划 (14)7.1.5 项目预算 (14)7.2 项目进度控制 (14)7.2.1 项目进度监控 (14)7.2.2 项目调整 (14)7.2.3 项目报告 (14)7.2.4 项目评审 (14)7.3 项目风险管理 (14)7.3.1 风险识别 (15)7.3.2 风险评估 (15)7.3.3 风险应对策略 (15)7.3.4 风险监控 (15)7.3.5 风险管理文档 (15)第8章软件开发团队协作 (15)8.1 团队组织与管理 (15)8.1.1 团队结构 (15)8.1.2 团队成员选择与配置 (15)8.1.3 团队管理 (15)8.2 沟通与协作 (15)8.2.1 沟通渠道 (15)8.2.2 协作规范 (16)8.3 知识分享与技能提升 (16)8.3.1 知识分享 (16)8.3.2 技能提升 (16)第9章软件开发工具与环境 (16)9.1 集成开发环境 (16)9.1.1 概述 (16)9.1.2 常用集成开发环境 (17)9.1.3 集成开发环境的选择 (17)9.2 代码管理工具 (17)9.2.1 概述 (17)9.2.2 常用代码管理工具 (17)9.2.3 代码管理工具的选择 (17)9.3.1 概述 (18)9.3.2 常用项目管理工具 (18)9.3.3 项目管理工具的选择 (18)第10章软件开发行业发展趋势 (18)10.1 新兴技术概述 (18)10.2 开源与闭源之争 (19)10.3 软件开发行业的未来挑战与机遇 (19)第1章软件开发基础1.1 软件开发概述1.1.1 软件定义软件是指在计算机硬件及系统环境下,为实现一定功能或多个功能,按照特定要求设计、开发、测试、维护的相关文档和程序代码的集合。
软件工程作业1
软件工程作业1软件工程作业11. 前言本文档旨在描述软件工程作业1的内容和要求,并提供相应的解决方案。
作业1主要涉及软件需求工程的一些基本概念和方法。
2. 背景软件需求工程是软件开发过程中的关键环节,它旨在识别和定义用户的需求,为软件开发团队提供指导,确保开发出符合用户期望的软件产品。
在软件工程作业1中,我们将通过一个简单的实例来了解需求工程的基本概念和方法。
3. 需求分析3.1 需求定义本作业要求开发一个简单的待办事项管理系统,主要功能包括:- 记录待办事项的标题和描述- 根据优先级对待办事项进行排序- 标记已完成的待办事项3.2 功能需求根据需求定义,我们可以确定系统的功能需求如下:- 用户能够添加新的待办事项,并提供相应的标题和描述信息。
- 用户能够查看已有的待办事项列表,并能够根据优先级进行排序。
- 用户能够标记已完成的待办事项,并将其从列表中移除。
3.3 非功能需求除了功能需求外,我们还需要考虑一些重要的非功能需求:- 界面友好:用户界面应该简洁明了,方便用户操作。
- 性能高效:系统应该能够迅速处理大量待办事项的增删改查操作。
- 可靠性:系统需要具备一定的容错能力,确保数据不会丢失,应对异常情况。
4. 系统设计4.1 架构设计本系统采用简单的三层架构设计,包括表示层、业务逻辑层和数据访问层。
- 表示层:负责与用户进行交互,接收用户的输入并显示相关信息。
- 业务逻辑层:负责处理用户的请求,进行待办事项的增删改查操作。
- 数据访问层:负责与数据库进行交互,存储和检索待办事项的信息。
4.2 数据库设计本系统采用关系型数据库来存储待办事项的信息,数据库中主要包含以下两个表格:- todos 表:用于存储待办事项的基本信息,包括标题、描述和优先级。
- completed 表:用于存储已完成的待办事项信息,包括标题、描述和完成时间。
4.3 用户界面设计用户界面应该简洁而直观。
主要包括下面几个界面:- 待办事项列表界面:显示用户添加的待办事项列表,并可根据优先级排序。
软件测试作业及答案
第一章1. 选择题(1)软件本身的特点和目前软件开发模式使隐蔽在软件内部的质量缺陷不可能完全避免,在下列关于导致软件质量缺陷的原因的描述中,不正确的是(C)A. 软件需求模糊以及需求的变更,从根本上影响着软件产品的质量B. 目前广为采用的手工开发方式难以避免出现差错C. 程序员编码水平低下是导致软件缺陷的最主要原因D .软件测试技术具有缺陷(2)缺陷产生的原因是(D)A. 交流不充分及沟通不畅、软件需求的变更、软件开发工具的缺陷B .软件的复杂性、软件项目的时间压力C. 程序开发人员的错误、软件项目文档的缺乏D. 以上都是2. 判断题(1)缺乏有力的方法学指导和有效的开发工具的支持,往往是产生软件危机的原因之一。
(V)(2)目前的绝大多数软件都不适和于快速原型技术。
(V)(3)在程序运行之前没法评估其质量。
(X)(4)下列哪些活动是项目探索火星生命迹象(V)向部门经理进行月工作汇报(X)开发新版本的操作系统。
(V)每天的卫生保洁。
(X)组织超级女声决赛。
(V)一次集体婚礼。
(V)3. 简答题(1)什么是软件?软件经历了哪几个发展阶段?答:软件是一系列按照特定顺序组织的计算机数据和指令的集合。
一般来讲软件北划分为系统软件,应用软件和介于着两者之间的中间件。
其中系统软件为计算机使用提供最基本的功能,但是并不是针对某一特定领域,而应用软件则恰好相反,不同的应用软件更根据用户和所服务的领域提供不同的功能。
20 世纪50 年代初期至60 年代中期是软件发展的第一阶段(又称程序设计阶段);第二阶段从20 世纪60年代中期到70 年代末期是程序系统阶段。
第三阶段称为软件工程阶段,从20 世纪70年代中期到80 年代中期,由于微处理器的出现,分布式系统广泛应用,以软件的产品化,系列化,工程化和标准化为特征的软件产业发展起来,软件开发有了可以遵循的软件工程化的设计原则,方法和标准。
第四阶段是从20世纪80年代中期至今,客户端/度武器(C/S)体系结构, 特别是Web技术和网络分布式对象技术法飞速发展,导致软件体系结构向更加灵活的多层分布式结构演变,CORBA,EJB,COM/DC OM三大分布式的对象模型技术相继出现。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2011--2012学年第一期 物电 学院期末考试卷《软件工程导论》学号: 200972020212 姓名: 高淑琴 班级: 2009级电子(2)班 成绩: 评语:(考试题目及要求)本考试要求学生根据本学期所学的的软件工程导论知识并运用自己所熟悉的应用软件根据自身的能力设计一个数据信息管理系统,并实现相应的功能,并根据以下要求对系统进行分析。
要求如下: 1、 系统需求分析 2、可行性分析 3、总体设计和详细设计 4、测试过程5、大标题字体为黑体小二号,正文标题字体为黑体小二号,正文内容字体为宋体小四号,字数在3000字左右。
装订线图书馆管理系统系统需求分析1.引言随着计算机技术的不断应用和提高,计算机已经深入到社会生活的各个角落,计算机软件也在各方面得到广泛的应用。
但是,很多图书馆仍采用手工管理图书的方法,不仅效率低、易出错、手续繁琐,而且耗费大量的人力。
为了满足图书馆管理人员对图书馆书籍,读者资料,借还书等进行高效的管理,并结合我院图书馆管理现状,在工作人员具备一定的计算机操作能力的前提下,特编此图书信息管理系统软件以提高图书馆的管理效率。
1.1编写目的近年来,随着图书馆规模的不断扩大,图书数量也相应的增加,有关图书的各种信息量也成倍增加,面对着庞大的信息量,传统的人工方式管理会导致图书馆管理上的混乱,人力与物力过多浪费,图书馆管理费用的增加,从而使图书馆的负担过重,影响整个图书馆的运作和控制管理,因此,必须制定一套合理、有效,规范和实用的图书管理系统,对图书资料进行集中统一的管理。
随着图书馆的规模的不断扩大,图书馆的藏书、管理人员、读者的数量也越来越多。
图书涉及大量的数据处理,如果用手工来完成庞大的数据处理,将费时费力,还容易出错,为了满足图书管理的需要,急需要一套图书管理系统来完成这项工作。
作为计算机应用的一部分,使用计算机对图书信息进行管理,具有手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高图书管理的效率,也是企业的科学化、正规化管理的重要条件。
同时还要注意下列几点:1 由于各方面的限制,如人员不够、技术缺乏等原因,开发时应本着循序渐进,逐步完善的原则,不能贪大求全,盲目开发。
2 要注意信息的准确、及时、适用、经济,只有及时、准确的信息才能保证系统开发的质量和效率。
3 从全局出发注意系统开发的整体优化,还要注意系统的可扩展性和可延伸性。
1.2预期的读者和阅读建议本需求的预期读者是我院图书馆管理员,部分学员,与图书管理系统软件开发有联系的决策人,开发组成人员,扶助开发者,软件验证者。
1.3项目背景开发软件名称:图书信息管理系统。
项目开发者:物理与电子工程学院高淑琴用户单位:西北师范大学图书馆1.4参考资料1、张海藩,《软件工程导论》,清华大学出版社。
2、王删著,《数据库系统原理教程》,清华大学出版社。
3、陈松桥等著,《现代软件工程》,北方交通大学出版社。
2.综合描述为方便对图书馆书籍,读者资料,借还书等进行高效的管理,特编写该程序以提高图书馆的管理效率。
使用该程序后,图书馆管理人员可以管理读者的登记,图书的购入、借出、归还以及注销等;还可以查询某位读者、某本图书的借阅情况,对当前借阅情况给出一些统计,给出统计表格,以全面掌握图书的情况。
在学校图书馆内部的现有局域网这个网络环境下,信息由各用户在规定的权限下在各自的工作站上录入,信息上网后各用户可查询,调用,达到信息共享。
2.1产品的前景图书馆在正常运营中面对大量书籍、读者信息以及两者间相互联系产生的借书信息、还书信息。
现有的人工记录方法既效率低又错误过多,大大影响了图书馆的正常管理工作。
因此需要对书籍资源、读者资源、借书信息、还书信息进行管理,及时了解各个环节中信息的变更,有利用管理效率的提高。
本系统通过强大的计算机技术给图书管理人员和读者借、还书带来便利。
本系统除了图书馆内管理的一般功能还外,还包括网上在线查询图书信息、查询本人的借阅情况和续借等功能。
系统的功能相对比较完善,根据以后不同的需要,还要对系统进行更新。
2.2产品的功能(1) 读者信息的制定、输入、修改、查询,包括种类、性别、借书数量、借书期限、备注。
(2) 书籍基本信息制定、输入、修改、查询,包括书籍编号、类别、关键词、备注。
(3) 借书信息制定、输入、修改、查询,包括书籍编号、读者编号、借书日期、借书期限、备注。
(4) 还书信息制定、输入、修改、查询,包括书籍编号、读者编号、还书日期、还书期限、备注。
(5) 有条件、多条件查询各种信息.2.3运行环境1)硬件环境服务器(1) 处理器(CPU):Pentium 900M (推荐Pentium 4 1.2G)(2) 内存容量(RAM):至少256M(推荐 512M)客户端(1) 处理器(CPU):Pentium 133M 或更高(2) 内存容量(RAM):64M或更高2)软件环境数据库服务器端(1) 操作系统:Microsoft Windows 2000(2) 数据库管理系统:Oracle,配臵TCP/IP协议Web服务器端(1) 操作系统:Microsoft Windows 2000(2) Internet 信息服务(IIS)6.0管理器(3) Visual 2003,配臵TCP/IP协议客户端(1) 操作系统:Windows 98/2000/2003/XP(2) Web浏览器:Internet Explorer 5.0以上或Netscape 4.0以上,配臵TCP/IP协议3)接口硬件接口考虑到大量数据的备份等要求,需要保持与磁带机和光盘刻录机的接口,这较易实现。
软件接口这里,主要考虑软件与操作系统、数据库管理系统的接口,以及局域网和互联网软件之间的数据交换。
考虑到文档处理时有可能需要较常用的办公软件。
2.4设计与实现上的限制开发时间比较紧,机器限制,开发人员的经验少,是开发系统中主要的问题。
开发经费不到位,管理不完善,设计时没能全得到考虑,都会影响本项目的开发进程。
3.功能需求 3.1需求规定在图书管理系统中,管理员要为每个读者建立借阅账户,并給读者发放不同类别的借阅卡(借阅卡可提供卡号、读者姓名),账户内存储读者的个人信息和借阅记录信息。
持有借阅卡的读者可以通过管理员(作为读者的代理人与系统交互)借阅、归还图书,不同类别的读者可借阅图书的范围、数量和期限不同,可通过互联网或图书馆内查询终端查询图书信息和个人借阅情况,以及续借图书(系统审核符合续借条件)。
借阅图书时,先输入读者的借阅账号,系统验证借阅卡的有效性和读者是否可继续借阅图书,无效则提示其原因,有效则显示读者的基本信息,供管理员人工核对。
然后输入要借阅的书号,系统查阅图书信息数据库,显示图书的基本信息,供管理员人工核对。
最后提交借阅请求,若被系统接受则存储借阅纪录,并修改可借阅图书的数量。
归还图书时,输入读者借阅卡号和图书号(或丢失标记号),系统验证是否有此借阅纪录以及是否超期借阅,无则提示,有则显示读者和图书的基本信息供管理员人工审核。
如果有超期借阅或丢失情况,先转入过期罚款或图书丢失处理。
然后提交还书请求,系统接受后删除借阅纪录,并登记并修改可借阅图书的数量。
图书管理员定期或不定期对图书信息进行入库、修改、删除等图书信息管理以及注销(不外借),包括图书类别和出版社管理。
为系统维护人员提供权限管理、数据备份等通用功能。
3.2数据流程图 顶层图:图书管理系统管理员读者信息 读者情况 图书情况借还书信息读者图书查询条件 借阅查询条件图书信息 读者借阅情况图书信息0层图:1书籍管理2读者管理3借阅管理管理员读者读者信息表借阅信息表图书信息表读者信息读者情况图书信息图书情况借还书信息图书查询条件图书信息读者借阅情况 图书信息图书信息借还书信息借阅信息读者基本信息读者信息读者信息借阅信息图书基本信息 借阅信息管理员借阅查询条件图书借还信息1层图(书籍管理):1.1书籍类别管理1.2书籍信息管理1.3注销管理1.4出版社管理管理员读者图书注销信息表借阅信息表图书信息表图书信息图书情况图书查询条件图书信息图书信息图书信息借阅信息图书类别表类别信息图书(类别)信息类别录入信息出版社信息表 出版社信息新出版社图书注销)信息图书注销信息 图书注销信息图书新类别图书(出版社)信息管理员1层图(读者管理):2.2读者信息管理2.1读者类别管理管理员读者信息表借阅信息表读者类别表读者信息读者情况读者信息 读者信息借阅信息读者(类别)信息读者类别信息读者类别信息4.非公能需求:4.1性能需求1)精度需求在精度需求上,根据使用需求,在各项数据的输入,输出及传输过程中,可以满足各种精度的需求。
2)时间需求在软件方面,响应时间,更新处理时间都比较快且迅速,完全满足用户要求。
3)灵活性当用户需求,如操作方式,运行环境,结果精度,数据结构与其他软件接口等发生变化时,设计的软件要做适当调整,灵活性非常大。
4)故障处理内部故障处理:在开发阶段可以随即修改数据库里的相应内容。
外部故障:对编辑的程序进行重装载时,第一次装载认为错,修改。
第二次运行,在需求调用时出错,有错误提示,重试。
4.2属性1)保密性本软件作为教学管理辅助设备,它的规模比较小,不需要保密技术,先顶一个程序中某些区域的规约,给不同的模块分配不同的功能。
2)可维护性本软件的组成程序组构较为简单,直观意义上较独立。
因此,给予电子化的所构成的硬件的简单可维护的特点,决定了该软件的简单。
4.3其他需求1)数据库数据库是实现有组织的,动态的存储大量关联数据,方便多用户访问的计算机软硬自愿组成的系统。
他与文件系统的重要区别时数据的充分共享,交叉访问,与应用程序的高度独立性。
由于本软件的整体结构比较简单,所涉及的数据相对来说也比较少,组成文件的最小单位是记录。
2)操作a.初始化操作b. 数据处理的功能较强c.后援和恢复操作系统可行性分析对所建议的开发项目进行可行性研究的前提,如要求、目标、假定、限制等。
1.1要求一.功能;产品完成的功能主要如下:1.借书,还书2.在图书馆中增加/删除一本书3.按照作者名或专业领域检索一批书4.找出某位读者借出的一批书5.找出最近借走某本图书的读者6.还书时间到了自动显示还书信息。
二、输入输出:输入的数据为藏书的基本信息(书名,条码,价格等),可以增加和删除;对于查询功能,应做到可以单条件输入、输出;对于维护功能,要有输入、修改以及借还书信息。
三、处理流程和数据流程用图表的方式表示出最基本的数据流程和处理流程。
基本信息录入 读者基本信息录入基本信息录 读者信息 基本信息录入系借阅信息录入 读者信息返回 书籍信息返回四、 安全和保密:保证管理者根普通用户的用户密码安全。