博客
关于我
软件工程之软件概述
阅读量:469 次
发布时间:2019-03-06

本文共 1290 字,大约阅读时间需要 4 分钟。

软件工程基础知识

一、软件特点

软件是计算机系统中的逻辑成分,具有无形性。其主要内容包括:程序、配置文件、系统文档、用户文档等。

二、软件分类

根据软件的不同特点,软件可以从多个维度进行分类:

  • 按功能划分

    • 系统软件:如操作系统、数据库管理系统等。
    • 支撑软件:如程序编译器、源程序编辑器等。
    • 应用软件:如商业数据处理软件、工程设计制图软件等。
  • 按工作方式划分

    • 实时处理软件:如自动流水线监控程序、飞机自动导航程序。
    • 分时处理软件:如多任务操作系统。
    • 交互式软件:如商业数据处理系统中的客户端程序。
    • 批处理软件:如汇总报表打印程序。
  • 按规模划分

    • 微型软件:由一人几天内完成的500行以内的程序。
    • 小型软件:由一人半年内完成的2000行以内的程序。
    • 中型软件:由一个项目小组一年内完成的50万行以内的程序。
    • 大型软件:由一个至几个项目小组两年内完成的50万行以上的程序。
  • 按服务对象划分

    • 通用软件:如通用财务软件、通用字处理软件等。
    • 定制软件:如某专门设备的控制系统、某特定企业的业务管理系统等。
  • 三、软件发展历程

    软件的发展经历了几个重要阶段:

  • 程序设计时代(20世纪50年代):科研工作者既是开发者也是使用者。
  • 程序系统时代(20世纪60年代):个人创作与软件作坊,用户需求被忽略。
  • 软件工程时代(20世纪70年代起):以工程原理、技术与方法为基础。
  • 四、软件危机

    软件危机是指软件开发与维护过程中遇到的严重问题,主要表现为:

  • 开发成本与进度估计不准确。
  • 软件产品与用户要求不一致。
  • 软件质量可靠性差。
  • 软件文档不完整不一致。
  • 软件产品可维护性差。
  • 软件生产率低。
  • 软件危机的主要原因包括:

  • 软件的不可见性。
  • 软件系统规模庞大。
  • 软件生产工程化管理程度低。
  • 对用户需求关心程度不够。
  • 对软件维护重视程度不够。
  • 软件开发工具自动化程度低。
  • 五、软件工程

    软件工程是一门关于软件开发与维护的工程学科,其核心目标是为经济、高效地开发高质量软件产品提供支持。

  • 软件工程概念

    软件工程的定义:软件工程是开发、运行、维护和修复软件的系统方法。

  • 软件工程技术

    软件工程技术包括:

    • 软件工程方法:如结构化方法、JSD方法、面向对象方法。
    • 软件工具:如CASE工具。
    • 软件工程过程:包括软件定义、软件开发、软件验证、软件维护。
    1. 软件工程原则
      • 分阶段的生命周期计划。
      • 阶段评审制度。
      • 严格的产品控制。
      • 采用先进的程序设计技术。
      • 软件成果能清楚地审查。
      • 开发小组人数少而精。
      • 不断改进工程实践。
      1. 软件工程目标
        • 开发成本较低。
        • 软件功能能满足用户需求。
        • 软件性能较好。
        • 软件可靠性高。
        • 软件易于使用、维护与移植。
        • 能按时完成开发任务并及时交付使用。
        1. 软件工程文化
          软件工程文化包括:
          • 工程价值:如质量、效率、责任等。
          • 工程思想:如分阶段管理、严格控制。
          • 工程行为:如遵守规范、积极创新等。

          六、总结

          软件工程作为一门工程学科,其核心在于通过科学的方法和技术,确保软件开发的高效性和质量。通过遵循软件工程原则和目标,结合合适的工具和方法,软件工程能够有效地解决软件开发中的各种问题,为信息化时代提供重要支撑。

    转载地址:http://clobz.baihongyu.com/

    你可能感兴趣的文章
    NIFI大数据进阶_外部ZK模式集群1_实际操作搭建NIFI外部ZK模式集群---大数据之Nifi工作笔记0017
    查看>>
    NIFI大数据进阶_离线同步MySql数据到HDFS_01_实际操作---大数据之Nifi工作笔记0029
    查看>>
    NIFI大数据进阶_离线同步MySql数据到HDFS_02_实际操作_splitjson处理器_puthdfs处理器_querydatabasetable处理器---大数据之Nifi工作笔记0030
    查看>>
    NIFI大数据进阶_连接与关系_设置数据流负载均衡_设置背压_设置展现弯曲_介绍以及实际操作---大数据之Nifi工作笔记0027
    查看>>
    NIFI数据库同步_多表_特定表同时同步_实际操作_MySqlToMysql_可推广到其他数据库_Postgresql_Hbase_SqlServer等----大数据之Nifi工作笔记0053
    查看>>
    NIFI汉化_替换logo_二次开发_Idea编译NIFI最新源码_详细过程记录_全解析_Maven编译NIFI避坑指南001---大数据之Nifi工作笔记0068
    查看>>
    NIFI集群_内存溢出_CPU占用100%修复_GC overhead limit exceeded_NIFI: out of memory error ---大数据之Nifi工作笔记0017
    查看>>
    NIFI集群_队列Queue中数据无法清空_清除队列数据报错_无法删除queue_解决_集群中机器交替重启删除---大数据之Nifi工作笔记0061
    查看>>
    NIH发布包含10600张CT图像数据库 为AI算法测试铺路
    查看>>
    Nim教程【十二】
    查看>>
    Nim游戏
    查看>>
    NIO ByteBuffer实现原理
    查看>>
    Nio ByteBuffer组件读写指针切换原理与常用方法
    查看>>
    NIO Selector实现原理
    查看>>
    nio 中channel和buffer的基本使用
    查看>>
    NIO三大组件基础知识
    查看>>
    NIO与零拷贝和AIO
    查看>>
    NIO同步网络编程
    查看>>
    NIO基于UDP协议的网络编程
    查看>>
    NIO笔记---上
    查看>>