Introduction to Software Engineering 软件工程 导论 Prof. Mei Hong 洪玫 College of Computer Science and Software Engineering 四川大学计算机学院(软件学院) Office: B510, Second Laboratory Building, Jiangan Campus B306, Fundamental Teaching Building, Wangjiang Campus Tel: (028) (O), (028) (O) Cell Phone:
Introduction to the Course
Question: 1.Why do I need to learn software engineering? To improve your capacity and skill…… To be a software engineer or a IT engineer…… To Change your life ……
The Relationship with Other Courses di 离散数学数据结构与算 法 操作系统计算机网络 软件工程 计算机系统导 论 C 语言程序设计 程序设计基础面向对象程序设计导 论 数字逻辑 : 应用与设计 计算机体系结 构 离散数学数据结构与算 法 操作系统计算机网络 软件工程 计算机系统导 论 C 语言程序设计 程序设计基础面向对象程序设计导 论 数字逻辑 : 应用与设计 计算机体系结 构 系统级编程数据库系统 软件架构 离散数学数据结构与算 法 操作系统计算机网络 软件工程 计算机系统导 论 C 语言程序设计 程序设计基础面向对象程序设计导 论 数字逻辑 : 应用与设计 计算机体系结 构 软件需求分析软件质量保证与测试软件构造软件过程与管理
Job in Software Engineering 应用软件开发: 分析、设计和实现 ; 软件开发服务和管理: 系统集成和测试、系统维护、技术支持、市场营销、 软件项目管理等 ; 软件应用领域服务 ; 软件工程领域学术研究、教育、咨询 ; 其它
2014 Top 10 Best Jobs in U.S.A. 1. 数学家( Mathematician ) 2. 教授( University Professor ( Tenured ) 3. 统计师( Statistician ) 4. 精算师( Actuary ) 5. 听力学专家( Audiologist ) 6. 牙科保健员( Dental Hygienist ) 7. 软件工程师( Software Engineer ) 8. 计算机系统分析师( Computer Systems Analyst ) 9. 职业治疗师 ( Occupational Therapist) 10. 语言病理专家 ( Speech Pathologist) - 美国就业网站 “CareerCast”
2014 Top 10 Best Jobs in China 1. 销售 ( 顾问型销售 ) 2.IT 工程师 3. 建筑设计师 4. 高级技师 5. 公务员 6. 职业经理人 7. 人力资源总监 8. 投资经理 9. 咨询业项目经理 10. 律师 - 前程无忧
Top 10 Things Every Software Engineer Should Know 1)Fundamentals of Emotional Intelligence (情感智能) 2)Understand the Business of your Customer 3)Minimum One Programming Language for each Mainstream Development Paradigm (主流开发模式) 4)Know your Tools 5)Standard Data Structures, Algorithms and Big-O-Notation 6)Don’t Trust Code without Adequate Test 7)Basics of Project Management, Lean Management and Agile Concepts 8)Key Metrics of Software Development 9)The Root Cause of the Last Defect 10)Understand the Infrastructure By Markus Sprunck
Question: 2.What should I learn from this course? In brief, you will learn how to develop software with tools. You will know what’s difference between programming and development. Further, you will learn how to think and to solve problem.
Course Content Unit 1 Introduction Unit 2 Process Models Unit 3 Requirements Engineering Unit 4 Building the Analysis Modeling & UML Unit 5 Design Concepts and Principles Unit 6 Architectural Design Unit 7 Component-level Design Unit 8 User Interface Design Unit 9 Software Testing Strategies and Techniques Unit 10 Introduction to Web Engineering
Course Information 课程名称:软件工程导论( Introduction to Software Engineering ) 课程性质:专业必修课程 学分: 4 学分 学时: 64 时 开设学期:大学二年级秋季学期 开设对象:本科 先行课程: C 语言程序设计,面向对象程序设计导论 课程考核:平时作业( 20% ) + 课堂参与( 10% ) + 实验( 20% ) + 期中考试成绩( 10% ) + 期末考试成绩( 40% ) 工具和环境: Project2007 , Rational Rose/MS Visio 2003 , MS Office 2003 , VC++/Eclipses , Junit / Boundscheck , CVS , etc. 教材:《 Software Engineering--A Practitioner ‘ s Approach 》 ( 《软件工程 —— 一个实践者的方法(第 7 版)》)
Question: 3.Who are professor and teaching assistant? 教师姓名联系电话邮件地址答疑时间 洪玫 QQ: edu.cn 周二 13:00 ~ 14:00 何洋(助教) QQ: m 周二 13:00 ~ 14:00
Question: 4.When do we have course exam? Middle Exam ( week 8 ) Final Exam ( week 18 ) Quiz In the class, anytime
Question: 5.How do I learn this course well? There are two ways to study: (1) 学习的最好但又最困难的方法是,去除自我的戒备,去理解 另外的一个人; (2) 学习的另外一种方法是陈述我自己的不确定性,试图讲清楚 我的困惑。 - 卡尔 · 兰塞姆 · 罗杰斯, 美国人本主义心理学代表人物 Read More and Learn More Time Makes a Difference – Hard Work Stay Hungry. Stay Foolish.
Participation in Class To be active! 课前阅读、准备; 课堂出勤 ( 课堂签到, 缺勤 30% 以上不得参加期末考试 ) ; 做笔记 (教材、讲义、笔记本、纸、笔); 课堂讨论、交流、回答问题; 课堂小测验; 课堂报告; 课程网站互动参与; 其它;
Homework Submission 文档命名:学号 - 姓名 - 章节号; 文档格式:.DOC 或.PDF ; 提交时间:每周周二之前,提交网站: 提醒: 杜绝作业抄袭,一旦发现,平时成绩一律按照 0 分处 理; 按时提交作业, 无特殊情况不得补交作业 ;
Question: 6.Where do I find resource to study this course?
课程网站 四川大学课程中心: 课程: 软件工程(英语) / 软件工程(洪玫) 教材学习网站: 要求本周内在课程网站内注册!
Reference Book 1. Object-Oriented and Classical Software Engineering ,英文版, 【美】 Stephen R. Schach 机械工业出版社, 《个体软件过程》 【美】 Watts S. Humphrey 著 人民邮电出版 社 3. 《快速软件开发》 【美】 Steve McConnell 著 电子工业出版社 4. 《软件工程 Java 语言实现》 【美】 Stephen R. Sehach 著 机械 工业出版社 5. 《人月神话》【美】 Frederick P. Brooks. Jr. 著,清华大学出 版社 6. 《人件》【美】 Tom DeMarco,Timothy Lister 著,清华大学出 版社 7. 《最后期限》 【美】迪马可,清华大学出版社
网站资源
课程参考文献 全球最有影响力的软件工程期刊: Transactions on Software Engineering ( IEEE ) Software ( IEEE ) Software Engineering Notes ( ACM Special Interest Group ) Transactions on Software Engineering and Methodology ( ACM ) The Journal of Systems and Software ( Elsevier ) Proceedings of the International Conference on Software Engineering ( ACM / IEEE ) Proceedings of the International Conference on Software Maintenance ( IEEE ) Software Maintenance: Research and Practice ( Wiley )