软件工程寒假作业

第一章、        概述  软件是人类思维的杰作,并成为人类现代生活的催化剂。今天软件遍布整个世界,在生物工程、现代通信、宇宙探索、商务处理、工业控制等方面发挥出巨大的威力,并推动了商业、科学和工程领域的跨越式发展,对整个社会的经济和文化产生了深远的影响。软件工程师为了解决开发成本效益和软件质量的问题而产生的。软件是计算机程序、规程以及运行计算机系统可能需要的相关文档和数据。软件分为通用软件和定制软件。软件的特性分别是软件是复杂的、软件是不可见的、软件是不断变化的、大多数软件是定制的而不是通过已有构件组装而成的。软件工程是将系统性的、规范化的、可定量的方法应用于软件的开发、运行和维护,即将工程化应用到软件上。软件工程的三要素分别是方法、工具和过程。软件开发的主要挑战是遗留系统的问题、高可信软件开发的要求和软件开发方式的变化。软件工程人员的职业道德建设:1、遵纪守法是软件工程人员应具备的基本素质;2、服务客户、造福社会是软件工程人员必须牢固树立的观念;3、诚实信用是软件工程人员职业道德的核心所在。

第二章、        软件工程  软件工程的目标是在规定的时间和预算内开发出高质量的软件。软件工程的基本活动是问题提出、软件需求规格说明、软件设计、软件实现、软件确认和软件演化。软件过程模型有瀑布模型、快速原型模型、增量模型、螺旋模型、形式化方法模型、基于组件的开发模型。

第三章、        软件项目管理  随着计算机应用的飞速发展,软件开发规模和开发队伍日益庞大,软件开发不再像过去那样是由个别开发人员即可以解决的事情,因此,有必要将软件项目管理引入软件开发活动中,从而有效的保证软件项目能够按照预定的成本、进度、质量要求顺利完成。软件项目的特征有软件产品的不可见性、项目的高度不确定性、软件人员的高流动性。软件项目管理集中于四个方面:人员、产品、过程、项目。软件项目的组织有民主式组织结构、主程序员式组织结构、技术管理式组织结构。项目沟通活动:规划项目沟通、建立基础设施、实施阶段性评审、每周组织小组会议。软件规模估算:代码行技术、功能点技术。软件成本估算:专家判断、类比估算、COCOMO模型。软件工程风险识别:软件规划风险、商业影响风险、客户相关风险、软件过程风险、开发技术风险、开发环境风险、开发人员风险。

第四章、        需求工程  软件需求是决定软件开发是否成功的一个关键元素,一旦发生错误,将会给整个软件开发工作带来极大的损害,并给以后的软件维护带来极大的困难。软件需求分为:业务需求、用户需求、功能需求和非功能需求、系统需求。需求工程的过程:需求获取、需求分析、需求规格说明、需求验证、需求管理。需求获取技术:面谈、需求专题讨论会、观察用户工作流程、原型化方法、基于用例的方法。

第五章、        软件工程中的形式化方法  从广义上讲,形式化方法是指将离散数学的方法用于解决软件工程领域的问题,主要包括建立精确的数学模型以及对模型的分析活动。狭义的讲,形式化方法是运用形式化语言,进行形式化的规格描述、模型推理和验证的方法。将形式化方法运用于软件工程实践的过程中主要是为了保证软件的正确性。

第六章、        面向对象基础  面向对象技术是软件工程领域中的重要技术,这种技术比较自然的模拟了人类认识客观世界的方式,成为当前计算机软件工程学中的主流方法。面向对象的基本概念有对象、类、封装、继承、消息、关联聚合、多态性。软件建模的概念有系统、模型和视图、软件建模的重要性。UML的概念模型有视图、图、模型元素、语义法则、公共机制、扩展机制。常用的UML图有用例图、类图、顺序图、状态图。

第七章、        面向对象分析  面向对象的分析模型由功能模型、分析对象模型、动态模型组成。识别分析类包括识别边界类、识别控制类、识别实体类。建立分析类图:兴义关系和属性、应用分析模式。

第八章、        面向对象设计  面向对象设计阶段将集中研究系统的软件实现问题,包括体系结构设计、详细设计、用户界面设计和数据库设计等。设计的原则有模块化、耦合度和内聚性、复用性。软件体系结构:仓库体系结构、分层体系结构、MVC体系结构、客户机/服务器体系结构、管道和过滤器体系结构、案例:MiniLibrary系统体系结构。系统设计:识别设计元素、数据存储策略、部署子系统系统设计评审。详细设计:方法建模、属性建模、状态建模、关系建模、详细设计评审。应用设计模式:Abstract Factory模式、Adaptor模式、Bridge模式、Façade模式。用户界面设计:用户界面设计原则、Web界面的设计、用户支持。

第九章、        软件实现  软件实现是软件产品由概念到实体的一个关键过程,它将详细设计的结果翻译成用某种程序语言编写的并且最终可以运行的程序代码。软件编码规范:文件命名与组织、带码的板式、命名规则、声明、注释。

第十章、        软件测试  验证与确认:软件的错误、验证与确认、V&V的活动。软件的测试策略:单元测试(模块接口测试、局部数据结构测试、重要执行路径测试、错误处理测试、边界条件测试、单元测试方法)、集成测试(自顶向下集成、自底向上集成)、确认测试、系统测试、软件调试(简单的调试方法、归纳法调试演绎法调试、回溯发调试)。软件测试方法:静态测试与动态测试、黑盒测试与白盒测试

