教学课件PPT软件工程软件过程.ppt
《教学课件PPT软件工程软件过程.ppt》由会员分享,可在线阅读,更多相关《教学课件PPT软件工程软件过程.ppt(68页珍藏版)》请在三一文库上搜索。
1、软件过程 (Software Processes),outline,软件过程 过程活动 软件过程模型 敏捷软件开发,2,outline,软件过程 过程活动 软件过程模型 敏捷软件开发,3,软件过程(Software Process),软件过程是开发软件产品的一系列相关活动(activities)的集合。 软件过程的目的是为各种人员提供一个公共的框架,以便用相同的语言进行交流。 Many different software processes but all involve: Specification defining what the system should do; Design an
2、d implementation defining the organization of the system and implementing the system; Validation checking that it does what the customer wants; Evolution changing the system in response to changing customer needs.,4,Software process descriptions,When we describe and discuss processes, we usually tal
3、k about the activities in these processes such as specifying a data model, designing a user interface, etc. and the ordering of these activities. Process descriptions may also include: Products, which are the outcomes of a process activity; Roles, which reflect the responsibilities of the people inv
4、olved in the process; Pre- and post-conditions, which are statements that are true before and after a process activity has been enacted or a product produced.,5,outline,软件过程 过程活动 软件过程模型 敏捷软件开发,6,Process activities,四个基本的过程活动 specification development validation evolution 在不同的软件开发过程中,它们的组织形式不同 顺序(sequ
5、ence) 交替(interleaved) ,7,Software specification,The process of establishing what services are required and the constraints on the systems operation and development. Requirements engineering process Feasibility study Is it technically and financially feasible to build the system? Requirements elicita
6、tion and analysis What do the system stakeholders require or expect from the system? Requirements specification Defining the requirements in detail Requirements validation Checking the validity of the requirements,8,Feasibility study,“对于问题定义所确定的问题有可行的解决方法吗?” 了解用户要求和现实环境 从技术、经济、市场等方面研究并论证开发该软件系统的可行性
7、技术可行性:当前的软件开发方法和工具能否支持需求的实现; 操作可行性:用户能否在特定的环境下使用这个软件; 经济可行性:开发和使用、维护这个软件的成本能否被用户所接受。 阶段性产品 可行性论证报告 制定初步项目开发计划 (人员,进度),9,Requirements elicitation and analysis,“为了解决问题,目标系统必须做什么?” 任务:确定用户对软件系统的需求: 功能需求:软件必须要完成的功能; 性能需求:软件的安全性、可靠性、可维护性、精度、错误处理、适应性、用户培训等; 运行环境约束:待开发的软件产品必须满足的环境要求 重要性:软件开发的依据,软件验收的标准,10,
8、Requirements elicitation and analysis,困难:难以说清、动态变化、歧义、复杂。 应用软件的需求分析涉及应用领域的知识和经验。 需求分析人员必须与用户不断、反复地交流和商讨,使用户需求逐步准确、一致、完全。 方法:面向数据流的分析方法、面向数据的分析方法、面向对象的分析方法。 工具:Rational Rose等。 阶段性产品 软件需求规格说明书SRS 用户手册概要,11,The requirements engineering process,12,Software design and implementation,The process of conver
9、ting the system specification into an executable system. Software design Design a software structure that realises the specification; Implementation Translate this structure into an executable program; The activities of design and implementation are closely related and may be inter-leaved.,13,A gene
10、ral model of the design process,14,Design activities,Architectural design, where you identify the overall structure of the system, the principal components (sometimes called sub-systems or modules), their relationships and how they are distributed. Interface design, where you define the interfaces b
11、etween system components. Component design, where you take each system component and design how it will operate. Database design, where you design the system data structures and how these are to be represented in a database.,15,两步设计,总体设计:体系结构 阶段性产品 概要设计规格说明书 数据库或数据结构设计说明书 集成测试计划 详细设计 “应该怎样具体地实现这个系统呢
12、?” 任务 细化概要设计所生成的各个模块, 并详细描述程序模块的内部细节(算法,数据结构等),形成可编程的程序模块,制订单元测试计划 阶段新产品 详细设计规格说明书, 单元测试计划,16,Implementation,任务 把软件设计转换成程序代码,即写成以某一种特定程序设计语言表示的“源程序清单”。 写出的程序应当是结构良好、清晰易读的,且与设计相一致的。 方法 以详细设计规格说明书为依据、基于某种程序设计语言进行编码 结构化程序设计、面向对象程序设计 工具 Eclipse, Visual Studio.NET 阶段产品 源程序代码,17,Software validation,Verifi
13、cation and validation (V & V) is intended to show that a system conforms to its specification and meets the requirements of the system customer. Involves checking and review processes and system testing. System testing involves executing the system with test cases that are derived from the specifica
14、tion of the real data to be processed by the system. Testing is the most commonly used V & V activity.,18,Stages of testing,19,Testing stages,Development or component testing Individual components are tested independently; Components may be functions or objects or coherent groupings of these entitie
15、s. System testing Testing of the system as a whole. Testing of emergent properties is particularly important. Acceptance testing Testing with customer data to check that the system meets the customers needs.,20,Software evolution,Software is inherently flexible and can change. As requirements change
16、 through changing business circumstances, the software that supports the business must also evolve and change. Although there has been a demarcation between development and evolution (maintenance) this is increasingly irrelevant as fewer and fewer systems are completely new.,21,outline,软件过程 过程活动 软件过
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 教学 课件 PPT 软件工程 软件 过程
链接地址:https://www.31doc.com/p-3834244.html