본문 바로가기

정보처리기사 필기/소프트웨어 설계

[정보처리기사 필기요약] 1-1. 요구사항 확인

728x90
728x90

2. 요구사항 확인

(1). 요구분석 기법

  • 요구사항 분석에 사용하는 기능 모델링 기법

① 데이터 흐름도(DFD; Dats Flow Diagram)
: 데이터가 각 프로세스를 따라 흐르면서 변화되는 모습을 나타낸 그림
: 제어(Control)의 흐름은 중요하지 않고, 시간 흐름을 명확하게 표현할 수 없음

구성요소 설명 표기법
처리기(Process) 자료의 처리/변환 과정 표현
데이터 흐름(Data Flow) 자료의 흐름 표현 화살표
데이터 저장소(Data Store) 파일, 데이터 베이스 등 저장소의 위치 평행선
단말(Terminator) 자료의 출처와 도착지 사각형

(2) UML

: 객체 지향 소프트웨어 개발 과정에서 산출물을 명세화, 시각화, 문서화할때 사용되는 모델링 기술과 방법론을 통합해서 만든 표준화된 범용 모델링 언어

  • UML 구성요소 : 사물, 관계, 다이어그램
  • UML 다이어그램

① 구조적(정적) 다이어그램
- 클래스 : 클래스의 속성과 동작으로 구성, 메서드로 구성된 정적 다이어그램
- 컴포넌트
- 객체 : 인스턴스
- 복합체 구조(Composite Structure) : 아키텍처 다이어그램
- 배치(Deployment) : 컴포넌트들의 물리적 구성
- 패키지 : 관련있는 모델링 요소를 구조화

② 행위(동적) 다이어그램
- 유스케이스 : 사용자 관점에서 바라본 시스템 표현
- 활동 : 활동의 흐름
- 상태 : 객체의 상태 변화
- 시퀀스 : 시간적 흐름에 따른 메시지 교환
- 커뮤니케이션 : 객체들이 주고 받는 메시지
- 타이밍 : 시간에 흐름에 따른 상태 변화

 

  • UML 상세

① 클래스 다이어그램
: 클래스 속성 사이의 관계 표현
클래스 이름, 속성, 연산, 접근 제어자로 구성

② 유스케이스 다이어그램
: 사용자의 관점에서 시스템의 기능, 상호작용과 그들 간의 관계를 표현

· 유스케이스 다이어그램 구성요소
1) 유스케이스 : 일련의 작업을 수행하기 위한 행위
2) 액터 : 시스템 외부에서 시스템과 상호작용하는 객체(사람, 회사, 외부시스템)
3) 시스템 : 개발하고자 하는 소프트웨어
4) 관계 : 2개의 액터 또는 유스케이스들이 서로 상호작용함을 나타내는 것

· 유스케이스 다이어그램 구성요소 간의 관계
1) 연관관계(Association) : 유스케이스와 액터 간의 상호 작용이 있음을 표현
2) 포함 관계(Include) : 하나의 유스케이스가 다른 유스케이스의 실행을 전제로 할 때 형성되는 관계, 점선으로 연결, 하나의 유스케이스가 실행될 때 포함 관계에 있는 유스케이스는 반드시 실행
3) 확장 관계(Extend) : 특수 조건에 따라 확장 기능 유스케이스를 수행
4) 일반화 관계(Generalization) : 유사한 유스케이스 또는 액터를 모아 추상화한 유스케이스

 

  • UML 관계

1) 연관 관계(Association) : 2개 이상의 사물이 서로 관련된 상태를 표현하는 관계

2) 의존 관계(Dependency) : 사물의 변화가 다른 사물에도 영향을 미치는 관계

3) 일반화 관계(Generalization) : 하나의 사물이 다른 사물에 비해 더 일반적인지 구체적인지 표현하는 관계

4) 실체화 관계(Realization) : 한 객체가 다른 객체에 오퍼레이션을 수행하도록 지정하는 관계를 표현하는 관계5) 포함 관계(Composition) : 집합 관계의 특수한 형태로, 포함하는 사물의 변화가 포함되는 사물에 영향을 미치는 관계6) 집합 관계(Aggregation) : 하나의 사물이 다른 사물에 포함된 관계





(3) 애자일

  • 애자일 방법론 유형

① XP(eXtreme Programming)
실용성 강조, 1-3주의 반복(Iteration) 개발 주기

XP의 5가지 가치
- 사소통(Communication ) : 개발자, 관리자, 고객 간의 원활한 소통
- 드백(Feedback) : 의사소통에 대한 빠른 피드백
- 중(Respect) : 팀원간 상호 존중
- 기(Courage) : 용기를 가지고 자신감 있게 코드 개발
- 순성(Simplicity) : 필요한 것만 하고 그 이상의 것은 하지 않음

* 의사 선생님 피존 용기에 담아주세요

 

728x90
반응형