CS,七,软件工程
2015-08-25 21:53
323 查看
软件开发是一个工程化的过程,在开发大型的复杂系统过程中难免会遇到许多问题,软件工程的目标就是要找到一种原则,能够指导软件开发过程,进而产出高效的,可靠的软件产品。软件工程包含了软件开发过程中的人员管理,项目管理等各种主题。
类似于其他工程学科,软件工程缺少了度量技术,所以不能在工作初期就估量出预期产品的复杂度和预期耗时工期。但是,随着软件工程学的逐渐成熟,许多计算机辅助软件工程的出现,使得软件开发流程化。集成开发环境(IDE)也使得开发程序变得简单。
软件的生命周期无非就是开发使用维护。其中开发阶段包含分析、设计、实现、测试。软件开发的方法也逐渐形成了瀑布模型,增量模型,迭代模型等一些列模型。
要修改软件,就必须理解这个程序,或者至少是与要修改的那部分有关的部分。对于大型程序,理解它,是相当困难的,所以如果有了模块化,那么就可以把软件分割成几个易于处理的单元,通常称为模块,每个模块仅仅承担整个软件的一部分功能。各模块之间,低耦合,高内聚。
使用高级语言在开发软件时,伴随语言本身,会提供许多“构建”来帮助开发者快速完成某些功能。开发过程中,事先需要设计软件系统的功能,较老的工具用到数据流图,现在有统一建模语言。设计模式也是很重要的一部分,如工程模式,单例模式等。
本章剩余部分还讲到软件测试,文档编制,人机界面,软件所有权和责任等,这些就比较具有专业术语的意味了,当然,我们只是简单的写写程序,只要这些全面的软件开发流程,就是经验活喽。本章结束。
类似于其他工程学科,软件工程缺少了度量技术,所以不能在工作初期就估量出预期产品的复杂度和预期耗时工期。但是,随着软件工程学的逐渐成熟,许多计算机辅助软件工程的出现,使得软件开发流程化。集成开发环境(IDE)也使得开发程序变得简单。
软件的生命周期无非就是开发使用维护。其中开发阶段包含分析、设计、实现、测试。软件开发的方法也逐渐形成了瀑布模型,增量模型,迭代模型等一些列模型。
要修改软件,就必须理解这个程序,或者至少是与要修改的那部分有关的部分。对于大型程序,理解它,是相当困难的,所以如果有了模块化,那么就可以把软件分割成几个易于处理的单元,通常称为模块,每个模块仅仅承担整个软件的一部分功能。各模块之间,低耦合,高内聚。
使用高级语言在开发软件时,伴随语言本身,会提供许多“构建”来帮助开发者快速完成某些功能。开发过程中,事先需要设计软件系统的功能,较老的工具用到数据流图,现在有统一建模语言。设计模式也是很重要的一部分,如工程模式,单例模式等。
本章剩余部分还讲到软件测试,文档编制,人机界面,软件所有权和责任等,这些就比较具有专业术语的意味了,当然,我们只是简单的写写程序,只要这些全面的软件开发流程,就是经验活喽。本章结束。
相关文章推荐
- Linux文件基本介绍
- [笔记][Java7并发编程实战手册]4.3 创建固定的线程执行器newFixedThreadPool线程池
- Java线程状态知识点
- PorterDuff及Xfermode详解
- JavaScript设计模式之----接口的实现
- [转载]C#中使用ADO.NET连接SQL Server数据库,自动增长字段用作主键,处理事务时的基本方法
- PHP实用小程序(七)
- Unity Notes调制粒子系统的颗粒的最大数目
- Excel和SQLserver数据互相存取
- python 问题
- 面向对象的三个基本元素与五大基本原则
- 图片拉伸技巧
- 【Unix环境编程】select、poll、epoll机制的联系与区别
- 类方法和对象方法的比较
- Git 常用命令详解
- 洗脑——要的是战斗,不是听别人的
- 二维数组作为参数传递问题
- 设计模型之二策略模式
- hdu 1229 超级大水题
- SSDB系列文章推荐