반응형

CS/소프트웨어 공학 2

[소프트웨어 공학] 프로세스와 방법론 - 소프트웨어 프로세스

소프트웨어 프로세스 : 소프트웨어를 개발하는데 필요한 작업을 정의한 것방법론 : 정의된 작업들을 어떤 순서로 어떤 방법으로 하는가를 다루는 것 즉흥적인 소프트웨어 개발 시의 문제점1. 설계하는 작업의 중요성을 깨닫지 못함2. 잘 설계되지 않음3. 계획이 없어 작업의 목표가 없음4. 체계적인 테스트 작업이나 품질 보증 차원의 활동에 대한 필요성의 인식이 없음 이러한 문제점들은 소프트웨어 개발과 유지보수에 비용이 많이 들게 한다. 그렇다면 프로세스 모델이란 무엇일까? 프로세스 모델이란 프로젝트 수행에 필요한 작업과 작업들 사이의 관계만을 정의한 것인데 각 단계 작업에 대한 자세한 입력 자료와 산출물의 표현 뿐만 아니라 각 작업을 어떤 방식으로 하는지를 자세히 제시하는 것이 방법론이라고 한다. 이제 점점 프로..

Test-Driven Development (TDD)

Test-Driven Development 란?? Test-Driven Development는 너무 길기 때문에 짧게 TDD라고 말하겠다. TDD에 대해서 Lean 소프트웨어 개발론에 대해서 말하는데 이 개발론의 핵심 철학이 몇 가지 있는데 그 중 하나가 "결함은 발견 즉시 해결!"이다. Lean 개발은 이 "결함은 발견 즉시 해결"이라는 것에 대한 실천법으로 테스트 주도 개발, Test-Driven Development를 제시했다. TDD는 반복 테스트를 이용한 소프트웨어 개발법인데 이 TDD는 테스트 코드를 먼저 작성하고 실제 기능을 구현하는 코드는 나중에 만든다. wikidocs에서는 이것의 예로 건물을 지을 때를 들었다. 건물을 지을 때 벽돌을 쌓는 방법을 떠올리면 벽돌을 쌓을 때는 벽돌을 얼마만..

반응형