인터페이스 요구사항 검증(Interface Requirements Verification)
- 인터페이스의 설계 및 구현 전에 사용자들의 요구사항이 요구사항 명세서에 정확하고 완전하게 기술되었는지 검토하고 개발 범위의 기준인 베이스라인을 설정하는 것
- 설계 및 구현 중에 요구사항 명세서의 오류가 발견되어 이를 수정할 경우 많은 비용이 소요되므로 프로젝트에서 요구사항 검증은 매우 중요
- 요구사항 검토 계획 수립 -> 검토 및 오류 수정 -> 베이스라인 설정 순으로 수행
인터페이스 요구사항 검토 계획 수립
- 검토 기준 및 방법 : 프로젝트의 규모와 참여 인력, 검토 기간 등을 고려하여 검토 기준 및 방법을 정함
- 참여자 : 프로젝트 관리자, 인터페이스 분석가, 소프트웨어 아키텍트, 시스템 사용자, 테스트 관리자 등 요구사항 검토 참여자를 선정
- 체크리스트 : 완전성, 일관성, 명확성 등의 항목을 점검할 수 있는 요구사항 체크리스트를 작성
- 관련자료 : 인터페이스 요구사항 목록, 인터페이스 요구사항 명세서, 현행 및 표준 시스템 구성도 등 검토에 필요한 자료 준비
- 일정 : 인터페이스 요구사항 검토 일정을 정함
요구사항 검토(Requirements Review)
- 요구사항 명세서의 오류 확인 및 표준 준수 여부 등의 결함 여부를 검토 담당자들이 수작업으로 분석하는 방법
동료검토(Peer Review) | 요구사항 명세서 작성자가 명세서 내용을 직접 설명하고 동료들이 이를 들으면서 결함을 발견하는 형태의 검토 방법 |
워크스루(Walk Through) | 검토 회의 전에 요구사항 명세서를 미리 배포하여 사전 검토한 후에 짧은 검토 회의를 통해 결함을 발견하는 형태의 검토 방법 |
인스펙션(Inspection) | 요구사항 명세서 작성자를 제외한 다른 검토 전문가들이 요구사항 명세서를 확인하면서 결함을 발견하는 형태의 검토 방법 |
- CASE(Computer Aided Software Engineering) 도구 활용 : 일관성 분석(Consistency Analysis)을 통해 요구사항 변경사항의 추적 및 분석, 관리, 표준 준수 여부를 확인
인터페이스 요구사항 검증의 주요 항목
- 완전성(Completeness)
- 일관성(Consistency)
- 명확성(Unambiguity)
- 기능성(Functionality)
- 검증 가능성(Verifiability)
- 추적 가능성(Traceability)
- 변경 용이성(Easily Changeable)
인터페이스 방법 명세화의 개념
- 내·외부 시스템이 연계하여 작동할 때 인터페이스별 송·수신 방법, 송·수신 데이터, 오류 식별 및 처리 방안에 대한 내용을 문서로 명확하게 정리하는 것
시스템 연계 기술
- 개발할 시스템과 내·외부 시스템을 연계할 때 사용되는 기술을 의미
- DB Link : DB에서 제공하는 DB Link 객체를 이용하는 방식
- API/Open API : 송신 시스템의 데이터베이스에서 데이터를 읽어와 제공하는 애플리케이션 프로그래밍 인터페이스 프로그램
- 연계 솔루션 : EAI 서버와 송·수신 시스템에 설치되는 클라이언트를 이요하는 방식
- Socket : 서버는 통신을 위한 소켓을 생성하여 포트를 할당하고 클라이언트 통신 요청 시 클라이언트와 연결하여 통시하는 네트워크 기술
- Web Service : WSDL, UDDI, SOAP 프로토콜을 이용하여 연계하는 서비스
※ WSDL(Web Services Description Language) : 웹 서비스와 관련된 서식이나 프로토콜 등을 표준적인 방법으로 기술하고 게시하기 위한 언어
※ UDDI(Universal Description Discovery and Integration) : 인터넷에서 전 세계의 비즈니스 업체 목록에 자신의 목록을 등록하기 위한 확장성 생성 언어 기반의 규격
※ SOAP(Simple Object Access Protocol) : 웹 서비스를 실제로 이용하기 위한 객체 간의 통신 규약
인터페이스 통신 유형
- 단방향 : 시스템에서 거래를 요청만 하고 응답이 없는 방식
- 동기 : 시스템에서 거래를 요청하고 응답이 올 때까지 대기하는 방식
- 비동기 : 시스템에서 거래를 요청하고 다른 작업을 수행하다 응답이 오면 처리하는 방식
인터페이스 처리 유형
- 실시간 방식 : 사용자가 요청한 내용을 바로 처리해야 할 때 사용하는 방식
- 지연 처리 방식 : 데이터를 매건 단위로 처리할 경우 비용이 많이 발생할 때 사용하는 방식
- 배치 방식 : 대량의 데이터를 처리할 때 사용하는 방식
미들웨어(Middleware)의 개념
- 미들(Middle)과 소프트웨어(Software)의 합성어로, 운영체제와 해당 운영체제에서 실행되는 응용 프로그램 사이에서 운영체제가 제공하는 서비스 이외의 추가적인 서비스를 제공하는 소프트웨어
- 표준화된 인터페이스를 제공함으로써 시스템 간의 데이터 교환에 일관성을 보장
DB(DataBase)
- 데이터베이스 벤더에서 제공하는 클라이언트에서 원격의 데이터베이스와 연결하기 위한 미들웨어
- 마이크로소프트(ODBC) , 볼랜드(IDAPI) , 오라클(Glue) 등이 있음
RPC(Remote procedure Call)
- 응용 프로그램의 프로시저를 사용하여 원격 프로시저를 마치 로컬 프로시저처럼 호출 하는 방식의 미들웨어
- 이큐브시스템스(Entera) , OSF(ONC/RPC) 등이 있음
MOM(Message Oriented Middleware)
- 메시지 기반의 비동기형 메시지를 전달하는 방식의 미들웨어
- 온라인 업무보다는 이기종 분산 데이터 시스템의 데이터 동기를 위해 많이 사용
- IBM(MQ) , 오라클(Message Q) , JCP(JMS) 등이 있음
TP-Monitor(Transaction Processing Monitor)
- 항공기나 철도 예약 업무 등과 같은 온라인 트랜잭션 업무에서 트랜잭션을 처리 및 감시하는 미들웨어
- 사용자 수가 증가해도 빠른 응답 속도를 유지해야 하는 업무에 주로 사용
- 오라클(tuxedo) , 티맥스소프트(tmax) 등이 있음
ORB(Object Request Broker)
- 객체 지향 미들웨어로 코바(CORBA) 표준 프섹을 구현한 미들웨어
- Micro Focus(Orbix) , OMG(CORBA) 등이 있음
WAS(Web Application Server)
- 정적인 콘텐츠를 처리하는 웹 서버와 달리 사용자의 요구에 따라 변하는 동적인 콘텐츠를 처리하기 위해 사용되는 미들웨어
- 클라이언트/서버 환경보다는 웹 환경을 구현하기 위한 미들웨어
- HTTP 세션 처리를 위한 웹 서버 기능뿐만 아니라 미션-크리티컬한 기업 업무까지 JAVA, EJB 컴포넌트 기반으로 구현이 가능
- 오라클(WebLogic), IBM(WebSphere) 등이 있음
데이터 흐름도(Data Flow Diagram)
- 시스템 구성요소인 프로세스와 프로세스 간 데이터 흐름을 표현하는 주요도구
데이터 흐름도(Data Flow Diagram)의 구성 요소
- 프로세스(process) : 입력된 데이터를 원하는 형태로 변환하여 출력하기 위한 과정
- 자료 흐름(data flow) : 데이터 흐름도(DFD)의 구성요소들 간의 데이터 흐름을 나타냄
- 자료 저장소(data store) : 데이터가 저장되는 장소
- 단말(terminator) : 시스템과 통신하는 외부 개체
개발 기술 환경
- 개발하고자 하는 소프트웨어와 관련된 운영체제, 데이터베이스 관리 시스템, 미들웨어 등을 선정할 때 고려해야 할 사항을 기술하고, 오픈 소스 사용 시 주의해야 할 내용을 제시
운영체제(OS, Operating System)
- 컴퓨터 시스템 자원들을 효율적으로 관리하며, 사용자가 컴퓨터를 편리하고 효율적으로 사용할 수 있도록 환경을 제공하는 소프트웨어
- 운영체제와 관련된 요구사항 : 가용성, 성능, 기술 지원, 주변 기기, 구축 비용
데이터베이스 관리 시스템(DataBase Management System)
- 사용자와 데이터베이스 사이에서 사용자의 요구에 따라 정보를 생성해 주고, 데이터베이스를 관리해 주는 소프트웨어
- 데이터베이스 관리 시스템과 관련된 요구사항 : 가용성, 성능, 기술 지원, 상호 호환성, 구축 비용
웹 어플리케이션 서버(WAS, Web Application Server)
- 정적인 콘텐츠 처리를 하는 웹 서버와 달리 사용자의 요구에 따라 변하는 동적인 콘텐츠를 처리하기 위해 사용되는 미들웨어
- 웹 어플리케이션 서버와 관련된 요구사항 : 가용성, 성능, 기술 지원, 구축 비용
오픈 소스 사용에 따른 고려사항
- 누구나 별다른 제한 없이 사용할 수 있도록 소스 코드를 공개한 것으로 오픈 소스 라이선스를 만족하는 소프트웨어
- 라이선스의 종류, 사용자 수, 기술의 지속 가능성 등을 고려해야 함
'1. 자격증 > 정보처리기사' 카테고리의 다른 글
[정보처리기사 필기] 2과목 소프트웨어 개발 - 2 (0) | 2020.08.01 |
---|---|
[정보처리기사 필기] 2과목 소프트웨어 개발 - 1 (0) | 2020.07.31 |
[정보처리기사 필기] 1과목 소프트웨어 설계 - 3 (0) | 2020.07.27 |
[정보처리기사 필기] 1과목 소프트웨어 설계 - 2 (0) | 2020.07.27 |
[정보처리기사 필기] 1과목 소프트웨어 설계 - 1 (0) | 2020.07.25 |