소프트웨어 공학
소프트웨어 공학이라는 단어의 의미를 풀어보자면 소프트웨어를 활용한 공학
즉 소프트웨어로 새로운 제품, 서비스, 도구 등을 만드는 것에 관한 학문이라고 보면 된다.
그러니까 어떤 제품이나 서비스를 기획부터 제작하고, 테스트하고, 출시하고, 사후관리까지 하는 모든 프로세스를 포함한다.
소프트웨어 공학을 활용한 프로세스
기획 단계 :
어떤 걸 만들지 정하는 단계이며, 이때는 어떻게 하면 기획자가 원하는 걸 정확하게 개발자에게 전달할 수 있을까?
이런 고민을 많이 한다.
개발 단계 :
어떤 걸 만들지 기획 단계에서 정했을 것이다.
그걸 만드는 단계가 개발 단계 이다.
어떻게 하면 정해진 기획을 코딩으로 정확히 구현 할 수 있을까?
어떻게 하면 큰 규모의 프로그램을 여러 사람이 분업해서 효율적으로 만들 수 있을까?
이런 고민들을 한다.
테스트 단계 :
개발이 기획대로 잘 됐는지 오류는 없는지 확인하는 단계 이다.
어떻게 하면 소프트웨어의 문제점을 출시 전에 효율적으로 찾아낼 수 있을까?
어떻게 하면 찾아낸 수많은 문제점들을 빠짐없이 효율적으로 계산할 수 있을까?
이런 고민을 한다.
배포 단계 :
배포 단계에서는 개발했던 내용을 사용자가 사용할 수 있도록 하는 단계 이다.
출시라고 생각해도 괜찮다.
이 단계에서는 어떻게 하면 각 사용자의 실행 환경에 맞는 소프트웨어를 잘 배포할 수 있을까?
이런 고민을 한다.
유지/보수 단계 :
출시 된 서비스를 변화시키는 것이다.
어떻게 하면 이미 만들어진 소프트웨어를 쉽게 변경할 수 있을까?
이런 고민을 한다.
이제 이 모든 과정을 거치고 나면 어떻게 하면 이 모든 프로세스를 매끄럽게 진행될 수 있을까?
어떻게 하면 제한된 자원으로 정해진 일정 안에 좋은 소프트웨어를 만들 수 있을까?
에 대한 고민을 한다.
즉 좀 더 효율적으로 좋은 소프트웨어를 완성하기 위한 고민을 한다.
소프트웨어 공학도 다른 공학과 마찬가지로 이론에만 머물러 있으면 안되고 실질적으로 이루어져야 한다.
그래서 각 실무에 맞춰서 조금씩 변형되기도 하는 분야이다.
이 단계들을 하나씩 살펴보다 보면 개발자들의 삶이 어느 정도는 그려진다.
'컴퓨터 개론' 카테고리의 다른 글
Codeit_테스트 프로세스 (0) | 2021.06.21 |
---|---|
Codeit_프로세스 관리 (0) | 2021.06.15 |
Codeit_컴퓨터 사이언스의 기본기 (0) | 2021.06.07 |
Codeit_남의 코드에서 배우기 (0) | 2021.06.07 |
Codeit_라이브러리 와 프레임워크 (0) | 2021.06.04 |