상세 컨텐츠

본문 제목

정보처리기사 필기시험 준비 [3]

정보처리기사/정보처리기사_필기

by JORDON 2023. 2. 6. 22:51

본문

반응형

 

소프트웨어 설계 요구사항 확인

  1. 현행시스템 분석
  2. 요구사항확인
  3. 분석모델확인

요구사항 개발 프로세스

1. 도출

  • 다양한 이해관계자와 효율적인 의사소통이 중요

2. 분석

  • 요구사항들 간 상충되는 것을 해결하고 소프트웨어의 범위파악

3. 명세

  • 시스템정의서
  • 시스템 요구사항
  • 명세서소프트웨어
  • 요구사항 명세서

4. 확인

  • 검토
  • 분석가가 요구사항을 이해했는지 확인

요구사항 분석기법

1. 요구사항분류

  • 요구사항이 기능인지 비기능인지 분류
  • 요구사항이 하나 이상의 고수준으로부터 유도된 것인지 또는 이해관계자나 다른 원천으로부터 직접 발생했는지
  • 우선순위가 더 높은 것인지
  • 요구사항의 범위
  • 요구사항이 소프트웨어 생명주기 동안에 변경이 발생하는지

2. 개념모델링(Conceptual Modeling)

  • 실세계 문제에 대한 모델링이 소프트웨어 요구사항 분석의 핵심
  • 모델은 문제가 발생하는 상황에 대한 이해를 증진시키고 해결책을 설명
  • 개념 모델은 문제 도메인 엔티티들과 관계 및 종속성을 반영
  • 대부분의 모델링 표기법은 UML을 사용
  • 사용 시나리오를 위해 유즈케이스 다이어그램을 사용

3. 요구사항할당

  • 요구상을 만족시키기 위한 아키텍처 구성요소를 식별
  • 다른 구성요소와 어떻게 상호작용하는지 분석을 통해 추가 요구사항을 발견

4. 요구사항 협상

  • 두명의 이해관계자가 서로 상충되는 내용을 요구하거나 요구사항 리소스, 기능 및 비기능 요구사항들로부터 상충되는 경우 적절한 중간지점에서 합의가 중요
  • 요구사항에서 우선순위를 부여하는 것은 요구사항 필터링 및 요구사항 상충문제를 해결하는데 도움이 된다.

5. 정형분석

  • 형식적으로 정의된 시멘틱을 지닌 언어로 요구사항을 표현
  • 정확하고 명확하게 표현
  • 정형분석은 요구사항 분석의 마지막 단계에 이루어진다.

UML(Unified Modeling Language)

  1. 객체지향 설계를 위한 표준언어
  2. 시스템을 시각적으로 표현하기 위한 모델링 언어
  3. 시스템 개발과정의 광범위한 분야에 활용
  4. 사물, 관계, 다이어그램을 도형으로 표현
  5. 정적모델 - 클래스, 오브젝트, 컴포넌트, 배치 다이어그램
  6. 동적모델 - 유즈케이스, 순차, 통신, 상태, 액티비티, 시퀀스 다이어그램
  7. Stereo Type - UML에서 제공하는 기본요소 이외에 추가적인 확장요소를 나타내는 것
  8. 일반화, 실제화, 의존, 연관

유스케이스 다이어그램

  1. 시스템을 사용하는 목적을 사용자 관점에서 작성
  2. 사용자와 시스템 사이의 상호작용을 알 수 있다.
  3. 시스템이 제공하는 기능과 서비스등을 정의하고 시스템의 범위를 결정한다.
  4. 연관관계 - 유스케이스와 액터간의 상호작용을 표현하며 실선으로 연결
  5. 포함관계 - 필요로하는 기능에서 필요한 쪽으로 점선 + 화살표로 연결 <<include>>
  6. 확장관계 - 확장되는 기능에 대한 유스케이스 <<extend>>
  7. 일반화관계 - 유사한 유스케이스 및 액터들을 모아 추상화한 유스케이스를 연결시켜 그룹화

요구사항 검증

  • 요구사항 목록에 업무기능에 대한 요구사항이 모두 반영되었는지 확인
  • 요구사항 정의서 작성 여부 확인
  • 비기능적 요구사항이 명확하게 도출되었는지 확인
  • 타 시스템과의 연계 및 인터페이스에 대한 요구사항이 도출되었는지 확인

분석모델 검증

  • 분석모델까지 요구사항 추적표를 작성 및 검토의견 추가
  • 작성된 요구사항 추적표에 검토 의견을 작성
  • 요구사항 추적표에서 요구사항에 대한 검토의견을 정제

분석모델의 시스템화 타당성 분석

  • 성능 및 용량산정 적정성 -> 시스템간 상호 운용성 -> 기술 성숙도 및 트렌트 부합성 -> 기술적 위협분석

분석 자동화 도구(CASE. Computer Aided Software Engineering)

  • 구조적인것을 그대로 사용
  • 요구 정보를 추출하고 분석
  • 프로토타입이나 프로그램 개발 유지 용이
  • 점진적이고 창의적 업무에 집중
  • 소프트웨어의 재활용성 재고
  • 도식화되어 개발자들간에 정보시스템 공유가 편리

 

반응형

관련글 더보기

댓글 영역