개발 환경 구축 : 응용 SW가 운영될 환경과 유사한 구조로 구축
< 하드웨어 환경 >
● 클라이언트와 서버로 구성
-> 웹 서버 : 클라이언트로부터 직접 요청 받아 처리, 저용량 정적 파일 제공
-> 웹 어플리케이션 서버( WAS ) : 동적 서비스 제공
-> DB 서버 : DB와 DBMS를 운영
-> 파일 서버 : DB에 저장하기에는 비효율적이거나, 서비스 제공을 목적으로 유지하는 파일들을 저장
< SW 환경 >
● 시스템 SW와 개발 SW로 구성
-> 시스템 SW : OS, 웹 서버 및 WAS 운용을 위한 서버 프로그램, DBMS
-> 개발 SW : 요구사항 관리 도구, 설계/모델링 도구, 구현 도구, 빌드 도구 등
서버 개발
● WAS 만듬 ● 서버 프로그램 : 웹 서버로부터 받은 요청을 처리하여 결과 반환
● 각 프로그래밍 언어에는 해당 언어로 서버 프로그램을 개발할 수 있도록 지원하는 프레임워크 있음
< 서버 개발 프레임워크 >
● 네트워크 설정, 요청 및 응답 처리, 아키텍처 모델 구현 등을 손쉽게 처리하도록 클래스나 인터페이스를 제공
-> Spring : Java -> Node.js : JavaScript
-> Django : Python -> Codeigniter : PHP -> Ruby on Rails : Ruby
< 프레임워크 특성 >
● 모듈화 : 설계 및 구현의 변경에 따른 영향을 최소화 ● 재사용성
● 확장성 ● 제어의 역흐름 : 객체들의 제어를 프레임워크에 넘김
SW 개발 보안
● 데이터의 기밀성, 무결성, 가용성 유지
● SW 개발 보안 가이드 참고하여 보안 항목 점검
< 점검 항목 >
- 세션 통제
● 세션 : 서버와 클라이언트의 연결
● 세션의 연결로 인해 발생하는 정보 관리
- 입력 데이터 검증 및 표현
● 입력 데이터에 대한 유효성 검증체계를 갖추고, 검증 실패 시 이를 처리할 수 있도록 코딩
- 보안 기능
● 인증, 접근 제어, 기밀성, 암호화
- 예외 처리
- 캡슐화
● 함수를 하나의 객체로 묶어 코딩
API : OS나 프로그래밍 언어 등에 있는 라이브러리를 이용할 수 있도록 규칙 등을 정의해 놓은 인터페이스
배치 프로그램 : 여러 작업들을 미리 정해진 일련의 순서에 따라 일괄적으로 처리
< 주기 >
● 정기 배치 : 정해진 기간에 정기적으로 수행
● 이벤트성 배치 : 특정 조건을 설정해두고 조건이 충족될 때만 수행
● On-Demand 배치 : 사용자 요청 시 수행
< 필수 요소 >
● 대용량 데이터 ● 안정성/신뢰성
● 자동화 : 심각한 오류 발생 상황을 제외하고는 사용자의 개입 없이 수행
● 견고성 : 잘못된 데이터나 데이터 중복 상황으로 중단되는 일 없이 수행
● 성능 : 다른 응용 프로그램의 수행을 방해하지 않아야 함
패키지 SW : 기업에서 일반적으로 사용하는 여러 기능들을 통합하여 제공
● 기업 환경에서 적합하게 커스터마이징 하여 사용
● 기능 요구사항을 70% 이상 충족시키는 패키지 SW가 있을 때만 사용
< 패키지 SW와 전용 개발 SW 비교 >
패키지 SW | 전용 개발 SW | |
기능 요구사항 | 70% 이상 충족시키는 패키지 SW가 있는 경우 | 모든 기능 요구사항 반영 가능 |
안정성 | 품질 검증, 업계 표준 준용 | 개발자의 역량 |
라이선스 | 판매자 | 회사 |
'자격증 > 정보처리기사 - 필기' 카테고리의 다른 글
프로그래밍 언어 활용 - 응용 SW 기초 기술 활용 (0) | 2020.02.26 |
---|---|
프로그래밍 언어 활용 - 프로그래밍 언어 활용 (0) | 2020.02.25 |
데이터베이스 구축 - 데이터 전환 (0) | 2020.02.21 |
데이터베이스 구축 - SQL 활용 (0) | 2020.02.20 |
데이터베이스 구축 - SQL 응용 (0) | 2020.02.18 |