系统分析作业一

软件工程的定义

  • 软件工程是对软件开发、操作和维护的系统化、规范化、可量化方法的应用,即工程对软件的应用和对方法的研究。

解释导致软件危机的本质原因、表现、述说克服软件危机的方法

  • 原因:计算机的发展导致软件日益复杂和庞大、开发管理困难和复杂,开发费用不断增加、开发技术和生产方式落后不能满足对软件日益增长的需求从而出现了软件危机,
    • 用户需求不明确
    • 缺乏正确的理论指导
    • 软件开发规模越来越大
    • 软件开发复杂度越来越高
  • 表现:
    • 对软件开发进度难以预测,开发成本难以控制
    • 软件产品不能满足用户要求,用户对软件系统不满意
    • 软件可维护性差,没有适当的文档资料
    • 软件可靠性差,产品质量靠不住
  • 克服软件危机的方法:
    • 在软件开发过程中使用软件工具来辅助进行软件项目管理与技术生产
    • 将软件声明周期各阶段使用的软件工具有机地集合成为一个整体,形成能够连续支持软件开发与维护全过程的集成化软件支援环境,从管理和技术两方面解决软件危机问题
    • 研究制定软件的设计规范,推广在时间中总结出来的开发软件的成功的技术和方法,并研究更好、更有效的技术和方法,尽快克服在计算机系统早期发展阶段形成的一些错误概念和做法
    • 充分吸收和借鉴人类长期以来从事各种工程项目中积累的行之有效的原理、概念、技术与方法,在开发软件过程中努力做到良好的组织,严格的管理,相互友好的协作

软件生命周期

  • 软件生命周期又称为软件生存周期或系统开发生命周期,是软件的产生直到报废的生命周期,周期内按时间分程对软件项目各阶段任务进行划分。

SWEBoK的15个知识域

  • 软件需求:涉及对软件需求的引出、协商、分析、规范和确认;
  • 软件设计:定义系统或组件的架构、组件、接口和其他特性的过程;
  • 软件架构:通过详细设计、编码、单元测试、集成测试、调试和验证的组合来信息构建工作软件;
  • 软件测试:评估产品质量并通过识别缺陷来改进产品质量;
  • 软件维护:增强软件现有的能力,使软件适应新的和修改过的操作环境,以及纠正缺陷;
  • 软件配置管理:系统地控制配置的更改,并在整个软件生命周期中保持配置的完整性和可追溯性;
  • 软件工程管理:计划、协调、测量、报告和控制项目或程序,以确保软件的开发和维护是系统的、有纪律的和量化的;
  • 软件工程过程:设计软件生命周期过程的定义、实现、评估、测量、管理和改进;
  • 软件工程模型与方法:描述了包含多个生命周期阶段的方法;
  • 软件质量:软件质量是一个普遍存在的软件生命周期问题,包括软件质量基础、软件质量管理过程以及实用性;
  • 软件工程专业实践:涉及软件工程师以专业、负责和道德的方式实践软件工程所必须具备的知识、技能和态度;
  • 软件工程经济学:关注于在业务环境中做出决策,以使技术决策与组织的业务目标保持一致。
  • 计算基础:涵盖了为软件工程提供必要计算背景的基本主题包括问题解决技术、抽象、算法和复杂性、编程基础、并行与分布式计算基础、计算机组织、操作系统和网络通信。
  • 数学基础:涵盖了为软件工程实践提供必要数学背景的基本主题包括集合、关系和函数、基本命题和谓词逻辑、证明技术、图和树、离散概率、语法和有限状态机以及数论。
  • 工程基础:涵盖了为软件工程实践提供必要工程背景的基本主题包括经验方法和实验技术、统计分析、测量和度量、工程设计、模拟和建模以及根本原因分析。

简单解释 CMMI 的五个级别

  • Level 1 - 初始级:企业对项目的目标与要做的努力很清晰,项目的目标得以实现。但是由于任务的完成带有很大的偶然性,企业无法保证在实施同类项目的时候仍然能够完成任务。
  • Level 2 - 管理级:企业在项目实施上能够遵守既定的计划与流程,有资源准备,权责到人,对相关的项目实施人员有相应的培训,对整个流程有监测与控制,并与上级单位对项目与流程进行审查。
  • Level 3 - 定义级:企业能够根据自身的特殊情况以及自己的标准流程,将这套管理体系与流程予以制度化。企业不仅能够在同类的项目上生到成功的实施,在不同类的项目上一样能够得到成功的实施。
  • Level 4 - 量化级:企业的项目管理不仅形成了一种制度,而且要实现数字化的管理。对管理流程要做到量化与数字化。通过量化技术来实现流程的稳定性,实现管理的精度,降低项目实施在质量上的波动。
  • Level 5 - 优化级:企业的项目管理达到了最高的境界。企业要能够充分利用信息资料,对企业在项目实施的过程中可能出现的次品予以预防。能够主动地改善流程,运用新技术,实现流程的优化。

用自己语言简述 SWEBok 或 CMMI

  • CMMI为改进一个组织的各种过程提供了一个单一的集成化框架,新的集成模型框架消除了各个模型的不一致性,减少了模型间的重复,增加透明度和理解,建立了一个自动的、可扩展的框架。因而能够从总体上改进组织的质量和效率。CMMI主要关注点就是成本效益、明确重点、过程集中和灵活性四个方面。
    其目的是帮助软件企业对软件工程过程进行管理和改进,增强开发与改进能力,从而能按时地、不超预算地开发出高质量的软件。并通过CMMI认证与国际接轨,可提高产品附加价值,创造产业的新价值。
    CMMI认证为企业带来价值主要体现在以下几个方面:
    • 能保证软件开发的质量与进度,能对“杂乱无章、无序管理”的项目开发过程进行规范。
    • 有利于成本控制。因为质量有所保证,浪费在修改、解决客户的抱怨方面的成本会降低很多。绝大多数情况是缺少规范制度,只是求快。项目完成后,要花很多时间修修补补,费用很容易失控。
    • 有助于提高软件开发者的职业素养。每一个具体参与其中的员工,无论是项目经理,还是工程师,甚至一些高层管理人的做事方法逐渐变得标准化、规范化。
    • 能够解决人员流动所带来的问题。公司通过过程改进,建立了财富库以共享经验, 而不是单纯依靠某些人员。
    • 有利于提升公司和员工绩效管理水平,以持续改进效益。通过度量和分析开发过程和产品,建立公司的效率指标。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值