《天津理工大学.docx》由会员分享,可在线阅读,更多相关《天津理工大学.docx(18页珍藏版)》请在三一办公上搜索。
1、大学啊不错啊,好好学习,不要耽误了青春,但是是这个专业坑爹啊,找好自己的方向, 不要被这个专业误导了啊,理工的学妹,学弟们,你说呢,哈哈哈哈,嘿嘿联系软件过程的步骤或基本活动:1.软件描述2.软件设计和实现3.软件有效性验证4.软件进化 软件生命周期或软件需求过程1.需求分析和定义2.系统和软件设计3.实现和单元测试4.集 成和系统测试5.运行和维护增量式开发过程的好处是:1客户无需等到整个系统的实现。第一个增量会满足他们大多数 关键的需求,因此,软件马上就能使用。2.客户可以将早期的增量作为原型,从中获得对后 面系统增量的需求经验。3.项目总体性失败的风险比较低。虽然可能在一些增量中遇到问题
2、, 但是其他一些增量将会成功的交付给客户4.因为具有最高优先权的服务被首先交付,而后面 的增量也不断被集成进来,这就使得最重要的系统服务肯定接受了最多的测试。这就意味着 在系统的最重要的部分,客户不太可能遇到软件失败。第一章软件工程和计算机科学的区别:计算机科学侧重理论和基础,而软件工程则侧重于软件开 发和交付的实际活动软件工程和系统工程的区别:系统工程侧重基于计算机系统开发的所有方面,包括硬件, 软件,和处理工程。软件工程只是它的一部分1. 软件是计算机程序和所有使程序正确运行所需要的相关文档和配置信息软件产品分为:Generic通用、Bespoke (custom)定制2、软件工程是一门工
3、程学科,涉及软件生产的各个方面。软件工程人员运用的是系统的、 有组织的工作方法。6、软件过程模型从特定角度提出的软件过程的简化表示形式Examples of process perspectives are工作流模型 数据流或活动模型 角色/动作模型 软件开发模型Waterfall 瀑布型开发方法 Iterative development 迭代式开发方法 Component-based software engineering(CBSE)基于组件的软件工程7、the costs of software engineering 软件工程的成本软件开发成本约占60%,测试成本占40%。对于定制软
4、件而言,进化成本常常高于开发 成本。8、software engineering methods 软件工程方法:.软件开发的结构化研究方法,包括:系统模型、标记法、规划、设计忠告和过程指南9、CASE (Computer-Aided Software Engineering)计算机辅助软件工程:旨在使软件过程活动自动化的软件系统。CASE常用作方法支持10、the attributes of good software优良软件的特点:软件应具有用户所需的功能与性能, 而且应该可维护、可靠、可用11、key challenges facing software engineering软件工程面临
5、的主要挑战:Legacy遗留Heterogeneity多样性挑战delivery交付上的挑战trust信任的挑战2. Software engineering cost analysis软件工程成本分析定制软件:对于瀑布模型,系统描述、设计、实现和集成的成本独立测算,其中系统集成和测试活动所 需的费用最高,约占40%。对于迭代式开发,系统描述、设计和开发之间没有严格的划分界限,但系统描述的成本降低。 在软件开发活动中,系统描述、实际、实现、集成和测试是并行的。基于组件的软件开发,描述部分约20%,开发成本约30%,集成和测试约50%除系统开发成本之外,在软件投入使用后软件的变更也需要成本。进化
6、成本对许多使用期限 长的软件系统而言,有可能超过开发成本的34倍。相对于小的业务系统就降低许多了。为个人计算机配置的软件产品这类产品通常基于一个概要描述,用进化式开发方法开发。描述成本相对较低,但由于要用 在不同的配置中,所以测试成本比较多。通用软件产品进化成本很难估算。多数情况下,产品的进化过程并不大。通用软件的进化成本不能像定制 软件一样独立评估,而是作为该系统的下一个版本的开发成本。第_章1. System engineering process 系统工程过程2. System modeling系统建模在系统需求和设计活动中,系统被建模成一系列组件和组件间的关系。通常是以图的形式描 述在
7、系统体系结构模型中。系统体系结构模型通常以方块图来描述,展现一些主要的子系统 以及这些子系统之间的关联。3. System evolution系统进化大型和复杂的系统都会有一个非常长的生存期。在整个生存期内,必须改进原有的系统需求 中的错误进而满足出现的新需求。使用系统的机构可能重新改组并且因此一种不同的方式使 用系统4. System procurement process系统采购过程系统的采购过程主要是对机构以最佳方式获得系统做出决策并决定系统的最佳提供商第四章进化式开发有两个基本类型;探索式开发其目标是与用户一起工作,共同探索系统需求, 知道最后交付系统。这类开发是从需求较清楚的部分开始
8、,根据用户的建议逐渐向系统中添 加功能。抛弃式原型这种开发方法的目标是理解用户需求,然后在给系统需求有更深刻 理解时,能够很快在软件过程的好处是描述可以不断地补充完整。基于进化式方法的软件过程的好处是描述可以不断地补充完善存在两个问题1.过程不可见 管理者需要经常性得交付来把握进度,如果系统开发速度很 快,要产生每个版本的文档来反应变更就很不划算了一、软件工程模型 software process model二、(1)waterfall model瀑布模型:直到上一阶段完成,下一阶段才能启动劣势:过程不可见;系统结构通常较差进化式开发的两种基本类型:Exploratory developmen
9、t探索式开发、Throw-away prototyping 抛弃式原型(3)Component-based software engineering基于组件的软件工程(Reuse-oriented development面向复用的软件开发方法)其过程模型如下图:/RequirementsX /Component /KequirementsX(specification J analysis J modification W System des.gn w.th reuse 需求描述)组件分析)需求修改)使用复用的系统设计Z6evebpment- /system validation W发和集成
10、,系统有效性验证三、Spiral development螺旋式开发它不是将软件过程用一系列活动和活动间的回溯来表示,而是将过程用螺旋线表示。每 个回路表示软件过程的一个阶段。2、四部分:目标设置风险评估和规避、开发和有效性验证、规划.四、Software validation软件有效性验证:是要看系统是否符合它的描述以及系统是否符合 客观的预测目标。5、测试过程的阶段:组件测试、系统、接收测试五、Activities in CASE (Computer-aided software engineering)六、CASE classification分类:从功能角度看;从过程角度看;从集成角度看
11、Fuggetta提出的分类:工具,工作平台,环境第五章一、Management activities 管理活动.提出书面建议.项目规划和调度.项目成本项目监督和审评.人员选择和评价.写作并 称述工作报告二、Types of planning 计划的类型质量计划、有效性验证计划、配置管理计划、维护计划、人员开发计划三、Milestones in the requirements process 需求过程里程碑:Feasibility study(可行性研究)Requirements analysis(需求分析)Design study(设计研究)Prototype development (原型
12、开发)Activities (活动)Feasibility report(可行性报告)Userrequirements(用户需求)Evaluation report(估算报告)Architecturaldesign(体系结构设计,)Systemrequirements(系统需求)Requirementsspecification(需求描述)Milestones (里程碑)四、Project scheduling process 项目调度Create project charts(活动图表及条形图)77 77 ( Identity activity Estimate resourcesAllow
13、 people to、dependenciesfor activities LJ activitiesSoftwa rerequirements(软件需求)(识别7动)J 1(识别活动依关系)J 1(估算活动的资源)J 1(为活动分配人员)Activity chartsand bar charts(活动图表及条形图)五、three main project management: 项目风险 产品风险业务风险types of risk in project management:技术风险、人员风险、机构风险、需求、估算. 第六章1. Functional requirement and exam
14、ples功能需求和举例功能需求描述系统所预期提供的功能或服务。取决于开发的软件类型,软件未来的用户以及 开发的系统类型。LIBSYS-大学图书馆系统几种功能需求: 用户能从总的数据库中查询或者是选择其中的一个子集 系统能提供适当的浏览器供用户阅读馆藏文献 每次借阅能对应一个独特的识别符(order_id),可拷贝到用户账户的常备储存区内2. Non-functional requirement and examples 非功能需求和举例对系统提供的服务或功能给出的约束,与系统的总体特性相关。图书馆系统的LIBSYS的产品需求,机构需求和外部需求的实例:产品需求:它应该能将所有APSE和用户之间
15、的必须的通信用标准的Ada字符集表达机构需求:系统开发过程和可交付的文档将遵照XYZCo-SP-STAN-95中的相关定义外部需求:系统不应该对系统的操作人员公开客户出名字和索引代码之外的任何个人的信息 三、types of Non-functional requirement四、metrics in Non-functional requirement Requirements measures非 功1能需求度最性质度量方法速度每秒处理的事务 用户/事件响应时间 屏幕刷新时间规模K字节RAM芯片数易用性培训时间帮助画面数可靠性失败平均时间无效的概率失败发生率有效性鲁棒性失败之后的重启次数事件
16、引起失败的百分比失败中数据崩溃的可能性可移植性依赖于目标的语句百分比 目标系统数5. Documents used in software requirements软件需求文档软件需求文档是对系统开发者应当实现的内容的正式陈述。包括系统的用户需求和一个详细 的系统需求描述。需求文档中内容的详细程度,取决于所要开发的系统的类型,以及所使用 的开发过程。第七章1. The process of requirement engineering 需求工程的过程系统可行性研究;需求导出和分析;需求描述;需求有效性验证2. The main content of feasibility studies 可
17、行性研究的主要内容进行一项可行性研究包括信息评估,信息汇总和报告生成3. Process activities in requirement elicitation and analysis 需求导出和分析的过程活动 需求发现;需求分类和组织;优先排序和冲突解决;需求文档编制4. Requirement validation techniques(three)需求有效性验证技术需求评审;原型建立;测试用例生成5. Requirement change management 需求变更管理三个基本阶段:问题分析和变更描述过程:始于一个被识别的需求问题或是一份明确的变更提议变更分析和成本计算:使用可
18、追溯性信息和系统需求的一般知识对被提议的变更产生的影响 进行评估变更实现:必要的话,需求文档,系统设计和实现都要做修改第八章* 1. Principle system model上下文模型 context model行为模型 Behavioural models数据模型data model对象模型object model 结构化方法structured methods2. Examples of system models(5)系统模型实例数据流模型(data processing model);组成模型(composition model);体系结构模型(architectural mode
19、l);分类模型(classfication model);激励-响应模型(stimulate/response model)3. Definition of data-flow models数据流模型的定义(自上而下的模型)数据流模型是从功能角度来看待系统而得到的模型表示,对数据的每一个变换用一个函数或 过程来描述,描述了所发生的完整的行动序列,从对输入的处理到系统的响应。第章1. Content of architectural models 体系结构模型的内容静态结构模型;动态结构模型;接口模型;关系模型;分布模型2. Major components of Client-sever mo
20、del客户机/服务器模型的主要组成部分一组给其他子系统提供服务的单机服务器;一组向服务器请求服务的客户机;一个连接客户 机和服务器的网站第十七章1. Describe incremental development and prototyping by figure 用图形描述增量式开发 和原型构造2. Tools included in a Rapid Application Development 快速应用开发的工具 数据库编程语言;界面生成器;与办公应用的连接;报告生成器第二十三章1. Model of the software testing process 软件测试过程的模型系统测试
21、;组件测试;测试用例设计;测试自动化2. Structural testing 结构化测试结构化测试是根据软件的结构知识和实现知识导出测试的测试用例设计方法,又称为“白盒 测试”一、软件需求分析1、需求分析的任务就是借助于当前系统的逻辑模型导出目标系统的逻辑模型,解决目标系 统的“做什么”的问题。2、结构化分析方法 面向数据流进行需求分析的方法 结构化分析方法适合于数据处理类型软件的需求分析 具体来说,结构化分析方法就是用抽象模型的概念,按照软件内部数据传递、变换的关系,自顶向下逐层分解,直到找到满足功能要求的所有可实现的软件为止描述银行取款过程的数据流图:4、结构花英语:是一种介于自然语言和
22、形式化语言之间的语言,语言的正文用基本控制结 构进行分割,加工中的操作用自然语言短语来表示其基本控制结构有三种:简单陈述句结构:避免复合语句;重复结构:while_do 或 repeat_until 结构。判定结构:if_then_else或case_of结构;例子:商店业务处理系统中“检查发货单”:if发货单金额超过$500 thenif欠款超过了 60天then在偿还欠款前不予批准else (欠款未超期)发批准书,发货单else (发货单金额未超过$500)if欠款超过60天then发批准书,发货单及赊欠报告else (欠款未超期)发批准书,发货单5、判定表(大题):如果数据流图的加工需要
23、依赖于多个逻辑条件的取值,使用判定表来描述比较合适。例子:以“检查发货单”为例1234条发货单金额$500$5001) and (B=0) and(A=2) or (X/A1)=(A1) and (B=0) and (A=2) or(A1) and (B=0) and (X/A1)=(A=2) and (B=0) or(A1) and (B=0) and (X/A1)L2 ( a9 b 今 d )=not(A1) and (B=0) andnot(A=2) or (X1)= not (A1) or not (B=0) and not (A=2) and not (X1) =not (A1) a
24、nd not (A=2) and not (X1)ornot (B=0) and not (A=2) and not (X1)L3 ( a 分 b 分 e)=not (A1) and (B=0) and(A=2) or (X1)= not (A1) or not (B=0) and(A=2) or (X1)=not (A1) and (A=2) ornot (A1) and (X1) ornot (B=0) and (A=2) or not (B=0) and (X1)L4 ( a3 c 分 d )=(A1) and (B=0) andnot (A=2) or (X/A1)=(A1) and
25、(B=0) and not (A=2) andnot (X/A1)路径测试覆盖条件 T1T2T3T4日 ET?i4T1T2EE-路径测试就是设计足够的测试用例, 覆盖程序中所有可能的路径。测试用例通过路径ace (LI) bd (L2) abe (L3)砥d (L4)【(2,&4), (2,0,3)】 r(iuax (133) 【e 败 2),(ia,3)i 【(3皿3), (3,(M)】6、软件测试策略测试过程按4个步骤进行,即单元测试、组装测试、确认测试和系统测试。 开始是单元测试,集中对用源代码实现的每一个程序单元进行测试,检查各个程 序模块是否正确地实现了规定的功能 组装测试把已测试过
26、的模块组装起来,主要对与设计相关的软件体系结构的构造 进行测试。 确认测试则是要检查已实现的软件是否满足了需求规格说明中确定了的各种需 求,以及软件配置是否完全、正确。 系统测试把已经经过确认的软件纳入实际运行环境中,与其它系统成份组合在一 起进行测试。数据流图假设一家工厂的采购部每天需要一张定货报表,报表按零件编号排序,表中列出所有需要再 次定货的零件。对于每个需要再次定货的零件应该列出下述数据:零件编号,零件名称,定 货数量,目前价格,主要供应者,次要供应者。零件入库或出库称为事务,通过放在仓库中 的CRT终端把事务报告给定货系统。当某种零件的库存数量少于库存量临界值时就应该再 次定货。状
27、态转换图(状态图)ASP检索程序流程图:例:以行李托运费的算法为例说明判定表的组织方法假设某航空公司规定,乘客可以免费托运重 量不超过30kg的行李中当超过30kg时,对头等 舱的国内乘客超重部分每公斤收费4元,对其他 舱的国内乘客超重部分每公斤收费6元,对外国 乘客超重部分每公斤收费比国内乘客多一倍,对 残疾乘客超重部分每公斤收费比正常乘客少一半 c用判定表可以清楚地表示与上述每种条件组合 相对应的计算行李费的算法中表6.1用判定表表示计算行李费的算法国i可乘客i李重量甲3。kg头等艇匚其他舵匚残疾乘客 (甲T0)X2 正常乘客(甲-珅引 残疾秉客一(欧-30)X3 正常聚咨一(甲TQ)X6
28、壮李费算法外国乘客国&厂残族客I时iH常乘客(甲TSXg残疾乘客爵T0)X6 诉常乘客OF-3C)X 12涮舱匚./123FI45678、9国内乘客TTTTFFFF头等TFTFTFTF残炭乘客FFTTFFTT行李重景 WOOKgIFFFFFFFF免费X(W-30) X 2X(W-30) X 3X(W-30) X 4XX(W-30) X 6XX(W-30) X 8X(W-30) X 12X用判定树表示计算行李费的算法例遂分支判断结构1HJ- LNT1Ii1, J1f.ftJHi1112XITTTTTh1FFFkrTTFFHFFx:lFFTT-FVIFFTTzTkFXhTTTF?X;TTMlTFTFTFFTTrFEtYYVY、:YYYV*YY11YVYYYYYYTYYYcllYYIYV、9YY%VY、Y天津理工计算机专业 09级范米克,嘿嘿 联系我