系统分析与设计作业1

本文介绍了软件工程的基本概念,包括不同的定义、软件危机、COCOMO模型、软件生命周期的六个阶段,以及CMMI的五个级别等内容。同时,还探讨了个人软件过程(PSP)的各项指标及技能要求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、简单题

软件工程的定义:
软件工程一直以来都缺乏一个统一的定义,很多学者、组织机构都分别给出了自己认可的定义:

  • BarryBoehm:运用现代科学技术知识来设计并构造计算机程序及为开发、运行和维护这些程序所必需的相关文件资料。
  • IEEE:在软件工程术语汇编中的定义:软件工程是:1.将系统化的、严格约束的、可量化的方法应用于软件的开发、运行和维护,即将工程化应用于软件;2.在1中所述方法的研究
  • FritzBauer:在NATO会议上给出的定义:建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法。
  • 《计算机科学技术百科全书》:软件工程是应用计算机科学、数学、逻辑学及管理科学等原理,开发软件的工程。软件工程借鉴传统工程的原则、方法,以提高质量、降低成本和改进算法。其中,计算机科学、数学用于构建模型与算法,工程科学用于制定规范、设计范型(paradigm)、评估成本及确定权衡,管理科学用于计划、资源、质量、成本等管理。
  • 比较认可的一种定义认为:软件工程是研究和应用如何以系统性的、规范化的、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。
  • ISO 9000对软件工程过程的定义是:软件工程过程是输入转化为输出的一组彼此相关的资源和活动。

阅读经典名著“人月神话”等资料,解释 software crisis、COCOMO 模型。
software crisis:即软件危机,软件危机是指落后的软件生产方式无法满足迅速增长的计算机软件需求,从而导致软件开发与维护过程中出现一系列严重问题的现象。
COCOMO模型:英文全称为constructive cost model,中文为构造性成本模型。它是一种精确、易于使用的,基于模型的成本估算方法,最早由勃姆 (Boehm) 于 1981 年提出。从本质上说是一种参数化的项目估算方法,参数建模是把项目的某些特征作为参数,通过建立一个数字模型预测项目成本(类似于居住面积作为参数计算的整体的住房成本)。

软件生命周期。
软件的生命周期,亦称软件的生存周期。它是按开发软件的规模和复杂程度,从时间上把软件开发的整个过程(从计划开发开始到软件报废为止的整个历史阶段)进行分解,形成相对独立的几个阶段,每个阶段又分解成几个具体的任务,然后按规定顺序依次完成各阶段的任务并规定一套标准的文档作为各个阶段的开发成果,最后生产出高质量的软件。主要分为六个阶段:
1、问题的定义及规划
此阶段是软件开发方与需求方共同讨论,主要确定软件的开发目标及其可行性。
2、需求分析
在确定软件开发可行的情况下,对软件需要实现的各个功能进行详细分析。需求分析阶段是一个很重要的阶段,这一阶段做得好,将为整个软件开发项目的成功打下良好的基础。”唯一不变的是变化本身。”,同样需求也是在整个软件开发过程中不断变化和深入的,因此我们必须制定需求变更计划来应付这种变化,以保护整个项目的顺利进行。
3、软件设计
此阶段主要根据需求分析的结果,对整个软件系统进行设计,如系统框架设计,数据库设计等等。软件设计一般分为总体设计和详细设计。好的软件设计将为软件程序编写打下良好的基础。
4、程序编码
此阶段是将软件设计的结果转换成计算机可运行的程序代码。在程序编码中必须要制定统一,符合标准的编写规范。以保证程序的可读性,易维护性,提高程序的运行效率。
5、软件测试
在软件设计完成后要经过严密的测试,以发现软件在整个设计过程中存在的问题并加以纠正。整个测试过程分单元测试、组装测试以及系统测试三个阶段进行。测试的方法主要有白盒测试和黑盒测试两种。在测试过程中需要建立详细的测试计划并严格按照测试计划进行测试,以减少测试的随意性。
6、运行维护
软件维护是软件生命周期中持续时间最长的阶段。在软件开发完成并投入使用后,由于多方面的原因,软件不能继续适应用户的要求。要延续软件的使用寿命,就必须对软件进行维护。软件的维护包括纠错性维护和改进性维护两个方面。

