중간고사 : 객관식 : 4지선다. 3점 20 or 4점 15
주관식 : 계산문제 10, 15, 15점
설계
분할과 정복
- 분할 : 큰 소프트웨어 하나를 개발할 때 여러 개의 서브 시스템으로 세분화해 나누는 작업
- 분할의 기준 :
- 분산 시스템은 클라이언트와 서버로 분할
- 시스템은 여러 서브시스템으로 분할
- 서브시스템은 하나 이상의 패키지로 분할
- 패키지는 유스케이스나 여러 클래스로 분할
- 분할의 기준 :
- 정복 : 어느 정도 수준까지 분할했다면 말단에 있는 것부터 하나씩 개발하는 작업
추상화
- 과정 추상화
- 데이터 추상화
- 제어 추상화
캡슐화
정보 은닉
상속
다형성
- 오버로딩 (중복 정의)
- 오버라이딩 (재정의)
모듈화
- 모듈 평가 기준 1 : 응집도
- 기능적 응집 : 단일 기능의 요소가 하나의 모듈을 구성
- 순차적 응집 : 두 요소가 하나의 모듈로 구성
- 교환적 응집 : 입력을 사용하는 구성 요소가 하나의 모듈로 구성
- 절차적 응집 : 순서가 정해진 몇 개의 구성 요소가 하나의 모듈로 구성된 경우
- 시간적 응집 : 모듈 내 구성 요소의 기능이 각기 다르고 요소의 출력을 입력으로 사용하는 것고, 요소 간에 순서가 정해진 것도 아님
- 논리적 응집 : 구성 요소 간에 공톤점이 있거나 관련된 임무가 존재하거나 기능이 비슷해서 하나의 모듈로 구성된 경우
- 우연적 응집 : 구성 요소들이 우연히 모여 구성
- 모듈 평가 기준 2 : 결합도
- 데이터 결합
- 스탬프 결합
- 제어 결합
- 공통 결합
- 내용 결합
'소프트웨어 공학 공부' 카테고리의 다른 글
소공 시험 (0) | 2025.04.15 |
---|---|
소프트웨어 공학 6장 (아키텍처 설계와 클래스 설계) (0) | 2025.04.15 |
소프트웨어 공학 5주차 - 요구분석 (0) | 2025.04.01 |
소프트웨어 공학 3장 (0) | 2025.03.18 |
소프트웨어 공학 1차시 (0) | 2025.03.11 |