第1章 软件工程概述
• 管理信息系统(MIS)
• 按功能分为
– 系统软件:OS,DBMS – 支撑软件():开发工具 – 应用软件
软件:分类
• 按规模分为
– 微型,小型,中型,大型
• 按客户范围
– 通用软件:如操作系统 – 用户定制的软件:如电信业务支撑系统
• 按工作方式
– 实时系统(工业控制) – 交互系统(常用) – 批处理系统(少)
绪论:课程的基础
• 计算模式的演变
– – – – – Frame(主机) Client/Server Browser/Server RIA(昙花一现),HTML5 App(手机应用软件)
• application
绪论:课程的安排
• 教学内容与课时安排 56+16 – 第1章 软件工程概述,3 课时 – 第2章 软件过程,6 课时 – 第3章 MDA软件范型, 3(实验+3) 课时 – 第4章 业务模型, 6(+9) 课时 – 第5章 系统需求模型(CIM),12(6+6) 课时 – 第6章 鲁棒分析模型(PIM),14(8+6) 课时 – 第7章 设计模型(PSM),12(6+6)课时
– High-level languages are compiled or interpreted into machine language object code. – Software may also be written in a low-level assembly language, essentially, a vaguely mnemonic (依稀 记忆 )representation of a machine language using a natural language alphabet.
绪论:课程的基础
• 语言基础
– C(C++、C#)/JAVA,HTML5
• 工具基础
– 编码 Eclipse – 框架 JAVA EE – 设计工具 Powerdesigner,Erwin,starUML,EA
• 推荐下载starUML,EA
• 数据库理论与应用基础
– 设计与优化数据库表模式 – SQL – 10多年前的论文:大型数据库优化设计方案,2001年
– –
•
Malicious software or malware, computer software developed to harm and disrupt computers. As such, malware is undesirable. Malware is closely associated with computer-related crimes, though some malicious programs may have been designed as practical jokes.
产品。 • Computer software contrasts with computer hardware,
– hardware.
– Computer software, or simply software, is the non-tangible 形状 component of computers. – Software is stored in computer memory and cannot be touched, just as a 3D model shown in an illustration cannot be touched.软件是一种逻辑
– Operating system, an essential collection of computer programs that manages resources and provides common services for other software. Supervisory programs, boot loaders, shells and window systems are core parts of operating systems. In practice, an operating system comes bundled with additional software (including application software) so that a user can potentially do some work with a computer that only has an operating system. Device driver, a computer program that operates or controls a particular type of device that is attached to a computer. Each device needs at least one corresponding device driver; thus a computer needs more than one device driver. Utilities, software designed to assist users in maintenance and care of their computers.
*绪论:虚拟项目(第三周起)
• 分成5组,每组设1组长:
– 互联网+O2O医疗系统
绪论:课程的目的
• 目的:理解、掌握和应用 • 理解
– 是什么?为什么? – 问题是什么?理论与方法是什么?
•• 应用
– 在过程中,目的在于成功地开发软件
• 高质量、低费用、按进度……
绪论:课程的目的
• 目的:达到学以致用
– 讲解一种软件过程范型(MDA), – 熟悉一种建模语言(UML) – 学会一、两种工具(EA与starUML), – 实践一个虚拟项目(分组), – 应用一种编程语言(JAVA)。
绪论:教学目的和策略
• 策略:系统地介绍软件工程理论与实践技能
–基于MDA软件范型 –采用面向对象方法和UML建模语言 –*以starUML、EA为工具,以虚拟项目为导向;
• (OO原理与模式)*模型优化 0+2课时
– 第8章 系统用例驱动的软件测试 3课时(1含复习) – *第9章 软件工程新技术 6 课时 (0) – *实施模型与物理组织 1课时
绪论:课程的安排
• *实验教学内容:
– – – – – – 1 虚拟项目安排 工具安装与试用 2-3 基于虚拟项目的业务建模 4-5 基于虚拟项目的系统需求建模 6-7 基于虚拟项目的鲁棒建模 8-9 基于虚拟项目的设计建模 10-11 模型优化
• Physical equipment used to process, store, or transmit computer programs or data. • The physical component of computers.
– Computer hardware and software require each other and neither can be realistically used without the other.
• 软件
– 定义、分类与应用 – 语言、特征与开发与危机
• 成本与质量:问题所在
• 软件工程学科的诞生与发展
软件:定义
• 软件
– 早期:软件=代码! – 程序、数据及相关文档的完整集合(《IEEE 软件工程术语标 准词汇》)
• software: Computer programs, procedures, and possibly associated documentation and data pertaining to the operation of a computer system.
软件:定义
• Computer software includes all computer programs regardless of their architecture; for example, executable files, libraries and scripts are computer software. Yet, it shares their mutual properties: software consists of clearly-defined instructions that upon execution, instructs hardware to perform the tasks for which it is designed. • Software is usually written in high-level programming languages that are easier and more efficient for humans to use (closer to natural language) than machine language.
绪论:课程的评估与考试
• 期末考试,70%
– 期中考试, 0%
• 平时成绩,30%
– *课堂表现(虚拟项目),15% – *考勤(与作业),15%
• 要求不能旷课。
绪论:课程的要求
• 听课与复习
– *作业
• *实践
– 分组虚拟项目
• 阅读
– 课件简本与参考资料
软件:定义
• 软件的重要性
– – – – 软件与民生 软件与经济 软件与教育 软件与国防、战略
软件:分类
• • • Purpose, or domain of use Application software uses the computer system to perform useful work or provide entertainment functions beyond the basic operation of the computer itself. System software is designed to operate the computer hardware, to provide basic functionality, and to provide a platform for running application software.[3] System software includes: