软件工程概论1、软件危机北软论.x(q%V0w1)、软件工程的目的:倡导以工程的原理、原则和方法进行软件开发,以解决当时出现的软件危机。2)、软件危机:指在计算机软件开发和维护过程中所遇到的一系列问题。readygo.5d6d.com2D(h3S5a,OA、如何开发软件以满足对软件日益增长的需求。B、如何维护数量不断增长的已有软件。readygo.5d6d.com"q!L&k)g(Be3)、软件危机的主要表现形式北京大学软件A、软件开发成本高,研制进度无法准确估计,用户不满意。B、软件产品的可靠性得不到保证。C、软件产品难以维护。D、软件发展跟不上硬件的发展和用户的要求,硬件成本逐年下降,软件成本越来越昂贵。'P4F.f&h/A6c&U*I3B一个专注于北京大学软件与微电子学院软件工程硕士考研的论坛,绝对不会让你失望!%S*a"z:Y-d5E2、软件工程概念1)、软件:计算机系统中的程序及其文档。程序是计算任务的处理对象和处理规则的描述;文档是为了便于理解程序所需的阐明性资料。细言之,软件有三层含义:携手北软/y*z-H0]1k&MA、个体含义:即指计算机系统中的程序及其文档。一个专注于北京大学软件与微电子学院软件工程硕士考研的论坛,绝对不会让你失望!-y*e6g'\"VB、整体含义:即指在特定计算机系统中所有上述个体含义下的软件的总称。C、学科含义:即指在研究、开发、维护以及使用前述含义下的软件所涉及的理论、方法、技术所构成的学科。北京2)、工程:将理论和所学的知识应用于实践的科学。研4@4t#f3X9[2^;\3)、软件工程:应用计算机科学、数学及管理科学等原理,开发软件的工程。它借鉴传统工程的原则、方法,以提高质量,降低成本为目的。其中,计算机科学、数学用于构造模型与算法,工程科学用于制定规范、设计范型、评估成本及确定权衡,管理科学用于计划资源、质量、成本等管理。3、软件工程框架(参见附图软件工程框架示意图)1)、软件工程目标:生产具有正确性、可用性和开销合宜的产品。A、正确性:是指软件产品达到预期功能的程度。}0T#f%j5e;?B、可用性:是指软件基本结构、实现以及文档为用户可用的程度。C、开销合宜:是指软件开发、运行的整个开销满足用户要求的程度。2)、软件开发活动:生产一个最终满足需求且达到工程目标的软件产品所需要的活动。软件开发的基本活动包括:需求、设计、实现、确认、和支持。北京大学软件工程硕士|MSE|北京大学软件与微电子学院|北软论坛'i$]5]6E-o4D+yA、需求:就是定义问题。B、设计:在需求的基础上,给出被建系统的软件设计方案。C、实现:在软件设计的基础上,编码被建系统软件体系结构中的每一模块或构件。D、确认:需求复审、设计复审及程序测试。一个专注于北京大学软件与微电子学院软件工程硕士考研的论坛,绝对不会让你失望!Q$k:I,}/h8z!c5s'sE、支持:为系统的运行提供纠错性维护和完善性维护。北软论坛,北京大学软件与微电子学院,PKU,MSE,北软,携手北软,北京大学,北京大学软件学院,北京大学微电子与软件学院,北京大学软微学院,北大软院,软院,工程硕士,北大工程硕士,软件工程硕士,北京大学软件工程硕士,北大软件工程硕士,北软护航,考研,北软考研)D*A;};|'s-U9o3)、软件工程原则:围绕软件开发,提出了以下基本原则。A、选取适宜的开发范型:在系统设计中,经常需要权衡软件需求、硬件需求以及其它因素之间的相互制约和影响,适应需求的易变性。选用适宜的开发范型,以保证软件开发的可持续性,并使最终的软件产品满足客户的要求。(M'I&E8y5x9P/E2kB、采用好的设计方法:在软件设计中,通常需要考虑软件的模块化、信息隐蔽、局部化、一致性以及适应性等问题。采用合适的设计方法,支持这些问题的解决和实现。readygo.5d6d.com%?+`'h7g/~8x$q)N7MC、提供高质量的工程支持:如其它工程一样,需要提供高质量的工程支持,例如配置管理、质量保证等,才能按期交付高质量的软件产品。7H1w(J#x)O/~7v4P6Q&z*e4?D、有效的软件工程管理:软件工程的管理,直接影响可用资源的有效利用,提高软件组织的生产能力。仅当对软件过程实施有效管理时,才能实现有效的软件工程。readygo.5d6d.com5J6b'w&b*k4)、软件工程学科研究的内容:软件开发模型、软件开...