zoukankan      html  css  js  c++  java
  • SE


    摘自http://www.itisedu.com/phrase/200602281725525.html


    软件工程师是对应用软件创造软件的人们的统称,软件工程师按照所处的领域不同可以分为
    系统分析员,软件设计师,系统
    架构师程序员,测试员等等。
    人们也常常用程序员来泛指各种软件工程师。

    软件工程(SoftWare Engineering)的框架可概括为:目标、过程和原则。

    框架:四项基本原则是基石

    第一,选取适宜开发范型
    第二,采用合适的设计方法
    第三,提供高质量的工程支持
    第四,重视开发过程的管理


    Boehm提出的软件工程的七条原理:

    1 用分阶段的生命周期计划严格管理
    在整个软件生命周期中应指定并严格执行6类计划:项目概要计划、里程碑计划、项目控制计划、产品控制计划、验证计划、运行维护计划。

    2 坚持进行阶段评审

    3 实行严格的产品控制
    开发人员最痛恨的事情之一就是改动需求。(good)
    需求的改动往往是不可避免的。这就要求我们要采用科学的产品控制技术来顺应这种要求。也就是要采用变动控制,又叫基准配置管理。当需求变动时,其它各个阶段的文档或代码随之相应变动,以保证软件的一致性。

    4 采纳现代程序设计技术
    5 结果应能清楚地审查
    6 开发小组的人员应少而精
    这一条基于两点原因:高素质开发人员的效率比低素质开发人员的效率要高几倍到几十倍,开发工作中犯的错误也要少的多; 当开发小组为N人时,可能的通讯信道为N(N-1)/2, 可见随着人数N的增大,通讯开销将急剧增大。

    7 承认不断改进软件工程实践的必要性


    面向方面的编程(Aspect Oriented Programming,简称AOP)被认为是近年来软件工程的另外一个重要发展。这里的方面指的是完成一个功能的对象和函数的集合。在这一方面相关的内容有泛型编程(Generic Programming)和模板。


    软件体系结构和工具的选择

    当然最好是基于UML的CASE工具。当前比较流行的就是Rose,它是一个很好的分析和建立对象和对象关系的工具。在具体编码的时候,我们需要版本控制工具,MS的SourceSafe就是一个很好的版本管理工具和项目管理工具。具体的开发工具当然很多,但是如果你是一个对VC侵淫了多年的程序员,你一定会选择它,因为它会让你感到什么是真正的面向对象的编程,而你在用VB,PowerBuilderDelphi时很少会有同样的感受。至于数据库模式构建,我一向是采用Sybase的S-Design,更好的工具就不知道了。

    另外需要注意的是,我们需要建立文档编写的若干模板,以便开发人员按照这个模板编写规范的技术和说明文档。帮助文档可以用微软的HTML Help Workshop(hhw.exe)制作,你也可以编译成.chm格式,它打包了文本和图形,只有一个文件,使用和分发比较方便。最后,如果开发人员不是集中在一个地方的话,最好建立一个邮件列表,开发人员可以通过邮件系统讨论开发中的各项事宜

    五、软件开发方法综述  


    ---




  • 相关阅读:
    java集合
    linux网络配置(iproute2)
    linux网络配置(ifcfg)
    linuxshell编程之数组和字符串处理工具
    linux网络配置文件
    linux 内核版本和发行版本区别
    linux 相关零碎知识整理
    linux计算机网络基础
    linux bash编程之函数和循环控制
    linux bash shell编程之参数变量和流程控制。
  • 原文地址:https://www.cnblogs.com/day/p/651574.html
Copyright © 2011-2022 走看看