본문 바로가기

전체 글

[개발 비용 산정] 수학적 산정기법(COCOMO, Putnam, FP) ※ COCOMO(COnstructive COst MOdel) - LOC(source Lines of Code)로 비용산정하는 기법 - 보헴(Boehem)이 제안 COCOMO 개발 유형 특징 조직형(Organic Mode) - 5만 라인(50KDSI)이하 - 기관 내부의 중소규모 소프트웨어 반분리형(Semi-Detached Mode) - 30만 라인 이하 - 컴파일러, 인터프리터 같은 유틸리티 내장형(Embedded Mode) - 30만 라인 이상 - 초대형 소프트웨어 COCOMO 모형의 종류 특징 기본형(Basic) sw의 '크기'와 '개발유형'만으로 비용산정 중간형(Intermediate) - 기본형 + @ - 제품, 컴퓨터, 개발요원, 프로젝트의 특성도 고려해서 비용산정 발전형(Detailed) - .. 더보기
[정보처리기사] 프레임워크(정의, 종류, 특징) ※ 프레임워크 -개발에 공통적으로 사용되는 아키텍처와 구성요소를 일반화한 것 - 프레임워크의 기능 : 예외처리, 사용자 인증 서비스, 서비스 관리, 트랜잭션 처리, 메모리 공유 등 ※ 프레임워크 종류와 특징 스프링 : 자바기반 경량형 애플리케이션 프레임워크 전자정부 프레임워크의 기반 동적 웹사이트 개발에 사용됨 전자정부 프레임워크 공공부문 정보화 사업 시 필요한 아키텍처와 기능을 제공 오픈소스 기반이라 업체에 종속되지 않을 수 있음 닷넷 프레임워크 윈도우 프로그램의 개발, 실행환경을 제공 CLR(Common Language Runtime)이라는 가상머신 상에서 작동 ※ 프레임워크의 특성 - 모듈화(Modularity), 재사용성(Reuseability), 확장성(Extensibility), 제어의 역흐름.. 더보기
[자료구조] 해시함수(hash) 성능평가 간단하게 정리 오픈어드레싱(open addressing)방법은 'linear probing' 'quadratic probing', 'double hasing' 세 가지로 나뉜다. 'linear probing'은 해시함수를 통해 찾은 빈 슬롯에 다른 key값이 채워져 있으면, 처음 나오는 다음 빈 슬롯에 삽입하는 방법이다. ​'quadratic probing'은 해시함수를 통해 찾은 빈 슬롯에 다른 key값이 채워져 있으면, 해당 슬롯번호(해쉬함수의 값) + 제곱 수를 더해 처음 나오는 빈 슬롯에 삽입하는 방식이다. ex) '해당슬롯번호 + 1**2''했는데 다른 key가 들어가 있으면 -> 해당슬롯번호 + 2**2'... 'double chaining'은 해시함수를 통해 찾은 빈 슬롯에 다른 key값이 채워져 있으면,.. 더보기
순차적 자료구조(배열과 리스트) 배열(Array)과 리스트(List) Python에서는 리스트가 배열 자료구조다. 배열과 리스트는 데이터를 연속적인 메모리 공간에 저장하고, 저장된 곳의 주소를 통해 접근하는 자료구조다. 좌측의 그림은 int Array[4]를 통해 정수 4개를 저장할 수 있는 연속적인 메모리 공간을 할당한 것이다. 각각의 메모리 공간은 주소를 갖는다. 주소가 4씩 커지는 이유는 정수의 크기가 4Byte니까. 위의 그림과 같이 메모리의 주소가 주어지면, 단위시간에 값을 읽거나 저장하는 것이 가능하다. print(A[2]) # A[2]의 값을 읽을 수 있다. A[2] = 8 # A[2]의 메모리에 값 8을 저장할 수 있다. 그래서 중요한 사실은~ 1️⃣ 배열의 시작 주소 2️⃣ 저장된 값의 종류(int인지 string인지 .. 더보기
시간복잡도(Big-O표기법) Big-O 표기법을 이해하기 전에.. '수행횟수' -> '수행시간' -> 'Big-O표기법' '수행횟수'가 몇번이냐에 따라 '수행시간'이 몇인지 결정되고, 그 수행시간을 표기하는 방법이 'Big-O'표기법이다. '수행횟수'는 연산을 몇 번 수행했는지를 의미하는데, 연산의 종류는 아래와 같다. 연산의 종류 대입연산(=배정, 복사연산) : a = b와 같이 a레지스터에 b의 값을 복사해서 대입하는 연산 산술연산 : +, -, *, / 비교연산 : >, >=, 더보기
유클리드 호제법(Euclidean algorithm) Summary 유클리드 호제법은 최대공약수(Greatest Common Divisor)를 구하는 알고리즘이다. '호제'의 뜻은 '서로 호'(互)와 '덜 제'(除)의 조합으로 서로 빼는 과정을 반복해서 최대공약수를 구하겠다는 뜻이다. 이때, 큰 수에서 작은 수를 빼야 한다.(최대공약수는 양수여야만 하니까) HOW 1. ※ 12와 8의 최대공약수를 유클리드 호제법으로 구하는 순서 : 1️⃣ 12와 8 두 가지 숫자가 있음 2️⃣ 12에서 8을 빼면 4가 나옴 3️⃣ 12에서 8을 뺀 결과인 4가 12를 대체함 4️⃣ 그러면, 이제 8과 4 두 가지 숫자가 있음 5️⃣ 8에서 4를 빼면 4가 나옴 6️⃣ 그러면, 이제 8에서 4를 뺀 4가 8을 대체함 7️⃣ 같은 숫자 4 가 두개 남았음, 이때는 4에서 다른.. 더보기
지원 목록(합/불) 2018년 : IBK기업은행 동계인턴 (합격) 2019년 : 한화큐셀(진천) 인사 1차 면접 (탈락) 현대그린푸드 해외영업 최종면접 (탈락) 동아ST 해외영업 최종면접 (탈락) 동원F&B 영업관리 1차 면접 (탈락) 새마을금고중앙회 1차 면접 (탈락) 2020년 : 국립암센터 청년인턴 (합격) 경북대학교병원 행정직 (합격) 2021년 : 현대글로비스 오토비즈운영 1차 면접 (탈락) 행복나래 상품기획 최종면접 (탈락) 서류에서 탈락한 기업을 포함하면 총 스무 군데 정도 지원하였습니다. 원하지 않는 곳에 합격해도 기쁘지 않고, 설사 기쁘다고 해도 그건 취업 준비에서 해방되었다는 데서 오는 기쁨이라고 생각합니다. 이런 가짜 기쁨을 여러 번 느끼면서 많은 시간을 소모한 만큼 이제 원하는 기업이 아니면 지원하지 .. 더보기