소프트웨어 유지보수(3)
-
소프트웨어 개발 방법 및 도구(5), Software Maintenance
Software Maintenance 만들어진 소프트웨어가 버저닝이 이루어지거나 백업을 하거나 하나의 어플리케이션으로 만들기 위해서 어떻게 유지 관리할 것인가 Q) 여러 사람이 함께 하나의 소프트웨어를 만들 때 어떻게 결과물을 공유할 것인가? A1) GitHub 오픈소스로 할 경우에는 무료로 저장공간이나 도구 등을 제공할 수 있다. 우리가 만든 코드를 공유하고 관리할 수 있는 도구이다. A2) Google Docs 설계를 위해 필요한 도구이다. 동일한 파일을 여러명이 동시에 작업해도 작업을 할 수 있다. 따라서 문서를 만들 때 매우 유용한 도구이다. 1. Version Control 1) Version Control이란? 소프트웨어가 개선될 때마다 버전을 매겨 이를 관리하는 것을 의미한다. 버전은 번호를..
2022.09.16 -
소프트웨어 공학 (11), Software Evolution
Software Evolution 소프트웨어 출시 이후 나타나는 버그를 개선해 업데이트하는 과정 0. Software change 1) Software change란? - 해당 챕터에서 기저에 놓여있는 개발 방식은 top-down, waterfall 방식이다. - 소프트웨어는 출시 이후에 끝나는 것이 아니라 놓친 부분이나 새로운 피쳐의 등장, 비즈니스 환경의 변화 등등에 의해 새로운 기능이나 피쳐, 성능에 대한 부분, 기타 등등은 반드시 필요할 수 밖에 없다. 이는 소프트웨어의 변화를 이끈다. - 테스트는 프로그램이 완벽하다는 것을 증명하진 않는다. 이는 테스트 과정에서 걸러내지 못한 것을 이끌어내곤 한다. 이는 소프트웨어의 변화를 이끈다. - 하드웨어의 변화가 소프트웨어의 변화를 이끌수도 있다. 가상화..
2022.05.26 -
소프트웨어 공학 (4), 소프트웨어 프로세스 2
소프트웨어 프로세스 2 1. Process Activities 1) 디자인과 구현 요구사항에 대한 명세를 실제 시스템으로 만들기 전에 진행하는 단계 전통적으로는 이 둘을 구분하지만 웹, 비즈니스 기반인 경우에는 둘을 혼용해서 사용하기도 한다. 하지만 아직까지도 이 둘을 구분하지 않았을 때 리스크가 큰 경우에는 둘을 구분해서 사용하는 경우가 많다. (1) 디자인 요구사항에 대한 소프트웨어의 특성, 객체, 클래스 등을 구현하기 전 단계에서의 설계를 의미한다. 전통적인 입장에선 구현과 관련된 것들과는 독립적으로 이야기한다. 최근에는 agile이나 비즈니스 어플리케이션에서 디자인과 구현이 함께 이야기되고 있다. 즉, 디자인과 구현에 대한 구분은 주어진 비즈니스나 산업에 따라 달라질 수 있다는 점을 알 수 있..
2022.04.13