요구사항 문서화 ⭐ 비정형 명세기법 정형 명세기법 - 자연어를 기반으로 서술 - 작성하기 쉬우나, 애매모호한 표현으로 달리 해석될 위험이 있음 - 수학적 원리와 표기법 - Z 정형 명세 언어 요구사항 검증 방법 동료 검토 Peer Review - 2 ~ 3 명 (주로 2명)이 진행하는 리뷰의 형태 - 요구 사항 명세서 작성자가 요구 사항 명세서를 설명하고 이해관계자들이 결함을 발견하는 형태 워크스루 Walk Through - 검토 자료를 회의 전에 배포해서 사전 검토한 후 짧은 시간 동안 회의를 진행하는 형태로 리뷰를 통해 오류를 조기에 검출하고 문서화 함 인스펙션 Inspection - 1970년대 초 IBM의 마이클 페이건에 의해 정립된 개념 - 소프트웨어 요구, 설계, 원시 코드 등의 저작자 외의 ..
응집도 - 모듈 내부에서 구성 요소 간에 밀접한 관계를 맺고 있음 - 응집도가 높을수록 필요한 요소들로 구성 / 응집도가 낮을수록 관련이 적은 요소들로 구성 1) 응집도의 유형 구분 설명 기능적 응집도 Functional Cohesion - 모듈 내부의 모든 기능이 단일한 목적을 위해 수행 예) 원 넓이 계산 순차적 응집도 Sequential Cohesion - 한 활동으로부터 나온 출력값을 다른 활동이 사용할 경우 통신적 응집도 Communication Cohesion - 동일한 자료를 사용하여 다른 기능을 수행하는 활동들이 모여있을 경우 - 처리 순서는 상관 없음 절차적 응집도 Procedural Cohesion - 관련없는 기능 요소가 배열된 순서로 수행됨 - 요소들이 서로 관련없다는 것만 빼면 순..
소프트웨어 아키텍쳐 패턴 - 소프트웨어 시스템의 구조를 구성하기 위한 기본 틀이 제시되어 개발 시간 단축 가능 - 검증 구조로 개발외더 있어 안정적 개발이 가능 - 공통 아키텍쳐가 공유되므로 의사소통 간편 - 이해하기 쉬운 시스템 구조 > 쉬운 유지보수 1) 계층화 패턴 / 레이어드 패턴 (Layered pattern) - 하위 모듈들의 그룹으로 나눌 수 있는 구조화된 프로그램 - 일반적인 데스크톱 애플리케이션, 전자상거래 웹 애플리케이션 2) 클라이언트 - 서버 패턴 (Client - server pattern) - 클라이언트가 서버에 서비스를 요청하면 서버는 클라이언트에게 적절한 서비스를 제공 - 이메일, 문서 공유 및 은행 등의 온라인 애플리케이션 3) 마스터 - 슬레이브 패턴 (Master - s..
미들웨어의 종류 - 정의 : 서로 다른 애플리케이션이 서로 통신하는데 사용되는 소프트웨어 1) RPC (Remote Procedure Call) - 클라이언트가 원격에서 동작하는 프로시저를 호출하는 시스템 2) MOM (Message Oriented Middleware) - 분산 응용 프로그램 간에 메시지를 보내고 받으면서 데이터를 전달하고 교환할 수 있게 해주는 미들웨어 3) ORB (Object Request Broker) - 객체지향 시스템에서 객체 및 서비스를 요청하고 전송할 수 있도록 지원하는 미들웨어 4) DB 접속 미들웨어 - 애플리케이션과 데이터베이스 서버를 연결해주는 미들웨어 5) TP 모니터 (Transaction Processing monitor) - 분산 시스템의 애플리케이션을 지원..
EAI(Enterprise Application Integration) 1) EAI의 개념 - 기업에서 운영되는 서로 다른 플랫폼 및 애플리케이션들 간의 정보 전달, 연계, 통합을 가능하게 해 주는 솔루션이다 - EAI를 사용함으로써 각 비즈니스 간 통합 및 연계성을 증대시켜 효율성을 높여 줄 수 있으며 각 시스템 간의 확장성을 높여 줄 수 있다 2) EAI의 구축 유형 유형 Point-to-Point Hub & Spoke 개념도 설명 중간에 미들웨어를 두지 않고 각 애플리케이션간 Point to Point 형태로 연결 단일 접점이 허브 시스템을 통해 데이터를 전송하는 중앙 집중적 방식 특징 솔루션 구매 없이 통합 상대적 저렴하게 통합 가능 변경, 재사용 어려움 모든 데이터 전송보장 확장, 유지보수 용이..
테스트 오라클 1) 정의 - 테스트의 결과가 참인지 거짓인지를 판단하기 위해서 사전에 정의된 참 값을 입력하여 비교하는 기법 및 활동 2) 유형 - 참(True) 오라클 : 모든 입력 값에 대하여 기대하는 결과를 생성함으로써 발행된 오류를 모두 검출할 수 이쓴 오라클 - 샘플링(Sampling) 오라클 : 특정한 몇 개의 입력 값에 대해서만 기대하는 결과를 제공해 주는 오라클 - 휴리스틱(Heuristic) 오라클 : 샘플링 오라클을 개선한 오라클로, 특정 입력 값에 대해 올바른 결과를 제공하고, 나머지 값들에 대해서는 휴리스틱(추정)으로 처리하는 오라클 - 일관성 검사(Consistent) 오라클 : 애플리케이션 변경이 있을 때, 수행 전과 후의 결과 값이 동일한지 확인하는 오라 테스트 레벨 1) 정의..