본문 바로가기
반응형

분류 전체보기646

[탑기공] 자료구조(Data Structure) 멘토링 자료구조에 대한 개념과 분류에 따른 종류를 아는게 중요합니다. 힙(Heap) 자료구조를 포함하여, 모두 충분히 학습하시길 권고 드립니다. - 자료 구조별 특징, 문제점, 알고리즘 연계성, 동작 방식, Psuedo Code 등 자료구조의 개념 다양한 자료를 효율적으로 표현하고 활용할 수 있도록 자료의 특성과 사용 용도를 고려하여 조직적, 체계적으로 정의하고 자료를 컴퓨터의 기억장치 내에 저장하는 방법 자료구조의 분류 자료구조는 크게 선형 구조와 비선형 구조로 나눌 수 있습니다. [두음] 배리스큐 트그 배열, 리스트, 스택, 큐, 트리, 그래프 정말 중요합니다. 필수 암기!!! 선형 구조 물리적 설계자료들이 직선 형태로 나열되어 자료들 간의 순서를 고려한 구조로 전후/인접/선후 자료들간의 1:1 관계.. 2022. 12. 20.
그래프(Graph) 자료구조 멘토링 그래프의 개념과 구성 요소에 대한 개별적인 이해도 중요하지만, 최단 경로 및 최소 신장 트리 알고리즘과 연계하여 그래프와 트리를 학습하시길 권고드립니다. 최단 경로 알고리즘 다익스트라(Dijkstra), 벨만-포드(Bellman-Ford), 플로이드 와샬(Floyd Warshall), A* 알고리즘 최소 신장 트리 알고리즘 크루스컬(Kruskal), 프림(Prim) 알고리즘 그래프(Graph)의 개념 객체를 나타내는 정점(vertex)과 객체를 연결하는 간선(edge)의 집합으로, 연결되어 있는 원소 사이의 다:다 관계를 표현하는 자료구조 [두음] 그정간다 그래프, 정점, 간선, 다:다 관계 표현 그래프의 종류 무방향 그래프, 방향 그래프, 완전 그래프, 가중 그래프, 유향 비순환 그래프(DAG,.. 2022. 12. 19.
트리(Tree) 자료구조 트리의 개념 트리(Tree)는 원소들 간에 계층 관계를 가지는 계층형, 비선형 자료 구조 일반적으로 원소들 간에 1:다 관계를 가진다. 트리 구성 요소 구분 설명 루트노드(root node) 트리의 시작 노드 간선(edge) 노드를 연결하는 선 형제노드(sibling node) 같은 부모 노드를 가진 자식 노드들 서브트리(subtree) 부모노드와 연결된 간선을 끊었을 때 생성되는 트리 트리 개념도 기출 문제 예전에 한창 코딩 공부할 때 트리 및 그래프 관련 웬만한 알고리즘은 다 코딩할 수 있었는데, 인간은 망각의 동물이라서, 3년 가까이 하지 않다 보니 거의 잊어버렸네요. 쉽지 않겠지만, 나중에 기회가 된다면 기초 Pseudo Code 까지는 업데이트 해 보겠습니다. 자료구조 및 알고리즘 관련 고득점을.. 2022. 12. 18.
큐(Queue) - "큐피포" 선형 자료 구조에서 종종 비교되는 것이 스택(Stack)과 큐(Queue)입니다. 스택은 지난번 포스팅했던 것처럼 LIFO의 특징을 갖고 있는데, 큐는 FIFO의 특징을 갖고 있습니다. 또한, 스택은 삽입/삭제가 한곳에서 이루어지는 것에 반해 (Top) 큐는 삽입/삭제하는 곳이 분리되어 있습니다.(Rear, Front) 스택은 깊이 우선 탐색(DFS) 구현에 활용될 수 있고, 큐는 너비 우선 탐색(BFS) 구현에 활용 될 수 있습니다. 큐(Queue) 선형 자료 구조의 하나로, 스택과 달리 삽입되는 곳과 삭제되는 곳이 다른 자료 구조 큐는 뒤에서(Rear) 삽입되고 앞(Front)에서 삭제할 수 있는 구조 FIFO(First Input, First Output) 특징 보유 큐의 개념도 출처 : 탑싯 에센.. 2022. 12. 16.
스택(Stack) - "스리포 3!4!" 한번 보면 절대 잃어버리지 않을 두음을 만들면 희열을 느낍니다. 룰라의 3!4!를 아시나요? 스택(Stack)의 핵심 특징은 LIFO(리포, Last In, First Out)입니다. 스택(Stack) LIFO Last In, First Out 스택(Stack) 선형 자료구조의 하나로 데이터가 입력된 순서로 기억공간에 저장되어 출력 시 가장 나중에 쌓인 데이터가 가장 먼저 출력을 하게 되는 자료 구조 스택의 개념도 스택의 연산 종류 연산 종류 설명 top() 스택의 맨 위에 있는 데이터 값을 반환한다 push() 스택에 데이터를 삽입한다. pop() 스택에서 데이터를 삭제하여 반환한다. isempty() 스택에 원소가 없으면 true 값을 반환하고 있으면 false 값을 반환한다. isfull() 스택에.. 2022. 12. 15.
[탑기공] 역공학 역공학 소프트웨어 공학의 한 분야로 이미 만들어진 시스템을 역으로 추적하여 처음의 문서나 설계기법 등의 자료를 얻어 내는 일 시스템을 이해하여 수정하는 소프트웨어 유지보수 단계에 수행하는 일련의 활동 즉, 소프트웨어 생명주기의 마지막 단계에서 얻어지는 프로그램 또는 문서 등을 이용하여 생명주기 초기 단계의 산출물에 해당하는 정보 또는 문서를 만들어 내는 일로서 설계부터 순차적으로 수행하는 순공학에 상대되는 개념 출처: 탑싯 에센스 소프트웨어 3R 개념도 역공학의 Input / Output Input Output 원시코드, 목적코드, 작업절차, 라이브러리 등 입출력 형태의 자료, 문서 구조도, 자료 흐름도, 제어 흐름 그래프, 개체 관계도 역공학의 종류 종류 설명 논리 역공학 원시코드로부터 정보를 추출하여.. 2022. 12. 14.
[탑기공] 소프트웨어 재사용 소프트웨어 3R - 역공학, 재공학, 재사용 소프트웨어 재사용 정의 사용 소프트웨어 개발 관련 지식(기능, 모듈, 구성 등)을 표준화하여 개발 생산성을 높이기 위하여 반복적으로 사용하기에 적합하도록 구성하는 방법 기존 개발 기능, 성능 및 품질을 인정받았던 소프트웨어의 전체 또는 일부분을 다시 사용하여 신규 개발되는 소프트웨어의 품질과 생산성 및 신뢰성을 높이고 개발 일정 및 비용을 감소시켜주는 대응 방안 기존 개발 모듈이나 프로그램, 산출물 등을 동일한 응용 분야, 서로 다른 응용업무, 혹은 서로 다른 기업 간에 다시 사용하거나 일부 수정 후 재사용할 수 있는 개념 소프트웨어 3R 개념도 소프트웨어 재사용의 목적 신뢰성, 확장성, 생산성, 사용성, 유지보수성, 적응성 재사용(Reuse) 활용 기법 Co.. 2022. 12. 13.
소프트웨어 3R 기출 문제 내용만 봐도 역공학, 재공학, 재사용은 SW 공학의 필수 토픽이라는 것을 알 수 있으실 겁니다. 관심을 갖고 공부하시길 권고드립니다. 각 기술 토픽 별 상세 내용에 대한 포스팅보다는 관련 정보가 있는 링크와 기출 문제 위주로 이번에는 포스팅했습니다. 소프트웨어 3R 완성된 소프트웨어 프로그램을 기반으로 역공학(Reverse Engineering), 재공학(Re-Engineering), 재사용(Re-Use)을 통해 소프트웨어의 생산성을 극대화하는 기법 기출 문제 (관리 119-4-2) 정보시스템 운영 및 유지보수 관점에서 소프트웨어 공학의 리팩터링(Refactoring) 기법을 활용한 3R(Reverse-Engineering, Re-Engineering, Re-use)에 대하여 설명하시오. (관.. 2022. 12. 12.
[탑기공] 04. 애자일 개발 방법론 04 애자일 개발 방법론 애자일 개발 방법론 개념 절차나 문서보다 사람과 업무 자체를 중요시하여 유연하고 신속한 개발을 추구하는 방법론 애자일 소프트웨어 개발 선언 [두음] 개작고변 우리는 소프트웨어를 개발하고, 또 다른 사람의 개발을 도와주면서 소프트웨어 개발의 더 나은 방법들을 찾아가고 있다. 이 작업을 통해 우리는 다음을 가치 있게 여기게 되었다: 공정과 도구보다 개인과 상호작용을 포괄적인 문서보다 작동하는 소프트웨어를 계약 협상보다 고객과의 협력을 계획을 따르기보다 변화에 대응하기를 가치있게 여긴다. 이 말은, 왼쪽에 있는 것들도 가치가 있지만, 우리는 오른쪽에 있는 것들에 더 높은 가치를 둔다는 것이다. 주요 애자일 방법론 스크럼(Scrum), 익스트림 프로그래밍(eXtreme Programmi.. 2022. 12. 12.
XP(eXtreme Programming) 기법 XP(eXtreme Programming) 수시로 발생하는 고객의 요구사항에 유연하게 대응하기 위해 고객의 참여와 개발 과정의 반복을 극대화하여 개발 생산성을 향상하는 방법 짧은 주기의 반복을 통해 요구 변화에 신속하게 대응하여 위험을 줄이고 고객 관점의 고품질 SW를 빠르게 전달하는 Agile 방법론 애자일 방법론 중 하나로, 비즈니스 상의 요구가 시시각각 변동이 심한 소규모 프로젝트에 적합한 개발 방법론 - 중소규모 개발 조직에 적합한 경량화된 개발 방식 - 반복적 개발 방법론의 일종 - XP를 적용함에 있어서 그 가치(Value)와 그 가치를 달성하기 위한 실천법(Practice)으로 구성되며, 이 두 가지의 균형을 유지하기 위한 원칙(Principle)이 필요하다. XP 개발 절차 출처 : 탑싯 .. 2022. 12. 10.
두음달인 블로그 - 누적 방문수 20000 돌파 !! 방문해주시는 모든 예비 기술사님들께 감사드립니다. 행복한 일상 되세요!! 2022. 12. 9.
스크럼(SCRUM) 스크럼 정의 - 스크럼은 사람과 팀, 조직이 복잡한 문제에 대해 적응할 수 있는 해법을 활용하여 가치를 창출하도록 도와주는 경량 프레임워크 - 일일 스크럼 회의와 30일 단위의 스프린트를 이용하여 유연한 개발을 추구하는 애자일 방법론 - 프로젝트 관리를 위한 애자일 방법론으로서 추정 및 조정 기반의 경험적 관리기법의 대표적 형태 - Product Backlog를 우선순위를 두고 분할하여 스프린트(Sprint) 기간 동안 반복, 점진적으로 개발을 수행하는 Agile 대표 방법론 스크럼 이론 스크럼은 경험주의(Empiricism) 와 린 씽킹(Lean thinking) 을 기초로 한다. 경험주의는 경험과 관찰한 것을 기반으로 한 의사 결정으로부터 지식을 얻는 것이다. 린 씽킹은 낭비를 줄이고 본질에 초점을 .. 2022. 12. 9.
[탑기공] 03. 소프트웨어 개발 방법론 03 소프트웨어 개발 방법론 소프트웨어 개발 방법론 소프트웨어를 개발하는 방법에 대한 이론으로서, 소프트웨어 개발 과정, 절차, 방법, 산출물, 기법, 도구들을 체계적으로 정리하고 표준화시킨 것 소프트웨어 개발 방법론의 특징 개발 단계를 각각 정의하고 각 단계별 수행 활동, 산출물, 검증절차, 완료 기준을 정의하고, 개발 계획, 분석, 설계 및 구현의 수행 단계에 대해 정형화된 방법과 절차, 지원 도구를 정의한다. 소프트웨어 개발 방법론의 필요성 [두음] 생프소품 개발 생산성 향상, 효과적인 프로젝트 관리, 의사소통 수단 제공, 품질 보증 소프트웨어 개발 방법론의 구성 [두음] 절방산관기도, 절산 방관 기도 소프트웨어 개발 방법론 종류 [두음] 구정객CPA 소프트웨어 개발 방법론 기술사 공부하실 계획이 .. 2022. 12. 7.
[탑기공] 02. 소프트웨어 개발 생명주기 정리는 틈틈이 ~ 소프트웨어 개발 생명주기(SDLC) 소프트웨어의 생성에서 소멸까지의 과정을 단계별로 나눈 것으로, 각 단계별 주요활동과 산출물을 통해 프로젝트의 진행방향을 명확하게 파악하고, 관리를 용이하게 한다. 생명주기 활동 구분 타당성 검토 - 개발 계획 - 요구사항 분석 - 설계 - 구현 - 테스트 - 운용 - 유지보수 소프트웨어 생명주기 모델 종류 V 모델, VP 모델, 점증적 모델, 진화 모델 생명주기 모델은 "개폭프나반라" 6개 정도는 알고 있으면 좋습니다. V 모델 시스템 요구사항이 모두 식별되고 명확할 때 이상적인 생명주기 모델 특징 - 프로젝트에 적용, 관리하기가 용이하다 - 개발 활동의 시작/종료 조건 및 프로젝트를 효과적으로 관리할 수 있는 척도 등이 명확하게 정의될 수 있다. -.. 2022. 12. 6.
[탑기공] 01. 소프트웨어 공학의 배경과 목적 01 소프트웨어 공학의 배경과 목적 다기능화 및 대규모화되는 소프트웨어를 성공적으로 개발하기 위해서는 소프트웨어 공학 기술의 적용 필요 소프트웨어 공학 소프트웨어의 개발, 운용, 유지보수 등의 생명주기 전반을 체계적이고 서술적이며 정량적으로 다루는 학문 소프트웨어 공학의 4가지 중요 요소 [두음] 방도절사 방법, 도구, 절차, 사람 [두음] 방구세다 방법, 도구, 프로세스, 패러다임 기술사 시험에서는 "절방산관기도", "절산 방관 기도"로 일반적으로 외웁니다. 작업 절차, 산출물, 작업 방법, 관리, 기법, 도구 성공적인 프로젝트의 핵심 요소 [두음] PPT 프로세스(Process), 인력(People), 기술(Technology) 체계적인 업무 방식 및 흐름의 정의와 이를 적용할 수 있는 프로세스 전문.. 2022. 12. 6.
728x90
반응형