인생이 쓰다!인생쓰

공부/정보처리기사

정보처리기사 실기 정리 2일차 (요구사항 확인)

Johnal 2021. 3. 11. 14:42
반응형

*정리는 2020시나공 문제집을 참고했습니다.*

 

현행시스템 파악 절차 

시스템 구성 파악 : 현행 시스템의 구성은 조직의 주요 업무를 담당하는 기간 업무와 이를 지원하는 지원 업무로 구분하여 기술

 

시스템 기능 파악 : 현행 시스템의 기능은 단위 업무 시스템이 현재 제공하는 기능들을 주요 기능과 하부 기능, 세부 기능으로 구분하여 계층형으로 표시

 

시스템 인터페이스 파악 : 현행시스템의 인터페이스에는 단위 업무 시스템 간에 주고받는 데이터의 종류 ,형식 ,프로토콜 ,연계 , 유형 ,주기 등을 명시

 

아키텍처 구성 파악 : 소프트웨어 구성에는 단위 업무 시스템별로 업무 처리를 위해 설치되어 있는 소프트웨어들의 제품명, 용도, 라이선스 적용 방식, 라이선스 수 등을 명시 

 

소프트웨어 구성 파악 : 소프트웨어 구성에는 단위 업무 시스템별로 업무 처리를 위해 설치되어 있는 소프트웨어들의 제품명 ,용도, 라이선스 적용 방식 , 라이선스 수 등을 명시 

 

하드웨어 구성 파악 : 하드웨어 구성에는 단위 업무 시스템들이 운용되는 서버의 주요 사양과 수량 , 그리고 이중화의 적용 여부를 명시

 

네트워크 구성 파악 : 네트워크 구성은 업무 시스템들의 네트워크 구성을 파악할 수 있도록 서버의 위치 , 서버간의 네트워크 연결 방식을 네트워크 구성도로 작성 

 

 

개발 기술 환경

개발하고자 하는 소프트웨어와 관련된 운영체제 , 데이터베이스 관리 시스템 , 미들웨어 등을 선정할 때 고려해야 할 사항을 기술하고 오픈 소스 사용시 주요해야 할 내용을 제시한다.

 

 

운영체제(OS, Operating System) : 컴퓨터 시스템의 자원들을 효율적으로 관리하며, 사용자가 컴퓨터를 편리하고 효율적으로 사용할 수 있도록 환경을 제공하는 소프트웨어 

 

*식별시 고려사항*

가용성, 성능, 기술지원, 주변 기기, 구축비용

 

데이터베이스 관리시스템 (DBMS) : 사용자와 데이터베이스 사이에서 사용자의 요구에 따라 정보를 생성해 주고 , 데이터베이스를 관리해주는 소프트웨어

 

*식별시 고려사항*

가용성, 성능 , 기술지원, 상호 호환성, 구축 비용

 

웹 애플리케이션 서버 (WAS, Web Application Server) : 정적인 콘텐츠 처리를 하는 웹 서버와 달리 사용자의 요구에 따라 변하는 동적인 콘텐츠를 처리하기 위해 사용되는 미들웨어

 

*식별시 고려사항*

가용성, 성능, 기술지원, 구축 비용

 

오픈 소스 ( Open Source) : 누구나 별 다른 제한 없이 사용할 수 있도록 소스 코드를 공개한 것으로 오픈 소스 라이선스를 만족하는 소프트웨어 

*식별시 고려사항*

라이선스의 종류 , 사용자 수 , 기술의 지속 가능성

 

요구사항 유형

기능 요구사항 : 시스템이 갖춰야할 필수적인 기능에 대한 요구사항

비기능 요구사항 : 필수 기능 외의 품질이나 제약사항에 관한 요구사항

사용자 요구사항 : 사용자 관점에서 본 시스템이 제공해야 할 요구사항

시스템 요구사항 : 개발자 관점에서 본 시스템 전체가 사용자와 다른 시스템에 제공해야 할 요구사항

 

요구사항 개발 프로세스

 

