软件工程案例教程软件项目开发实践第二章练习题

软件工程案例教程软件项目开发实践第二章练习题

第二章练习题:

一、填空题

1.UML的三个基本构造模块是事务、关系和图。

2.在软件开发的结构化方法中,采用的主要技术是SA,即结构化分析和SD,即结

构化设计。

3.数据流图描述数据在软件中的流动和处理过程,是软件模型的一种图示,它一

般包括4种图形符号:变换/加工、外部实体、数据流向和数据存储。

4.面向对象方法是将数据和对数据的操作紧密结合起来的方法,这是与其传统结

构化方法的主要区别。

5.软件代理一般具有自治性、开放性、反应能力特性。

二、判断题

1.面向对象开发过程是多次重复和迭代的演化过程,在概念和表示方法上的一致

性保证了各项开发活动之间的平滑过渡。(√)

2.基于构件软件工程开发的整个过程从需求开始,在完成体系结构设计后,并不

立即开始详细设计,而是确定哪些部分可由构件组装而成。(√)

3.软件逆向工程是根据对软件需求的分析恢复其设计和软件代码的过程。(×)

三、选择题

1.结构化分析方法是面向(B)的自顶向下逐步求精的分析方法。

A.目标B.数据流C.功能D.对象

2.结构化的概要设计是以(B)技术为基础的软件设计方法。

A.抽象

B.模块化

C.自上而下

D.信息屏蔽

3.在结构和分析法中,常用的描述软件功能需求的工具是(C)。

A.业务流程图、处理说明

B.软件流程图、模块说明

C.数据流程图、数据字典

D.系统流程图、程序编码

4.(A)不是UML的图示。

A.流程图

B.用例图

C.活动图

D.序例图

软件工程第一,二章习题doc

第一、二章习题及答案 (一)名词解释 1. 软件 2. 文档 3. 软件危机 4. 软件工程 5. 软件工程过程 6. 软件生存周期 7. 软件生存周期模型(软件开发模型) (二)填空题 1. 在信息处理和计算机领域内,一般认为软件是、和。 2. 国家标准“计算机软件开发规范”中,把软件生存周期划分为8个阶段,即、、、、、、和。 3. 螺旋模型将开发过程分为几个螺旋周期,在每个螺旋周期内分为、、和四个步骤。 4. 软件工程过程包含的7个过程是、、、、、 和。 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. 在软件开发模型中,提出最早、应用最广泛的模型是()。 A. 瀑布模型 B. 喷泉模型 C. 增量模型 D. 螺旋模型 7、瀑布模型把软件生命周期划分为八个阶段:问题的定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试和运行、维护。八个阶段又可归纳为三个大的阶段:计划阶段、开发阶段和( )。 A、详细计划 B、可行性分析 C、运行阶段 D、测试与排错 8、从结构化的瀑布模型看,在它的生命周期中的八个阶段中,下面的几个选项中哪个环节出错,对软件的影响最大( )。 A、详细设计阶段 B、概要设计阶段 C、需求分析阶段 D、测试和运行阶段 9、在结构化的瀑布模型中,哪一个阶段定义的标准将成为软件测试中的系统测试阶段的目标( )。 A、需求分析阶段 B、详细设计阶段 C、概要设计阶段 D、可行性研究阶段 10、软件工程的出现主要是由于( )。 A.程序设计方法学的影响 B.其它工程科学的影响 C. 软件危机的出现 D.计算机的发展 11、软件工程方法学的目的是:使软件生产规范化和工程化,而软件工

软件开发案例分析需求模板汇总

E-Storage Management System Software Requirements Specification 电子化仓储管理系统软件需求规格说明书 版权所有不得复制 Copyright ? BroadenGate Technologies, Co., Ltd. All Rights Reserved

Revision Record 修订记录

Catalog 目录

错误!未找到引用源。 Keywords 关键词:仓储管理 Abstract 摘要:本文主要描述电子化仓储管理系统的设计需求,包括功能需求和性能需求,以及其他设计约束等。 List of abbreviations 缩略语清单:

1Introduction 简介 1.1Purpose 目的 1.2Scope 范围 本文档包含电子化仓储管理系统V1.0的对外接口和功能描述,以及和外部的约束关系。2General description 总体概述 2.1Software perspective 软件概述 2.1.1About the Project 项目介绍 2.1.2Environment of Pruduct 产品环境介绍 2.2User characteristics 用户特征 2.3Software function 软件功能 2.4Assumptions & Dependencies 假设和依赖关系 3Specific Requirements 具体需求

3.1Functional Requirements 功能需求 我们采用面向对象分析的方法来作为主要的系统建模方法,使用UML(Unified Modeling Language)作为建模语言。UML为建模活动提供了从不同角度观察和展示系统的各种特征的方法。在UML中,从任何一个角度对系统所作的抽象都可能需要几种模型来描述,而这些来自不同角度的模型图最终组成了系统的映像。 Use Case描述的是“actor”(用户、外部系统以及系统处理)是如何与系统交互来完成时,该模型将来可 派生出动态对象模型。 设计Use-case时,我们遵循下列步骤: 第一步: 识别出系统的管理员。管理员可以是用户、外部系统,甚至是外部处理,通过某种途径与系统交互。重要的是着重从系统外部执行者的角度来描述系统需要提供哪些功能,并指明这些功能的执行者是谁。尽可能地确保所有管理员都被完全识别出来。 第二步: 描述主要的Use Case。可以采取不断地问自己“这个管理员究竟想通过系统做什么?”来准确地描述Use Case。 第三步: 重新审视每个Use Case,为它们下了详尽的定义。 电子化仓库管理系统是通过对入库业务、出库业务、仓库调拨、库存调整业务信息的管理,提高仓库管理信息的实时性和准确性,达到即时库存管理的功能,并有效控制并跟踪业务的物流和成本管理全过程,实现完善的企业仓储信息管理。系统中设计了装箱算法,为客户提供合理有效的装箱方案,保证了货物集装箱的利用。本系统可以提供有关库存情况的准确信息,增强了作业的准确性和快捷性、减少了整个物流中由于商品误置、送错、偷窃、损害和库存、出货错误等造成的损耗,并最大限度减少存储成本。 总体功能时序图:(如图3-1所示)

