软件设计师--软件工程基础

1.加密技术

      对称加密算法:

             DES     3DES/TDEA    RC-5(用于大量明文加密)   IDEA   AES  

      非对称加密算法:

             RSA

2.软件过程

       软件过程模型的基本概念:软件过程是制作软件产品的一组活动以及结果,这些活动主要由软件人员来完成,软件活动主要有   软件描述、软件开发、软件有效性验证和软件进化。

3.软件过程模型/软件开发模型

1.瀑布模型

    特点:因果关系紧密相连,前一个阶段工作的结果是后一个阶段工作的输入。提供全程产品监控

    因此每一个阶段工作完成后,都要进行审查和确认

2.增量模型(瀑布模型的一个变体)

特点:第一个增量往往是核心的产品,强调每一个增量发布一个可操作的产品,融合了瀑布模型的基本成分和原型实现的迭代特征

原型模型和螺旋模型属于演化模型

3.原型模型

特点:适合用户需求不清楚、需求经常变化(开发时 首先确定用户需求,开发初始原型)

4.螺旋模型(结合了瀑布模型合演化模型)

特点:强调风险分析,适合庞大、复杂并且具有高风险的系统

5.喷泉模型

特点:是一种以用户需求为动力,以对象作为驱动的模型

6.基于构件的开发模型

特点:采用预先打包的软件构件开发应用系统

7.形式化方法模型

特点:建立在严格数学基础上的一种软件开发方法

8.统一过程(up)模型

特点:统一过程模型是一种 用例和风险驱动,以架构为中心,迭代并且增量 的开发过程,由UML方法和工具支持。

统一过程4个技术阶段:

1.初始阶段:生命周期目标

2.精化阶段:生命周期架构

3.构建阶段:初始运作功能

4.移交阶段:产品发布

统一过程模型的典型代表是 RUP 。

9.敏捷方法

(1)xp极限编程:高效、低风险、测试先行(先写测试代码,再编写程序)

(2)Cockburn 水晶方法:不同项目,不同策略

(3)SCRUM并列争求法:迭代。30天为一个迭代周期,按照需求优先级实现

(4)FDD功用驱动方法:开发人员分类。分为指挥者(首席程序员)、类程序员

(5)开放式源码:虚拟团队,开放成员分班各地

(6)ASD自适应方法:预测-协作-学习

(7)敏捷统一过程(AUP):在大型上连续,在小型上迭代。采用经典的UP阶段性活动

4.系统测试

信息系统测试包括 软件测试、硬件测试和网络测试。

软件测试分为4步进行,即单元测试、集成测试、确认测试和系统测试。

系统测试:功能测试、性能测试、安全性测试、兼容性测试、用户界面测试和可安装性测试。

集成测试:

集成测试的依据是概要设计规格说明,因此在概要设计完成后即开始制定集成测试计划。

集成测试需要设计所需的驱动模块和桩模块

驱动模块用来模拟被测试模块的上一级模块

桩模块用来模拟被测试模块工作过程中所调用的模块

常用的集成测试方法包括自顶向下、自底向上、Big-Bang

5.数据库的设计过程

(1)需求分析:分析用户的需求,包括数据、功能和性能需求

(2)概念结构设计:主要采用E-R模型进行设计,包括画E-R图

(3)逻辑结构设计:通过将E-R图转换成表,实现从E-R模型到关系模型的转换

(4)数据库物理设计:主要是为所设计的数据库选择合适的存储结构和存取路径

(5)数据库的实施:包括编程、测试和试运行

(6)数据库运行与维护:系统的运行与数据库的日常维护

6.软件生存周期

1.可行性分析与项目开发

2.需求分析:需求分析阶段的输出:数据流图、实体联系图、数据字典和软件需求说明书

3.概要设计:划分模块、模块的层次、模块之间的调用关系以及各模块的功能,模块结构图

4.详细设计:各个功能模块具体怎么实现、采用何种数据结构和核心算法

5.编码

6.测试

7.维护

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值