1과목 - 소프트웨어 설계
4장. 인터페이스 설계
27. 시스템 인터페이스 요구사항
시스템 인터페이스 요구사항 구성
- 시스템 인터페이스는 독립적으로 떨어져 있는 시스템들끼리 연동하여 사용하기 위한 접속 방법이나 규칙
- 시스템 인터페이스 요구사항 명세서
- 인터페이스 이름 및 주기 / 연계 대상 시스템 / 연계 방식 / 송신 데이터 (수신 데이터 미포함) 등 포함
- 요구사항 명세서는 요구사항 단위별로 작성
시스템 인터페이스 요구사항 분석
- 요구사항 명세서에서 기능적 요구사항과 비기능적 요구사항으로 분류하고 요구사항 명세를 구체화
- 요구사항 분석은 소프트웨어 요구사항 분석 기법을 적절히 이용
- 요구사항에 대한 상대적 중요도를 평가하여 우선순위 부여
- 요구사항의 분해가 필요한 경우 적절한 수준으로 세분화
시스템 인터페이스 요구사항 분석 절차
- 요구사항 목록에서 시스템 인터페이스 관련 요구사항을 선별하여 별도의 시스템 인터페이스 요구사항 목록 구성
- 시스템 인터페이스 요구사항과 관련된 자료 준비
- 요구사항 명세서를 확인하여 기능적 요구사항과 비기능적 요구사항으로 분류
- 요구사항을 분석하고 내용을 추가하거나 수정
- 추가 및 수정한 시스템 인터페이스 요구사항 명세서와 요구사항 목록을 이해관계자에게 전달
28. 인터페이스 요구사항 검증
요구사항 검증 (Requirements Verification)
- 요구사항 검증은 인터페이스 설계 및 구현 전에 사용자들의 요구사항이 요구사항 명세서에 잘 기술되었는지 검토하고, 개발 범위의 베이스라인을 설정하는 것
- 인터페이스 설계 및 구현 단계에서 요구사항 명세서의 오류 발견 시 많은 수정 비용이 필요하기 때문에 요구사항 검증이 중요
- 요구사항 검증 순서
- 요구사항 검토 계획 수립
- 검토 및 오류 수정
- 베이스라인 설정
인터페이스 요구사항 검토 계획 수립
- 이해관계자들이 프로젝트 품질 관리 계획을 참조하여 인터페이스 요구사항 검토 계획 수립
- 검토 계획
- 검토 기준 및 방법 : 프로젝트 규모와 참여 인력, 검토 기간 등 고려
- 참여자 : 요구사항 검토 참여자 선정
- 체크리스트 : 완전성, 일관성, 명확성 등의 항목을 체크할 수 있는 검토 체크리스트 작성
- 관련 자료 : 요구사항 검토에 필요한 자료 준비
- 일정
- 검토 계획이 수립되면 인터페이스 요구사항 검토 참여자들에게 관련 자료와 일정 전달
인터페이스 요구사항 검토 및 오류 수정
- 검토 체크리스트 항목에 따라 인터페이스 요구사항 명세서 검토
- 오류 발견 시 수정할 수 있도록 오류 목록과 시정 조치서 작성
- 검토 결과를 검토 관련자들에게 전달
인터페이스 요구사항 베이스라인 설정
- 소프트웨어 설계 및 구현을 위해 요구사항 명세서의 베이스라인 설정
요구사항 검증 방법
- 요구사항 검토 (Requirements Review)
- 요구사항 명세서의 오류나 결함을 검토 담당자들이 수작업으로 분석하는 방법
- 동료검토 (Peer Review) : 명세서 작성자가 명세서 내용을 설명하고 동료들이 들으면서 결함을 발견하는 형태
- 워크스루 (Walk Through) : 검토 회의 전 명세서를 미리 배포하여 사전 검토 후 회의하면서 결함을 발견하는 형태
- 인스펙션 (Inspection) : 명세서 작성자를 제외한 다른 검토 전문가들이 확인하면서 결함을 발견하는 형태
- 프로토타이핑 (Protoyping)
- 요구사항을 정확히 파악하기 위해 견본품을 만들어 최종 결과물을 예측
- 테스트 설계
- 테스트 케이스를 생성하여 검토
- CASE (Computer Aided Software Engineering) 도구 활용 : 일관성 분석을 통해 확인
인터페이스 요구사항 검증의 주요 항목
- 완전성 (Completeness) : 사용자의 모든 요구사항이 완전히 반영되었는가
- 일관성 (Consistency) : 요구사항이 모순되는 점 없이 일관성을 유지하는가
- 명확성 (Unambiguity) : 모든 참여자가 요구사항을 이해할 수 있는가
- 기능성 (Functionality) : 요구사항이 How보다 What에 중점을 두고 있는가
- 검증 가능성 (Verifiability) : 요구사항이 사용자의 요구를 만족하고, 개발된 소프트웨어가 요구 내용과 일치하는지 검증할 수 있는가
- 추적 가능성 (Traceability) : 요구사항 명세서와 설계서를 추적할 수 있는가
- 변경 용이성 (Easily Changeable) : 요구사항 명세서의 변경이 쉽도록 작성되었는가
30. 송수신 데이터 식별
식별 대상 데이터
- 식별 대상 데이터는 송수신 시스템 사이에서 교환되는 데이터로 규격화된 표준 형식에 따라 전송
- 데이터 종류
- 인터페이스 표준 항목
- 시스템 공통부 : 시스템 간 연동 시 필요한 공통 정보
- 거래 공통부 : 시스템 연동 후 송수신되는 데이터를 처리할 때 필요한 정보
- 송수신 데이터 항목
- 공통 코드
- 인터페이스 표준 항목
정보 흐름 식별
- 개발할 시스템과 내외부 시스템 사이에서 전송되는 정보들의 방향성 식별
31. 인터페이스 방법 명세화
인터페이스 방법 명세화의 개념
- 인터페이스별로 송수신 방법 등을 문서로 명세화하는 것
- 필요한 정보
- 시스템 연계 기술
- 인터페이스 통신 유형
- 처리 유형
- 발생 주기
시스템 연계 기술
- 개발할 시스템과 내외부 시스템을 연계할 때 사용되는 기술
- DB Link : DB Link 객체를 이용하는 방식
- API/Open API : 송신 시스템 데이터베이스에서 데이터를 읽어 와 제공하는 프로그램
- 연계 솔루션 : EAI 서버와 클라이언트를 이용하는 방식
- Socket : 통신을 위한 소켓을 생성하여 포트를 할당하고 클라이언트와 통신하는 기술
- Web Service : WSDL / UDDI 등을 이용하여 연계하는 서비스
인터페이스 통신 유형
- 개발할 시스템과 내외부 시스템 간 데이터를 송수신하는 형태
- 단방향 : 시스템에서 거래를 요청만 하고 응답이 없는 방식
- 동기 : 시스템에서 거래를 요청하고 응답이 올 때까지 대기하는 방식
- 비동기 : 시스템에서 거래를 요청하고 다른 작업을 수행하다 응답이 오면 처리하는 방식
인터페이스 처리 유형
- 송수신 데이터를 어떤 형태로 처리할 것인지에 대한 방식
- 실시간 방식 : 사용자가 요청한 내용을 바로 처리해야 할 때 사용
- 지연 처리 방식 : 데이터를 매건 단위로 처리할 경우 비용이 많이 발생할 때 사용
- 배치 방식 : 대량의 데이터를 처리할 때 사용하는 방식
인터페이스 발생 주기
- 매일 / 수시 / 주 1회 등으로 구분
33. 미들웨어 솔루션 명세
미들웨어 (Middleware) 개념 및 종류
- 미들웨어는 운영체제와 응용 프로그램 사이에서 추가적인 서비스를 제공하는 소프트웨어
- 표준화된 인터페이스를 제공함으로써 시스템 간 데이터 교환 시 일관성 보장
DB (DataBase)
- 클라이언트에서 원격의 데이터베이스와 연결하기 위한 미들웨어
- 2-Tier 아키텍처 : DB를 사용하여 시스템을 구축하는 것
- ex) 마이크로소프트의 ODBC / IDAPI / Glue
RPC (Remote Procedure Call)
- RPC (원격 프로시저 호출)는 원격 프로시저를 로컬 프로시저처럼 호출하는 방식의 미들웨어
MOM (Message Oriented Middleware)
- 메시지 기반의 비동기형 메시지를 전달하는 방식의 미들웨어
- ex) IBM의 MQ / 오라클의 Message Q
TP-Monitor (Transaction-Processing Monitor)
- 항공기나 철도 예약 업무 등과 같은 온라인 트랜잭션 업무에서 트랜잭션을 처리 및 감시하는 미들웨어
- 사용자 수가 증가해도 빠른 응답 속도를 유지해야 하는 업무에 주로 사용
- ex) 티맥스소프트의 tmax
ORB (Object Request Broker)
- 객체 지향 미들웨어로 코바(CORBA) 표준 스펙을 구현한 미들웨어
WAS (Web Application Server)
- 정적인 콘텐츠를 처리하는 웹 서버와 달리 사용자 요구에 따라 변하는 동적인 컨텐츠를 처리하기 위해 사용되는 미들웨어
- ex) 오라클의 WebLogic / IBM의 WebSphere
미들웨어 솔루션 식별
- 개발 및 운영 환경에 사용될 미들웨어 솔루션을 확인하고 목록을 작성
미들웨어 솔루션 명세서 작성
- 미들웨어 솔루션 목록의 미들웨어 솔루션별로 관련 정보를 상세히 기술