Book/『 소프트웨어 공학의 모든 것 』 3

기능 요구와 비기능 요구를 확실한 구분 방법

책에서 소프트웨어 개발을 시작할 때 기능 요구와 비기능 요구를 정의하는 것은 프로젝트의 성공을 위한 중요한 첫걸음이라고 강조한다. 이번 글에서는 기능 요구와 비기능 요구가 무엇인지, 그리고 어떻게 구분되는지를 알아보려고 한다!  1. 기능 요구기능 요구는 소프트웨어가 사용자와 상호작용하며 수행해야 하는 구체적인 작업이나 행동을 설명한다. 이 요구사항은 시스템이 제공해야 하는 서비스나 기능에 대한 명확한 설명을 제공하며 소프트웨어의 기본적인 동작 방식을 정의하는 데 필수적이다.다음과 같은 질문을 할 수 있으면 기능 요구이다.시스템은 어떤 서비스를 제공하는가어떤 입력이 주어졌을 때 어떻게 반응하는가어떤 상황에서 어떻게 행동하는가 시스템이 무엇을 해야 하는지 설명 (기능 or 시스템 서비스) 이처럼 기능 요구..

"소프트웨어 공학의 모든 것" 기능 요구, 비기능 요구, 유스케이스

책을 읽다가 소프트웨어 시스템 설계에서 중요한 요소 중 하나는 사용자의 기능 요구와 비기능 요구, 그리고 유스케이스라는 것을 알게 되었다. 기능 요구와 비기능 요구 정확하게 어떻게 서로 다른지, 유스케이스라라는 개념은 사실 전에도 많이 들어봤지만 정확하게 어떤것인지 궁금해서 이 글을 쓰게 되었다.기능 요구란 무엇인가?기능 요구(functional requirements)는 소프트웨어가 제공해야 하는 구체적인 서비스나 동작을 정의한다. 사용자가 시스템을 통해 무엇을 할 수 있는지, 그리고 시스템이 어떤 작업을 수행해야 하는지를 명확하게 기술하는 것이 기능 요구이다. 예를 들어, 사용자가 웹사이트에서 회원 가입을 할 수 있어야 한다는 요구는 기능 요구에 속한다. 이 요구는 사용자와 시스템 간의 상호작용을 구..

"소프트웨어 공학의 모든 것" 소프트웨어 프로젝트 시작

지금까지 여러 번의 팀 프로젝트를 해왔고, 배포 및 현재 유지보수중인 웹 서비스 프로젝트도 있다. 이제는 지금까지 해왔던 소프트웨어 프로젝트에 대한 기초 개념부터 대해 배우고 싶어서 '소프트웨어 공학의 모든 것' 책을 읽기 시작했다.1. 소프트웨어 프로젝트 관리의 기본 활동책에서는 소프트웨어 프로젝트 관리가 크게 계획, 조직, 모니터링, 조정의 네 가지 활동으로 이루어진다고 설명한다. 이 중에서도 모니터링과 조정이 핵심이라고 강조하고 있고, 프로젝트가 성공적으로 진행되기 위해서는 계획 단계에서부터 이를 염두에 두고 지속적으로 관리해야 한다.2. 프로젝트 시작 전 고려할 요소책에서 강조한 프로젝트 시작 여부를 결정하는 두 가지 요인은 다음과 같다.프로젝트가 제공할 가치: 이 가치는 프로젝트 결과물이 가져올..