안녕하세요. 이번에 새로운 자격증을 취득하려고 하는데 그것은 바로 정보처리기사입니다!!
오늘부터 도전해서 2차에 시험을 보려고 하는데요! 준비하시는 분들은 아래 요약본을 보고 같이 공부하면 좋을 것 같습니다!
1. 소프트웨어 설계
■ 소프트웨어 생명주기(수명주기)
1. 소프트웨어 개발 방법론의 바탕이 되는것으로 소프트웨어를 개발하기 위해 정의하고 운용,유지보수 등의 과정을 단계별로 나눈 것
※ 소프트웨어 개발 방법론 : 같은 재료로 어떻게 요리를하느냐에 대한 방법론(ex. 돼지를 가지고 수육삼겹살 등의 여러가지방법으로 요리할 수 있듯이 같은 결과물이더라도 개발은 다양하게 할 수 있다.)
2. 소프트웨어 생명주기는 소프트웨어 개발단계와 각 단계별 주요활동, 그리고 활동의 결과에 대한 산출물로 표현
3. 생명주기 표현 형태를 소프트웨어 생명 주기모형이라한다.
※ 동의어 : 소프트웨어 프로세스 모형,소프트웨어 공학 패러다임
4. 소프트웨어 생명주기 모형에는 폭포수 모형,프로토타입 모형,나선형 모형,애자일 모형
5. 개발자는 문제의 유형이나 개발방법에 따라서 특정 모형을 선택하여 사용하거나, 개별적인 모형을 사용할 수 있다.
■ 소프트웨어 공학이란?
소프트웨어의 위기를 극복하기 위한 방안으로 여러가지 방법론과 도구,관리 기법들을 통하여 소프트웨어의 품질과 생산성을 향상시킨다.
※ 소프트웨어의 위기란? : 하드웨어를 소프트웨어가 따라가지 못하는 현상이 발생하여 소비자의 만족도를 따라가지 못한다.
IEEE의 소프트웨어 공학표준용어사전 : 소프트웨어의 개발,운용,유지보수,폐기 처분에 대한 체계적인 접근 방안
Fairley : 지정된 비용과 기간 내에 소프트웨어를 체계적으로 생산하고 유지보수하는데 관련된 기술적이고 관리적인 원리
Boehm : 과학적인 지식을 소프트웨어 설계와 제작에 응용하는 것이며, 개발,운용,유지보수하는데 필요한 문서 작성과정
※ 내가 기존에 하던것이 아니라 다른것을 한다고 했을 때 참고해서 만들 수 있는 문서를 제작한다.
■ 소프트웨어 공학의 기본원칙
1. 현대적인 프로그래밍 기술을 계속적으로 적용
2. 개발된 소프트웨어의 품질이 유지되도록 지속적 검증
3. 소프트웨어 개발관련 사항 및 결과에 대한 명확한 기록 유지
■ 폭포수 모형(고전적 생명주기모형, 선형 순차적 모형)
폭포에서 한번 떨어진 물은 거슬러 올라갈 수 없듯이 소프트웨어 개발도 이전단계로 돌아갈 수 없다는 전제하에 각 단계를 확실히 매듭짓고 그 결과를 철저하게 검토하여 승인 과정을 거친 후에 다음단계를 진행하는 개발 방법론
1. 폭포수 모형은 소프트웨어 공학에서 가장 오래되고 가장 폭넓게 사용된 전통적인 소프트웨어 생명주기 모형으로, 고전적 생명 주기 모형이라고도 함.
2. 소프트웨어 개발 과정의 한 단계가 끝나야만 다음 단계로 넘어갈 수 있는 선형 순차적 모형임.
3. 모형을 적용한 경험과 성공사례가 많음
※ 폭포수모형이 가장 오래되었기 때문에
4. 제품의 일부가 될 매뉴얼을 작성해야 함.
5. 각 단계가 끝난 후에는 다음 단계를 수행하기 위한 결과물이 명확하게 산출되어야 함.
6. 두개 이상의 과정이 병행하여 수행되지 않음.(이미 지나간 영역에 돌아올 수 없다.)

