数据库原理与应用教程总结笔记

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一些对软件的偏见或误解
• 软件就是程序,软件开发就是编写程序。编完了程序,就一切OK了。 • 掌握了最新的语言和工具,就能写程序了。 • 软件是灵活的,软件的修改很容易。 • 只要会编程,就能写软件,就是程序员;一个公司,只要召些程序员,就能开发好的软件
产品。 • 只要有几个有经验的程序员,再找些兼职的大学生,就能组成一个软件公司。
软件工程方法学三个要素:方法、工具和过程。 方法是完成软件开发各项任务的技术,回答“如何做”; 工具是为方法的运用提供自动或半自动软件支撑环境,回答“用什 么做”; 过程是为获得高质量的软件要完成的一系列任务的框架,规定完成 各项任务步骤,回答“如何控制、协调、保证质量”。
目前使用得最广泛的软件工程方法学 传统方法学:也称为生命周期方法学或结构化范型。 面向对象方法学
1.1 软件危机
• 软件危机的原因
• 软件规模越来越大,软件复杂度越来越高 • 软件开发缺乏正确的理论指导,过分依靠个人技巧和创造性 • 没有充分的文档资料(软件配置主要包括程序、文档和数据等) • 软件可靠性缺少度量的标准,质量无法保证 • 轻视软件维护(维护费用占软件总费用的55%-70%) • 用户需求没有完整准确的认识,就匆忙着手编写程序(主要原因)
一 、软件工程基本原理
• 1.1 软件危机 • 1.2 软件工程 • 1.3 软件生命周期 • 1.4 软件过程
软件及软件工程
• 为什么要讲软件和软件工程 • 只有对软件和软件的开发过程有充分的认识,才能更好的开发出过程受控、质量受控 的软件产品。 • 对于软件和软件开发过程的认识是困难的,存在很多困惑,需要对此有深刻的认识。
1.3 软件生命周期
1.1 软件危机
• 软件危机的原因
• 软件本身的特点 • 软件开发与维护的方法不正确
• 如何克服软件危机 :软件工程
• 概念:软件生命周期
1.1 软件危机
• 消除软件危机的途径 • 对计算机软件正确认识。(软件不仅仅是程序) • 推广使用开发软件成功的技术和方法,研究探索更好更有效的技术和方 法,消除错误概念和做法。 • 开发和使用更好的软件工具。 • 需要组织管理措施。
面向对象方法:
1. 对象作为融合数据及在数据之上的操作行为的统一的软件构件。 2. 把所有对象都划分成类(Class)。每个类都定义了一组数据和一组操作。 3. 按照父类(或称为基类)与子类(或称为派生类)的关系,把若干个相关类组成一个层次结
构的系统(也称为类等级)。在类等级中,下层派生类自动拥有上层基类中定义的数据和 操作,称为继承。 4. 对象彼此间仅能通过发送消息互相联系-封装性。
• 软件工程正是从技术和管理两方面研究如何更好地开发和维护计算机软件的 一门新兴学科。
无章法(个人英雄主义) 工程项目管理模式(团队合作开发)
1.2 软件工程
• 软件工程 • 1968年秋,提出软件工程 • IEEE 1993年给出定义: 1) 将系统化、规范化、可量化 的工程原则和方法,应用于软 件的开发、运行和维护。
1.1 软件危机
• 软件危机的介绍 • 随着计算机应用的日益普及,软件数量急剧膨胀 • 软件开发和维护成本越来越大,令人吃惊地高 • 失败的软件开发项目屡见不鲜
• 什么是软件危机、 • 软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题
1.1 软件危机
软件危机的表现
对软件开发成本和进度的估计常常很不准确 用户对“已完成的”软件系统不满意的现象经常发生 软件产品的质量往往靠不住 软件常常是不可维护的 软件通常没有适当的文档资料 软件成本在计算机系统总成本中所占的比例逐年上升 软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势
什么是软件
软件的定义—软件是计算机系统中与硬件相互依存的另一部分,软件由三部分组成: 程序:在运行时,能提供所希望的功能和性能的指令集 数据:使程序能够正确运行的数据 文档:描述程序研制过程、方法及使用的文档
软件的开发,绝不仅仅是编写程序 软件可看做一个信息交换器,产生、管理、
获取、修改、显示或传送信息
1.2 软件工程
传统方法的特点
生命周期模型 软件过程划分为若干个阶段 每个阶段有各自的任务 阶段之间有某种顺序性
传统方法的缺点 当软件规模较大,或对软件的需求 是模糊的或随时间变化的时候,使 用结构化范型开发软件往往不成功;
此外,使用传统方法学开发出的软 件,维护起来通常都很困难。
1.2 软件工程
软件工程基本原理 (开发与维护的指导) 1. 用分阶段的生命周期计划严格管理 2. 坚持进行阶段评审 3. 实行严格的产品控制 4. 采用现代程序设计技术 5. 结果应能清楚地审查 6. 开发小组的人员应该少而精 7. 承认不断改进软件工程实践的必要性
1.2 软件工程
把在软件生命周期全过程中使用的一整套技术的集合称为方法学 (methodology),也称范型(paradigm)。
Biblioteka Baidu.2 软件工程
面向对象的特点 面向对象方法学的出发点和基本原则,是尽可能模拟人类习惯的思维方式。 用面向对象方法学开发软件的过程,是一个主动地多次反复迭代的演化过程。 概念和表示方法上的一致性,阶段间平滑(无缝)过渡。 特殊到一般的归纳思维过程;一般到特殊的演绎思维过程。(继承的思想) 最终产品中的对象与现实世界中的实体相对应,降低了复杂性,提高了可理 解性,简化了软件的开发和维护工作。 对象是相对独立的实体,容易在软件产品中重复使用,促进了软件重用。 面用对象方法特有的继承性,也进一步提高了面向对象软件的可重用性。
2) 对1)中方法的理论研究。
软件工程
软件开发技术
软件工程环境 软件工具
软件开发方法学
软件项目管理 软件度量 项目估算 进度控制 人员组织 配置管理 项目计划
1.2 软件工程
概括地说,软件工程是指导计算机软件开发和维护的工程学科。 采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考
验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来, 经济地开发出高质量的软件并有效地维护它。
相关文档
最新文档