본문 바로가기
공부

프로그램 개발 과정 (3)

by 알고있니 2017. 3. 18.
728x90
반응형

디버깅까지 끝나서 프로그램이 출시되면 더는 할 일은 없어 보이지만 사실은 한 가지의 단계가 더 남아있다. 바로 프로그램 개발 과정 중 마지막 단계인 유지 보수이다. 소프트웨어에서 유지 보수라고 하면 처음에는 의아하게 생각된다. 왜냐하면, 소프트웨어는 보통의 제품처럼 시간에 흘러감에 따라서 닳거나 녹슬어서 손상되는 것이 아니므로 대부분 사람은 할 필요 있는지 모를 것이다.

 

소프트웨어의 유지 보수가 필요한 이유 중 하나는 디버깅 후에도 버그가 남아 있을 수 있기 때문이다. 프로그램이나 전자기기 출시 전에 많은 테스트를 하지만 어떤 비정상적인 상황이 발생하면 잠복하고 있던 버그 때문에 오작동할 수도 있다. 또 하나의 중요한 이유는 소프트웨어가 개발된 다음에 사용자의 요구가 추가될 수도 있으므로 유지 보수는 거의 필수나 마찬가지다. 사용자는 보통 소프트웨어를 사용하여 본 다음에 불편한 점이나 추가되어야 하는 기능 등을 피드백하기 마련이다. 이 경우, 누군가가 전체 프로그램을 훑어보고 필요한 기능 등을 추가하여야 할 것이다. 따라서 프로그램의 작성자는 차후에 누군가가 코드를 읽고 쉽게 수정할 수 있도록 최선을 다해 작성해야 할 것이다. 보통은 유지 보수 비용이 전체 비용 중에서 상당한 부분을 차지한다고 한다. 

 

Q1. 소스 파일과 오브젝트 파일, 실행 파일 중에서 반드시 보관하여야 하는 파일은 무엇일까? 

A. 소스 파일이다. 소스 파일만 있으면 컴파일러를 수행시켜서 오브젝트 파일, 실행 파일은 만들 수 있지만, 소스 파일을 삭제하면 컴파일할 수 없다. 따라서 반드시 소스 파일은 잘 보관하여야 한다.

 

Q2. 만약 당신이 게임 프로그램을 작성하였다고 가정하고 프로그램을 판매하여 이익을 얻으려고 한다. 그런 경우에 당신은 소스 파일, 오브젝트 파일, 실행 파일 중에서 어떤 파일을 구매자한테 주어야 할까? 

A. 실행 파일이다. 실행 파일은 독립적인 파일이다. 즉 다른 파일들이 없어도 독립적으로 수행될 수 있다. 구매자들은 실행 파일만 있으면 얼마든지 실행할 수 있고 C 컴파일러도 필요 없다. 만약 소스 파일을 구매자한테 준다면 구매자가 소스를 변경하여 다른 게임을 만들 수 있으므로 조심하여야 한다. 업체들이 소스 파일을 공개하지 않는 것은 이런 이유 때문이다. 

 

프로그램 개발 과정에 대해 글을 썼는데 처음 C언어를 배우는 사람이라면 순서를 외우는 게 좋을 것 같다. 1학기 수업을 들어보니 교수님께서 이 과정을 외우라고 하신 것을 보시면 중요한 과정이기 때문에 강조하신 것이다. 나도 언젠가는 한번 프로그래밍을 하게 되겠지만, 오늘이라도 이 과정을 알아두어 실수하지 않도록 해야겠다. 중간고사 시험 치기 전에 다시 한번 훑어보고, 암기하고 시험에 임할 것이다.

728x90
반응형

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

수의 표현 및 진법 변환, 명령어  (0) 2017.03.18
컴퓨터의 개념  (0) 2017.03.18
프로그램 개발 과정 (2)  (0) 2017.03.17
프로그램 개발 과정 (1)  (0) 2017.03.17
C언어의 특징  (0) 2017.03.16

댓글