Software Development는 현실 세계의 문제를 컴퓨터 안에서 Software로 푸는 것이다. 이 때, Software Development를 Procedural Programing (SASD)을 통해 문제를 풀지, Object Oriented Programming (OOAD)을 통해 문제를 풀지 선택 할 수 있다. 소프트웨어 개발은 요구 사항을 수집하고, 요구 사항을 달성하기 위해 프로그램을 디자인하고, 유지 보수하는 것이다. 컴퓨터나 디지털 기기에서 실행되도록 배포하는 것까지 의미한다. 실제 프로그램이 수행되는 물리적인 환경까지 고려되어 수행될 수 있도록 해야 한다. 소프트웨어 설계 시, 하기의 프로그래밍 방식을 고려해 볼 수 있다. 1. Procedural Programming : SAS..