13Point

1 信息系统工程的目标

是在规定的预算进度范围内,生产满足用户需求高质量的信息系统

2 软件工程(信息系统)三要素

方法、工具和过程。

3 统一开发过程 rup 哪四个阶段?6个核心工作流

3.1 RUP 四个阶段

  1. 初始阶段:
    1. 建立系统业务案例,确定项目边界,关注风险
    • 里程碑-生命周期目标里程碑
  2. 细化阶段:
    1. 分析问题领域,捕获大部分系统功能需求用例
    2. 建立体系结构基础
    3. 编制项目计划
    • 生命周期结构里程碑
  3. 构造阶段:
    1. 本质是制造过程
    2. 完成所有需求分析与设计
    3. 所有构件和应用程序功能被开发并集成为产品
    4. 所有功能被详细测试
    5. 本阶段通过一系列迭代过程建造系统,每一次迭代开发都是一个小项目的开发过程。
    • 初始功能里程碑
  4. 交付阶段:
    1. 确保系统对最终用户可用,并将系统部署到系统环境
    • 产品发布里程碑

3.2 RUP 六个核心过程工作流:

3分析+3实践

  1. 业务建模(Business Modeling):通过分析业务需求和流程,建立业务模型以支持系统开发。
  2. 需求(Requirements):捕获并明确用户和系统的功能与非功能需求,通常通过用例(Use Case)描述。
  3. 分析与设计(Analysis & Design):将需求转化为系统架构和设计模型,包括类图、交互图等UML模型。
  4. 实现(Implementation):将设计转换为代码,完成构件开发、集成和单元测试。
  5. 测试(Test):验证系统是否符合需求,包括功能测试、性能测试及用户验收测试等。
  6. 部署(Deployment):将系统交付到用户环境,包括安装、培训和迁移等工作。

4 软件过程模型(瀑布/增量等等)

4.1 瀑布模型(结构化生命周期模型)

4.2 快速原型法(快速原型化模型)

4.3 螺旋模型

4.4 迭代增量模型(统一开发过程/RUP)

工作流 9个(3个核心支持,6个核心过程):

核心支持:
配置和变动管理 项目管理 环境
核心过程#3.2. RUP 六个核心过程工作流:

业务建模 需求
分析设计 实现
测试 部署

核心特点包括用例驱动、以架构为中心、迭代(工作流重复)与增量(信息系统内容增加)。

5 面向对象设计的七大原则(开闭.etc)

名称 定义 目的
单一职责原则 一个类只负责一个功能领域中的对应职责 便于理解,提高代码的可读性
开闭原则 软件实体应对扩展开放,修改关闭 降低维护带来的新风险
里氏代换原则 所有引用基类(父类)的地方能够透明地使用其子类对象 防止继承泛滥
依赖倒转原则 抽象不应该依赖于细节,细节应该依赖于抽象 更利于代码结构的升级扩展
接口隔离原则 使用多个专门的接口,而不使用单一的总接口 功能解耦,高聚合、低耦合
合成复用原则 尽量使用对象组合,而不是继承来达到复用的目的 降低代码耦合
迪米特法则 软件实体应尽可能少地与其他实体发生相互作用 减少代码臃肿

6 ⭕编码能力(一个规则能编多少码)校验位计算

7 uml有哪九种图

UML语言定义了五种类型,9种不同的图,把它们有机的结合起来就可以描述系统的所有视图。

UML图类型 描述 包含的具体图
用例图 从用户角度描述系统功能,并指出各功能的操作者 用例图
静态图 表示系统的静态结构 类图、对象图、包图
行为图 描述系统的动态模型和组成对象间的交互关系 状态图、活动图
交互图 描述对象间的交互关系 顺序图、协作图
实现图 用于描述系统的物理实现 构件图、部署图

8 ⭕面向对象设计 各种设计模式适用场合(eg:塔台调度),什么时候要用

工场:多实例化
调停:机场
观察:看小孩

8.1 创建型设计模式->创建对象建模

  1. 工厂方法
  2. 抽象工厂

8.2 结构型设计模式->用接口联系实现和抽象,组合已有对象

  1. 外观
  2. 适配器

8.3 行为形模式->对变化封装,提供灵活行为方式

  1. 策略
  2. 观察者
  3. 调停者

9 正向工程逆向工程概念

  1. 正向工程是指从模型->代码的过程。利用一定的开发工具,设计者可以通过正向工程从模型生成代码框架,从而减少了开发者用于编写类、属性、方法代码等琐碎工作的时间。
  2. 逆向工程将代码->设计模型。在只有源代码,而没有设计文档的情况下,通过逆向工程得到设计模型。从而了解以前某个软件的设计。逆向工程也可以用于对代码和模型进行同步

10 面向对象设计(OOD)的五个部分

OOD模型包括一个问题域部分的核心, 还包括人机交互部分、控制驱动部分、数据管理部分和构件及部署部分四个外围部分

Pasted image 20250625203932.png|250

部分名称 描述
问题域部分 描述系统的核心业务逻辑和领域模型,关注需求分析和业务对象建模
人机交互部分 即人机界面设计部分
控制驱动部分 用来定义和协调并发的各个控制流
数据管理部分 用来对持久对象的存取建模
构件及部署部分 构件模型用于描述构件以及构件之间的关系,部署模型用于描述节点、节点之间的关系以及实现构件的制品在节点上的分布

11 mvc模式中,m,v,c三部分作用

MVC设计构架将功能划分为相互关联的3个构件:模型、视图和控制器。

  1. m 模型 model 部分是应用程序的主体部分,表示系统的业务逻辑。
  2. v 视图 vision 部分实现系统的外观,它是应用系统的外在表现,即界面。
  3. c 控制器 controller 部分接受用户请求,用户数据->给业务逻辑模块,调用相应的业务逻辑模块进行处理,根据用户所需要的响应调用相应的视图模块->结果页面返回

作用:

  1. 多个视图映射同一个模型
  2. 模型部分的独立性
  3. 控制器的多对应性
    将控制器、模式和视图强制分离,各自独立,虽然会
    增加一些额外的工作,但其带来的好处会更大。

12 软件测试的目的是什么,软件测试工作中要注意的原则

  1. 软件测试的目的是用最小的代价找出软件中潜在的错误和缺陷
  2. 测试的目的并不是证明软件中没有错误,而是找出软件中的错误。没有发现错误的测试不是成功的测试。
  3. 测试具有不彻底性,人们必须研究如何设汁测试用例,以期用较少的测试用例,覆盖尽可能多的需要测试的内容。

12.1 ~在测试中要特别注意以下几点

  1. 尽早地和不断地进行测试
  2. 制定严格的测试计划
  3. 完全测试程序是不可能的,但是要尽量全面地测试
  4. 认真设计测试用例
  5. 避免检查自己的程序
  6. 发现的错误越多,说明潜在的错误越多(米中含沙)
  7. 正确对待测试的结果
  8. 妥善保存相关文档

13 LAMP stack 开源解决方案各字母意义

LAMP是这个开发环境中四个组件的缩写:

  1. L指的是Linux操作系统;
  2. A指的是Apache web服务器;
  3. M指的是MySQL开源数据库;
  4. P则是PHP、Perl或Python脚本语言。
    这四种开源技术结合在一起便组成了一个应用服务平台。