软件工程课程设计报告——人事管理系统

软件工程课程设计 题目人事管理系统 系计算机系 专业班级软件工程(动画方向)(2)班 学生姓名贾秋洪 学号20082358069 指导教师姜青山 2010 年6 月18 日 1.课程题目 人事管理系统设计 2.概述 2.1本课题的来源 A公司是一家以寿险营销为目的的寿险公司,公司员工众多业务流量大,为了方便管理,我制作了一个人事管理系统。主要

通过员工基本信息录入、修改、查询、删除以及员工考勤等方面来对员工综合考评。以便对员工发放工资进行合理分配。这样能提高领导的人事管理水平还能提高员工的积极性。通过现代计算机技术与企业管理相结合,实现人事管理系统的科学化、信息化、现代化,并且适合一般人群使用。 企业人事管理是相对企业内部员工的管理。集人员、考勤、工资、员工培训、系统功能等于一体的大型管理系统,为公司在人事管理等方面提供极大的方便。本软件是以中小型企业为背景而设计开发的,界面美观、使用方便。本系统主要以人员管理、考勤管理、统计分析管理、工资核算等,是企业人事管理必不可缺的好帮手。 2.2本课题目的、实现功能与预期成果 2.2.1目的 目前市面上流行的人事管理系统不少。但是,对于A公司来说,不需要大型的数据库系统。只需要一个操作方便,功能实用,能满足本中心对数据的管理及需求的系统。我们的目标就是在于开发一个功能实用、操作方便,简单明了的人事管理系统。 2.2.2实现功能 能够录入人事的基本资料,在操作上能够完成诸如添加、修改、删除、按各种条件进行查询、新用户的设置及密码修改等方

面的工作,基本满足人事日常业务的需要。 2.2.3预期成果 所做出的人事管理系统能让A公司管理层在操作简单的前提下并有效的提高对该公司的人事管理,并通过该系统提高员工的能力。尽量使本系统做到是一个科学化、信息化、简单使用的人事管理系统。 3.系统分析 3.1系统调研 正式开发管理信息系统之前进行调研是非常必要的,必要对现行系统进行详细的调查,明确用户需求,保证开发的新系统的功能与用户的要求相吻合,避免耗费大量的人力、物力、财力,新系统的开发却失败的悲剧发生。 3.2可行性分析概述 可行性分析是在A公司的要求和系统调研的基础上进行的,对新系统的开发从社会、技术、经济、管理等方面进行分析,并得出新系统的开发工作可行、不可行、需要修改、追加投资、暂缓开发、分步实施等方案和结论,最后完成可行性分析。 可行性分析一般可定义为:可行性分析是在建设的前期对工程项目的一种考察和鉴定,对拟议中的项目进行全面与综合的技术、经济能力的调查,判断它是否可行。 可行性分析阶段的主要工作包括以下几个方面:

软件工程课后习题(含答案)

第一章练习题 一、填空题 1、软件工程三要素是:方法、工具、过程。 2、软件开发方法是指软件开发过程中所应遵循的方法和步骤。 二、名词(术语)解释: 1、可靠性---是指在给定的时间间隔内,程序成功运行的概率。可靠性是衡量软件质量的一个重要目标。 2、可理解性---指系统具有清晰的结构,能直接反映问题的需求。可理解性有助于控制软件系统的复杂性,并支持软件的维护、移植和重用。 三、问答题 1、面向对象方法的优点是什么? 答:(1)将现实世界问题向面向对象解空间直接映射,实现对现实世界的直接模拟。 (2)以数据为中心,而不是基于对功能的分解,使得软件结构相对稳定,软件的重用性、可靠性、可维护等特性都较好。 2、可视化开发方法的优点有哪些? 答:(1)简化了图形用户界面的设计和编码工作,将开发的注意力主要集中在程序的执行逻辑和工作流程上。 (2)软件开发简单,易学、易上手。 (3)专业或非专业人员都能参与软件开发活动。 第二章练习题 一、填空题: 1、软件工程过程是:为获得软件产品,在软件工具支持下由软件人员完成的一系列软件工 程活动。 2、一个软件从定义、开发、使用和维护,直到最终被废弃,所经历的生存过程经历的生存过程称为软件生存期或叫生命期。 3、软件生命周期的阶段划分为3个时期是:定义时期、开发时期、维护时期。 4、软件工程标准的5个层次是:国际标准、国家标准、行业标准、企业规范、项目规范。 二、简答题: 1、瀑布模型的优点有哪些? 答:1、强迫开发人员采用规范的技术方法; 2、严格地规定了每个阶段必须提交的文档; 3、每个阶段结束前必须正式进行严格的技术审查和管理复审。 2、瀑布模型的缺点是什么? 答:1、在软件开发的初期阶段就要求做出正确、全面、完整的需求分析对许多应用软件来说是极其困难的。 2、在需求分析阶段,当需求确定后,无法及时验证需求是否正确、完整。 3、作为整体开发的瀑布模型,由于不支持产品的演化,缺乏灵活性,对开发过程中很 难发现的错误,只有在最终产品运行时才能暴露出来,从而使软件产品难以维护。

软件工程案例教程李军国主编复习题答案

