赞
踩
软件定义时期:包括可行性分析和详细需求分析过程。具体分为 问题定义、可行性研究、需求分析等。
软件开发时期:软件的设计与实现。概要设计,详细设计,编码,测试等。
软件运行和维护时期:把软件产品移交给用户使用。
软件系统文档:
分为 用户文档 和系统文档。用户文档则是系统功能和使用方法。系统文档描述 系统设计、实现和测试各方面的内容。
软件工程包含四个方面活动:
1 P(plan):软件规则说明。软件计划。
2 D(Do):软件开发。开始做。
3C(check):软件确定。确定,验证。
4 A(action):软件演进。演进开发。
软件系统工具
软件开发工具:需求分析工具、设计工具、编码与排错工具、测试工具等。
软件维护工具:版本控制工具、文档分析工具、开发信息库工具、逆向工程工具、再工程工具。
软件管理和软件支持工具:项目管理工具、配置管理工具、软件评价工具、软件开发工具的评价与选择。
软件设计四个活动
数据设计、架构设计、人机界面(接口)设计、过程设计。
数据设计:数据库,数据字典设计。
能力成熟度模型CMM
1初始级:杂乱无章,依赖个人努力。
2可重复级:基本的项目管理和实践,有必要的过程准则来重复。
3已定义级:定义了行业规则,软件过程文档化。
4已管理级:定量管理,制定了产品质量详细度量标准。
5优化级:提升系统不断改进。
CMMI
阶段式
1初始级:过程不可以预测。
2已管理级:过程为项目服务。
3已定义级:过程为组织服务。
4定量管理:度量。
5优化级:不断改进。
瀑布模型,需求明确,全部做完才做下一个。
原型模型则刚好和瀑布模型相反。适合需求不明确。
螺旋模型,可以风险分析。所以非常适合庞大,复杂,高风险项目。四个过程:制定计划、风险分析、实施工程和客户评估。
V模型:需求分析,概要设计,详细设计,编码,(v模型),单元测试,集成测试,系统测试,验收测试。
增量模型:首先开发核心功能。优先级高的优先交付。每一个增量都是可交付的产品,和原型不同。
喷泉模型:面向对象就是,以用户需求为动力。
构件开发模型CBSD:利用预先包装的构件来构造应用程序。复用性。
形式化方法模型:建立严格数学基础上。
四大价值观:沟通、简单、反馈、勇气。
两个特点:
1适应性 非 预设性。
2面向人 非 面向过程。
核心思想:
1适应性。
2以人为本。
3迭代增量。
敏捷开发几个方法:
1极限编程法XP:交流、朴素、反馈和 勇气。加强交流,从简单开始做起。
近螺旋式,将复杂过程分解成一个个小周期。提倡 测试先行。
2水晶系列法:以人为中心,每个都有独特的角色,过程模式,工作产品和实践。(水晶独一无二)
3并列争球法:按需求优先级别来,以每段时间(如30天)为周期,一次冲刺。
4特性驱动开发方法(FDD):三要素,人,过程和技术。五个核心过程:开发整体对象模型,构造特征列表,计划特征开发,特征计划和特征构件。
Rational Unified Process
描述 如何有效利用商业的、可靠的方法开发和部署软件,是一个重量级过程。 类似在线指导者,它可以为所有方面和层次的程序开发提供指导方针、模版以及事例支持。
9个核心工作流
业务建模:高层次业务分析。
需求:确定系统功能需求。
分析与设计:分析需求,设计模型。
实现:实现需求,编码。单元测试
测试:集成测试,系统测试,验收测试。
部署:打包部署上线。
配置与变更管理:所有制品的完整性和一致性。
项目管理:为开发提供计划,为软件提供环境。
环境:提供开发环境,管理和工具支持。
RUP把软件生命周期划分为四个阶段:
初始阶段:类似需求分析,确定系统范围。
细化阶段:确定系统体系结构。
构造阶段:构造产品并继续演进需求
移交阶段:把产品给用户使用。
RUP核心概念:
角色:who的问题。各个角色的职责。
活动:how 的问题。明确目的的工作单元,怎么去做。
制品:what的问题。活动生成,修改的一段信息。
工作流:when的问题。活动做的时间,一系列流程。
RUP特点:
1用例驱动:需求分析、设计、实现和测试都是用例驱动。
2以体系结构为中心:包括总体组织全局控制和通信协议。
典型的4+1视图模型
分析人员和测试人员关系系统的行为,侧重用例视图。
最终用户 关注系统功能,逻辑视图。
程序员 关注系统配置开发,实现视图。
系统集成人员 关注系统性能,伸缩,吞吐。进程视图。
系统工程师 关注系统发布,安装。侧重部署视图。
3迭代和增量。
软件复用
早期是代码级别,现在扩大到 领域知识、开发经验、设计决定、体系结构、需求、设计、代码和文档等一切有关方面。
逆向工程
分为四个级别
实现级:包括抽象语法树、符号表、过程的设计表现。
结构级:反映程序相互依赖关系的信息。例如调用图、结构图、程序和数据结构。
功能级:反映程序功能及程序段之间的信息。例如数据和控制流模型。
领域级:包括反映程序分量或程序领域概念对应关系的信息。如E-R图。
领域级别抽象最高,完备性低。实现级别抽象最低,完备性最高。
与逆向工程有关的概念 重构、设计恢复、再工程和正向工程。
重构:同一抽象级别转换系统描述。
设计恢复:从已有的程序中抽象出有关数据设计。
再工程:在逆向工程基础上,对系统进行重构,产生新版本。
正向工程:从现有系统恢复设计信息,使用该信息去改变现有系统。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。