프로그래밍/SoftwareEngineering 2

[소프트웨어공학] 프로젝트 관리와 비용추정

소프트웨어 관리는 소프트웨어 공학의 필수적인 부분이다. 좋은 관리라고 해서 프로젝트의 성공을 보장할 수는 없다. 그러나 나쁜 관리는 프로젝트를 실패로 이끈다. 소프트웨어 관리자는 프로젝트 개발을 계획하고 일정을 관리하는 책임을 진다. 소프트웨어 관리자는 다른 공학과 구별된다. 1. 소프트웨어 제품은 형태가 없다. 소프트웨어 제품 관리자는 프로젝트 진척사항을 볼 수 없다. 그들은 프로젝트 진척사항을 점검할 수 있는 문서를 생성하는 사람에게 의존한다. 2. 표준화된 프로세스가 없다. 소프트웨어 프로세스는 조직에 따라 매우 가변적이다. 3. 대규모 소프트웨어 프로젝트는 대개 일회성(one-off)프로세스이다. 대규모 소프트웨어 프로젝트는 대개 어 방향에서 이전 프로젝트와 다르다. 이런 문제 때문에 소프트웨어 ..

[소프트웨어공학] Agile Software Development (애자일 개발 방식)

Agile Software Development Agile : 기민한, 민첩한 애자일 개발 방식에 대해 알아보자. 개념은 소프트웨어 개발 방법에 있어서 아무런 계획이 없는 방법과 지나치게 많은 개발 방법들에서 중간점을 찾고자 하는 방법론이다. 기존의 폭포수모델 같은 전통적인 방법론과의 차이는 less-document-oriented 즉, 문서를 통한 개발 방법이 아니라 code-oriented인 실질적인 코딩을 통한 방법론이다. ● "Rapid" development and delivery is now often the most important requirement for software systems. 비지니스 변화가 빠르고, 요구사항의 변화가 빈번하므로 안정적인 소프트웨어 요구사항을 생성해 내는것이..