第1章习题答案 一、判断题 二、填空题 三、简答题 1.软件的特点: ①软件具有抽象性。 ②软件与硬件的生产方式不同。 ③软件与硬件的维护方式不同。 ④软件具有复杂的逻辑性。 ⑤软件的成本较高。 ⑥软件的使用和社会因素有关。 2.软件危机产生的原因: ①用户需求不明确。 ②缺乏正确的理论指导。 ③软件开发规模越来越大。 ④软件开发复杂度越来越高。

3.软件危机的主要表现: ①软件开发进度难以预测。 ②软件开发成本难以控制。 ③用户对产品功能难以满足。 ④软件产品质量无法保证。 ⑤软件产品难以维护。 ⑥软件缺少适当的文档资料。 4.软件工程学的基本原则有哪些: ①抽象。 ②信息隐蔽。 ③模块化。 ④局部化。 ⑤确定性。 ⑥一致性。 ⑦完备性。 ⑧可验证性。 5 什么是软件的生命周期? 答案:软件与任何一个事物一样,有它的孕育、诞生、成长、成熟、衰亡的生存过程。 这就是软件的生存周期。 6 软件工程过程有哪几个基本过程活动?试说明之。 答案:软件工程过程的基本过程活动有4步: ①软件规格说明(需求定义)。规定软件的功能及其运行的限制; ②软件设计与开发(设计开发)。产生满足规格说明的软件; ③软件确认(测试)。确认软件能够完成客户提出的要求; ④软件演进(维护)。为满足客户的变更要求,软件必须在使用的过程中演进。 四、综合题 1.详细说明软件生命周期分哪几个阶段? 答案:软件生命周期主要分为6个阶段:软件项目计划、软件需求分析和定义、软 件设计、程序编码、软件测试,以及运行维护。 (1)软件项目计划:在这一步要确定软件工作围,进行软件风险分析,预计软件

开发所需要的资源,建立成本与进度的估算。根据有关成本与进度的限制分 析项目的可行性。 (2)软件需求分析和定义:在这一步详细定义分配给软件的系统元素。可以用以 下两种方式中的一种对需求进行分析和定义。一种是正式的信息域分析,可 用于建立信息流和信息结构的模型,然后逐渐扩充这些模型成为软件的规格 说明。另一种是软件原型化方法,即建立软件原型,并由用户进行评价,从 而确定软件需求。 (3)软件设计:软件的设计过程分两步走。第一步进行概要设计,以结构设计和 数据设计开始,建立程序的模块结构,定义接口并建立数据结构。此外,要 使用一些设计准则来判断软件的质量。第二步做详细设计,考虑设计每一个 模块部件的过程描述。经过评审后,把每一个加细的过程性描述加到设计规 格说明中去。 (4)程序编码:在设计完成之后,用一种适当的程序设计语言或CASE工具生成源 程序。应当就风格及清晰性对代码进行评审,而且反过来应能直接追溯到详 细设计描述。 (5)软件测试:单元测试检查每一单独的模块部件的功能和性能。组装测试提供 了构造软件模块结构的手段,同时测试其功能和接口。确认测试检查所有的 需否都得到满足。在每一个测试步骤之后,要进行调试,以诊断和纠正软件 的故障。 (6)软件维护:为改正错误,适应环境变化及功能增强而进行的一系列修改活动。 与软件维护相关联的那些任务依赖于所要实施的维护的类型。 2.试论述瀑布模型软件开发方法的基本过程。 答案:瀑布模型规定了各项软件工程活动,包括:制定软件项目计划,进行需求分 析和定义,软件设计,程序编码,测试及运行维护。并且规定了它们自上而下,相 互衔接的固定次序,如同瀑布流水,逐级下落。然而软件开发的实践表明,上述各 项活动之间并非完全是自上而下,呈线性图式。实际情况是,每项开发活动均应具 有以下特征: (1)从上一项活动接受本项活动的工作对象,做为输入; (2)利用这一输入实施本项活动应完成的容; (3)给出本项活动的工作成果,做为输出传给下一项活动; (4)对本项活动实施的工作进行评审。若其工作得到确认,则继续进行下一项 活动,否则返回前项,甚至更前项的活动进行返工。

案例-某公司软件过程规范示例

编者说明: 软件过程管理中的一个很重要的工作就是制定项目、组织的过程规范,它是软件开发组织行动的准则与指南。该文档就是一个实际的过程规范的实例,通过该实例,相信对大家根据自身情况制定符合要求的项目过程规范、组织过程规范有很好的借鉴作用。 1.总则 最大限度提高Q&P(质量与生产率),提高Q&P的可预见性,是每一个软件开发机构的最大目标。而Q&P依赖于三个因素:过程、人和技术,因此要实现Q&P的提高,除了加强技术能力,引进、培育更多优质技术人才之外,规范、改进机构的过程是一个十分重要的手段。我们希望通过在制定软件过程规范标准,并在软件开发实践中不断地完善、修订,提高Q&P和Q&P的可预见性。 本规范采用CMM(软件过程成熟度模型)的指导,吸收RUP、XP、MSF、PSP、TSP 等过程规范指南的思想、方法及实践,充分结合xxx技术开发部的实际情况,引入先进的技术、方法、工具,为公司的软件开发工作提供一部详细、可操作的过程指南。在本规范的第一版本中,主要包括管理过程和开发过程两个部分,管理过程中包括项目管理过程、需求变更管理过程、配置管理过程。对于软件开发项目中的其它的一些过程将在实践中逐步补充、完善。 2.项目管理过程规范 项目管理过程是对软件项目过程进行计划、监控/管理、总结的辅助过程,包括需求、配置、成本、进度、质量和风险等的管理。项目管理过程主要包括三个阶段:项目立项与计划、项目实施、项目关闭。 2.1 项目立项与计划 参与人员:技术开发部指定的项目负责人(包括前期负责人、正式的项目经理)、立项申请人、[相关最终客户]以及实施该项目的开发组队成员; 入口准则:接到经公司总经理或副总经理批准的市场部门的《软件开发立项申请表》;