요구사항 도출 : 시스템, 사용자 , 그리고 시스템 개발에 관련된 사람들이 서로 의견을 교환하여 요구사항이 어디에 있는지, 어떻게 수집할 것인지를 식별하고 이해하는 과정 

 

요구사항 분석 : 개발 대상에 대한 사용자의 요구사항 중 명확하지 않거나 모호하여 이해되지 않는 부분을 발견하고 이를 걸러내기 위한 과정

 

요구사항 명세 : 요구사항을 체계적으로 분석한 후 승인될 수 있도록 문서화하는것

 

요구사항 확인 : 개발 자원을 요구사항에 할당하기 전에 요구사항 명세서가 정확하고 완전하게 작성되었는지를 검토하는 활동 

 

요구사항 분석 기법

 

개발 대상에 대한 사용자의 요구사항 중 명확하지 않거나 모호한 부분을 걸러내기 위한 방법이다.

 

요구사항 분류 : 요구사항을 명확히 확인할 수 있도록 요구사항을 분류함

 

개념 모델링 : 요구사항을 보다 쉽게 이해할 수 있도록 현실 세계의 상황을 단순화하여 개념적으로 표현한 것을 모델이라고 하며, 이러한 모델을 만드는 과정을 모델링이라고 합니다. 

 

*개념 모델 종류*

유스케이스 다이어그램, 데이터 흐름 모델 , 상태 모델 , 목표기반 모델, 객체 모델 ,데이터 모델 등

 

 

요구사항 할당 : 요구사항을 만족시키기 위한 구성 요소를 식별하는 것 

요구사항 협상 : 요구사항이 서로 충돌될 경우 이를 적절히 해결하는 과정

정형 분석 : 구분과 의미를 갖는 정형하된 언어를 이용해 요구사항을 수학적 기호로 표현한 후 이를 분석하는 과정

 

 

 

★자료 흐름도 (DFD , Data Flow Diagram)

 

요구사항 분석에서 자료의 흐름 및 변환 과정을 도형 중심으로 기술하는 방법으로 자료 흐름 그래프 ,버블차트라고 합니다.

*자료 흐름도 구성요소*

프로세스 (Process) , 자료 흐름 (Data Flow) , 자료 저장소 (Data Store) , 단말 (Teminator)  

 

 

요구사항 분석 기법

 

요구사항 개발 과정을 거쳐 문서화된 요구사항 곤련 내용을 확인하고 검증하는 방법이다.

 

요구사항 검토 : 문서화된 요구사항을 훑어보면서 확인하는 것으로 가장 일반적인 요구사항 검증 방법

 

프로토타이핑 : 초기도출된 요구사항을 토대로 프로토타입을 만든 후 대상 시스템의 개발이 진행되는 동안 도출되는 요구사항을 반영하면서 지속적으로 프로토타입을 재작성하는 과정

 

모델 검증 : 요구사항 분석 단계에서 개발된 모델이 요구사항을 충족시키는지 검증하는 것

 

인수 테스트 : 사용자가 실제로 사용될 환경에서 요구사항들이 모두 충족되는지 사용자 입장에서 확인하는 과정

 

UML ( Unified Modeling Language )  

시스템 분석 , 설계 , 구현 등 시스템 개발 과정에서 시스템 개발자와 고객 또는 개발자 상호 간의 의사소통이 원활하게 이루어지도록 표준화한 대표적인 객체지향 모델링 언어이다.

UML 의 구성 요소

 

사물( Things ) : 모델을 구성하는 가장 중요한 기본 요소로, 다이어그램 안에서 관계가 형성될 수 있는 대상들

-구조 사물 : 시스템의 개념적, 물리적 요소를 표현

-행동 사물 : 시간과 공간에 따른 요소들의 행위를 표현

-그룹 사물 : 요소들을 그룹으로 묶어서 표현

-주해 사물 : 부가적인 설명이나 제약조건 등을 표현

 

관계( Relationships ) : 사물과 사물 사이의 연관성을 표현하는 것 

-연간 관계 : 2개이상의 사물이 서로 관련되어 있음을 표현함 

-집합 관계 : 하나의 사물이 다른 사물에 포함되어 있는 관계를 표현함

