4.2 信息系统的软件及其作用
📌 学习目标
- 理解基础软件和应用软件的区别
- 掌握操作系统、数据库系统、中间件的作用
- 了解应用软件的设计过程
一、信息系统的软件分类
📍 探究活动:交流(p104-p105)
家里的网络电视系统一般由电视机、电视盒子、通信网络构成。在完成线路连接后,根据不同的应用目标,需要安装不同的软件。通过网络收集资料、动手操作或请教家长、老师,了解系统的软件构成以及各软件的作用,完成表4-3并将结果与同学进行交流。
表4-3 家庭网络电视系统的软件
| 安装软件 | 作用 | 安装次序 |
|---|---|---|
| 安卓操作系统 | 系统软件,管理控制电视系统 | 系统自带,默认安装 |
信息系统的软件分为基础软件和应用软件。其中,基础软件是安装在硬件上的第一层软件,主要指服务器端和客户端的基础软件,包括服务器操作系统、客户端操作系统,以及特定的服务器软件,如数据库管理系统、中间件等,它们构成了信息系统的软件运行环境。而应用软件则完成用户特定的需求
信息系统依靠软件帮助终端用户使用计算机硬件,将数据加工转换成各类信息产品。
信息系统软件
│
├── 基础软件(系统软件)
│ ├── 操作系统
│ ├── 数据库管理系统
│ └── 中间件
│
└── 应用软件
├── 专用应用软件
└── 通用应用软件
二、基础软件及其作用
1. 操作系统(Operating System)
定义:管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件。
操作系统结构:
┌─────────────────────────────────────┐
│ 应用软件 │
├─────────────────────────────────────┤
│ 操作系统 │
├─────────────────────────────────────┤
│ 处理器 存储器 设备 文件 作业 │
│ 管理 管理 管理 管理 管理 │
├─────────────────────────────────────┤
│ 硬件(裸机) │
└─────────────────────────────────────┘
常见操作系统:
| 操作系统 | 特点 | 应用范围 |
|---|---|---|
| Unix | 强大的多用户、多任务系统 | 工作站、服务器 |
| Linux | 开源免费,与Unix兼容 | 服务器、个人计算机 |
| Macintosh | 首个在商用领域获得成功的图形用户界面。 | 运行在Macintosh系列电脑上 |
| Windows | 图形界面,应用广泛 | 个人计算机、服务器 |
| iOS | 苹果手持设备系统 | iPhone、iPad |
| Android | 以Linux为基础的开源移动系统 | 智能手机、平板 |
📍 探究活动:讨论(p106)
某在线销售商转用Linux操作系统之后,仅一个季度就节省了上千万的技术费用。根据报表显示,其省钱之道在于“利用便宜的基础技术架构,引入基于Linux的技术平台,又由于市场的供过于求使得数据和无线通信服务的总体成本降低”。
结合上述案例,与小组同学一起去认识Linux服务器操作系统,了解它的起源、功能和特性。
2. 数据库系统(DBMS)
定义:管理数据库的基础软件,负责数据存储、查询、更新、备份和安全管理。
数据库系统架构:
┌──────────────┐ ┌──────────────┐
│ 客户端 │ ───► │ 服务器 │
│ (用户界面) │ │ (DBMS) │
└──────────────┘ │ + 数据库 │
└──────────────┘
常见数据库:
| 名称 | 特点 |
|---|---|
| MySQL | 开源、轻量、流行 |
| Oracle | 功能强大、企业级 |
| SQL Server | 微软产品、集成性好 |
| PostgreSQL | 开源、功能全面 |
数据库管理系统功能:
- 数据定义
- 数据操纵(增、删、改、查)
- 数据控制(权限、安全)
- 数据维护(备份、恢复)
📎 相关探究:实验_数据库表格信息查看
3. 中间件(Middleware)
定义:网络环境下处于操作系统、数据库等系统软件和应用软件之间的一种起连接作用的分布式软件。
中间件在体系结构中的位置:
┌─────────────────────────────────────┐
│ 应用软件 │
├─────────────────────────────────────┤
│ 中间件 │
│ (Web服务器、消息队列等) │
├─────────────────────────────────────┤
│ 操作系统 / 数据库 │
├─────────────────────────────────────┤
│ 硬件 │
└─────────────────────────────────────┘
作用:
- 解决异构网络环境下分布式应用软件的互联与互操作问题
- 提供标准接口、协议,屏蔽实现细节
- 提高应用系统的移植性
应用案例:Web服务器(Apache、Nginx)
三、应用软件及其设计过程
📎 实践三:实践_Moodle平台搭建
1. 应用软件的作用
应用软件是直接面向最终用户的具体软件,用于处理特定应用。
常见应用软件:
- 图书馆管理软件
- ERP软件
- 财务软件
- 学习管理系统
2. 应用软件设计过程
需求分析 → 体系结构选择 → 模块设计 → 数据库设计 → 程序设计
(1)需求分析
任务:深入了解用户业务处理工作流程,准确领会用户意图,将用户意图转化成软件能够实现的功能。
参与人员:软件分析人员、开发人员、客户
(2)体系结构模式选择
| 结构类型 | 适用场景 |
|---|---|
| 单用户结构 | 系统简单,无需共享资源 |
| C/S结构 | 用户多、功能复杂、需专业维护 |
| B/S结构 | 需要统一可视化界面、易访问 |
| P2P结构 | 需要即时通信、不间断更新数据 |
(3)模块设计
功能结构图示例:
网络学习管理系统
│
├── 课程管理
│ ├── 添加课程
│ ├── 删除课程
│ ├── 课程查询
│ └── 课程显示
│
├── 用户管理
│ ├── 教师管理
│ ├── 学生管理
│ └── 管理员管理
│
└── 学习过程管理
├── 教师引导
├── 学生探究
└── 互动评价
(4)数据库设计
主要工作:
- 绘制数据流图
- 编写数据字典
- 设计数据逻辑结构
数据字典示例:
数据项名称:username(用户名)
类型:字符型
长度:16
说明:必须包含字母、数字,最短8位,最长16位
四、应用软件的开发工具和平台
1. 数据库开发工具
| 工具 | 说明 |
|---|---|
| MySQL | 最流行的关系型数据库管理系统 |
| Oracle | 企业级大型数据库 |
| SQL Server | 微软数据库产品 |
2. 应用软件集成开发环境
| 类别 | 软件 | 说明 |
|---|---|---|
| 单机开发 | Access | 关系数据库管理系统 |
| 网络应用 | Visual Studio | 全生命周期开发工具 |
| PHP开发 | Zend Studio、PhpStorm | PHP集成开发环境 |
| 移动应用 | App Inventor | 手机编程软件 |
| 📎 知识延伸:APP |
📍 项目实施
各小组根据项目选题及拟订的项目方案,结合4.1节和4.2节所学知识,为所选定的信息系统做如下工作:
- 分析所需的软件配置,动手配置该信息系统的软件环境。
- 分析并画出该信息系统的功能结构图。
- 应用工具或平台开发该信息系统应用软件。
📝 本节小结
| 软件类型 | 作用 | 示例 |
|---|---|---|
| 操作系统 | 管理硬件和软件资源 | Windows、Linux |
| 数据库系统 | 存储和管理数据 | MySQL、Oracle |
| 中间件 | 连接应用和系统软件 | Web服务器 |
| 应用软件 | 处理特定应用 | 学习管理系统 |
🔗 本章其他小节
| 术语 | 英文/缩写 |
|---|---|
| 操作系统 | OS |
| 数据库管理系统 | DBMS |
| 中间件 | Middleware |
| 结构化查询语言 | SQL |
| 应用程序 | APP |