11-0 운영체제 : 시스템 자원들을 효율적으로 관리하며, 사용자가 컴퓨터를 편리하고 효율적으로 사용할 수 있도록 환경을 제공하는 여러 프로그램의 모임 목적 : 처리능력, 반환시간, 사용가능도, 신뢰도 기능 : 자원관리, 스케줄링, 인터페이스 제공, 하드웨어&네트워크 관리 등등 운영체제 종류 Windows : 마이크로소프트 사가 개발한 운영체제 그래픽 사용자 인터페이스 (GUI) : 키보드로 명령어를 직접 삽입X, 마우스로 아이콘이나 메뉴를 선택 선점형 멀티테스킹 : 동시에 여러 프로그램을 실행하는 멀티태스킹을 하면서 문제 발생시 프로그램 강제 종료 후 반환 PnP (자동감지) : 프린터나 사운드카드 등의 하드웨어를 설치했을 때, 시스템 환경을 운영체제가 자동으로 구성해주는 기능 OLE : 다른 여러 응..
10-0 서버 개발 : 웹 애플리케이션의 로직을 구현할 서버 프로그램을 제작하여 WAS에 탑재하는 것을 의미. 서버 개발 프레임워크 Spring : 자바 기반 Node.js : 자바 스크립트 기반 Django : 파이썬 기반 Codeighiter : PHP 기반 Ruby on Rails : RUBY 기반 API : 응용 프로그램 개발시 OS나 프로그래밍 언어등에 있는 라이브러리를 이용할 수 있도록 규칙을 정의해놓은 것 배치 프로그램 : 사용자와의 상호작용 없이 여러 작업들을 미리 정해진 일련의 순서에 따라 일괄적으로 처리하는 것을 의미 배치 스케줄러 스프링 배치 : 오픈 소스 프레임워크로 스프링이 가지고 있는 다양한 기능들을 모두 사용가능. Quartz : 스프링 프레임워크로 스프링이 가지고 있는 다양한..
9-0 SECURE SDLC : 보안상 안전한 S/W를 개발하기 위해 SDLC에 보안강화를 위한 프로세스를 포함한 것 종류 CLASP : Secure Software 사에서 개발, SDLC 초기 단계 보안 강화, 활동중심 역할 기반 프로세스로 구성 SDL : Microsoft 사에서 기존의 SDLC를 개선한 방법론 Seven TouchPoint : 보안의 모범사례를 SDLC에 통합한 방법론, 7개의 보안 활동을 수행 보안 요소 기밀성 : 정보와 자원은 인가된 사용자에게만 접근이 허용 무결성 : 오직 인가된 사용자만 수정가능 가용성 : 인가된 사용자는 언제라도 사용가능 인증 : 정보와 자원을 사용하려는자가 합법적인지 확인하는 모든 행위 부인방지 : 데이터 송,수신한자가 부인할 수 없도록 증거 제공 설계단계..
8-0 관계 대수와 관계해석을 혼합한 데이터 언어. 분류 DDL (데이터 정의어) : CREATE, ALTER, DROP, TRUNCATE ex) CREATE SCHEMA : 스키마를 정의하는 명령문 CREATE DOMAIN : 도메인을 정의하는 명령문 CREATE TABLE : 테이블을 정의하는 명령문 CREATE VIEW : 뷰를 정의하는 명령어 CREATE INDEX : 인덱스를 정의하는 명령어 ALTER TABLE : 테이블에 대한 정의를 변경하는 명령문 DROM SCHEMA ,,, INDEX : 스키마를 제거 하거나, 인덱스를 제거 할 때 사용하는 명령어 CASCADE : 제거할 요소를 참조하는 다른 개체도 함께 제거 RESTRICT : 다른 개체가 제거할 요소를 참조중일 때는 제거를 취소 DM..
7-0 애플리케이션 테스트 : 애플리케이션에 잠재되어 있는 결함을 찾아내는 일련의 행위 또는 절차 개발된 소프트웨어가 고객의 요구사항을 만족시키는지 확인하고 기능을 정확히 수행하는지 검증한다. 애플리케이션 테스트의 기본원리 잠재적 결함은 줄일 수 있지만, 완벽한 테스팅은 불가하다. 결함은 대부분 특정 모듈에 집중 되어 있다. (파레토 법칙 : 발견된 80% 결함은 20%모듈에서 발견) 살충제 패러독스 ( 동일 테스트 반복시 더이상 결함 발견X) 정황에 따라서 테스트를 다르게 수행 오류 부재의 궤변 (결함을 모두 제거해도 사용자 요구사항을 만족X) 테스트를 많이하면 미래 발생 위험 감소 테스트는 작은 부분에서 점점 확대된다. 개발자와 관계 없는 별도의 팀에서 수행 프로그램 실행 여부에 따른 테스트 정적 테..
6-0 사용자 인터페이스(UI) : 사용자와 시스템 간의 상호작용이 원활하게 이루어지도록 도와주는 장치나 소프트웨어 사용자 인터페이스 구분 CLI : 명령과 출력이 텍스트 형태로 이루어지는 인터페이스 GUI : 아이콘이나 메뉴를 마우스로 선택하여 작업을 수행. NUI : 사용자의 말이나 행동으로 기기를 조작 기본원칙 (직유학유) 직관성 : 누구나 쉽게 이해하고 사용할 수 있어야 한다. 유효성 : 사용자의 목적을 정확하고 완벽히 달성한다. 학습성 : 누구나 쉽게 배우고 익힐 수 있어야 한다. 유연성 : 사용자의 요구사항을 최대한 수용하고 실수를 최소화한다. 사용자 인터페이스의 3가지 분야 ( 제어, 구성, 기능) UI 표준 및 지침 UI 표준 : 전체 시스템에 포함된 모든 UI에 공통적으로 적용될 내용, ..
5-0 시스템 인터페이스 요구사항 분석 시스템 인터페이스 요구사항 구성 : 독립적으로 떨어져 있는 시스템들끼리 서로 연동하여, 상호작용 하기 위한 접속 방법이나 규칙을 의미. 분석 절차 ( 요구사항 선별 - 자료 준비 - 요구사항 분류 - 분석 및 수정) 요구사항 검증 : 설계 및 구현 전에 사용자들의 요구사항이 요구사항 명세서에 정확하고 완전하게 기술이 되었는지를 검토하고, 개발 범위의 기준인 베이스 라인을 설정. 검증 방법 동료 검토 : 작성자가 명세서 내용을 직접 설명하고, 동료들이 이를 들으면서 결함을 발견하는 형태의 검토 방법 워크 스루 : 검토회의 전에 요구사항 명세서를 미리 배포하여, 사전 검토한 후에 짧은 검토 회의를 통해 결함을 발견하는 검토 방법 인스펙션 : 작성자를 제외한 다른 검토 ..
4-0 개발 환경 구축 : 개발 프로젝트를 이해하고, 소프트웨어 및 하드웨어 장비를 구축하는 것 소프트웨어 아키텍처 : 소프트웨어를 구성하는 요소들 간의 관계를 표현하는 시스템의 구조 또는 구조체 모듈화 : 시스템의 기능들을 모듈 단위로 나누는 것 추상화 : 전체적이고 포괄적인 개념을 설계한 후, 구체화 시켜 나가는 것 단계적 분해 : 상위의 중요 개념으로부터 하위의 개념으로 구체화 시키는 분할 기법 정보은닉 : 모듈 내부에 포함된 절차와 자료들의 정보가 감추어져 다른 모듈이 접근하거나 변경하지 못하도록 하는 기법 소프트웨어 아키텍처 품질속성 시스템 측면 : 성능, 보안, 가용성, 기능성, 사용성, 변경 용이성, 확장성 등 비즈니스 측면 : 시장적시성, 비용과 혜택, 예상 시스템 수명, 목표시장, 공개일..