목록분류 전체보기 (49)
오늘부터 공부한다
IP주소는 32자리 이진수로 구성되어 있고 이 주소는 십진수로 표현되는데 옥테드 당 '.'을 찍어서 구분한다. 하나의 네트워크안에 IP들은 네트워크 영역은 같아야하고, 호스트 IP는 서로 달라야 통신이 가능하다. 예를 들어 203.240.100.1 에서 203.240.100은 네트워크 영역이고 1은 호스트라는 사실을 알 수 있다. 하지만, 여기서 네트워크 주소와 호스트 주소를 어떻게 구분할 수 있을까? 그것은 클래스 때문이다. 203.240.100.1 IP가 C클래스 이기 때문에 203.240.100은 네트워크 주소, 1은 호스트 주소라는 사실을 알아내는 것이다. 클래스는 하나의 IP주소에서 네트워크 영역과 호스트 영역을 나누는 방법을 의미한다. IP주소는 A~E까지 5개를 사용하지만 보통은 A,B,C만..
시큐어 코딩이란, 말 그대로 보안 코딩이다. 더 자세하게 설명하자면, 개발 단계에서 해킹과 같은 공격을 유발할 수 있는 취약점을 사전에 제거하고, 외부로부터의 공격에 안전하게 소프트웨어를 개발하는 방법이다. 시큐어 코딩은 수정이 손쉽고, 비용 효율성이 낮기 때문에 개발 초기 단계에서 시행한다. ※ 소프트웨어 업체는 SQL injection, XSS(Cross Site Scripting) 등 47개의 보안 취약점을 제거해야 함 시큐어 코딩을 위한 보안 방법론 1. 분석 단계 요구사항 중 보안 항목을 식별 보안 설계 검토 및 보안 설계서 작성 보안 통제 수립 2. 설계 단계 위험원 도출을 위한 위협 모델링 보안 설계 검토 및 보안 설계서 작성 보안 통제 수립 3. 구현 표준 코딩 정의서 및 소프트웨어 개발 ..
QA(Quality Assurance)는 품질 보증을 뜻힌다. 어떤 실체(품목, Entity)에 대해 품질 요구 사항을 충족한다는 신뢰를 주기 위하여 품질시스템에서 실시되는 계획적이고 체계적인 활동을 의미한다. QC(Quality Control)은 품질 관리를 뜻한다. QC(품질 관리)는 기업 경영상 제일 유리하다고 생각되는 품질을 보장하고 이것을 가장 경제적 제품으로서 생산하는 방법으로 품질에 대한 요구사항을 충족시키기 위해 사용되는 운영상의 기법/활동을 의미한다. 즉, 품질 보증은 고객의 관점에 비중을 많이 두는 활동이며, 해당 제품에 대한 포괄적인 책임을 지는 역할이다. 품질 관리(QC)는 제품에 많은 비중을 둔다고 볼 수 있는데, 제품의 목적에 준한 기능을 검증하는 역할을 수행한다. 품질 보증은 ..
디자인 패턴이란? 소프트웨어를 설계할 때 특정 맥락에서 자주 발생하는 고질적인 문제들이 발생했을 때 재사용할 수 있는 해결책이다. 디자인 패턴의 장점 1) 개발자(설계자) 간의 원활한 의사소통 : 여러 디자인 패턴의 특성을 잘 알고 있어 문제해결 시 어떤 디자인 패턴을 사용하면 좋을지 해결책을 논의할 수 있다. 2) 소프트웨어 구조 파악 용이 : 디자인 패턴의 특성을 잘 알고 있기에 어떤 디자인 패턴이 설계할 때 사용되었는지 알면 소프트웨어 전체구조를 쉽게 파악 가능하다 3) 재사용을 통한 개발 시간 단축 : 이미 만들어 놓은 디자인 패턴을 사용하므로 개발시간을 단축시킬 수 있다. 4) 설계 변경 요청에 대한 유연한 대처 : 사용자의 지속적인 추가 요청, 환경 변화 등의 설계 변경 요청에 쉽고 빠르게 대..
교착 상태 (Deadlock)의 개념 멀티 프로그래밍 환경에서 한정된 자원을 사용하려고 서로 경쟁하는 상황이 발생 할 수 있다. 어떤 프로세스가 자원을 요청 했을 때 그 시각에 그 자원을 사용할 수 없는 상황이 발생할 수 있고 그 때는 프로세스가 대기 상태로 들어 간다. 대기 상태로 들어간 프로세스들이 실행 상태로 변경 될 수 없을 때 이러한 상황을 교착 상태라 한다. 즉 교착 상태는 두 개 이상의 프로세스가 아무리 기다려도 자원을 사용할 수 없는 무한 대기 상태를 말한다. 교착상태의 발생 원인 교착 상태는 한 시스템 내에서 다음의 네 가지 조건을 모두 동시에 충족할때 발생 한다. - 따라서 네 가지 조건이 하나라도 성립하지 않아야 교착 상태를 해결할 수 있다. 원인 설명 상호배제(Mutual Exclu..
EVM은 일명 '획득가치관리' 로서 어떤 정해진 작업에 대한 일정 및 원가를 수치적으로 관리할 수 있는 기법 중 하나다. 특히 일정관리와 원가 관리를 동시에 할 수 있도록 고안된 기법이다. EVM의 3가지의 Value에 의해서 표현이 되는데 다음가 같다. PV (Planned Value) - 기획 가치 - BCWS(Budgeted Cost of Work Schedule) - 계획된 스케쥴에 의한 할당된 예산 - 초기계획에서 일정에 따른 계획된 작업의 가치 즉 이것은 해야할 작업의 양을 나타낸다 EV(Earned Value) - 획득 가치 - BCWP(Budgeted Cost of Work Performed) - 수행된 작업에 대한 원래 예산 즉 실제 완료된 작업의 양을 나타낸다. AC(Actual Cos..
저번에는 CPM의 계산에 대해 간단하게 설명했다. 설명이 너무 이상하다고 생각해서 예시를 들면서 알아보겠다. 전진 계산 전진 계산은 각 활동의 빠른 개시일(ES), 빠른 종료일(EF)를 계산한다. 계산식은 EF = ES + 기간 -1, ES = 선행 EF + 1이다 조금 생각해본다면 표가 어떻게 이루어졌는지 다 이해할 것이다. 이제 표가 어떻게 그려졌는지를 알아보자. 가는 선행 작업이 없어서 가장 먼저 진행된다. 나는 가라는 선행 작업이 있기에 가 다음에 수행된다. 다는 나,라라는 선행 작업이 있으므로 나,라 다음에 수행된다. 라는 가라는 선행 작업이 있기에 가 다음에 수행된다. 마는 라라는 선행 작업이 있기에 라 다음에 수행된다. 바는 다,마라는 선행 작업이 있으므로 다,마 다음에 수행된다. 표의 상단..
프로젝트 일정관리 CPM이란? 프로젝트 납기일에 영향을 미치는 Activity 집합으로 프로젝트의 시작과 끝을 나타내는 노드(node) 간을 연결하는 화살표 모양의 Activity로 구성된 것이다. CPM의 특징 프로젝트의 최소기간을 결정하는 데 사용되는 일정, (네트워크 분석 기법) 프로젝트에서 중점적으로 관리해야 하는 작업의 경로 CPM을 활용한 수행기간 추정 CMP의 절차 용어 설명 ES(Early Finish) 어떤 활동이 가장 빨리 시작할 수 있는 날 EF(Early Finish) 어떤 활동이 가장 빨리 끝날 수 있는 날 LS(Last Start) 종료일에 영향이 없으며, 가장 늦게 시작해도 되는 날 LF(Late Finish) 종료일에 영향이 없으며, 가장 늦게 종료할 수 있는 날 총 여유 (..
이상 현상 (Anomaly) 정규화를 하기 전에 봤으면 더 이해하기 쉬웠을까? 라는 생각을 했다. 좋은 관계형 데이터베이스를 설계하는 목적 중 하나가 정보의 이상 현상(Anomaly) 이 생기지 않도록 고려해 설계하는 것이다. 이상 현상은 갱신 이상(Modification Anomaly), 삽입 이상(Insertion Anomaly), 삭제 이상(Deletion Anomaly)으로 구성된다. 결론 ) 이상 현상이란? 테이블내의 데이터 중복성에 의해서 발생되는 데이터 불일치 현상이다. 갱신 이상 (Modification Anomaly) : 반복된 데이터 중에 일부를 갱신 할 시 데이터의 불일치가 발생한다. 삽입 이상 (Insertion Anomaly) : 불필요한 정보를 함께 저장하지 않고서는 어떤 정보를..
데이터베이스 정규화란? 데이터 베이스 정규화란 데이터의 중복을 줄이고, 무결성을 항상 시키는 등 여러 목적을 달성하기 위해 관계형 데이터베이스를 정규화된 형태로 재디자인하는 것을 말한다. 정규화의 목적 불필요한 데이터를 제거, 데이터의 중복을 최소화 데이터베이스 구조 확장 시 재디자인을 최소화 다양한 관점에서 query를 지원하기 위해서 무결성 제약조건의 시행을 간단하게 하기 위해서 각종 이상 현상(Anomaly)을 방지하기 위해서, 테이블의 구성을 논리적이고 직관적으로 한다. 정규화의 대상 온라인 거래 시스템 같은 OLTP(OnLine Transaction Processing) 데이터베이스는 CRUD(Create Read Update Delete)가 많이 일어나기 때문에 정규화 되는 것이 좋지만, 분석..