CS/소프트웨어공학

CS/소프트웨어공학

[소프트웨어공학] 2. 소프트웨어 공학의 의미

소프트웨어소프트웨어라고 하면 제일 먼저 생각나는 것은 소스 코드일 것이다.하지만 소프트웨어는 바이너리 코드 외에도 다양한 요소를 포함하고 있다.소프트웨어는 다음 요소를 포함한다. - computer program바이너리 코드 자체 - configuration files.env 파일에 따라 동작이 달라지는 스프링 앱, 프로그램의 설정 값 등 - system documentation소프트웨어를 개발하는 과정에서 나오는 결과물들요구사항 분석 후 나온 스펙 문서, 설계하면서 나온 디자인 문서, 구현, 테스팅 관련 문서들(테스트를 어떻게 할 지 세운 계획, 테스트 케이스에 대한 문서, 버그 수정 리포트 등)이처럼 소프트웨어를 개발할 때는 소스코드 뿐만 아니라 다양한 문서들도 함께 나오며, 이것들도 소프트웨어에 포..

CS/소프트웨어공학

[소프트웨어공학] 1. 소프트웨어 공학의 목적

소프트웨어 공학을 공부하는 이유소프트웨어 공학은 어떻게하면 좋은 소프트웨어를 빠르게 만들 수 있을지 고민하는 과정에서 등장했다.그리고 소프트웨어 엔지니어링 자체로 많은 사람들이 연구하고 있는 하나의 분야가 되었다. 그런데 하드웨어는 '하드웨어 공학' 이라는 말이 없다.하드웨어도 '좋은 하드웨어를 빠르게 만드는 방법' 과 같은 고민점이 있을 것 같은데, 왜 '하드웨어 공학'이라는 말이 없을까? 그건 소프트웨어와 하드웨어의 로직의 복잡도 차이 때문이다.규모가 매우 큰 소프트웨어는 코드 라인 숫자가 1~200만 줄이 넘어간다.그리고 그렇게 수많은 코드가 모여 동작하면서 아무런 문제가 없어야 한다.이건 엄청난 일이다. 반면 하드웨어는 정해진 공간 안에 회로를 설계해서 넣어야하다보니 논리적인 복잡도가 증가하는 한..

에버듀
'CS/소프트웨어공학' 카테고리의 글 목록 (2 Page)