뭐라도 하는 블로그

모둠회밥!

ㄱ.공부

소프트웨어 생명 주기란?

CurrumpawLobo 2022. 10. 22. 15:23
728x90

이번 정보처리기사 실기는... 아무래도 예감이 좋지 않아서.. 다음 시험을 위해 주말동안은 정보처리기사를 조금씩이라도 익혀봐야 할 것 같다. 2년 안에는 따야 귀찮은 필기를 또 안보니까.. 아직 그래도 첫 시험 이였기 때문에 기회는 많다.

1. 소프트웨어 생명 주기란?

Software Life Cycle, 소프트웨어 생명주기란 소프트웨어의 개발과 설계, 유지보수 등 여러가지 과정을 단계별로 나눈 것 이다. 대표적으로 폭포수(Waterfall), 프로토타입 (Proyotype) , 나선형(Spiral) , 에자일(Agiile) 등 있다. 소프트웨어 공학의 기본적인 지식으로 알아둬야 할 것이다. 추가적으로, 소프트웨어 공학(Software Engineering)이란 소프트웨어의 개발, 운용, 유지보수 등의 생명 주기 전반을 체계적이고 서술적이며 정량적으로 다루는 학문이다.

2. 폭포수 모형(Waterfall Model)

이름을 생각하면 연상하기 쉽다. 위에서 아래로 콸콸 쏟아지는 폭포수마냥 한번 떨어지면 전단계로 돌아갈 수 없다. 그렇다면, 각 단계에서 실수가 있다면 매우 큰 애로사항이 있을 것이다. 그러므로 각 단계를 확실히 마무리 후 결과를 검토하여 승인하면, 그 다음단계에로 진행해야 한다. 

 가장 오래되고 전통적으로 사용하였기 때문에 고전적 생명 주기 모형이라고도 하며, 그만큼 사례가 많다.

 

 

 

3. 프로토타입 모형(Prototype Model)

처음 이 단어를 들은게 아마 게임 프로토타입이였나? 그랬을것이다. 그 덕분에 잘 기억하는 단어? 실제 모형이 완성되기 전 그거에 대한 견본품을 프로토타입이라고 하는데, 이 또한 마찬가지로 견본품을 만들어 최종 결과물이 나왔을 때 어떻게 될 지 미리 확인하는 모형이다. 아무래도 코드로 견본품을 만드는 것이기 때문에, 이렇게 만든 모형을 실제 구조의 뼈대로 재활용하거나 할 수 있다. 보통 공장에서 만드는 프로토타입과 다른점이라 할 수 있을 것 이다.

4. 나선형 모형(Spiral Model)

나선형이란 시나몬 롤과 같이 계속 돌고 돌며 과거의 형태를 따라간다. 이와 같이 여러 번의 소프트웨어 개발 과정을 거쳐 점 점 완성을 향해 나아가는 개발모형이다. 보헴(Bohem)이 제안하였으며 (은근히 이 이름을 많이 본다.) 계획 수립 -> 위험 분석 -> 개발 검증 -> 고객 평가 의 활동이 계속 반복된다.

 

5. 에자일 모형(Agile Model)

흔히 게임에서 어질이라고 읽는 능력치를 알 것이다. 민첩에 영향을 주는 능력치. 같다고 보면된다. '민첩한, 기민함'의 의미를 가진 에자일은, 요구 사항의 변화나 환경의 변화 등 여러 가지에 유연하게 대응할 수 있도록 일정 주기를 반복하며 개발하는 모형이다. 나선형과 같이 계속 반복하긴 하지만 에자일은 좀 더 고객 요구사항에 초점을 맞췄다고 생각하면 된다.

728x90

'ㄱ.공부' 카테고리의 다른 글

Pop3와 IMAP의 차이!  (0) 2022.10.24
애자일 개발 모형 5가지!  (0) 2022.10.23
금요일 자투리 1  (0) 2022.10.21
Broker(브로커) Pattern이란?  (0) 2022.10.20
다크데이터와 더미데이터!  (0) 2022.10.19