书签 分享 收藏 举报 版权申诉 / 233
上传文档赚钱

类型软件工程(研究生)全册配套课件3.ppt

  • 上传人(卖家):罗嗣辉
  • 文档编号:2037201
  • 上传时间:2022-01-15
  • 格式:PPT
  • 页数:233
  • 大小:5.40MB
  • 【下载声明】
    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

    26、cts of software production from the early stages of system specification through to maintaining the system after it has gone into use.oTwo key phases:nEngineering discipline Engineers make things work. They apply theories, methods, and tools where these are appropriate. Engineers also recognize that

    27、 they must work to organizational and financial constraints.nAll aspects of software production Software engineering is not just concerned with the technical processes of software development. It also includes activities such as software project management and the development of tools, methods, and

    28、theories to support software production.Why software engineering is importantoIndividuals and society rely on advanced software systems. We need to be able to produce reliable and trustworthy systems economically and quickly.oIt is usually cheaper, in the long run, to use software engineering method

    29、s and techniques for software systems rather than just write the programs as if it was a personal programming project. For most types of systems, the majority of costs are the costs of changing the software after it has gone into use.Software processo A software process is a sequence of activities t

    30、hat leads to the production of a software product.o Four fundamental activities common to software processes.n Software specification, where customers and engineers define the software that is to be produced and the constraints on its operationn Software development, where the software is designed a

    31、nd programmed.n Software validation, where the software is checked to ensure that it is what the customer requires.n Software evolution, where the software is modified to reflect changing customer and market requirements.1.1.2 Software engineering diversityoNo universal software engineering methods

    32、and techniques that are suitable for all systems and all companies.oThe most significant factor in determining which software engineering methods to be used is the application type that is being developed.nStand-alone applications CAD programs, etc.nInteractive transaction-based applicationsnEmbedde

    33、d control systems Software in mobile phonenBatch processing systems Periodic billing systemsnEntertainment systemsnSystems for modeling and simulationnData collection systemsnSystem of systemsSoftware Engineering fundamentalsoThey should be developed using a managed and understood development proces

    34、s.oDependability and performance are important for all types of systems。oUnderstanding and managing the software specification and requirements (what the software should do) are important.oYou should make as effective use as possible of existing resources.1.1.3 SE and the WebThe development of the W

    35、orld Wide Web has had a profound effect on all of our lives.oThe software was deployed on a web server. This made it much cheaper to change and upgrade the software.oThe next stage in the development of web-based systems was the notion of web services.oThe notion of software as a service has been de

    36、veloped. It has been proposed that software will run on computing clouds that are accessed over the Internet. oThe advent of the web has led to a significant change in the way that business software is organized.Changes of Web-based systems are engineered1.Software reuse has become the dominant appr

    37、oach for constructing web-based systems.2.It is now generally recognized that it is impractical to specify all the requirements for such systems in advance.oUser interfaces are constrained by the capabilities of web browsers. Web forms with local scripting are more commonly used. Application interfa

    38、ces on web-based systems are often poorer.1.2 Software Engineering ethicsSoftware engineering is carried out within a social and legal framework. there are areas where standards of acceptable behavior are not bound by laws but by the more tenuous notion of professional responsibility. Some of these

    39、are:oConfidentiality You should normally respect the confidentiality of your employers or clients irrespective of whether or not a formal confidentiality agreement has been signed.oCompetence You should not misrepresent your level of competence.oIntellectual property rights You should be aware of lo

    40、cal laws governing the use of intellectual property such as patents and copyright.oComputer misuse You should not use your technical skills to misuse other peoples computers.1.3 Case StudyExamples from three different types of systems are used throughout the book. An appropriate example is used when

    41、 discussing concepts such as safety and dependability, system modeling, reuse, etc.oAn embedded system This is a system where the software controls a hardware device and is embedded in that device.oAn information system This is a system whose primary purpose is to manage and provide access to a data

    42、base of information.oA sensor-based data collection system This is a system whose primary purpose is to collect data from a set of sensors and process that data in some way.Case 1: An insulin pump control systemInsulin pump hardwareAn insulin pump control systemActivity model of the insulin pumpAn i

    43、nsulin pump control systemTwo essential high-level requirements that this system must meet:o The system shall be available to deliver insulin when required.o The system shall perform reliably and deliver the correct amount of insulin to counteract the current level of blood sugarCase 2: A patient in

    44、formation system for mental health careThe MHC-PMS (Mental Health Care-Patient Management System) is an information system that is intended for use in clinics. It has two overall goals:o To generate management information that allows health service managers to assess performance against local and go

    45、vernment targets.o To provide medical staff with timely information to support the treatment of patients.Case 2: Organization of MHC-PMSCase 2: Users of MHC-PMSUsers of the system include clinical staff such as doctors, nurses, and health visitors. Nonmedical users include receptionists who make app

    46、ointments, medical records staff who maintain the records system, and administrative staff who generate reports.The system is used to record information about patients (name, address, age, next of kin, etc.), consultations (date, doctor seen, subjective impressions of the patient, etc.), conditions,

    47、 and treatments. Reports are generated at regular intervals for medical staff and health authority managers.Case 2: Key features of MHC-PMSo Individual care management Clinicians can create records for patients, edit the information in the system, view patient history, etc.o Patient monitoring The s

    48、ystem regularly monitors the records of patients that are involved in treatment and issues warnings if possible problems are detected.o Administrative reporting The system generates monthly management reports showing the number of patients treated at each clinic, the number of patients who have ente

    49、red and left the care system, number of patients sectioned, the drugs prescribed and their costs, etc.Case 3: A wilderness weather stationWeather station collect data from a set of instruments that measure temperature and pressure, sunshine, rainfall, wind speed, and wind direction. Wilderness weath

    50、er stations are part of a larger system, which is a weather information system that collects data from weather stations and makes it available to other systems for processing.Case 3: A wilderness weather stationoThe weather station system This is responsible for collecting weather data, carrying out

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:软件工程(研究生)全册配套课件3.ppt
    链接地址:https://www.163wenku.com/p-2037201.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库