-포함 관계 : 집합 관계의 특수한 형태로, 포함하는 사물의 변화가 포함되는 사물에게 영향을 미치는 관계를 표현함

-일반화 관계 : 하나의 사물이 다른 사물에 비해 더 일반적인지 구체적인지를 표현함

-의존 관계  : 연관 관계와 같이 사물 사이에 서로 연관은 있으나 필요에 의해 서로에게 영향을 주는 짧은 시간동안만 연관을 유지하는 관계를 표현함

-실체화 관계 : 사물이 할 수 있거나 해야 하는 기능으로 서로를 그룹화 할 수 있는 관계를 표현함 

 

다이어그램 ( Diagram ) : 사물과 관계를 도형으로 표현한 것

- 정적 모델링 : 사용자가 요구한 기능을 구현하는데 필요한 자료들의 논리적인 구조를 표현한 것

- 동적 모델링 : 시스템의 내부 구성 요소들의 상태가 시간의 흐름에 따라 변화 하는 과정과 변화하는 과정에서 발생하는 상호 작용을 표현한 것 

 

구조적 ( Structural ) 다이어그램

클래스 ( Class ) 다이어그램 : 클래스와 클래스가 가지는 속성, 클래스 사이의 관계를 표현한다.

UML 을 이용한 정적 모델리의 대표적인 것이 클래스 다이어그램이다. 

 

 

*클래스 다이어그램 구성요소*

클래스 ,제약조건, 관계

 

 

객체 ( Object )다이어그램 : 클래스에 속한 사물(객체)들 , 즉 인스턴스를 특정 시점의 객체와 객체 사이의 관계로 표현

 

컴포넌트( Component ) 다이어그램 : 실제 구현 모듈인 컴포넌트 간의 관계난 컴포넌트 간의 인터페이스로 표현

 

배치( Deployment ) 다이어그램 : 실제 구현 모듈인 컴포넌트 간의 관계나 컴포넌트 간의 인터페이스로 표현

 

복합체 구조 ( Composite Structure ) 다이어그램 : 클래스나 컴포넌트가 복합 구조를 갖는 경우 그 내부 구조를 표현

 

패키지( Package ) 다이어그램 : 유스케이스나 클래스 등의 모델 요소들을 그룹화한 패키지들의 관계를 표현

 

행위 ( Behavioral ) 다이어그램

*동적 모델링*

-시퀀스 다이어그램 : 시스템이나 객체들이 메시지를 주고 받으며 시간의 흐름에 따라 상호작용하는 과정을 그림하로 표현한 것이다.

*시퀀스 다이어그램 구성요소*

액터, 객체 ,라이프라인, 활성 상자, 메시지, 객체 소멸, 프레임 등

 

 

-커뮤니케이션 다이어그램 : 시퀀스 다이어그램과 같이 동작에 참여하는 객체들이 주고받는 메시지를 표현하는데, 메시지뿌만 아니라 객체들 간의 연관까지 표현한다.

 

*시퀀스 다이어그램 구성요소*

액터 , 객체 , 링크 , 메시지 등

 

-상태 (State) 다이어그램  : 하나의 객체가 자신이 속한 클래스의 상태 변화 혹은 다른 객체와의 상호 작용에 따라 상태가 어떻게 변화하는지를 표현한다.  

 

*시퀀스 다이어그램 구성요소*

상태 ,이벤트 ,상태 전환, 프레임 등

 

 

*기능 모델링*

- 유스케이스 다이어그램 : 개발된 시스템과 관련된 외부 요소들, 즉 사용자와 다른 외부 시스템들이 개발될 시스템을 이용해 수행할 수 있는기능을 사용자의 관점(View)에서 표현한 것이다. 

 

*유스케이스 다이어그램 구성요소*

시스템 범위,액터 , 유스케이스, 관계

 

- 활동 (Activity ) 다이어그램 :  자료 흐름도와 유사한 것으로 ,사용자의 관점에서 시스템이 수행하는 기능을 처리 흐름에 따라 순서대로 표현한 것이다.

 

*활동 다이어그램 구성요소*

액션, 액티비티, 노드, 스웜레인 등

 

728x90
반응형