본문 바로가기

IT 용어 정리

(15)
모듈과 인터페이스란? 모듈이란? - 프로그램을 구성하는 구성 요소의 일부 - 관련된 데이터와 함수들이 묶여서 모듈을 형성 EX) 내가 만화방에서 쓰는 프로그램을 만든다고 가정을 해보자. 간략하게 프로그램을 세분류로 나눈다고 가정해보자 1. 고객관리 2. 도서관리 3. 매출관리 이렇게 크게 기능적으로 나누어진 프로그램을 가르켜 모듈이라고 합니다. 총 3개의 모듈로 고객관리 라는 프로그램이 하나의 모듈이되는거죠. 인터페이스란? - 구현된 것은 아무 것도 없는 밑그림만 있는 기본 설계도 - 인터페이스를 어떤 것에 중점을 두고 설계 하냐에 따라 나누어 질 수 있다. (EX. 사용자 인터페이스, 시스템 인터페이스 등) - 인터페이스 설계라고하면 겉테두리를 어떤식으로 설계를 할것인지 말하는거다. EX) 화면 인터페이스 - 사용자와 시스..
JSON과 XML이란? JSON이란? - 데이터를 저장하거나 전송할 때 많이 사용되는 경량의 DATA 교환 형식 - 최근에는 JSON이 XML을 대체해서 데이터 전송 등에 많이 사용한다. - JSON은 데이터 포맷일 뿐이며 어떠한 통신 방법도, 프로그래밍 문법도 아닌 단순히 데이터를 표시하는 표현 방법일 뿐이다. - JSON 문서 형식은 자바스크립트 객체의 형식을 기반으로 만들어졌다. - 자바스크립트의 문법과 굉장히 유사하지만 텍스트 형식일 뿐이다. - Ajax에서 많이 사용 - XML을 대체하는 주요 데이터 포맷형식 XML이란? - Extensible Markup Language의 약자로, 구조화된 정보를 정의하기 위한 마크업언어 - 데이터 값 양쪽으로 태그가 있다. - 어떠한 데이터를 설명하기 위해 이름을 임의로 지은 태그..
소프트웨어 개발비용 산정기법이란? 소프트웨어 개발비용 산정기법이란? - 소프트웨어 개발시 비용을 어떤식으로 산정할건지 정하는 기법으로 크게 상향식, 하향식 기법이 있습니다. 상향식 기법 - 프로젝트의 세부적인 작업 단위별로 비용을 산정한 후 전체 비용 산정 기법 설명 LOC 기법 소프트웨어 각 기능의 원시 코드 라인수의 비관치, 낙관치, 기대치를 측정하여 예측치를 구하고 이를 이용하여 비용산정 개발 단계별 인월수 LOC 기법을 보완하기 위한 기법으로, 각 기능을 구현시키는데 필요한 노력을 생명주기의 각 단계별로 산정 - 상향식 기법중 수학적 산정기법에 대해 알아보겠습니다. - 수학적 산정 기법은 상향식 비용 산정 기법으로 개발비용 산정의 자동화를 목표로 합니다. - 수학적 산정기법에는 COCOMO 모형, Putnam 모형, 기능점수(FP..
디자인 패턴이란? 디자인 패턴이란? - 소프트웨어를 설계할 때 특정 맥락에서 자주 발생하는 고질적인 문제들이 또 발생했을 때 재사용할 할 수있는 훌륭한 해결책 디자인 패턴의 종류 생성 패턴 이름 설명 추상 팩토리 구체적인 클래스에 의존 X 인터페이스를 통해 서로 연관 의존하는 그룹으로 생성 및 추상적으로 표현 빌더 작게 분리된 인스턴스를 건축하듯이 조합하여 객체 생성 팩토리 메소드 객체 생성을 서브 클래스에서 처리하도록 분리하여 캡슐화한 패턴 프로토타입 원본 객체를 복제하는 방법으로 객체를 생성 싱글톤 하나의 객체를 생성하면 생성된 객체를 어디서든 참조할수 있지만 여러 프로세스가 동시에 참조할수 없다 구조 패턴 이름 설명 어댑터 호환성이 없는 클래스들의 인터페이스를 다른 클래스가 이용할수있도록 변환 브리지 구현부에서 추상..
형상관리란? 형상관리란? - 개발 시간 단축을 위한 관리작업 - 개발 과정을 문서화 하여 절차적으로 진행 - 완전성 검증을 위해 테스트 자료를 만들고 평가 - 기능적 특성에 대한 소프트웨어 통제, 변경 상태를 기록 및 보관 형상관리 대상 - 개발 비용 - 설계 문서 - 소스코드 - 모든 산출물 형상관리 도구의 기능 - 체크아웃 / 체크인 - 커밋 - 수정 형상관리 도구의 종류 형상관리 도구 설명 CVS 가장 오래된 형상관리 도구로 중앙 집중서버 저장소를 두고 버전관리를 실행 및 파일 단위의 변경사항 관리 SVN 중앙 집중형 서버 방식이지만 CVS의 단점을 보완해 가장 널리 사용되고 있는 도구 Git에 비해 branch, tag작업이 어려움 Git 공개 소프트웨어 커뮤니티 중심으로 사용 저변이 많이 확대 분산형 방식으..
소프트웨어 생명주기란? 소프트웨어 생명주기란? - 개발 방법론에 따라 소프트웨어 개발 공정을 단계별로 나눈 것 - 비용 산정과 개발 계획을 수립 할 수 있는 기본 골격 - 용어의 표준화를 가능하게 한다. - 문서화가 충실한 프로젝트 관리를 가능하게 한다. 소프트웨거 개발 생명 주기의 구성단계 구분 단계 설명 정의단계 타당성검토, 요구분석 사용자의 요구사항 확인 및 타당성 검토 개발에 필요한 요구사항 명세화 개발단계 설계, 구현, 테스트 UML, ERD등 다양한 설계도구를 이용한 설계작업 진행 코딩을 통한 프로그램 개발 단위/통합/시스템/인수/설치 테스트 유지보수단계 운영/유지보수, 폐기 시스템운영 및 운영중 발생한 문제점들에 대한 유지보수 진행 새로운 시스템 개발로 인한 기존 시스템 폐기 소프트웨어 생명주기 모델 - 소프트웨어..
배치 프로그램과 배치 스케줄러란? 배치 프로그램 - 사용자와의 상호 작용 없이 일련의 작업들을 작업단위로 묶어 정기적으로 반복수행 OR 정해진 규칙에 따라 일괄처리하는 것입니다. 배치 프로그램의 필수 요소 요소 설명 대용량 데이터 대용량의 데이터 처리 견고함 유효하지 않은 데이터의 경우도 처리해 비정상적인 동작 중단이 발생하지 않아야합니다. 안전성 어떤 문제가 생겼는지, 언제 발생했는지 등을 추적할수 있게 합니다. 자동화 심각한 오류 상황 외에는 사용자의 개입없이 작동합니다. 성능 주어진 시간내에 처리를 완료할 수 있게 합니다. 배치 스케줄러 - 일괄처리를 위해 주기적으로 발생하거나 반복적으로 발생하는 작업을 지원하는도구 배치 스케줄러 종류 1. 스프링 배치 1) 핵심 컴포넌트 컴포넌트 설명 Job 배치처리를 의미하는 애플리케이션 컴포넌..
스키마란(외부, 내부, 개념)? 스키마란? - 데이터베이스의 구조와 제약조건에 관해 전반적인 명세를 기술한 것 입니다. 스키마 구성 설명 속성 개체의 특성 개체 속성들의 집합 관계 개체 사이에 존재 이들을 유지해야할 제약조건들을 기술한게 스키마!! 스키마의 특징 1) 스키마는 데이터 사전(Data Dictionary)에 저장됩니다. *데이터 사전 : 시스템 전체에서 나타나는 데이터 항목들에 대한 정보를 지정한 중앙 저장소로 2) 현실 세계의 특정한 한 부분의 표현으로서 특정 데이터 모델을 이용해서 만들어지게 됩니다. 3) 시간에 따라 불변인 특성을 갖습니다. 4) 데이터의 구조적 특성을 의미합니다. 5) 인스턴스에 의해 규정됩니다. 스키마 구분 - 스키마는 사용자의 관점에 따라서 외부, 개념, 내부 스키마로 구분하게 됩니다. 스키마 구..