软件工程学习笔记

软件工程

软件工程方法学包含三部分:方法, 工具, 过程

方法工具过程
软件开发的各项任务的技术方法为运用方法而提供的支撑环境所需要完成一系列任务的框架

软件工程方法学

软件工程方法学

软件工程方法学
传统方法学
面向对象方法学
方法优点缺电
传统方法学降低软件产品复杂性,提高可理解性,简化开发和维护,促进软件重用不适应事务变化需求,开发周期长,规模庞大时不难以维护
面向对象方法易维护,质量高,效率高,易扩展

软件生命周期

软件定义时期
软件开发时期
维护时期
软件定义时期
1.问题定义
2.可行性研究
3.需求分析
软件开发时期
1.总体设计
2.详细设计
3.编码和单元测试
维护时期
1.改正性维护
2.适应性维护
3.完善性维护
4.预防性维护

软件工程

  • 瀑布模型(文档驱动)
    阶段间具有顺序性和依赖性,推迟顺序的观点(不过早编程),质量保证的观点,早期不可逆
  • 快速模型(用户需求驱动)
    快速建立一个能反映用户需求的系统,让用户试用,通过实践了解系统概貌
  • 螺旋模型(风险驱动)
    用于内部开发大规模项目,每个阶段都进行风险评估
  • 敏捷过程
    (适用于中小型项目)
  • 极限编程
    客户作为开发团队成员,一人编码,一人审查和测试,设计简单,便于调整

可行性研究

开发一个基于计算机的系统受到资源(人力,财力,设备等)和时间上的限制,可行性分析主要从经济,技术,法律等方面来分析给出的解决方案是否可行,能否在给定的资源和时间的约束下完成

技术可行性(风险分析,资源分析,技术分析)

经济可行性(成本,效益,货币的时间价值,投资回收期,纯收入)

法律可行性(系统开发工程中可能涉及到的合同,侵权,责任以及与各种法律相抵触的问题)

需求分析

软件定义时期的最后一个阶段,回答系统必须怎么做

总体设计

目的:
  1. 概述地说明系统该如何实现
  2. 设计系统结构,确定程序有哪些模块组成,以及各模块之间的关系
阶段:
  1. 系统设计阶段确定系统的实现方案
  2. 结构设计阶段确定软件结构
过程
  1. 设想提供方案
  2. 选取合适方案
  3. 推荐最佳方案
  4. 功能分解
  5. 设计软件结构
  6. 设计数据库
  7. 制定测试计划
  8. 书写文档
  9. 审查和复查
  • 23
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值