软件工程(研究生)全册配套课件3.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《软件工程(研究生)全册配套课件3.ppt》由用户(罗嗣辉)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 研究生 配套 课件
- 资源描述:
-
1、软件工程软件工程(研究生研究生)全册配套课件全册配套课件3National Engineering Center for CADSoftware EngineeringHuazhong University of Science and TechnologyNational Engineering Center for CADDr. Liu QChapter 1:IntroductionObjectives: to introduce software engineering and to provide a framework for understanding software engin
2、eering. pUnderstand what software engineering is and why it is important;pUnderstand that the development of different types of software systems may require different software engineering techniques;pUnderstand some ethical and professional issues that are important for software engineers;pBe introd
3、uced to three systems, of different types, that will be used as examples throughout the book.History of software engineeringoThe notion of software engineering was first proposed in 1968 at a conference held to discuss what was then called the software crisis.oIt became clear that individual approac
4、hes to program development did not scale up to large and complex software systems. These were unreliable, cost more than expected, and were delivered late.oThroughout the 1970s and 1980s, a variety of new software engineering techniques and methods were developed, such as structured programming, inf
5、ormation hiding and object-oriented development. Tools and standard notations were developed and are now extensively used.Contents1. Professional Software Development2. Software engineering ethics3. Case StudySoftware and software engineering1.We cant run the modern world without software.2.Software
6、 systems are abstract and intangible. They are not constrained by the properties of materials, governed by physical laws, or by manufacturing processes. This simplifies software engineering. 3.Software systems can quickly become extremely complex, difficult to understand, and expensive to change.4.T
7、here are many different types of software systems, from simple embedded systems to complex, worldwide information systems. It is pointless to look for universal notations, methods, or techniques for software engineering because different types of software require different software engineering techn
8、iques.Software FailuresSoftware failures are mainly consequence of two factors:1.Increasing demands and Changing demandsSystems have to be built and delivered more quicklyLarger, even more complex systems are requiredSystems have to have new capabilities that were previously thought to be impossible
9、.Existing software engineering methods cannot cope and new SE techniques have to be developed to meet these new demands.2.Low expectationsIt is relatively easy to write computer programs without usingsoftware engineering methods and techniques. Many companies have drifted into software development a
10、s their products and services have evolved. They do not use software engineering methods in their everyday work.1.1 Professional software developmentnLots of people write programs.nProfessional software, intended for use by someone apart from its developer, is usually developed by teams rather than
11、individualsnSoftware engineering is intended to support professional software development rather than individual programming.Some frequently asked questions (FAQs) about software engineering are list in the following page.FAQs about software engineeringQuestionAnswerWhat is software?Computer program
12、s and associated documentation. Software products may be developed for a particular customer or may be developed for a general market.What are the attributes of good software? Good software should deliver the required functionality and performance to the user and should be maintainable, dependable a
13、nd usable.What is software engineering?Software engineering is an engineering discipline that is concerned with all aspects of software production.What are the fundamental software engineering activities?Software specification, software development, software validation and software evolution.What is
14、 the difference between software engineering and computer science?Computer science focuses on theory and fundamentals; software engineering is concerned with the practicalities of developing and delivering useful software.What is the difference between software engineering and system engineering?Sys
15、tem engineering is concerned with all aspects of computer-based systems development including hardware, software and process engineering. Software engineering is part of this more general process.What are the key challenges facing software engineering?Coping with increasing diversity, demands for re
16、duced delivery times and developing trustworthy software.What are the costs of software engineering?Roughly 60% of software costs are development costs, 40% are testing costs. For custom software, evolution costs often exceed development costs.What are the best software engineering techniques and me
17、thods?While all software projects have to be professionally managed and developed, different techniques are appropriate for different types of system. For example, games should always be developed using a series of prototypes whereas safety critical control systems require a complete and analyzable
18、specification to be developed. You cant, therefore, say that one method is better than another.What differences has the web made to software engineering?The web has led to the availability of software services and the possibility of developing highly distributed service-based systems. Web-based syst
19、ems development has led to important advances in programming languages and software reuse.Two kinds of software productso Generic products These are stand-alone systems that are produced by a development organization and sold on the open market to any customer who is able to buy them.The organizatio
20、n that develops the software controls the software specification.o Customized (or bespoke) productsThese are systems that are commissioned by a particular customer.The specification is usually developed and controlled by the organization that is buying the software.o An important difference between
21、the twoDistinction is becoming blurredoMore and more systems are now being built with a generic product as a base, which is then adapted to suit the requirements of a customer.oEnterprise Resource Planning (ERP) systems, such as the SAP system, are the best examples of this approach. oHere, a large
22、and complex system is adapted for a company by incorporating information about business rules and processes, reports required, and so on.Attributes of good softwareProduct characteristicDescriptionMaintainabilitySoftware should be written in such a way so that it can evolve to meet the changing need
23、s of customers. This is a critical attribute because software change is an inevitable requirement of a changing business environment.Dependability and securitySoftware dependability includes a range of characteristics including reliability, security and safety. Dependable software should not cause p
24、hysical or economic damage in the event of system failure. Malicious users should not be able to access or damage the system.EfficiencySoftware should not make wasteful use of system resources such as memory and processor cycles. Efficiency therefore includes responsiveness, processing time, memory
25、utilisation, etc.AcceptabilitySoftware must be acceptable to the type of users for which it is designed. This means that it must be understandable, usable and compatible with other systems that they use. 1.1.1 Software engineeringoDefinition: an engineering discipline that is concerned with all aspe
展开阅读全文