按照 SWEBok 的 KA 划分,本课程关注哪些 KA 或 知识领域?
software requirements
software design
software construction
software engineering management
software engineering tools and methods

解释 CMMI 的五个级别。例如:Level 1 - Initial:无序,自发生产模式。

  • Level 1 - Initial:无序,自发的生产模式。
  • Level 2 - Repeatable:有基本的项目管理过程,制定必要规律,管理化制度的生产模式。
  • Level 3 - Defined:软件管理及工程过程化、标准化,完善培训和评价制度的生产模式
  • Level 4 - Managed:分析度量数据,控制生产流程,管理预测性能的生产模式
  • Level 5 - Optimizing:量化反馈、持续更新、改善流程,集中精力改进过程的生产模式

用自己语言简述 SWEBok 或 CMMI (约200字)
CMMI全称是Capability Maturity Model Integration,即能力成熟度模型集成(也有称为:软件能力成熟度集成模型)
其目的是帮助软件企业对软件工程过程进行管理和改进,增强开发与改进能力,从而能按时地、不超预算地开发出高质量的软件。其所依据的想法是:只要集中精力持续努力去建立有效的软件工程过程的基础结构,不断进行管理的实践和过程的改进,就可以克服软件开发中的困难。CMMI为改进一个组织的各种过程提供了一个单一的集成化框架,新的集成模型框架消除了各个模型的不一致性,减少了模型间的重复,增加透明度和理解,建立了一个自动的、可扩展的框架。因而能够从总体上改进组织的质量和效率。CMMI主要关注点就是成本效益、明确重点、过程集中和灵活性四个方面。
主要分为五个等级:初始级,可管理级,已定义级,量化管理级和优化管理级

2、解释 PSP 各项指标及技能要求:

阅读《现代软件工程》的 PSP: Personal Software Process 章节。 http://www.cnblogs.com/xinz/archive/2011/11/27/2265425.html
按表格 PSP 2.1, 了解一个软件工程师在接到一个任务之后要做什么,需要哪些技能,解释你打算如何统计每项数据? (期末考核,每人按开发阶段提交这个表)
PSP2.1
软件工程师接到一个任务后需要进行
计划(估计任务的代价)
开发(分析需求,设计文档,设计审计,决定代码标准,敲定具体设计,进行具体编码,代码复审,测试)
记录时间花费
测试报告
计算工作量
事后总结
过程改进计划

摘要:本文主要是利用信息系统分析设计的方法,对于网上银行主要的业务功能和需求,进行系统化的分析;随着网络技术的发展和逐渐完善,以及金融服务在信息时代的深度延伸,网上银行系统已成为各个银行发展的新模型和吸引客户的重要渠道。网上银行系统可以通过 Internet技术,让银行客户在任何时间、地点获取自身所需要的服务。随着网上支付等相关业务的增多,网上银行成为了消费活动中必不可少的工具,并且网上银行系统的服务明显优于传统银行。网上银行已经形成账户信息管理,转账支付,余额查询,动账通知,理财购买,贷款抵押等业务服务于一体的网上银行系统;随着银行电子化、信息化,网上银行在银行的业务办理过程中以及人们的日常生活中起到了越来也大的作用;能够有效的分担银行客户的人流量,提高客户的体验程度;本文就主流银行的网上银行的业务功能进行分析;针对网上银行的业务流程进行追踪,使用UML用例图的建模方式对网上银行的办理业务具体的进行分析,确定账户信息管理、转账支付、余额查询、动账通知等内容,并通过需求规格说明给出详细的用例描述,并给出系统非功能需求方面的内容,对于网上银行的主要业务功能,结合信息系统设计分析课程的知识对于银行的信息管理系统进行分析设计;系统的需求分析是商业银行网上银行管理系统设计的第一个环节,本文进行可行性分析,通过对技术先进程度,经济合理性和条件可能性的分析论证,选择以最小的人力、物力、财力耗费,取得最佳技术、经济、社会效益的切实方案。然后分析了网上银行的业务需求,和传统的业务相比,网上银行减少了相关的成本,提升银行形象,增强客户对银行的信心,优势更加的明显。 关键字:网上银行;信息系统分析;功能需求
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值