软件构造期末复习

设计-实现-调试-测试的软件构造。
软件=程序+数据+文档
程序设计是一种个人的科学或艺术。
程序=算法+数据结构
• 数据结构指的是程序处理或应用的数据与数据之间的逻辑关系。
• 算法指的是解决特定问题的步骤和方法。
• 程序设计的核心就是选择和设计适合特定问题的数据结构与算法,用编程语言编制为程序。
软件工程把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以系统性的、规范化的、可定量的过程化方法去开发和维护软件。
软件工程是应用计算机科学、数学、逻辑学及管理科学等原理,开发软件的工程学科和活动。
 计算机科学、数学用于软件模型与算法设计,工程科学用于制定规范、开发范型、评估成本及确定权衡,管理科学用于计划、资源、质量、成本等管理。
使用角度的软件生存周期 提出需求。获取软件。使用软件。
敏捷方法可以视为一些最佳实践的集合,
敏捷开发使用UML 的符号主要是类图和时序图,
敏捷开发也创造了一些新技术或实践:结对编程、代码重构、测试驱动开发、持续集成。
测试驱动开发TDD
按计算模型的划分 声明式:告诉计算机做什么。命令式:告诉计算机应该如何做。
按照语言的转换和执行方式,高级语言分为编译型语言和解释型语言。
虚拟机或运行容器
软件行业借用了管理学的最佳实践(Best Practice)
分解的核心是将多个问题、难点或关注点分离。
模块具有三大特征:独立性,互换性,通用性,
函数(或方法、过程)是实现软件模块化的一个基本原则。
软件的模块设计 ,最基本的是算法和数据结构的设计。
用计算机程序语言实现并在计算机上运行的算法就是程序
1)偶然内聚2&#x

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
1. 构件:是指语义完整,语法正确和有可重用价值的单位软件,是软件重用过程中可以明确辨识的系统;结构上,它是语义描述通信接口和实现代码的复合体。2. 构件模型:是对构件本质特征的抽象描述。3. 构件组装:是指将库中的构件经适当修改后相互连接,或者将它们与当前开发项目中的软件元素相连接,最终构成新的目标软件。4. 软件体系结构:Hayes Roth认为软件体系结构是一个抽象的系统规范,主要包括用其行为来描述的功能构件和构件之间的相互连接、接口和关系。5. 面向服务体系结构(SOA):本质上是服务的集合,服务间彼此通信,这种通信可能是简单地数据传送,也可能是两个或更多的服务协调进行某些活动。6. 可靠性:是软件系统在应用或系统错误面前,在意外或错误使用的情况下维持软件系统特性的基本能力。7. 可修改性:是指能够快速地以较高的性能价格比对系统进行变更的能力。通常以某些具体的变更为基准,通过考察这些变更的代价衡量可修改性。可修改性包括:可维护性、可扩展性、结构重组、可移植性。8. 敏感点:是一个或多个构件(和/或构件之间的关系)的特性。9. 权衡点:是影响多个质量属性的特性,是多个质量属性的敏感点。10. 软件产品线:就是在一个公共的软件资源集合基础上建立起来的共享同一个特性集合的系统集合。11. 框架:是封装了特定应用族抽象设计的抽象类的集合,框架又是一个模板,关键的方法和其他细节在框架实例中实现。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值