软件工程课程设计报告案例

网上招聘系统分析设计

目录 第一章网上招聘系统需求规格说明书.................... - 3 - 第二章软件项目的概要设计说明书. (16) 第三章网上招聘系统详细设计 (54) 第四章软件项目的编码案例说明 (67) 第五章网上招聘系统客户端系统测试计划 (74) 第六章网上招聘系统客户端系统测试设计 (78) 第八章网上招聘系统客户端系统测试报告 (95)

第一章网上招聘系统需求规格说明书 1.导言 1.1 目的 该文档是关于用户对于网上招聘系统的功能和性能的要求,重点描述了网上招聘系统的功能需求,是概要设计阶段的重要输入。 本文档的预期读者是: ·设计人员; ·开发人员; ·项目管理人员; ·测试人员; ·用户。 1.2 围 该文档是借助于当前系统的逻辑模型导出目标系统的逻辑模型的,解决整个项目系统的“做什么”的问题。在这里,没有涉及开发技术,而主要是通过建立模型的方式来描述用户的需求,为客户、用户、开发方等不同参与方提供一个交流的平台。 1.3 编写说明 HR,Human Resource(人力资源管理)的缩写。 JSP,Java Server Page(Java服务器页面)的缩写,一个脚本化的语言。 UML,Unified Modeling Language(统模语言)的缩写,是一个标准的建模语言。 1.4 术语定义 无 1.5 引用标准 [1]《企业文档格式标准》,****************软件工程过程化组织 [2]《需求规格报告格式标准》,************软件工程过程化组织 1.6 参考资料 [1]《UML说明》,***********************软件 [2]《需求规格报告格式标准》,************公司软件工程过程化组织 1.7 版本更新信息 本文档的更新记录如表A-1所示。 表A-1 版本更新记录 修改编号修改日期修改后版本修改位置修改容概述 001 002 003 004 005 2008.9.5 2006.9.10 2006.9.15 2006.9.16 2006.10.18 0.1 0.2 0.3 0.4 1.0 全部 第3.1节 第4.1节 第5.1节 第7章 初始发布版本 增加 修改 修改 增加 2.系统定义 我们分别阐述一下项目的来源、背景,项目的用户特点和项目的目标。 2.1 项目来源及背景 本项目是为某公司开发的一个网上招聘系统,由于这个公司的规模比较大,需要招聘 的员工也很多,每次招聘总能收到成千上万的简历,如何挑选合适的应聘者常常是公司比较

软件工程课后习题答案第五版

软件工程课后习题答案第五版 《软件工程导论》课后习题答案 第一章软件工程概论 1.什么是软件危机? 软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。这些问题表现在以下几个方面: (1)用户对开发出的软件很难满意。 (2)软件产品的质量往往靠不住。 (3)一般软件很难维护。 (4)软件生产效率很低。 (5)软件开发成本越来越大。 (6)软件成本与开发进度难以估计。

(7)软件技术的发展远远满足不了计算机应用的普及与深入的需要。 2.为什么会产生软件危机? (1) 开发人员方面,对软件产品缺乏正确认识,没有真正理解软件产品是一个完整的配置组成。造成开发中制定计划盲目、编程草率,不考虑维护工作的必要性。 (2) 软件本身方面,对于计算机系统来说,软件是逻辑部件,软件开发过程没有统一的、公认的方法论和规范指导,造成软件维护困难。 (3) 尤其是随着软件规模越来越大,复杂程度越来越高,原有软件开发方式效率不高、质量不能保证、成本过高、研制周期不易估计、维护困难等一系列问题更为突出,技术的发展已经远远不能适应社会需求。 3.怎样克服软件危机? (1) 充分吸收和借鉴人类长期以来从事各种工程项目中积累的行之有效的有效原理、概念、技术与方法,特别是吸取几十年来人类从事计算机硬件研究和开发的经验教训。在开发软件的过程中努力作到良好的组织,严格的管理,相互友好的协作。

(2) 推广在实践中总结出来的开发软件的成功的技术和方法,并研究更好、更有效的技术和方法,尽快克服在计算机系统早期发展阶段形成的一些错误概念和作法。 (3) 根据不同的应用领域,开发更好的软件工具并使用这些工具。将软件开发各个阶段使用的软件工具集合成一个整体,形成一个很好的软件开发支环环境。 总之为了解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。 4.构成软件项目的最终产品: 应用程序、系统程序、面向用户的文档资料和面向开发者的文档资料。 5.什么是软件生存周期? 软件生存周期是指从软件定义、开发、使用、维护到淘汰的全过程。 6.软件生存周期为什么划分成阶段? (1) 任何一个阶段的具体任务不仅独立,而且简单,便于不同人员分工协作,从而降低整个软件开发工作的困难程度。

软件工程案例教程答案

