软件工程

判断题10*1

问题分析简答题6*5

理解与沟通10*3

分析与设计15*2

英文答题

第一章(课本5)

类Class: abstract definition of a group of similar objects with the same data and the same operations

多态:Polymorphism

·By overriding the same-named operation of the parent class

Allow different subclass objects and parent class objects to receive the same message but provide different services

Classes at different levels share a behavior (the function name, parameters and return value

types are the same), but the behavior implementation is different

·Mechanism: dynamic binding or late binging

·Performance

Override parent class methods in subclass

Parent class reference points to subclass object Specific class overrides interface method Interface reference points to specific class object

Parent class reference points to child class object

Interface reference points to concrete class object

·Enhance flexibility, reduce information redundancy, and improve reusability and scalability

重载:Function overloading

In the same scope, several functions with different parameter characteristics use the same function name

Operator overloading

The same operator can be applied to different types of operands

Overloading mechanism

Static binding

When compiling a program, decide which implementation code of the function with the same name to use based on the number and type of function variables

Improve the flexibility and readability of 00 programs

第二章(课本6):

requirements engineering

actions: commiunication——> model differ from projects

建立根基

stakeholder 利益相关者 :对项目直接和间接贡献需求的人 协作需求收集=开会

UML Views and UML Diagrams:表达需求的工具 UNIT2 10

第三章(课本7)

基于场景、类、行为建模

1.基于场景

Use Case Diagram 要会画和详细描述 画用例图,用例详述

《include》包含关系

《extend》拓展关系

箭头往前指的是泛化关系

:Example1用例图如何描述?

image.png

From the aspect of actor:

1.there are 3 use cases combining to the Safehouse: “visit monitoring machine camera to connect the Internet”,“set system parameters”,“set alert”.

2.use case “visit monitoring machine camera to connect the Internet” combines to the camera.

sterotype 版型

箭头往前指需求 往后指代码

统一过程:用例驱动 用例:基于场景建模

Actor 参与者 使用软件的人

找Actor 和系统的交互,用例捕获交互 based on class diagram

对象图和类图的判断 UNIT2 17 静态快照 Class Diagram:UNIT2 14

如何判断一个图是对象图还是类图?

类图是抽象层次更高的模型,表示类及其关系;对象图是类图的实例化,表示系统在特定时刻的具体状态。

出现interface的肯定是类图,有函数的是类图

Example2类图:-

类间关系:Association,Generalization,Dependency,Realization

image.png
  • Classes and Interfaces:

    1. RegisterForm
      • Attributes:
        • user: UserDTO
        • userDao: IUserDAO
      • The RegisterForm class contains a UserDTO object and an IUserDAO interface. This class likely represents the user interaction registration form.
    2. UserDTO
      • Attributes:
        • userAccount: String
        • userPassword: String
      • Methods:
        • getUserAccount(): String
        • setUserAccount(String userAccount): void
        • getUserPassword(): String
        • setUserPassword(String userPassword): void
      • The UserDTO (Data Transfer Object) class is used to encapsulate user account and password information.
    3. IUserDAO
      • Methods:
        • addUser(UserDTO user): boolean
      • The IUserDAO interface defines a method to add a user, which accepts a UserDTO object and returns a boolean indicating success or failure.

    Implementations of IUserDAO:

    1. SQLServerUserDAO
      • Methods:
        • addUser(UserDTO user): boolean
      • This class implements the IUserDAO interface for SQL Server database interactions.
    2. MySQLUserDAO
      • Methods:
        • addUser(UserDTO user): boolean
      • This class implements the IUserDAO interface for MySQL database interactions.
    3. OracleUserDAO
      • Methods:
        • addUser(UserDTO user): boolean
      • This class implements the IUserDAO interface for Oracle database interactions.

    Relationships:

    • The RegisterForm class has a composition relationship with the UserDTO class (indicated by the filled diamond arrow) and an association relationship with the IUserDAO interface.
    • The UserDTO class includes getter and setter methods for user account and password fields.
    • The IUserDAO interface is implemented by SQLServerUserDAO, MySQLUserDAO, and OracleUserDAO (indicated by dashed lines with a triangle pointing to the IUserDAO interface).

接口:1.通过接口实现设计类之间的可控链接

2.强调模块之间的可替换性

设计模式

行为建模 :状态图和顺序图

第四章(课本89)

设计过程:

1.显式 visible 功能上需求

2.隐式 invisible 非功能需求 NFR

设计概念 重构

内聚和耦合

目标是:高内聚低耦合(high cohesion and low coupling)

内聚指模块内各个元素的关系 耦合指模块与模块之间的关系

接口:接口划分:用户接口UI、 内接口、 外接口

体系结构:定义、重要性、决策

重要性:Why is architecture important?

1.Architecture provides a representation that facilitates communication among all stakeholders.

2.Architecture highlights early design decisions that willhave a profound impact on all SE work that follows, and

plays an important role in the success of the system as a runnable entity.

Architecture constitutes a relatively small model(a setof abstractions)of how the system components are structured and work together.

有利于各个stakeholder沟通需求

决策:早期决策对项目成功至关重要 风格:描述一个通用的类别 模式:描述局部**(一定是一组抽象类)**

Archetype 体系结构原型

相关题:what is an archetype?

第五章(课本10)

构建 面向对象 一组类

传统观点 构建模块——>函数function 设计原则 书本P203可控连接

第六章(12-15)

验证和确认的概念和区别

测试:

developer开发者 understand the system but,will test “gently” and is driven by “delivery”

independent tester独立测试组 understand the system too but, will attempt to “break” it

and, is driven by “quality”

确认测试 系统测试

单元测试 脚手架 驱动

白盒测试 基本路径测试(必考):

Example3:

6b9e35344c31ddfba55d23036c6f3c2b.png

黑盒测试

等价类划分法

面向对象测试

类:组织单元

类中操作:基本测试单元

孤立测试操作是没有意义的

第七章(16-17)

集成测试

自顶向下的深度优先/宽度优先

回归

冒烟

验收:α测试、β测试

系统测试

SCI软件配置项

Baselines 基线

正式的 变更控制过程

第八章(课本234)

传统过程模型

瀑布

原型

螺旋

统一过程

敏捷的宣言

敏捷的哲学

Scrum Framework

冲刺

极限编程

第九章(项目管理,进度计划)

4个P

Trials

Team key attributes of an efftive software teams

哪些环境对软件团队有害,如何规避

敏捷团队how to规避项目环境毒性

Global team

how is software scope defined

危险信号

W5H2 questions