소프트웨어공학 (Software Engineering) 26

SW Maintenance

소프트웨어 릴리즈 release, delivery 이후 수행되는 활동에 대해서는 Maintenance 유지보수로 보고 있습니다. Maintenance 임에도 요구사항도 변경될 수 있고, 설계부터 검증까지 이뤄질 수 있습니다. The main purpose of software maintenance is to modify and update software applications after delivery to correct faults and improve performance. 그럼 SW의 유지보수는 왜 이뤄질까요? - 사용자들의 변경 요구 (변심 포함) - 환경의 변화 - 새로운 기술의 등장 - 버그 수정 ... Software maintenance must be performed in order t..

Software Process model

소프트웨어 프로세스란, 소프트웨어 제품이 만들어지는 단계를 의미합니다. Source: https://erbis.com/blog/6-phases-of-the-software-development-life-cycle/ 1. 요구사항을 분석하고 = 무엇을 해야 하는지, 어떤 기능을 대상으로 해야 하는지 정의하고 2. 설계하고 = 요구사항을 어떻게 (How) 구현할지, 그리고 전략적인 부분들도 고려하고 3. 개발한다 = 요구사항과 설계를 고려해서 소프트웨어를 구현하고 (예: 소스코드) 4. 테스팅 = 앞서 정의된 사양대로 개발되었는지 (Verification), 버그는 없는지 확인하고 5. 배포한다 = Release, Delivery 6. 모니터링하고 유지보수한다. 대게 일반적인 소프트웨어 프로세스라고 하면 위..

Time to market, TTM

제품 구상(Conception) 부터 시장(Market)에 내놓기 까지 (release)의 시간 길이를 Time to Market, TTM이라고 부릅니다. 소프트웨어 공학이, 자동차 분야에서 점점 소프트웨어의 중요성이 커지는 이유 중에 기존에 배포(release) 된 소프트웨어의 유지보수에도 체계적인 접근, 변경 시 대응, 짧은 기간/시간에서 제품을 개발해야 하는데 시장에서 많은 요구사항들로 개발 시 고려해야 하는 요인들이 늘어나고 있습니다. 하기 그림을 포함해서 잘 정리된 웹사이트를 링크합니다. 참고하시기 바랍니다. Source: https://www.tcgen.com/time-to-market/#:~:text=Time%20to%20market%20(also%20called,the%20first%20u..

Software engineering definition & necessary

소프트웨어 공학의 정의는, 소프트웨어의 품질 향상과 생산성을 향상 시키기 위하여 사용자의 요구사항을 체계적으로 분석하여 설계 및 구현, 구현된 시스템의 시험 그리고 유지보수 및 폐기 까지의 소프트웨어 전 수명주기 간에 걸쳐 이루어지는 체계적인 접근법을 말한다. (Summerville, in "Software Engineering") 소프트웨어 개발, 운영 및 유지보수에 체계적이고 훈련이 잘 된 정량적인 접근 방법을 적용하는 것으로, 소프트웨어 개발 및 관리를 공학적으로 접근하는 것을 말한다. (Definition by IEEE Computer Society) Defines software engineering as the application of a systematic, disciplined, whic..

Difference between Program and Software

프로그램과 소프트웨어의 차이를 아래와 같이 정의할 수 있습니다. 출처: https://www.javatpoint.com/program-vs-software#:~:text=Definition-,A%20computer%20program%20is%20a%20set%20of%20instructions%20that%20is,to%20perform%20a%20specific%20task.&text=Programs%20do%20not%20have%20further%20categorization. Difference between program and software - javatpoint Difference between program and software with list of top differences and..

[Project] 프로젝트 이해

프로젝트는 '고유한 목표 (제품, 서비스 또는 결과)를 산출하기 위해 수행하는 한시적인 노력'을 의미합니다. A temporary endeavor undertaken to create a unique product, service or result (from PMBOK) 프로젝트로 운영되는 곳이 아닌 곳에서는 어느정도의 정형적이고, 반복적인 업무라는 이름으로 불리는 일들을 수행하게 됩니다. 이를 Operation, 운영이라고 칭하고 부르는 경우가 있는데 사실 운영(Operation)도 처음에는 프로젝트로 시작하여 사업, Business 의 유지 (Sustaining the business)로 이어지는 경우가 대다수일 것입니다. 출처: https://www.iliyanastareva.com/blog/the..