1.下列所述不是软件特点的是(A) A.软件是有形的 B.软件不存在磨损和消耗问题 C.软件开发成本高 D.软件没有明显的制作过程 2.软件工程的出现主要是由于(C) A.程序设计方法学的影响 B.其他工程学科的影响 C.软件危机的出现 D.计算机的发展 3.以下(C)不是软件危机的表现形式 A.开发的软件不满足用户的需要 B.开发的软件可维护性差 C.开发的软件价格便宜 D.开发的软件可靠性差 4.软件工程的目的是(C) A.建造大型的软件系统 B.开发的软件可维护性差 C.软泥吉安质量的保证 D.研究软件开发的远离 5.下列所述不是软件组成的是(D) A.程序 B.数据 C.界面 D.文档 6.下列对“计算机软件”描述正确的是(A) A.是计算机系统的组成部分 B.不能作为商品参加交易 C.是在计算机硬件设备生产过程中生产出来的 D.之存在语计算机系统工作时 7.软件工程的方法的产生源于软件危机,下列(D)是产生软件危机的内在原因 A.软件的复杂性 B.软件维护困难C软件成本太高. D.软件质量难保证 8.软件工程方法的提出源于软件危机,其目的应该是最终解决软件的(D)问题 A.软件危机 B.质量保证 C.开发效率 D.生产工程化 9.软件工程学中除重视软件开发的研究外,另以重要组成内容是软件的(A)和过程改进 A.项目管理 B.成本核算 C.人员培训 D.工具开发 10.软件工程设计软件开发技术和项目管理等方面内容,下述内容中(D)不属于开发技术的范畴 A.软件开发方法 B.软件开发工具 C.软件工程环境 D.软件工程经济 二、填空题 1.软件工程的目的是成功的建造大型的软件系统,主要内容是开打软件开发技术、软件项目管理和软件质量管理。 2.螺旋式开发模型主要是针对风险比较大的项目而设计的 3.由于软件产生的复杂性和高成本,使大型软件产生出了很多问题,即出现软件危机,软件工程正是为了克服它而提出的一种概念及相关方法和技术。 4.增量模型假设需求可以分段,成为一系列增量产品,每一增量可以分别开发。 5.喷泉模型比较适合用于面向对象的开发方法。 三、判断题 1.软件开发方法的主要目的是克服软件手工生产带来的问题,使软件开发能进入工程化和规范化的环境(Y) 2.软件工程的提出起源于软件危机,其目的书最终解决软件的生产工程化(Y) 3.软件工程改进也是软件工程的范畴(Y)

软件开发成功案例

软件开发成功案例 >篇一:软件项目成功案例>>(1432字) 为了方便学校院系考评本院系各班级预备党员的学风、品行,作为预备党员转正的参考依据,校方委托我团队设计制作“校园预备党员评优系统”,通过学生不记名在线打分的形式考评预备党员的各项素质,并按照各项考评分数给出每个被评分人员的综合考评得分以及排名情况。建设目标:学生考评做到有理有据,公平公正为了方便学院领导对每个处于预备转正期的学生的综合考评,学院除了要考评其个人学习成绩外,还要听取广大师生的意见,从而为我党选拔品学兼优的人才。 为此考评系统从学生的德、智、体、美、劳以及宗教信仰共6个方面进行考评,并为每个考评设定优、良、差三个等级供师生评判,且采用网上在线投票的形式进行打分,同时禁止重复打分,恶意修改分数,跨班级打分等现象,进而做到有理有据,公平公正。解决>方案:校园预备党员评优系统评优系统分为三大模块,用户管理模块、学生评分模块以及考核统计模块。用户管理模块,收录参与评分师生以及预备党员的个人信息,系统会给出预备党员的个人信息描述,以便评分者了解,而评分师生则只收录登录用户的基本资料,方便管理。学生评分模块,评分师生对预备党员的6项指标进行评分,等级为优、良、差三个级别,系统后台则会记录不同等级对应的分值。系统会记录每个评分师生的评分操作,以防止跨班级评分,修改评分,重复评分等现象。考核统计模块,学院党支部老师可以从班级、专业、个人、考评项目等多维角度查看被评者的分值,进而从多方面了解该生的情况。 项目收益:使校方能从多个角度了解,认识学生校园预备党员评优系统不仅仅是一个针对预备党员个人素养的综合考评工具,更重要的是,它能够帮助校方更好的了解自己的学生,包括学业、爱好、性格、宗教信仰、为人处事等,为学校选拔优秀人才,预防校园不良事件提供了一定的支持。 智能表单系统在网站中经常会遇到需要用户填写一些资料的情况,这个过程对于用户来说没有任何问题,但如果表单样式经常修改,对于网站开发人员来说,将是一个比较繁琐的过程,他除了要修改表单的网页样式,还要相应的修改后台数据库的样式。是否有一种软件,既能实现表单创建、数据库表创建以及表单发布一站式服务,又能让非计算机技术人员轻松掌握,智能表单系统应运而生。建设目标:表单创建及发布一站式服务,非计算机专业用户轻松掌握智能表单系统面向的主要用户是那些不懂计算机编程,并且需要经常发布表单或者修改表单的网站文案人员,借助这套系统,用户只需简单的拖拽一些表单控件,并为这些控件命名,告知信息录入人员该填写的条目项即可,而数据库

软件工程课程设计方案报告范例

西安科技大学 软件工程课程设计报告 题目:图书馆管理系统 班级:软件工程** 学号: ********** 姓名: ******* 2013年1月

目录 1绪论 (1) 2 可行性研究报告 (1) 3 需求规格说明书 (4) 4 总体设计说明书 (7) 5 数据库设计说明书 (8) 6 详细设计说明书 (9) 7 系统实现 (11) 8测试分析报告 (23) 参考文献