第十一章、 软件演化  软件维护的概念:软件维护是指在软件运行或维护阶段对软件产品所进行的修改,分别有改正性维护、适应性维护、完善性维护。软件维护的特点:软件维护手开发过程影响大、软件维护困难多、软件维护成本高。软件再生工程:对象选择、反向工程、文档重构、代码重构、数据重构。

时间: 2024-10-11 04:31:58

软件工程寒假作业的相关文章

软件工程第一次作业补充

软件工程第一次作业的补充 对于作业"在一周之内快速看完<构建之法>,列出你不懂的5-10个问题". 作业要求有: (1)在每个问题后面,请说明哪一章节的什么内容引起了你的提问,提供一些上下文 (2)列出一些事例或资料,支持你的提问 (3)说说你提问题的原因,你说因为自己的假设和书中的不同而提问,还是不懂书中的术语,还是对推理过程有疑问,还是书中的描述和你的经验(直接经验或间接经验)矛盾? 例如:我看了这一段文字 (引用文字),有这个问题 (提出问题):我查了资料,有这些说法

软件工程教学作业 汇总

本篇文章收集并整理各位教师在博客园中发表的软件工程教学作业,希望为各位老师.学生和爱好者提供便利. 如果博文作者提出异议或意见,本人虚心接受并诚恳道歉. 小林觉 http://www.cnblogs.com/juking/ 学年 学期 作业 链接 简介 2015-2016 1 1 http://www.cnblogs.com/juking/p/4787124.html http://www.cnblogs.com/juking/p/4803578.html   2015-2016 1 2 htt

软件工程第一次作业程序开发历程

收到软件工程的作业,面对题目“......”.我先拟定了一个大概的思路,以及一些关键的函数.思路利用循环产生30道算术式,并计算答案,存储答案,在利用循环显示30道题的答案. 而关键函数我认为就是随机正整数的产生.考虑到这点,我决定用javascript来编写我的程序,其一是因为最近学习js,其二是因为对c和c++有点陌生了,然后javascript有Math.random这个函数,尽管它只能产生0与1之间的随机数.决定完语言后,我又分析了下题目,考虑到涉及真分数的问题,我将程序分成整数与真分数

洛谷 P2717 寒假作业

题目背景 zzs和zzy正在被寒假作业折磨,然而他们有答案可以抄啊. 题目描述 他们共有n项寒假作业.zzy给每项寒假作业都定义了一个疲劳值Ai,表示抄这个作业所要花的精力.zzs现在想要知道,有多少组连续的寒假作业的疲劳值的平均值不小于k? 简单地说,给定n个正整数A1,A2,A3,...,An,求出有多少个连续的子序列的平均值不小于k. 输入输出格式 输入格式: 第一行两个正整数,n和k. 第二行到第n+1行,每行一个正整数Ai. 输出格式: 一个非负整数. 输入输出样例 输入样例#1: 3

软件工程个人作业02-1

老师对自动出题的系统又有了新的功能: 1.是否有乘除法: 2.是否有括号:最多可支持十个数参与计算 3.数值范围: 4.加减结果有无负数: 5.除法结果有无余数: (因为和上文的思路有些交汇,不懂的可以参考上文 >>点击这里参考上文) 下面是我的思路: 1.是否有乘除法: 分条件设置a的值 如果选择无乘除:a=(int)(0+Math.random()*2);//a=0或a=1时分别对应着string数组的"+""-" 如果选择无乘除:a=(int)(0

软件工程结对作业02(借鉴版)

软件工程结对作业02(借鉴版) 在编写程序的时候因为不会将Java程序嵌入进jsp中所以借鉴了一个学姐的程序,下面是学姐的程序.但在对学姐程序就行修改时发现了一些问题: 在Newjsp中能调用html中的题目个数的参数 在Myjsp中不能调用html中的题目个数的参数 其中这个参数timugeshu,是我自己后来添加的,用来改变题目个数的,与Java程序无关,只在jsp文件中作用 源程序: NewFeil.html <!DOCTYPE html> <html> <head&g

软件工程课堂作业04

软件工程课堂作业04 源代码: 1 package jian; 2 import java.io.*; 3 import java.util.Scanner; 4 public class Point3D{ 5 public static int Lenght(int list[],int lenght) 6 { 7 int i,max; 8 max=list[0]; 9 for(i=1;i<=(lenght-1);i++) 10 { 11 if(list[i]>max) 12 { 13 ma

2016蓝桥杯省赛C/C++A组第六题 寒假作业

题意:现在小学的数学题目也不是那么好玩的. 看看这个寒假作业: □ + □ = □ □ - □ = □ □ × □ = □ □ ÷ □ = □ 每个方块代表1~13中的某一个数字,但不能重复. 比如: 6 + 7 = 13 9 - 8 = 1 3 * 4 = 12 10 / 2 = 5 以及: 7 + 6 = 13 9 - 8 = 1 3 * 4 = 12 10 / 2 = 5 就算两种解法.(加法,乘法交换律后算不同的方案) 你一共找到了多少种方案? 分析:回溯即可,但是如果等到cur==12

软件工程个人作业12

软件工程个人作业12 程序题目: •三人行设计了一个灌水论坛.信息学院的学生都喜欢在上面交流灌水,传说在论坛上有一个“水王”,他不但喜欢发帖,还会回复其他ID发的每个帖子.坊间风闻该“水王”发帖数目超过了帖子数目的一半. •如果你有一张当前论坛的帖子(包括回帖)列表,其中帖子的作者的ID也在其中,你能快速的找到这个传说中的水王吗? 一.设计思想 根据“水王”发帖数目超过了帖子数目的一半,通过寻找发帖数过半的ID找出“水王”. 二.源代码: 1 package finding; 2 3 impor