TIL - 20260122

juni·2026년 1월 21일

TIL

목록 보기
246/316

0122 정보처리기사 필기 (9/N): 4과목 - 정보시스템 구축 관리


✅ 1. 소프트웨어 생명 주기 모델 (Software Life Cycle Model)

  • 소프트웨어 생명 주기란 소프트웨어를 개발하기 위해 요구분석부터 유지보수까지의 전 과정을 단계별로 나눈 것입니다. 소프트웨어 개발 방법론은 이 생명 주기를 어떤 방식으로 진행할지에 대한 모델을 제시합니다.

➕ 1-1. 폭포수 모델 (Waterfall Model)

  • 개념: 각 단계를 순차적으로, 위에서 아래로 물이 떨어지듯 진행하는 가장 전통적인 모델. 이전 단계가 완벽하게 끝나야만 다음 단계로 넘어갈 수 있습니다.
  • 특징:
    • 장점: 절차가 명확하고 관리가 용이하며, 각 단계의 결과가 문서화되어 이해하기 쉬움.
    • 단점: 요구사항 변경에 대응하기 매우 어렵고, 중요한 문제점이 개발 후반부에 발견될 수 있음.
  • 적합한 프로젝트: 요구사항이 명확하고 변경 가능성이 거의 없는 소규모 프로젝트.

➕ 1-2. 프로토타입 모델 (Prototyping Model)

  • 개념: 사용자의 요구사항을 명확히 파악하기 위해, 개발 초기에 실제 작동하는 시제품(Prototype)을 만들어 사용자에게 직접 보여주고 피드백을 받아 시스템을 개선해나가는 모델.
  • 특징:
    • 장점: 사용자의 요구사항을 조기에 정확하게 파악할 수 있어, 최종 결과물의 만족도를 높임.
    • 단점: 프로토타입을 폐기해야 하는 경우 개발 비용과 시간이 낭비될 수 있음.

➕ 1-3. 나선형 모델 (Spiral Model)

  • 개념: 폭포수 모델과 프로토타입 모델의 장점을 결합하고, 위험 분석(Risk Analysis) 단계를 추가한 모델. 나선을 돌듯이 여러 번의 개발 과정을 거쳐 시스템을 완성합니다.
  • 절차: 계획 및 정의 → 위험 분석 → 개발 및 검증 → 고객 평가의 사이클을 반복.
  • 특징:
    • 장점: 개발 과정에서 발생하는 위험을 조기에 식별하고 관리할 수 있어, 대규모의 복잡한 시스템 개발에 적합.
    • 단점: 관리가 복잡하고, 위험 분석에 대한 전문성이 요구됨.

➕ 1-4. 애자일 모델 (Agile Model)

  • 개념: "민첩한", "기민한"이라는 뜻으로, 처음부터 완벽한 계획을 세우기보다, 짧은 주기의 반복(Iteration)을 통해 점진적으로 소프트웨어를 개발하고, 지속적으로 요구사항 변경에 대응하는 방법론.
  • 핵심 가치: 계획보다는 변화에 대한 대응, 문서보다는 동작하는 소프트웨어, 계약보다는 고객과의 협력을 중시.
  • 주요 방법론:
    • 스크럼 (Scrum): 짧은 개발 주기인 스프린트(Sprint)(보통 2~4주)를 반복. 매일 짧은 회의(데일리 스크럼)를 통해 팀의 진행 상황을 공유.
    • XP (eXtreme Programming): 짝 프로그래밍(Pair Programming), 테스트 주도 개발(TDD), 지속적인 통합(CI) 등 구체적인 실천 방법을 강조.

✅ 2. 프로젝트 관리 (Project Management)

  • 프로젝트 관리란 정해진 기간(Time), 비용(Cost), 범위(Scope) 내에서 프로젝트를 성공적으로 완료하기 위해 자원을 계획, 조직, 통제하는 활동입니다.

➕ 2-1. 프로젝트 관리의 3대 요소 (3P)

  • 사람 (People): 프로젝트 팀원, 관리자, 고객 등 모든 이해관계자.
  • 문제 (Problem): 해결해야 할 과제, 프로젝트의 목표.
  • 프로세스 (Process): 문제를 해결하기 위한 작업의 절차와 순서.

➕ 2-2. 프로젝트 일정 관리 기법

  • 프로젝트의 전체 기간을 예측하고, 각 작업의 일정을 관리하기 위한 기법입니다.
  1. WBS (Work Breakdown Structure, 작업 분해 구조):

    • 프로젝트의 전체 작업을 관리하기 쉬운 작은 단위의 활동으로 계층적으로 분해한 목록.
  2. PERT/CPM:

    • PERT (Program Evaluation and Review Technique): 각 작업의 기간을 낙관치, 기대치, 비관치 3가지로 예측하여, 불확실성이 높은 프로젝트의 일정을 관리하는 데 사용.
    • CPM (Critical Path Method, 주 경로 기법): 프로젝트의 시작부터 끝까지 가장 긴 시간이 걸리는 작업들의 경로(주 경로, Critical Path)를 찾아내는 기법. 주 경로에 포함된 작업이 지연되면 전체 프로젝트가 지연되므로, 집중적인 관리가 필요.
  3. 간트 차트 (Gantt Chart):

    • 프로젝트의 각 작업을 가로 막대 형태로 표현하여, 작업의 시작일, 종료일, 진행 상황을 한눈에 볼 수 있도록 한 차트.

📌 요약

  • 소프트웨어 개발 방법론은 소프트웨어 생명 주기를 관리하는 모델이며, 전통적인 폭포수 모델부터 위험 관리를 강조하는 나선형 모델, 변화에 유연하게 대응하는 애자일 모델까지 다양합니다.
  • 애자일은 짧은 주기의 반복을 통해 점진적으로 개발하는 현대적인 방법론으로, 스크럼XP가 대표적입니다.
  • 프로젝트 관리기간, 비용, 범위의 제약 조건 내에서 목표를 달성하는 활동입니다.
  • PERT/CPM은 프로젝트의 전체 기간을 예측하고 주 경로(Critical Path)를 찾아내어 일정을 관리하는 핵심적인 기법입니다.

0개의 댓글