1.绪论 1.1 选题目的及意义 随着计算机技术的快速发展,人们对用计算机代替手工管理信息的需求越来越强烈,越来越多的计算机软件如雨后春笋般的应用于人们生产生活的各个领域,为人们提供各种各样的便利。本图书馆管理系统应用软件可以有效地解决高等院校、中小学图书馆由于藏书量增大而带来的管理问题,图书馆管理员可以更好地管理学校图书馆藏书信息,学生可以更方便地享受借书还书的服务,为更有效地学习知识提供有利的保证。 对于我来说,选择这个题目作为课程设计的题目有以下两个原因:一是因为自从上大学以来,每当在图书馆借书的时候,我都会留心观察一下图书馆管理员的那台计算机上显示的内容,久而久之,就对本系统的基本流程越来越了解,做好一个软件的前提是必须对这个软件的功能和原理非常熟悉,相比别的题目,我对这个题目更加了解;二是本学期通过学习Java程序设计和Oracle数据库课程,我觉得这个题目虽然没有那么难(涉及算法的内容很少),但也不是轻而易举就能完成的,所以我想挑战一下自己,看看自己的实现能力到底怎么样,因此决定用面向对象方法学的思想,前台用Java程序设计语言编写界面,访问Oracle数据库中的数据,完成本系统。 1.2 系统概述 本系统通过JDBC-ODBC桥实现前后台数据的联系,基本上实现了一个图书馆管理系统所具备的基本功能,本系统把使用者分为三类:超级管理员、普通管理员、读者,对三种用户分别设计了各自的主界面,以便更好的实现信息的隐藏性,超级管理员可以进行这个系统所有操作;管理员只能执行超级管理员的基本功能,查看自己的信息;读者只能查看自己的信息,对自己当前借书进行挂失和续借两种操作,查询图书馆的藏书。 2.可行性研究报告 2.1 编写目的 本报告编写目的在于研究图书馆管理系统应用软件是否可行,指出本软件开发所使用的方法和手段,并对该软件前景进行分析。 本报告的预期读者是:高等院校、中小学图书馆管理人员、程序设计人员、以及对图书馆管理系统感兴趣的爱好者。 2.2 相关背景 工程名称:图书馆管理应用软件 工程产品名称:高校图书馆管理系统应用软件 工程的组织者:西安科技大学计算机学院软件工程系 产品用户:高校图书馆、中小学图书馆; 产品的生产者:西安科技大学计算机学院软件工程062班袁震; 产品设计者:西安科技大学计算机学院软件工程062班袁震; 2.3 可行性研究的前提 本图书管理系统在功能上要求完成以下基本功能: a).读者、管理员登陆;

软件工程课后习题答案

第一章 1.1举出至少5个例子来说明“意外效应法则”在计算机软件方面的应用。 答:典型的例子包括使用“数字汽车仪表板”的软件,赋予高科技,高品质的图像的软件;如广泛的消费类电子产品的软件;个人电脑,工业仪器仪表和机器的软件。软件分化出的在电子商务方面的应用。 1.2举例说明软件对社会的影响(包括正面影响和负面影响)。 答:这是一个很好的课堂讨论问题(如果时间允许),而不是专注于老生常谈的(但很重要)隐私问题,生活质量等问题。您可能想要讨论关于”技术恐惧“方面的问题,软件也许会使它恶化但也可能减少”技术恐惧“。另一个有趣的方面是使用诺依曼的“风险”列在中做重点讨论。你也可以考虑基于软件的“现金”经济,新模式的互动娱乐,虚拟现实,电子商务等方面来思考软件对社会的影响。 1.3针对1.1节提出的5个问题,请给出你的答案,并与同学讨论。 答:软件需要如此长的开发时间: a)设施不上线 b)开发工具并不如预期般运作 c)客户提出的新要求,需要重新设计和返工 d)产品依赖于政府的规定,被意外更改。 e)严格的要求,与现有系统的兼容性需要超过预期更多的测试,设计和实现。 f)多个操作系统下运行的任务需求比预期需要更长的时间。 g)软件项目风险管理比预期需要更多的时间。 h)依赖的技术仍处于开发阶段,从而延长日程安排。 开发成本高: a)比当时预期低得令人无法接受的质量,需要进行更多的测试,设计和实施工作。 b)制定了错误的软件功能需要重新设计和实施。 c)开发错误的用户界面,而导致重新设计和实施。 d)开发了不需要的额外的软件功能而延长了开发日程安排。 在将软件交付顾客使用之前,我们无法找到所有错误: a)产品依赖于政府监管,意外而改变。 b)产品技术标准草案,会意外更改。 c)有时会在项目后期添加新的开发人员。 d)因为团队内的冲突有时会导致沟通不畅,而产生糟糕的设计。 e)破坏高效调度产生的项目管理成果和无效的规划 f)有时装备部件质量差,导致额外的测试,设计和集成工作和管理额外的客户关系。 软件开发和维护的过程仍旧难以度量: a)有时该项目的目的是不明确。 b)有大量的业务所涉及的风险。 c)如果产品内置没有装好。 d)我们需要不断检讨我们的工作。 e)进行维护检查的时间。 f)在整个软件开发过程中要彻底组织项目团队。 1.4在交付最终用户之前,或者首个版本投入使用之后,许多应用程序都会有频繁的变更。

软件开发案例分析

软件开发案例分析课程设计(论文)题目:校园人力资源管理器 院(系):电子与信息工程学院 专业班级: 学号: 学生姓名: 指导教师: 教师职称: 起止时间:

课程设计(论文)任务及评语 院(系):电子与信息工程学院教研室:

目录 第1章绪论 (1) 1.1背景分析 (1) 1.2设计的意义 (1) 1.3可行性研究 (2) 1.4相关技术与开发工具介绍 (3) 第2章需求分析 (6) 2.1系统分析 (6) 2.2必要性分析 (6) 2.3系统功能分析 (6) 2.4数据字典 (7) 第3章系统设计 (9) 3.1项目规划 (9) 3.2系统功能结构图 (9) 3.3设计目标 (11) 3.4开发及运行环境 (11) 第4章数据库设计 (12) 4.1概念设计 (12) 4.2逻辑设计 (13) 4.3物理设计 (14) 第5章界面设计与实现 (17) 5.1查询界面设计与实现 (17) 5.2主界面设计与实现 (26) 第 6 章总结 (30) 参考文献 (31)

