자격증/정보처리기사
[필기 | 소프트웨어 설계] 요구사항 정의
저녕이
2025. 3. 7. 14:17
728x90
반응형
📖 참고
2025 시나공 기출문제집 정보처리기사 필기 요약 pdf
2025년도 정보처리기사 시험일정
📂 정보처리기사 필기 1과목 소프트웨어 설계
01. [필기 | 소프트웨어 설계] 소프트웨어 생명 주기 모형
02. [필기 | 소프트웨어 설계] 스크럼과 XP
03. [필기 | 소프트웨어 설계] 현행 시스템 파악 / 데이터베이스 관리 시스템(DBMS) / 웹 에플리케이션 서버(AWS)
04. [필기 | 소프트웨어 설계] 요구사항 정의
05. [필기 | 소프트웨어 설계] 요구사항 분석
06. [필기 | 소프트웨어 설계] UML(Unified Modeling Language)
07. [필기 | 소프트웨어 설계] 사용자 인터페이스(UI)
08. [필기 | 소프트웨어 설계] 품질 요구사항
09. [필기 | 소프트웨어 설계] 소프트웨어 아키텍처 설계
10. [필기 | 소프트웨어 설계] 패턴
11. [필기 | 소프트웨어 설계] 객체와 클래스
12. [필기 | 소프트웨어 설계] 객체지향
13. [필기 | 소프트웨어 설계] 모듈
14. [필기 | 소프트웨어 설계] 코드
15. [필기 | 소프트웨어 설계] 디자인 패턴
16. [필기 | 소프트웨어 설계] 시스템 연계
✏️ 요구사항 정의
요구사항은 소프트웨어가 어떤 문제를 해결하기 위해 제공하는 서비스에 대한 설명과 정상적으로 운영되는데 필요한 제약조건 등을 나타냄
요구사항의 유형
- 기능 요구사항 (Functional requirements)
- 시스템이 무엇을 하는지, 어떤 기능을 하는지에 대한 사항
- 시스템의 입력이나 출력으로 무엇이 포함되어야 하는지, 시스템이 어떤 데이터를 저장하거나 연산을 수행해야 하는지에 대한 사항
- 시스템이 반드시 수행해야 하는 기능
- 사용자가 시스템을 통해 제공받기를 원하는 기능
- 비기능 요구사항(Non-functional requirements)
- 시스템 장비 구성 요구사항
하드웨어, 소프트웨어, 네트워크 등의 시스템 장비 구성에 대한 요구사항 - 성능 요구사항
처리 속도 및 시간, 처리량, 동적/정적 적용량, 가용성 등 성능에 대한 요구사항 - 인터페이스 요구사항
시스템 인터페이스와 사용자 인터페이스에 대한 요구사항으로 다른 소프트웨어, 하드웨어 및 통신 인터페이스, 다른 시스템과의 정보 교환에 사용되는 프로토콜과의 연계도 포함하여 기술 - 데이터 요구사항
초기 자료 구축 및 데이터 변환을 위한 대상, 방법, 보안이 필요한 데이터 등 데이터를 구축하기 위해 필요한 요구사항 - 테스트 요구사항
도입되는 장비의 성능 테스트(BMT)나 구축된 시스템이 제대로 운영되는지를 테스트하고 점검하기 위한 테스트 요구사항 - 보안 요구사항
시스템의 데이터 및 기능, 운영 접근을 통제하기 위한 요구사항 - 품질 요구사항
관리가 필요한 품질 항목, 품질 평가 대상에 대한 요구사항으로 가용성, 정합성, 상호 호환성, 대응성, 신뢰성, 사용성, 유지/관리성, 이식성, 확장성, 보안성 등으로 구분하여 기술 - 제약사항
시스템 설계, 구축, 운영과 관련하여 사전에 파악된 기술, 표준, 업무, 법/제도 등의 제약조건 - 프로젝트 관리 요구사항
프로젝트의 원활한 수행을 위한 관리 방법에 대한 요구사항 - 프로젝트 지원 요구사항
프로젝트의 원활한 수행을 위한 지원 사항이나 방안에 대한 요구사항
- 시스템 장비 구성 요구사항
✏️ 요구사항 개발 프로세스
개발 대상에 대한 요구사항을 체계적으로 도출하고 이를 분석한 후 분석 결과를 명세서(Specification Document)에 정리한 다음 마지막으로 이를 확인 및 검증하는 일련의 구조화된 활동
- 요구사항 도출 (Requirement Elicitation, 요구사항 수집)
- 시스템, 사용자, 시스템 개발에 관련된 사람들이 서로 의견을 교환하여 요구사항이 어디에 있는지, 어떻게 수집할 것인지 식별하고 이해하는 과정
- 요구사항 도출하는 주요 기법 : 청취, 인터뷰, 설문, 브레인스토밍, 워크샵, 프로토타이핑, 유스케이스 등
- 요구사항 분석 (Requirement Analysis)
- 개발 대상에 대한 사용자의 요구사항 중 명확하지 않거나 모호하여 이해되지 않는 부분을 발견하고 이를 걸러내기 위한 과정
- 요구사항 명세 (Requirement Specification)
- 분석된 요구사항을 바탕으로 모델을 작성하고 문서화
- 구체적인 명세를 위해 소단위 명세서(Mini-Spec) 사용될 수 있음
- 요구사항 확인 (Requirement Validation, 요구사항 검증)
- 개발 자원을 요구사항에 할당하기 전에 요구사항 명세서가 정확하고 완전하게 작성되었는지 검토하는 과정
✏️ 요구사항 명세 기법
구분 | 정형 명세 기법 | 비정형 명세 기법 |
기법 | 수학적원리 기반, 모델 기반 | 상태, 기능, 객체 중심 |
작성 방법 | 수학적 기호, 정형화된 표기법 | 일반 명사, 동사 등의 자연어를 기반으로 서술 또는 다이어그램으로 작성 |
특징 | · 요구사항을 정확하고 간결하게 표현 가능 · 요구사항에 대한 결과가 작성자에 관계없이 일관성 -> 완전성 검증 가능 · 표기법이 어려워 사용하자가 이해하기 어려움 |
·자연어의 사용으로 인해 요구사항에 대한 결과가 작성자에 따라 다를 수 있음 -> 일관성이 떨어지고, 해석이 달라질 수 있음 ·내용의 이해가 쉬워, 의사소통이 용이함 |
종류 | VDM, Z, Petri-net, CSP 등 | FSM, Decision Table, ER모델링, State Chart(SADT) 등 |
✏️ 요구사항 분석의 개요
요구사항 분석은 소프트웨어 개발의 실제적인 첫 단계로, 개발 대상에 대한 사용자의 요구사항을 이해하고 문서화(명세화)하는 활동을 의미함
- 사용자의 요구의 타당성을 조사하고 비용과 일정에 대한 제약 설정
- 사용자의 요구를 정확하게 추출하여 목표를 정하고, 어떤 방식으로 해결할 것인지 결정
- 요구사항 분석을 통한 결과는 소프트웨어 설계 단계에서 필요한 기본적인 자료가 되므로, 사용자의 요구사항을 정확하고 일관성 있게 분석하여 문서화 해야함
- 소프트웨어 분석가에 의해 요구사항 분석이 수행됨 ( = 요구사항 분석 단계)
- 요구사항 분석을 위한 도구 및 방법
- 애자일(Agile) 방법
- UML(Unified Modeling Language)
- 자료 흐름도(DFD)
- 자료 사전(DD)
- 소단위 명세서(Mini-Spec)
- 개체 관계도(ERD)
- 상태 전이도(STD)
- 제어 명세서
✏️ 요구사항 검증 방법
- 요구사항 검토(Requirements Review)
요구사항 명세서의 오류 확인 및 표준 준수 여부 등의 결함 여부를 검토 담당자들이 수작업으로 분석하는 방법으로, 동료 검토, 워크스루, 인스펙션 등이 있음
동료검토 (Peer Review) |
요구사항 명세서 작성자가 명세서 내용을 직접 설명하고 동료들이 이를 들으면서 결함을 발견하는 형태의 검토 방법 |
워크스루 (Walk Through) |
검토 회의 전에 요구사항 명세서를 미리 배포하여 사전 검토한 후에 짧은 검토 회의를 통해 결함을 발견하는 형태의 검토 방법 |
인스펙션 (Inspection) |
요구사항 명세서 작성자를 제외한 다른 검토 전문가들이 요구사항 명세서를 확인하면서 결함을 발견하는 형태의 검토 방법 |
- 프로토타이핑(Prototyping)
사용자의 요구사항을 정확히 파악하기 위해 실제 개발될 소프트웨어에 대한 견본품(Prototype)을 만들어 최종 결과물을 예측
- 테스트 설계
요구사항은 테스트할 수 있도록 작성되어야 하며, 이를 위해 테스트 케이스(Test Case)를 생성하여 이후에 요구사항이 현실적으로 테스트 가능한지를 검토
- CASE 도구 활용
일관성 분석(Consistency Analysis)을 통해 요구사항 변경사항의 추적 및 분석, 관리하고, 표준 준수 여부를 확인함
728x90
반응형