■ 프로토타입 모형(원형모형) ※ 모델하우스와 같은 개념
프로토타입모형은 사용자의 요구사항을 정확히 파악하기 위해 실제 개발될 소프트웨어에 대한 견본(시제)품을 만들어 최종 결과물을 예측하는 모형
1. 시제품은 의뢰자나 개발자 모두에게 공동의 참조 모델이 됨
2. 시스템의 일부 혹은 시스템의 모형을 만드는 과정으로서 요구된 소프트웨어를 구현하는데, 이는 추후 구현단계에서 사용될 골격코드가 됨
3. 새로운 요구사항이 도출될 때마다 이를 반영한 프로토타입을 새롭게 만들면서 소프트웨러를 구현하는 방법임.
4. 단기간 제작 목적으로 인하여 비효울적인 언어나 알고리즘이 사용될 수 있음

■ 나선형 모형(점진적 모형) ※ 대규모 프로젝트에 용이
보헴이 제안한 것으로 폭포수 모형과 프로토타입 모형의 장점에 위험분석기능을 추가한 모현
1. 나선을 따라 돌듯이 여러번의 소프트웨어 개발 과정을 거쳐 점진적으로 완벽한 최종 소프트웨어를 개발하는것으로, 점진적 모형이라고도 함.
2. 소프트웨어를 개발하면서 발생할 수 있는 위험을 관리하고 최소화하는 것을 목적으로 함.
3. 점진적으로 개발 과정이 반복되므로 누락되거나 추가된 요구사항을 첨가할 수 있고, 정밀하며, 유지보수 과정이 필요없음.

위험 분석 : 타당성 분석하여 진행할지 말지에 대한 고민
개발 및 검증 : 위험분석까지 끝난것을 프로토타입으로 만든다.
고객평가 : 프로토타입을 보고 평가하여 수정,추가 요청사항을 전달
계획수립 : 수정,추가요청사항을 바탕으로 계획 수립
■ 애자일 모형 - 시험에 가장 많이나옴
애자일은 '민첩한','기민함'이라는 의미로, 고객의 요구사항 변화에 유연하게 대응할 수 있도록 일정한 주기를 반복하면서 개발 과정을 진행함.
1. 애자일 모형은 어느 특정 개발 방법론이 아니라 좋은 것을 빠르고 낭비없게 만들기 위해 고객과의 소통에 초점을 맞춘 방법론을 통칭함. ※ 고객이 가장 중요!
2. 애자일 모형은 기업활동 전반에 걸쳐 사용됨
3. 애자일 모형은 스프린트(Sprint)또는 이터레이션(Iteration)이라고 불리는 짧은 주기를 반복하며, 반복되는 주기마다 만들어지는 결과물에 대한 고객의 평가와 요구를 적극 수용함.
4. 소규모 프로젝트, 고도로 숙달된 개발자, 급변하는 요구사항에 적합함.
5. 애자일 모형을 기반으로 하는 소프트웨어 개발 모형에는 스크림(Scrum),XP(eXtreme Proframming),칸반(Kanban),Lean,크리스탈(Crystal),ASD(Adaptive Sofrware Development), 기능중심개발(FDD: Feature Driven Development), DSDM(Dynamic System Development Method),DAD(Disciplined Agile Delivery)등이 있음
1일차 공부는 여기까지 했는데요 2일차 때는 그 다음 공부한 내용을 요약하겠습니다. 이번 정보처리기사 준비하시는 모든 분들 화이팅해요!
'자격증(정보처리기사)' 카테고리의 다른 글
| 2025 정보처리기사 필기 도전기 6 - UML개요 (1) | 2025.04.14 |
|---|---|
| 2025 정보처리기사 필기 도전기 5 - 요구사항 분 (1) | 2025.04.09 |
| 2025 정보처리기사 필기 도전기 4 - 개발기술환경파악 (2) | 2025.04.08 |
| 2025 정보처리기사 필기 도전기3 - 현행시스템 파악 절차 (2) | 2025.04.07 |
| 2025 정보처리기사 필기 도전기 2 - 소프트웨어 설계 (5) | 2025.04.04 |