第1章绪论 1.1背景分析 通过网络人力资源管理系统对校园人力资源进行管理,可以降低校园人力资源管理的成本,提高人力资源管理的效率,使校园人力资源管理适应时代的发展要求,大大提高校园的核心竞争力。 系统分析 需求分析 总体设计 项目规划 人力资源管理系统是针对中小型校园现有员工和新聘员工的一个web管理平台,主要包括以下功能模块。 员工管理模块:主要用于浏览员工信息,添加员工信息,修改员工信息和删除员工信息。 招聘管理模块:主要用于浏览、添加、删除和查看应聘人员信息,对校园人才库进行查看、删除以及将应聘人员导入到人才库。 培训管理系统:主要用于浏览培训计划,添加培训计划,查看培训计划的详细信息,删除培训计划,填写培训总结,查看培训总结和删除培训总结。 1.2设计的意义 劳资人事管理是公司校园内部很重要的一个管理事项,但目前大多公司内部劳资人事的管理,基本上是手工操作或是基于dos下的应用,这样对信息的管理者有诸多不便,有的虽然是用foxpro、visual foxpro开发,但由于开发工具本身的限制,对网络功能的支持程度不是很强,为以后软件升级到互联网带来了麻烦。因此有必要开发一个基于网络的劳资人事管理系统,能在网络环境下实现数据的录入、插入、删除、查询、统计、更新、打印等功能。同时,为了信息的保密与安全,系统还要提供一定的安全机制。

软件工程课程设计必备指导书

《软件工程》课程设计指导书 福建农林大学 计算机与信息学院 2010年12月

软件工程课程设计指导书 一、软件工程课程设计指导书适用范围 (3) 二、课程设计基本目的 (4) 三、课程设计选题方案及备选题目 (5) 四、可采用技术简介 (5) 五、课程设计过程与具体要求 (5) 六、角色分工 (8) 七、课程设计交付说明 (10) 八、主要参考文献与网址 (10) 附录A:软件工程课程设计报告格式 (13)

一、软件工程课程设计指导书适用范围 所属课程:软件工程 所属专业:计算机科学与技术、软件工程等 领域方向:软件工程与软件开发实践、网页设计与Web应用、数据库应用与电子商务、Java/.net语言及其应用等等 参考学时:2周或以上 适用学生:学习《软件工程》课程的计算机科学与技术、软件工程等专业的本科生 先修课要求:程序设计、操作系统、数据库等

二、课程设计基本目的 1.通过本课程设计的实践及其前后的准备与总结,复习、领会、巩固和运用软件工程课堂上所学的软件开发方法和知识,比如,软件项目的完整设计与开发过程、结构化技术、快速原型法和面向对象方法等。特别是结构化分析、结构化设计、快速原型开发、面向对象分析与面向对象设计。 2.为学生适应毕业后团队合作开发规模稍大项目和综合应用本专业所学习的多门课程知识(例如,软件工程、程序设计语言、操作系统、数据库、网络编程等)创造实践机会。为学生提供主动学习(比如,对Web网页设计、ASP或ASP交互网页技术、Java 开发环境、商用数据库应用、电子商务、客户机/服务器技术、Visio与Rose软件工具等内容的学习)、积极探索与大胆创新的机会。 3.使学生通过参加小组团队的开发实践,了解项目管理、团队合作、文档编写、口头与书面表达的重要性。 4.使每个学生了解软件工具与环境对于项目开发的重要性,并且重点深入掌握好一、两种较新或较流行的软件工具或计算机应用技术、技能(比如,网页设计技术与常见工具;基于Java(ASP、PHP等)技术的Web编程;软件开发文档编制工具Office、Visio、Rose等;商用数据库Access(或SQL Server、Oracle、MySql等)设计与实现;客户机/服务器结构)。 5.通过“稍大的”富有挑战性的软件实验项目开发实践,为学生提供主动学习(比如,对Web网页设计、ASP或ASP交互网页技术、Java开发环境、商用数据库应用、电子商务、客户机/服务器技术、Visio与Rose软件工具等内容的学习)、深入实践的机会,并且通过课程设计实践中,提高学生的自学能力、书面与口头表达能力、创造能力和与团队其他成员交往和协作开发软件的能力,提高学生今后参与开发稍大规模实际软件项目和探索未知领域的能力和自信心。

软件工程习题答案

. 一、选择题 1.软件开发瀑布模型中的软件定义时期各个阶段依次是:(B) A) 可行性研究,问题定义,需求分析。 B) 问题定义,可行性研究,需求分析。 C) 可行性研究,需求分析,问题定义。 D) 以上顺序都不对。 (软件开发时期:概要设计、详细设计、软件实现、软件测试) 2.可行性研究主要从以下几个方面进行研究:(A) A)技术可行性,经济可行性,操作可行性。 B)技术可行性,经济可行性,系统可行性。 C)经济可行性,系统可行性,操作可行性。 D)经济可行性,系统可行性,时间可行性。 3.耦合是对软件不同模块之间互连程度的度量。各种耦合按从强到弱排列如下:(C) A) 内容耦合,控制耦合,数据耦合,公共环境耦合。 B) 内容耦合,控制耦合,公共环境耦合,数据耦合。 C) 内容耦合,公共环境耦合,控制耦合,数据耦合。(内容耦合、公共耦合、外部耦合、控制耦合、特征耦合、数据耦合) D) 控制耦合,内容耦合,数据耦合,公共环境耦合。

4.在详细设计阶段所使用到的设计工具是:(C) A) 程序流程图,PAD图,N-S图,HIPO图,判定表,判定树. 专业资料word . B) 数据流程图,Yourdon 图,程序流程图,PAD图,N-S图,HIPO 图。 C) 判定表,判定树,PDL,程序流程图,PAD图,N-S图。 D) 判定表,判定树,数据流程图,系统流程图,程序流程图,层次图。 详细设计阶段工具:判定表、判定树、数据流程图、系统流程图、程序流程图、PAD图、N-S图、PDL 在软件详细设计阶段,常用的图形描述工具有程序流程图,盒图(NS 图)和问题分析图(PAD) .常用的语言描述工具为PDL(程序设计语言) ,常用的表格描述工具有判定表和判定树. DFD数据流图:总体设计阶段 5.按照软件工程的原则,模块的作用域和模块的控制域之间的关系是: (A) A)模块的作用域应在模块的控制域之内。 B)模块的控制域应在模块的作用域之内。 C)模块的控制域与模块的作用域互相独立。

