소프트웨어 패키징 모듈별로 생성한 실행 파일들을 묶어 배포용 설치파일을 만드는 것을 말한다 개발자가 아니라 사용자 중심 작업 순서 기능 식별 모듈화 빌드 진행 사용자 환경 분석 패키징 및 적용 시험 패키징 변경 개선 배포 릴리즈 노트 작성 항목 HEADER(머릿말) : 릴리즈 노트 이름, 소프트웨어 이름, 릴리즈 버전, 릴리즈 날짜, 릴리즈 노트 버전 개요 : 해당 릴리즈 버전에서 변경 사항 전체에 대한 간략한 내용 목적 : 해당 릴리즈 버전에서의 새로운 기능이나 수정된 기능의 목록과 릴리즈 노트의 목적에 대한 간략한 개요 문제 요약 : 수정된 버그에 대한 간략한 설명 또는 릴리즈 추가 항목에 대한 요약 재현 항목 : 버그 발견에 대한 과정 설명 수정/개선 내용 : 버그를 수정/개선한 내용을 간단히 설명..
IP(INTERNET PROTOCOL ADDRESS) 주소 인터넷에 연결된 모든 컴퓨터 자원을 구분하기 위한 고유한 주소 IPV4 : 8비트 씩 4부분, 총 32비트로 구성, 네트워크 길이에 따라 A클래스에서 E클래스까지 총 5단계 구성 IPV6 IPV4의 주소 부족 문제를 해결하기 위해 개발, 16비트 씩 총 8 부분 128비트로 구성 각 부분을 16진수로 표현하고, 콜론으로 구분 인증성, 기밀성, 데이터의 무결성의 지원으로 보안 문제 해결 가능 IPV6의 주소 체계 유니캐스트 : 단일 송신자와 단일 수신자 간의 통신(1대1 통신) 멀티캐스트 : 단일 송신자와 다중 수신자 간의 통신(1대 다 통신) 애니캐스트 : 단일 송신자와 가장 가까이 있는 단일 수신자 간의 통신(1대1 통신) 서브네팅(SUBNET..
운영체제(OS, OPERATING SYSTEM) 컴퓨터 시스템의 자원들을 효율적으로 관리하며, 편리하고 효과적으로 사용할 수 있도록 환경을 제공하는 여러 프로그램의 모임 시스템 소프트웨어의 일종 프로세서(CPU), 기억장치(메모리), 입출력장치, 파일 및 정보 등의 자원을 관리한다 운영체제의 목적 처리능력 : 일정 시간 내에 시스템이 처리하는 일의 양 반환시간 : 시스템에 작업을 의뢰한 시간부터 처리가 완료될 때까지 걸린 시간 사용 가능도: 시스템을 사용할 필요가 있을 때 즉시 사용 가능한 정도 신뢰도 : 시스템이 주어진 문제를 정확하게 해결하는 정도 UNIX UNIX는 AT&T 벨(BELL) 연구소, MIT, GENERAL ELECTRIC이 공동 개발한 운영체제 시분할 시스템을 위해 설계된 대화식 운영..
Secure SDLC SDLC에 보안 강화를 위한 프로세스를 포함한 것 SECURE SDLC의 방법론 CLASP : SDLC의 초기 단계에서 보안을 강화하기 위해 개발된 방법론 SDL : 마이크로소프트 사에서 안전한 소프트웨어 개발을 위해 기존의 SDLC를 개선한 방법론 SEVEN TOUCHPOINTS : 소프트웨어 보안의 모범사례를 SDLC에 통합한 방법론 소프트웨어 개발 보안 요소 기밀성, 무결성, 가용성을 보안의 3대요소라 한다. 기밀성 : 시스템 내의 정보와 자원은 인가된 사용자에게만 접근이 허용 무결성 : 시스템 내의 정보는 오직 인가된 사용자만 수정 가능 가용성 : 인가받은 사용자는 시스템 내의 정보와 자원을 언제라도 사용 가능 인증 : 시스템 내의 정보와 자원을 사용하려는 사용자가 합법적인 ..
DDL(DATA DEFINE LANGUAGE, 데이터 정의어) DB 구조, 데이터 형식, 접근 방식 등 DB를 구축하거나 수정할 목적으로 사용하는 언어 DDL의 3가지 유형 CREATE : SCHEMA, DOMAIN, TABLE, VIEW,INDEX를 정의함 ALTER : TABLE에 대한 정의를 변경하는 데 사용 DROP : SCHEMA, DOMAIN, TABLE, VIEW, INDEX를 삭제함 DDL - CREATE DOMAIN 도메인을 정의하는 명령문 CREATE DOMAIN 도메인명 [AS] CHAR(1) [DEFAULT 기본값] [CONSTRAINT 제약조건명 CHECK (범위값)]; 데이터타입 : SQL에서 지원하는 데이터 타입 기본값 : 데이터를 입력하지 않았을 때 자동으로 입력되는 값 CR..
애플리케이션 테스트 애플리케이션에 잠재되어 있는 결함을 찾아내는 일련의 행위 또는 절차 고객의 요구사항 만족 확인(VALIDATION), 기능 수행 검증(VERIFICATION) 애플리케이션 테스트의 기본원리 파레토의 법칙 애플리케이션의 20%에 해당하는 코드에서 전체 결함의 80%가 발견된다는 법칙 살충제 패러독스 동일한 테스트 케이스로 동일한 테스트를 반복하면 더 이상 결함이 발견되지 않는 현상 오류-부재의 궤변 소프트웨어의 결함을 모두 제거해도 사용자의 요구사항을 만족시키지 못하면 해당 소프트웨어는 품질이 높다고 말할 수 없는 것 프로그램 실행 여부에 따른 테스트 정적 테스트 프로그램을 실행하지 않고 명세서나 소스코드를 대상으로 분석하는 테스트 소스코드에 대한 코딩 표준, 코딩 스타일, 코드 복잡도..
UI / UX UI(USER INTERFACE, 사용자 인터페이스) 사용자와 시스템 간의 상호작용이 이뤄지도록 도와주는 장치나 소프트웨어 UX(USER EXPERIENCE, 사용자 경험) 사용자가 시스템이나 서비스를 이용하면서 느끼고 생각하게 되는 총체적인 경험 UI의 구분 CLI(COMMAND LINE INTERFACE) : 명령과 출력이 텍스트 형태로 이뤄지는 인터페이스 GUI(GRAPHIC USER INTERFACE) : 아이콘이나 메뉴를 마우스로 선택하여 작업을 수행하는 인터페이스 NUI(NATURAL USER INTERFACE) : 사용자의 자연스러운 움직ㅇ미으로 기기를 조작하는 인터페이스 UI의 기본원칙 직관성 : 누구나 쉽게 이해하고 사용할 수 있어야함 유효성 : 사용자의 목적을 정확하고 완..
인터페이스 요구사항 검증 요구사항이 요구사항 명세서에 정확하게 완전하게 기술되었는지 검토하고 베이스라인을 설정하는 것 수행 순서 : 요구사항 검토 계획 수립 -> 검토 및 오류 수정 -> 베이스라인 설정 요구사항 검증 방법 요구사항 검토(Requirements Review) 검토 담당자들이 수작업으로 분석하는 방법 동료 검토(peer Review) : 명세서 작성자가 설명, 동료들이 이를 들으며 결함 발견 워크 스루(walk Through) : 검토 회의전에 요구사항 명세서를 미리 배포, 사전 검토 후 짧은 검토 회의 인스펙션(inspection) : 요구사항 명세서 작성자를 제외한 나머지 전문가들이 결함 발견 프로토 타이핑 실제 개발될 견본품을 만들어 최종 결과물 예측 테스트 설계 테스트 케이스를 생성..
모듈 모듈화를 통해 분리된 시스템의 각 기능 서브루틴, 서브시스템, 소프트웨어 내의 프로그램, 작업 단위 등을 의미 모듈의 기능적 독립성 : 소프트웨어를 구성하는 각 모듈의 기능이 서로 독립됨 모듈의 독립성은 결합도, 응집도에 의해 측정 결합도 모듈 간의 상호 의존하는 정도 결합도가 약할 수록 품질이 높고, 강할 수록 품질이 낮다 결합도의 종류 하단으로 갈 수록 결합도가 낮다 내용 결합도(Content Coupling) 한 모듈이 다른 모듈의 내부 기능 및 그 내부 자료를 참조하거나 수정할 때의 결합도이다. 공통(공유) 결합도(Common Coupling) 공유되는 데이터 영역을 여러 모듈이 사용할 때의 결합도이다. 외부 결합도(External Coupling) 어떤 모듈에서 선언한 데이터를 외부의 다른..
개발 환경 구축 응용 소프트 웨어 개발을 위해 개발 프로젝트를 이해하고 소프트웨어 및 하드웨어 장비를 구축하는 것 하드웨어 환경 사용자와 인터페이스 역할을 하는 클라이언트(client), 클라이언트와 통신하여 서비스를 제공하는 서버(server)로 구성 클라이언트 종류 : 개인용 컴퓨터(PC), 스마트폰 드 서버의 종류 웹 서버(WEB SERVER) 웹 애플리케이션 서버(WAS) 데이터베이스 서버(DB SERVER) 파일 서버(FILE SERVER) 소프트웨어 환경 클라이언트와 서버 운영을 위한 시스템 소프트웨어와 개발에 사용되는 개발 소프트웨어로 구성 시스템 소프트웨어 종류 : 운영체제(OS), 웹서버 및 WAS 운용을 위한 서버 프로그램, DBMS 등 개발 소프트웨어 종류 : 요구사항 관리 도구, 설..
유스케이스 다이어그램 유스케이스 다이어그램은 사용자와 다른 외부 시스템들이 개발될 시스템을 이용해 수행할 수 있도록 "사용자 관점"에서 표현한 것 유스케이스 다이어그램의 구성요소 시스템 : 시스템 내부의 유스케이스들을 사각형으로 묶어 시스템의 범위를 표현한 것 액터 : 시스템과 상호작용을 하는 모든 외부 요소 주액터 : 시스템을 사용함으로써 이득을 얻는 대상으로, 주로 사람이 해당 부액터 : 주액터의 목적 달성을 위해 시스템에 서비스를 제공하는 외부시스템 유스케이스 : 사용자가 보는 관점에서 시스템이 액터에게 제공하는 서비스나 기능을 표현한 것 관계 : 유스케이스 다이어그램에서의 관계는 액터와 유스케이스, 유스케이스와 유스케이스 사이에서 나타날 수 있음 포함, 확장, 일반화 관계 유스케이스에서 나타날 수..