목록전체 글 (189)
Cohe
소프트웨어 개발 보안 설계: 완벽 가이드1. 소프트웨어 개발 보안의 개념소프트웨어 개발 보안은 개발 과정에서 보안을 고려하여 안전한 소프트웨어를 만드는 것을 목표로 합니다. 이는 다음과 같은 활동을 포함합니다:소스 코드의 보안 취약점 제거보안을 고려한 기능 설계 및 구현개발 전 과정에서의 보안 활동 수행1.1 개발 단계별 보안 활동단계활동요구사항 명세- 보안 항목 식별- 보안 요구사항 명세서 작성설계- 위협 모델링- 보안 설계 검토- 보안 통제 수립구현- 표준 코딩 정의서 준수- 소스 코드 보안 약점 진단테스트- 모의침투 테스트- 동적 분석유지보수- 지속적인 개선- 보안 패치 관리2. 소프트웨어 개발 보안의 구성요소소프트웨어 개발 보안은 다음 세 가지 주요 요소로 구성됩니다:기밀성 (Confidentia..
개발환경 구축개발환경 구축개발환경 구축의 개념개발환경 구성 시 구현될 시스템 요구사항의 명확한 이해가 필요하다.개발 도구와 서버의 선정이 이루어져야 하고, 개발에 사용되는 도구들의 사용 편의성과 성능, 라이선스를 확인한다.개발 도구의 분류빌드 도구작성한 코드의 빌드 및 배포를 수행하며, 각 구성 요소와 모듈에 대한 의존성 관리를 지원하는 도구구현 도구개발자의 코드 작성, 디버깅, 수정 등을 지원하는 도구로, 프로그램 개발 시 가장 많이 사용됨테스트 도구코드의 기능 검증과 전체 품질을 높이기 위해 사용되며, 테스트 계획, 수행, 분석 등을 지원하는 도구형상 관리 도구코드와 리소스 등 산출물에 대한 버전 관리를 위한 도구로, 프로젝트 진행 시 필수적으로 사용됨개발환경 구성요소하드웨어 개발 환경서버 하드웨어 ..
인터페이스 설계 확인외부 및 내부 모듈 연계를 위한 인터페이스 기능 식별외부, 내부 모듈 연계 방법(EAI, ESB 연계 방법)기업시스템이나 공콩 서비스를 위한 시스템에서 인터페이스를 위해 외부 및 내부 모듈을 연계하는 대표적인 방법은 EAI 방식과 ESB 방식이 있다.EAI(Enterprise Application Integration) 방식EAI는 기업에서 운영되는 서로 다른 플랫폼 및 애플리케이션 간의 정보를 전달, 연계, 통합이 가능하도록 해주는 솔루션이다.EAI를 사용함으로써 각 비즈니스 간 통합 및 연계성을 증대시켜 효율성을 높여 줄 수 있으며 각 시스템 간의 확장성을 높여 줄 수 있다.구축 유형 설명포인트 투 포인트• 가장 기초적인 애플리케이션 통합방법으로 1 : 1 단순 통합방법허브 앤 스..
1. 연계 메커니즘 개념응용 소프트웨어와 연계 대상 모듈 간 데이터 연계 시 요구사항을 고려한 연계방법과 주기를 설계하기 위한 메커니즘2. 연계 메커니즘 기능송신 시스템: 운영 DB, 애플리케이션으로부터 연계 데이터를 생성하여 송신수신 시스템: 송신 시스템으로부터 전송된 데이터를 변환 처리 후 DB에 반영3. 연계 방식3.1 직접 연계장점: 구현 단순, 개발 비용 및 기간 짧음, 처리 성능 좋음단점: 시스템 간 결합도 높음, 암복호화 처리 불가, 환경 제한적3.2 간접 연계 (중간 매개체 이용)장점: 상이한 네트워크/프로토콜 연계 가능, 유연한 서비스 가능단점: 아키텍처 복잡, 성능 저하 가능성, 개발 및 테스트 기간 길어짐4. 주요 연계 기술4.1 직접 연계 기술DB 링크: DB에서 제공하는 링크 객체..
논리 데이터 저장소 확인데이터 모델1. 데이터 모델 개념데이터 모델은 현실 세계의 정보를 인간과 컴퓨터가 이해할 수 있도록 추상화하여 표현한 모델입니다.데이터 모델의 표시 요소구조(Structure)데이터베이스에 논리적으로 표현될 대상으로서의 개체 타입과 개체 타입 간의 관계데이터 구조 및 정적 성질을 표현하는 요소연산(Operation)데이터베이스에 저장된 실제 데이터를 처리하는 작업에 대한 명세릴레이션을 조작하기 위한 관계 연산을 나타냄 (SELECT, PROJECT, JOIN, DIVISION)제약 조건(Constraint)데이터베이스에 저장될 수 있는 실제 데이터의 논리적인 제약 조건데이터 무결성 유지를 위한 DB의 보편적 방법릴레이션의 특정 칼럼에 설정하는 제약을 의미 (예: 개체 무결성, 참조..
2. 화면 설계 keywordsCLIGUINUIOUISWOT 분석UIUI 설계 원칙UMLUX가시성관계다이어그램사물사용성 테스트상태 다이어그램소프트웨어 생명주기 모델스토리보드시나리오 플래닝시퀀스 다이어그램와이어 프레임유연성유효성이해성일반화 관계적용성적절성정밀도정확도직관성집합 관계커뮤니케이션 다이어그램컴포넌트 다이어그램클래스프로토타입학습성 UI 요구사항 확인UI 요구사항 확인UI 개념UI(사용자 인터페이스)는 넓은 의미에서 사용자와 시스템 사이에서 의사소통할 수 있도록 고안된 물리적 가상의 매개체이다.좁은 의미로는 정보 기기나 소프트웨어의 화면 등에서 사람이 접하게 되는 화면이다.사용자 경험 (UX)는 사용자 인터페이스 (UI)를 포함하고 있습니다.UI 유형UI 유형에는 CLI, GUI, NUI, OUI..

문제 출처https://school.programmers.co.kr/learn/courses/30/lessons/138477문제 설명"명예의 전당"이라는 TV 프로그램에서는 매일 1명의 가수가 노래를 부르고, 시청자들의 문자 투표수로 가수에게 점수를 부여합니다. 매일 출연한 가수의 점수가 지금까지 출연 가수들의 점수 중 상위 k번째 이내이면 해당 가수의 점수를 명예의 전당이라는 목록에 올려 기념합니다. 즉 프로그램 시작 이후 초기에 k일까지는 모든 출연 가수의 점수가 명예의 전당에 오르게 됩니다. k일 다음부터는 출연 가수의 점수가 기존의 명예의 전당 목록의 k번째 순위의 가수 점수보다 더 높으면, 출연 가수의 점수가 명예의 전당에 오르게 되고 기존의 k번째 순위의 점수는 명예의 전당에서 내려오게 됩니다..
현행 시스템 분석현행 시스템 파악1. 현행 시스템 파악 개념현행 시스템 파악이란 현행 시스템이 어떤 하위 시스템으로 구성되어 있고, 제공 기능 및 연계 정보는 무엇이며 어떤 기술 요소를 사용하는지를 파악하는 활동입니다.사용하고 있는 소프트웨어 및 하드웨어는 무엇인지, 네트워크의 구성은 어떻게 되어 있는지를 파악하는 활동입니다.2. 현행 시스템 파악 절차현행 시스템 파악을 위해선 3단계의 절차가 필요합니다.1단계: 구성/기능/인터페이스 파악시스템 구성 현황 파악시스템 기능 파악시스템 인터페이스 현황 파악2단계: 아키텍처 및 소프트웨어 구성 파악아키텍처 파악소프트웨어 구성 파악3단계 : 하드웨어 및 네트워크 구성 파악시스템 하드웨어 현황 파악네트워크 구성 파악3. 소프트웨어 아키텍처1. 소프트웨어 아키텍처 ..
소프웨어 개발 방법론소프트웨어 생명주기 모델1. 소프트웨어 생명주기 (SDLC : Software Development Life Cycle) 모델 개념소프트웨어 생명주기는 시스템의 요구분석부터 유지보수까지 전 공정을 체계화한 절차이다.시스템이 개발될 때부터 운용과 유지보수를 거쳐 생애를 마칠 때까지의 모델2. 소프트웨어 생명주기 모델 프로세스소프트웨어 생명주기 모델 프로세스순서프로세스설명활동1요구사항 분석- 다양한 이해관계자의 상충할 수도 있는 요구사항을 고려하여 새로운 제품이나 변경되니 제품에 부합하는 요구와 조건을 결정하는 단계 - 개발할 소프트웨어의 기능과 제약 조건, 목표 등을 소프트웨어 사용자와 함께 명확히 정의하는 단계- 기능 요구사항 - 비기능 요구사항2설계- 시스템 명세 단계에서 정의한 기..