软件工程案例教程

第一章 1.下列所述不是软件特点的是(A) A.软件是有形的 B.软件不存在磨损和消耗问题 C.软件开发成本高 D.软件没有明显的制作过程 2.软件工程的出现主要是由于(C) A.程序设计方法学的影响 B.其他工程学科的影响 C.软件危机的出现 D.计算机的发展 3.以下(C)不是软件危机的表现形式 A.开发的软件不满足用户的需要 B.开发的软件可维护性差 C.开发的软件价格便宜 D.开发的软件可靠性差 4.软件工程的目的是(C) A.建造大型的软件系统 B.开发的软件可维护性差 C.软泥吉安质量的保证 D.研究软件开发的远离 5.下列所述不是软件组成的是(D) A.程序 B.数据 C.界面 D.文档 6.下列对“计算机软件”描述正确的是(A) A.是计算机系统的组成部分 B.不能作为商品参加交易 C.是在计算机硬件设备生产过程中生产出来的 D.之存在语计算机系统工作时 7.软件工程的方法的产生源于软件危机,下列(D)是产生软件危机的内在原因 A.软件的复杂性 B.软件维护困难C软件成本太高. D.软件质量难保证 8.软件工程方法的提出源于软件危机,其目的应该是最终解决软件的(D)问题 A.软件危机 B.质量保证 C.开发效率 D.生产工程化 9.软件工程学中除重视软件开发的研究外,另以重要组成内容是软件的(A)和过程改进 A.项目管理 B.成本核算 C.人员培训 D.工具开发 10.软件工程设计软件开发技术和项目管理等方面内容,下述内容中(D)不属于开发技术的范畴 A.软件开发方法 B.软件开发工具 C.软件工程环境 D.软件工程经济

二、填空题 1.软件工程的目的是成功的建造大型的软件系统,主要内容是开打软件开发技术、软件项目管理和软件质量管理。 2.螺旋式开发模型主要是针对风险比较大的项目而设计的 3.由于软件产生的复杂性和高成本,使大型软件产生出了很多问题,即出现软件危机,软件工程正是为了克服它而提出的一种概念及相关方法和技术。 4.增量模型假设需求可以分段,成为一系列增量产品,每一增量可以分别开发。 5.喷泉模型比较适合用于面向对象的开发方法。 三、判断题 1.软件开发方法的主要目的是克服软件手工生产带来的问题,使软件开发能进入工程化和规范化的环境(Y) 2.软件工程的提出起源于软件危机,其目的书最终解决软件的生产工程化(Y) 3.软件工程改进也是软件工程的范畴(Y) 第二章 一、选择题 1.结构化分析方法是面向(B)的自顶向下逐步求精的分析方法。 A.目标 B.数据流C功能. D.对象 2.在进行软件设计时应该遵循的最主要的原理是(C) A.抽象B模块化. C.模块独立D信息屏蔽. 3.在结构化分析方法中,常用的描述软件功能需求的工具是(C) A.业务流程图、处理说明B软件流程图、模块说明. C.数据流程图、数据字典 D.系统流程图、程序编码

软件工程(第二版)课后习题

第一d ìy ī章zhāng 1.什么s h ?n m e 是s h ì软件ru ǎnji àn 危机w ēi j ī?为什么w ai s h ?n m e 会h u ì产生ch ǎnsh ēng 软件ru ǎnji àn 危机w ēi j ī? 答d á:软件ru ǎnji àn 危机w ēi j ī是s h ì指z h ǐ在z ài 计算机j ìs u àn j ī软件ru ǎnji àn 的d e 开发k āi f ā和h ?维护w ?i h ù过程gu òch ?ng 中zh ōng 遇到y ùd ào 的一系列严重问题。 (1).软件维护费用急剧上升,直接威胁计算机应用的夸大。 (2).软件生产技术进步缓慢 2. 什么是软件生产工程化?工程化生产方法与早期的程序设计方法主要差别在哪里? 答:结构化程序设计地出现,使许多产业界认识认识到必须把软件生产从个人化方 式改变为工程化。采用工程的概念、原理、技术和方法开发与维护软件,把经过时 间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济 地开发出高质量的软件并有效地维护它,这就是软件工程,同时这也是工程化生产 方法。 3. 分别说明(1)软件开发方法与开发工具;(2)软件技术与软件管理的相互关系。

答:(1)工具和方法,是软件开发技术的两大支柱,它们密切相关。当一种方 法提出来并证明有效后,往往随之研制出相应的工具,来帮助实现和推行这种方法。新方法在推行初期,总有人不愿接受和采用。若将新方法融合于工具之中,使人们通过使用工具来了解新方法,就能更快促进新方法的推广。 (2)在工业生产中,即使有先进的技术和设备,管理不善的企业也不能获得良 好的效益。 软件在生产中不能按质按时完成计划,管理混乱往往是其中的重要原因。 所以对于一个理想的软件工程环境,应该同时具备技术和管理两个方面。 4.试从你的亲身实践,谈谈软件工具在软件开发中的作用。 答:用C++开发一个软件,是校园一卡通的模块。首先,要在编辑程序支持下在 计 算机中输入源程序。然后编译程序,把源程序翻译成目标程序。如果发 现错误,就 重新调入编辑程序对源程序进行修改。编译通过后,再调用连接程序吧 所有通过了 编译目标程序连同与之有关的程序连接起来,构成一个能在计算机上运 行的可执行 软件。编译程序,编辑程序,连接程序以及支持他们的计算机操作系统, 都属于软 件工具。离开这些工具,软件开发就是去了支持,变得十分困难和低效, 甚至不能 运行。

相关文档
最新文档