欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    CH08-Software-Prototyping-软件工程讲义英语版-教学课件.ppt

    • 资源ID:91522605       资源大小:1.27MB        全文页数:39页
    • 资源格式: PPT        下载积分:9金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要9金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    CH08-Software-Prototyping-软件工程讲义英语版-教学课件.ppt

    Ian Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 1Chapter 8Software PrototypingIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 2Software PrototypinglRapid software development to validate requirementsIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 3ObjectiveslTo describe the use of prototypes in different types of development projectlTo discuss evolutionary and throw-away prototypinglTo introduce three rapid prototyping techniques-high-level language development,database programming and component reuselTo explain the need for user interface prototypingIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 4Topics coveredlPrototyping in the software processlPrototyping techniqueslUser interface prototypingIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 5Ian Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 6Uses of system prototypeslThe principal use is to help customers and developers understand the requirements for the systemRequirements elicitation.Users can experiment with a prototype to see how the system supports their workRequirements validation.The prototype can reveal errors and omissions in the requirementslPrototyping can be considered as a risk reduction activity which reduces requirements risksIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 7Prototyping benefitslMisunderstandings between software users and developers are exposedlMissing services may be detected and confusing services may be identifiedlA working system is available early in the processlThe prototype may serve as a basis for deriving a system specificationlThe system can support user training and system testingIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 8Prototyping processIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 9Ian Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 10Prototyping in the software processlEvolutionary prototypingAn approach to system development where an initial prototype is produced and refined through a number of stages to the final systemlThrow-away prototypingA prototype which is usually a practical implementation of the system is produced to help discover requirements problems and then discarded.The system is then developed using some other development processIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 11Prototyping objectiveslThe objective of evolutionary prototyping is to deliver a working system to end-users.The development starts with those requirements which are best understood.lThe objective of throw-away prototyping is to validate or derive the system requirements.The prototyping process starts with those requirements which are poorly understoodIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 12Ian Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 13Evolutionary prototypinglMust be used for systems where the specification cannot be developed in advance e.g.AI systems and user interface systemslBased on techniques which allow rapid system iterationslVerification is impossible as there is no specification.Validation means demonstrating the adequacy of the systemIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 14Ian Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 15Evolutionary prototyping advantageslAccelerated delivery of the systemRapid delivery and deployment are sometimes more important than functionality or long-term software maintainabilitylUser engagement with the systemNot only is the system more likely to meet user requirements,they are more likely to commit to the use of the systemIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 16Evolutionary prototypinglSpecification,design and implementation are inter-twinedlThe system is developed as a series of increments that are delivered to the customerlTechniques for rapid system development are used such as CASE tools and 4GLslUser interfaces are usually developed using a GUI development toolkitIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 17Ian Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 18Prototypes as specifications#lSome parts of the requirements(e.g.safety-critical functions)may be impossible to prototype and so dont appear in the specificationlAn implementation has no legal standing as a contractlNon-functional requirements cannot be adequately tested in a system prototypeIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 19Incremental development#lSystem is developed and delivered in increments after establishing an overall architecturelRequirements and specifications for each increment may be developedlUsers may experiment with delivered increments while others are being developed.therefore,these serve as a form of prototype systemlIntended to combine some of the advantages of prototyping but with a more manageable process and better system structureIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 20Incremental development processIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 21Throw-away prototyping#lUsed to reduce requirements risklThe prototype is developed from an initial specification,delivered for experiment then discardedlThe throw-away prototype should NOT be considered as a final systemSome system characteristics may have been left outThere is no specification for long-term maintenanceThe system will be poorly structured and difficult to maintainIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 22Throw-away prototypingIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 23Ian Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 24Rapid prototyping techniqueslVarious techniques may be used for rapid developmentDynamic high-level language developmentDatabase programmingComponent and application assemblylThese are not exclusive techniques-they are often used togetherlVisual programming is an inherent part of most prototype development systemsIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 25Dynamic high-level languages#lLanguages which include powerful data management facilitieslNeed a large run-time support system.Not normally used for large system developmentlSome languages offer excellent UI development facilitieslSome languages have an integrated support environment whose facilities may be used in the prototypeIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 26Choice of prototyping languagelWhat is the application domain of the problem?lWhat user interaction is required?lWhat support environment comes with the language?lDifferent parts of the system may be programmed in different languages.However,there may be problems with language communicationsIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 27Ian Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 28Database programmingIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 29Component and application assemblylPrototypes can be created quickly from a set of reusable components plus some mechanism to glue these component togetherlThe composition mechanism must include control facilities and a mechanism for component communicationlThe system specification must take into account the availability and functionality of existing componentsIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 30Ian Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 31Reusable component compositionIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 32Compound documents#lFor some applications,a prototype can be created by developing a compound documentlThis is a document with active elements(such as a spreadsheet)that allow user computationslEach active element has an associated application which is invoked when that element is selectedlThe document itself is the integrator for the different applicationsIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 33Application linking in compound documentsIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 34Visual programming#lScripting languages such as Visual Basic support visual programming where the prototype is developed by creating a user interface from standard items and associating components with these itemslA large library of components exists to support this type of developmentlThese may be tailored to suit the specific application requirementsIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 35Visual programming with reuseIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 36Problems with visual developmentlDifficult to coordinate team-based developmentlNo explicit system architecturelComplex dependencies between parts of the program can cause maintainability problemsIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 37User interface prototyping#lIt is impossible to pre-specify the look and feel of a user interface in an effective way.prototyping is essentiallUI development consumes an increasing part of overall system development costslUser interface generators may be used to draw the interface and simulate its functionality with components associated with interface entitieslWeb interfaces may be prototyped using a web site editorIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 38Key pointslA prototype can be used to give end-users a concrete impression of the systems capabilitieslPrototyping is becoming increasingly used for system development where rapid development is essentiallThrow-away prototyping is used to understand the system requirementslIn evolutionary prototyping,the system is developed by evolving an initial version to the final versionIan Sommerville 2000 Software Engineering,6th edition.Chapter 8 Slide 39Key pointslRapid development of prototypes is essential.This may require leaving out functionality or relaxing non-functional constraintslPrototyping techniques include the use of very high-level languages,database programming and prototype construction from reusable componentslPrototyping is essential for parts of the system such as the user interface which cannot be effectively pre-specified.Users must be involved in prototype evaluation

    注意事项

    本文(CH08-Software-Prototyping-软件工程讲义英语版-教学课件.ppt)为本站会员(可****阿)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开