软件工程(3G手机物联网开发方向)
专业培养方向及课程设置
一、大纲目标
物联网(Internet of Things,英文简称IOT)指的是将无处不在的终端设备和设施,包括具备“内在智能”的传感器、移动终端、工业系统、楼控系统、家庭智能设施、视频监控系统等、和“外在使能”的,如贴上RFID的各种资产、携带无线终端的个人与车辆等等“智能化物件或动物”或“智能尘埃”,通过各种无线或有线的长距离或短距离通讯网络实现互联互通(M2M)、应用大集成、以及基于云计算的SaaS营运等模式,在内网、专网或互联网环境下,采用适当的信息安全保障机制,提供安全可控乃至个性化的实时在线监测、定位追溯、报警联动、调度指挥、预案管理、远程控制、安全防范、远程维保、在线升级、统计报表、决策支持、领导桌面(集中展示的Cockpit Dashboard)等管理和服务功能,实现对"万物"的"高效、节能、安全、环保"的"管、控、营"一体化。
物联网被世界上发达国家认为是第五次信息技术革命,中国自2009年8月由国务院提出"感知中国"以来,物联网被正式列为国家五大新兴战略性产业之一,写入"政府工作报告";并且以教育部主导,由高等院校加大对物联网人才的培养,以支持未来数万亿规模的物联网产业。
嵌入式类产品作为物联网产业的技术组成之一,像常见手机、PDA、机顶盒、高清电视(HDTV)、路由器、汽车电子、智能家电、医疗仪器、航天航空设备等等都是典型的嵌入式系统,也是物联网技术在消费类电子产品中的典型应用。
“嵌入式3G手机物联网应用实验室”是将在深圳物联网应用开发领域领先的高科技企业的最新技术,通过深圳市国家软件园这一平台,与国内高校进行紧密合作,在高校培养应用型的物联网研发技术人才,为深圳乃至全国的物联网产业提供优秀的技术人才。通过校企“产学研”合作,共建技术前沿实验室,不但满足物联网产业界的人才需求,也为合作高校进行特色专业和方向的学科建设做出了大力支持,为高校在高技术专业人才培养方面取得突出成绩奠定了坚实的科技基础!
二、教学内容
1、C语言与算法基础:
目标
掌握C语言与算法(如果在高校已经学习过本课程,可进行强化复习,笔试成绩达到96%以上即为合格。)
主要知识点
面向过程的结构化程序设计方法\C语言常量,变量,类型,表达式\函数和函数调用\指针与数组\数据结构基础及指针使用技巧\自定义数据类型,结构,枚举,联合\位字段与位检测\常用数据结构(堆栈、队列、链表、树等)查找\排序\C语言实现\C语言输入输出、文件操作
实验内容
阶段性测试和项目练习
2、标准C++
目标
掌握C++(如果在高校已经学习过本课程,可进行强化复习,笔试成绩达到96%以上即为合格。)
主要知识点
C++面向对象概述――类和对象\构造函数和析构函数\运算符重载\继承与派生\虚函数与多态性\C++流和文件操作\模板技术和STL\异常处理和名字空间\Unicode和字符串处理\阶段性测试和项目练习
实验内容
编写Hello,World程序\使用make命令编译程序\编写带有一个循环的程序\调试一个有问题的程序\编写汉诺塔程序
3、Linux 基础
目标
能够独立安装Linux操作系统;能够熟练使用Linux系统的基本命令;认识Linux系统的常用服务
主要知识点
Linux简介、安装\Linux文件系统\Linux常用命令\Linux启动过程详解\Shell编程概述\Vi/Vim编辑器的使用\Linux下C/C++程序编译(g++,gcc,makefile)\Linux下C/C++程序调试(gdb)\Linux文件系统和I/O\Linux进程和多线程\Linux网络编程基础
实验内容
安装Linux操作系统\Linux基本命令实践\设置Linux环境变量\定制Linux的服务\安装Linux操作系统\下载最新Linux源码,并解开至/usr/src目录下\修改SSH、FTP服务的端口号
4、Linux 下的 C/C++ 编程
目标
熟悉Linux系统下的开发环境 ;熟悉Gcc编译器 ;熟悉Makefile规则
主要知识点
linux C语言环境概述 \Gcc使用方法 \Gdb调试技术 \Autoconf \Automake \Makefile \代码优化
实验内容
编写Hello,World程序\使用 make命令编译程序\编写带有一个循环的程序\调试一个有问题的程序\编写汉诺塔程序
5、嵌入式系统中多线程程序设计
目标
熟悉线程的概念;能够编写简单的多线程程序
主要知识点
线程的基础知识\多线程编程方法 \线程应用中的同步问题
实验内容
编写一个多线程程序\思考嵌入式系统中使用多进程和多线程
6、嵌入式 Linux 网络编程
目标
熟悉嵌入式Linux网络体系结构;能够进行嵌入式Linux环境下的socket 编程
主要知识点
网络基础知识\嵌入式Linux中TCP/IP网络结构 \socket 编程 \常用 API函数 \分析Ping命令的实现
实验内容
使用socket 编写代理服务器 \使用socket 编写路由器(可选)\编写一个网络播放器(可选)
7、GUI 程序开发
目标
熟悉嵌入式系统常用的GUI ,能够进行QT编程
主要知识点
GUI基础 \嵌入式系统GUI类型 \编译QT \进行QT开发
实验内容
使用QT编写“Hello,World”程序 \调试一个加入信号/槽的实例 \通过重载QWidget 类方法处理事件
8、文件系统
目标
了解Linux系统的文件系统 ,了解嵌入式Linux的文件系统
主要知识点
虚拟文件系统 \文件系统的建立 \ramfs内存文件系统 \proc文件系统 \devfs 文件系统
实验内容
通过proc文件系统修改操作系统参数 \分析romfs 文件系统源代码\创建一个cramfs 文件系统
9、MTK mmi程序开发
目标
了解mtk平台软件体系架构,了解Nucleus OS,了解L1 协议栈, L2/L3协议栈,熟悉MMI GUI,熟悉嵌入式arm平台的编译环境搭建,熟悉MMI应用程序
主要知识点
嵌入式arm平台的编译环境搭\Mtk任务管理\Mmi资源加载\Mmi应用程序添加和设计\高级模板数据库,画管理与触摸事件\Mtk文件系统\mmi历史机制管理\事件处理机制\NVRAM读写\Android介绍
实验内容
显示一个简单hello,world程序\添加资源文件,包含添加字串、图像等\设计一个list menu控件\设计一个高级模板数据库
项目实战
目的:通过实际的项目开发,来获得实际的项目开发经验。
① Nokia N8系统设置模块
② 诺亚舟电子词典模块设计
③ 迅雷云计算物联网终端运算系统
④ IPhone 4俄罗斯方块升级版
⑤ 酷派3G手机来电卫士防火墙
10、MTK mmi程序开发
物联网3G移动终端业界8大主流平台阐述(windows mobile、symbian、android、MTK平台nucleus、linux、palm、mac、rim);MTK平台项目在其他主流平台的移植与开发(根据深圳软件园企业需求而定)。
三、公共教学内容
1、数据库课程
关系型数据库原理\SQL数据查询语言(DML DDL DCL)\索引\存储过程\触发器\游标\事务\函数
2、软件工程课程
面向对象(OO)的分析和设计(OOA&OOD)\统一建模语言(UML)\CMM基本概述、模型、实施。\软件工程实务\软件工程生命周期模型
四、职业规划
1)就业心态与职业素养训练
2)简历写作与项目描述
3)招聘企业岗位需求介绍
4)面试技巧训练(常见问题的应答)
5)模拟技术面试训练(项目阐述)
6)模拟综合面试训练
深圳国家软件园
国家火炬计划软件产业基地
深圳软件产业人才实训基地
2011年04月