巧思出硕果
概论
软件:
计算机软件指计算机系统中的程序及其文档
软件的特点:
•
软件是一种逻辑实体,而不是有形的系统元件,其开发成本和进度难以准确地估算
•
软件是被开发的或被设计的,
没有明显的制造过程,
一旦开发成功,
只需复制即可,
但其维护的工作量大
•
软件的使用没有硬件那样的机械磨损和老化问题
软件工程定义:
软件工程是应用计算机科学、
数学及管理科学等原理,
开发软件的工程。
软件工程借鉴传统
工程的原则、方法,以提高质量、降低成本为目的
软件工程的框架:
•
目标:
生产具有正确性、可用性以及价格合宜的产品
正确性反映软件产品实现相应功能规约的程度
可用性反映软件的基本结构、实现及其文档为用户可用的程度
价格合宜反映软件开发与运行的总代价满足用户要求的程度
•
过程
生产一个最终满足需求且达到工程目标的软件产品所需要的步骤
软件工程过程包括:开发过程、运作过程、维护过程、管理过程、支持过程、获取过程、
供应过程、剪裁过程等
•
原则
选取适宜的开发模型
采用合适的设计方法
提供高质量的工程支持
重视软件工程的管理
软件生存周期:
计算机系统工程、需求分析、设计、编码、测试、运行和维护
系统工程
计算机系统的元素:
软件、硬件、人员、数据库、文档和规程
系统工程的任务:
•
识别用户的要求
•
系统建模和模拟
•
成本估算及进度安排
•
可行性分析
•
生成系统规格说明
可行性分析:
开发一个基于计算机的系统通常都受到资源(人力、财力、设备等)和时间上的
限制,
可行性分析主要从经济、
技术、
法律等方面分析所给出的解决方案是否可
行,能否在规定的资源和时间的约束下完成
需求工程