《软件工程介绍》PPT课件.ppt
,课程介绍,2,软件工程 Software Engineering,欢迎大家进入“软件工程”课程的学习,首先我们来简单了解一下本课程,课程介绍,4,软件工程师的职业发展,年轻白领阶层小康了吗 据大致估计,上海、北京等发达城市的软件白领平均年薪为10万元左右。如果进一步细分的话,年薪5万元左右的称为灰领,年薪20万元以上的称为金领 可是面对高昂的房价和不低的物价,恐怕年薪10万元左右的人才有胆量谈小康。大部分白领人士将和农民一样,不得不为小康而长期奋斗,课程介绍,5,软件工程师的职业发展,我们是否要一辈子编程?编程这活儿可以算是青春饭合适的年龄是20至30岁之间20来岁在大学里学编程,虽然刚开始时水平比较臭,但是学习劲头很足,进步比较快到25岁左右时编程技能、编程效率达到高峰之后,编程水平基本停滞不前,但是编程效率逐渐下降,到30岁左右已经不是编程主力军了,课程介绍,6,软件工程师的职业发展,30岁的程序员的劣势软件技术更新快,年轻人学习能力更强30岁面临的家庭事务比较多,压力大,课程介绍,7,一则新闻的启示,上海一名36岁的软件工程师跳楼身亡。该工程师就职于一家日本软件公司,月薪一万,去年夏天该工程师为了结婚,贷款80万买入一套108平米的婚房,12000元每平米,现房,去年10.1他与自己刚认识半年的恋人,24岁的漂亮售货员结婚了。婚后为了让自己年轻貌美的媳妇过上更加幸福的日子,为了每月按时还银行7000多的贷款,他每天都更加努力加班加点地工作。天有不测风云,由于这家日本公司业绩下滑,公司做出了裁员三分之一的决定。虽然他工作积极,技术也不错,但由于一直只是一名技术人员,加上年龄过大,还是无情的被公司于今年7月份辞退。屋漏又逢连夜雨,由于他性格木呐,年龄已经超过35岁,连续3个月也没有找到一个能月薪一万的工作,最后连8000也没有公司愿意聘用他。当售货员的妻子当时也是爱上了他的房子和不错的工作,自己工资也不多,看到他长时间的找不到工作,不仅没有安慰他鼓励他,反而整天唠叨数落甚至谩骂他,还一直喊闹着要离婚。他当时也想过把房子卖掉,众所周知,上海前几年的房价已经出现了大量泡沫,他当时买入时的房价几乎是最高点,在国家的调控下,房价逐渐回调朝合理的价位回归,现在的房价只值9000元每平左右,让他心理极度懊恼。在失业、婚变、还贷的多种压力下,精神恍惚的他终于承受不了这突如其来的一切,于2006-11-5深夜从自家的阳台上跳了下去.,课程介绍,8,软件工程师的职业发展,程序员30岁了干什么?30岁唯一见长的是经验和资历如果年长的程序员不能在软件工程和项目管理方面发挥优势,则他的前途可能比较黯淡,课程介绍,9,软件工程师的职业发展,软件白领的常规职业发展第一阶段,做个职业程序员,主要工作是编程、测试和维护,领导让他干啥就干啥第二阶段,成为项目经理或同等级别的技术负责人,从事项目管理、需求分析、系统设计之类的工作,带领一批程序员干活第三阶段,成为机构(企业或部门)的领导,成天琢磨怎样让机构赚更多的钱,决定产品的发展战略,然后让别人去开发,课程介绍,11,成才要素:从企业招聘来看,ATC-Software Design EngineerBachelor,Master or PhD degree in computer science or related disciplines.Strong analytical,design,implementation,debugging and testing skills required.Proficiency in C+is required.Proficiency in C#or web page design is a big plus.Strong oral and written communication skills are required in both English and Chinese.Positive attitude and team work oriented required.Experience with Windows APIs,COM,and.Net technologies is a big plus,课程介绍,12,成才要素:从企业招聘来看,MSRA-Program ManagerBA/MS in Computer Science or related technical discipline is required.Good understanding of software development and testing cycles;Great communication skills in both oral and written English;Strong program management skills,track record of working with highly talented teams;Excellent cross-team skills and results oriented;,课程介绍,13,成才要素:为事业而学习,为事业而学习 一般地讲,除了运气之外,知识技能决定了事业状况,因此要懂得为了事业而学习根据事业的目标,确定对应的知识结构,有目的有步骤地学习重视基础知识,同时兼顾事业目标向错误和失败学习,形成良性循环,课程介绍,14,成才要素:为事业而学习,真才实学优于学历 在十几年前学术还比较纯洁的年代,学历代表着学问,高学历者受人敬仰。然而世风日下,如今市场上到处可见假冒伪劣产品,同样,中国大学也大量生产假冒伪劣的人才学生毕业之际,谁都想找一份好的工作。对于IT相关专业而言,90以上的学生要到企业工作,因为只有企业才能接纳千军万马。大量的硕士生和博士生学了一身的屠龙之技,精通了纸上谈兵,可是企业不欣赏屠龙之技,更加讨厌纸上谈兵,课程介绍,15,成才要素:为事业而学习,企业对毕业生的一些看法:有23年工作经验的名牌大学本科生是干活的主力军,他们正当青春、干劲十足、不摆架子、不耻下问、要求不高、奉献甚多。可见国内名牌大学的本科教育相当好,令人放心名牌大学的硕士生却是鱼龙混杂。究其原因是,有半数以上的硕士是改行或者其它学校考过来的,专业基础很差,所以这类硕士生不如本科生好用按照目前国内大学教育的水准,根本没有能力培养如此多的博士生。很多博士尽干些自欺欺人的学问,真本事没学多少,倒学会“眼高手低”甚至“弄虚作假”;毕业时学问既不深也不博,被企业拒之门外后,蓦然回首,发觉青春已被虚度,心灵已呈老态,课程介绍,16,成才要素:锲而不舍,从错误中学习,锲而不舍的精神成功的软件开发还需要不断探索和永不服输的精神案例1微软的一位产品经理去参加一个颁奖大会。这次大会一共要颁10项奖,结果微软的这个产品得了9项。这位经理回来后马上把这个喜讯用email发给了大家,结果他收到了40份回复,都是在问他:“我们没有获得的那个奖项是什么?”,课程介绍,17,案例2微软副总裁Jon Devaan说过:“If you fire the person who failed,you are throwing away the value of the experience.”在他看来,失败也是一种经验,成才要素:锲而不舍,从错误中学习,课程介绍,18,案例3比尔.盖茨的技术顾问、微软高级副总裁Graig Mundie在加入微软之前,是一家软件公司的CEO,但是该公司运营的非常糟糕,最后破产。正是这个原因,比尔.盖茨将他招聘到了微软,因为他失败过,他才知道失败的滋味,并可以从中吸取教训。微软借助他的经验,就可以避免同样的错误,成才要素:锲而不舍,从错误中学习,课程介绍,19,成才要素:主人翁精神,案例1:“Microsoft News”微软内部有一个刊物“Microsoft News”,居然有人在上面讨论厕所的手纸:“我发现公司厕所里的手纸每天还没有用完,第二天就被换成新的了,不知道那些没有用完的手纸都到哪里去了这是很大的浪费!”“之所以每天都换是害怕用着用着不够了”“没用完的并没有浪费,都捐献给XXX了”,课程介绍,20,成才要素:主人翁精神,案例2:“配股权Stock Options”很多公司都会根据员工的资历、能力等情况分配给他一定的公司股票这种机制的目的是使得每个员工都有和公司荣辱与共的感觉,课程介绍,21,成才要素:团队精神,团队精神现代软件开发早已不是单打独斗的个人英雄主义的时代需要学会与人合作、整合一切资源、懂得和人交流、互相帮助,课程介绍,22,成才要素:团队精神,案例:“一名博士在微软的面试”有一名毕业于国内顶尖大学的博士生去微软面试,面试官问及他的导师,他却指责起了自己的导师“我这辈子犯的最大错误就是找了这样一位导师,他不仅没有时间,也根本不花时间来指导我,完全靠我自己来研究”面试官听完这番话,马上就做出了决定,并且向后面几位面试官建议“此人不能用”,课程介绍,23,成才要素:团队精神,面试官如此解释:“我并不在意到底是这位博士生对还是他的导师对,我更看重的是:你在学习、工作中,能不能跟和你意见不一致的人一起工作,能不能保持宽容的心态。”“因为人与人的思维方式是不一样的,你在工作中肯定会遇到和你意见不一致的人。如果你只是坐在那里抱怨别人,是一点用也没有的”,课程介绍,24,成才要素:提高表达能力,提高表达能力表达能力主要是指“写”和“说”的能力表达能力低下是中国软件开发人员的通病很多软件开发人员怕写文档和报告,讲述问题和想法时语无伦次。由于表达能力差,他就无法胜任需求开发、系统设计、管理等高层次的工作。即使他的技术水平很高,但发挥不出来有什么用?只好长期干编程、测试的活儿,课程介绍,25,成才要素:提高管理能力,提高管理能力搞技术主要用脑,搞管理主要用心技术才能取决于IQ而管理才能取决于EQ技术出身的人员并不见得一辈子都要搞技术,他将来有可能成为中高层的经理,也有可能成为优秀的企业家保守一点讲,先搞技术,拥有一技之长后再逐步转向管理,是一种稳扎稳打的职业发展模式,课程介绍,26,成才要素:提高管理能力,如何提高管理能力 要有当领导的愿望要有自学成才的信心技术出身的人,他的智商是足够学习管理了,因为没有哪本管理学书籍比高等数学还难学习管理并不需要专门去读MBA这类学位,不少大企业家没有读过大学,照样可以指挥千军万马。如果你有比较高的悟性和EQ,完全可以自学成才成为管理专家,课程介绍,27,成才要素:提高管理能力,正确地学习基础管理知识软件团队的专门管理学问:国际项目管理协会(PMI)研制的“项目管理知识体系”(PMBOK)卡内基梅隆大学软件工程研究所(CMU/SEI)研制的“软件能力成熟度模型”(CMM/CMMI)从项目经理做起如果你想在将来成为企业的领导,最好从项目经理做起“在当将军之前,应该先当好班长”,课程介绍,28,小结、思考,思考请你和亲戚、朋友们交谈他们所在城市的软件白领现状,他们对自己的状况满意吗?你如何把握自己的未来?规划你的职业发展路线,描绘适合自己的知识结构,制定学习计划并立即行动你对自己个方面的能力满意吗?你是否意识到这些能力对你职业发展的影响?请设法在日常生活中有意识地锻炼自己,课程介绍,29,一些不正确的观点,观念之一:我们拥有一套讲述如何开发软件的书籍,书中充满了标准与示例,可以帮助我们解决软件开发中遇到的任何问题 我们拥有最好的开发工具、最好的计算机,一定能做出优秀的软件如果我们落后于计划,可以增加更多的程序员来解决 既然需求分析很困难,不管三七二十一先把软件做了再说,反正软件是灵活的,随时可以修改,课程介绍,31,内容结构,绪论:软件、软件工程、软件过程,项目管理,结构化方法,面向对象方法,CASE工具,设计,实现,分析,课程介绍,32,关于本人,徐毅江南大学物联网工程学院计算机系Email:,课程介绍,33,参考资料,软件工程导论第四版张海藩著清华大学出版社国内的经典内容比较全面但是有点儿陈旧面向对象部分有点儿杂乱,课程介绍,34,参考资料,软件工程实践者的研究方法第6版Roger S.Pressman机械工业出版社国外20年之经典优点:内容新颖、全面缺点:不够深入,课程介绍,35,参考资料,常用网址UML软件工程组织:IT之源:UML之源:系统/软件工程研究与实践论坛 软件工程协会:搜索引擎:,课程介绍,36,课程特点及对策,理论多且空洞、脱离实际原因:课堂教学对策:案例化不受重视没有听不懂的,只有不照做的原因:学校不是公司,口服心不服对策:走着瞧,课程介绍,37,课程特点及对策,内容陈旧原因:技术发展太快对策:删除过时且不重要的内容补充大量流行的方法、技术和CASE工具6个热门专题、10个CASE工具过于偏向技术软件工程不仅仅是技术,还有管理对策:加强管理知识、观念的介绍,课程介绍,38,课时安排,总学时56=4*16周=44理论+12上机理论第111周上机第1214周课程设计大约在考试后2周,具体待通知,课程介绍,39,