前言:
我们进行了一段时间的软件设计,也能够实现软件的功能,之前能够做到这一步,我已经是很兴奋了;不过,做软件,仅仅做这些是远远不够的,我们要进行需求分析,编写程序,调试、等等工作,爱要伴随着文档一块进行,这些整体才能够称之为软件。所以有了这样的需求,我现在开始进行软件工程的学习,整理了一下笔记,结合快速阅读和思维导图,分享于此。
整个软件工程,我分成了四部分:基础理论、结构化方法、面向对象方法与实现、质量与工程管理。今天我们详细的了解下第一部分——基础理论。
一、绪论
软件
概念:计算机系统中与硬件相互依存的另一部分,包括程序,数据及文档的完整集合。
特点:
1、逻辑实体,具有抽象性。
2、没有明显的生产过程。
3、无机械磨损。
4、开发受硬件限制。
5、手工开发,成本昂贵
6、本身复杂
分类:
按功能:系统软件、支撑软件、应用软件、
按规模:微型~极大型
按工作方式:实时处理、分时、交互式、批处理、
按服务对象:项目软件、产品软件
按使用频度:一次使用、频繁使用、
按软件失效影响:高可靠性软件、一般可靠性软件
发展:
程序设计阶段
程序系统阶段
软件工程阶段
二、基本理论
软件工程的六个阶段
计划,需求分析,设计,编码,测试,运行维护。后续会有详细介绍,这里就不加以赘述。
模型:
瀑布模型:
相互依赖强,每个阶段严谨,质量高;
周期长,用户见到晚,发现问题越晚,维护成本越高。
b模型:
开发——维护测试处分点
维护成本高
快速原型模型:
用户和开发人员一直在一起。
以下模型不再加以赘述。
演化模型、渐增模型、螺旋模型、喷泉模型。
三、可行性研究
可行性研究
1,经济可行性
2,技术可行性
3,操作可行性
4,法律可行性
5,时间可行性
软件计划书
1,软件范围:功能对硬件的要求,
2,环境资源:人力资源,使用的硬件,软件,制定进度表,估算开发成本,资源性能描述,