사람들이 소프트웨어의 최소 하드웨어 요구 사항을 어떻게 정의합니까?


21

사람들이 소프트웨어의 최소 하드웨어 요구 사항을 어떻게 정의합니까? 예를 들어, 소프트웨어 개발 회사는 고객에게 프로그램을 제대로 실행하려면 8GB의 RAM이 필요하다고 어떻게 알 수 있습니까?

답변:


31

우선, 모든 요구 사항이 어려운 요구 사항이 아니라 지원되는 최소 하드웨어입니다. 누군가가 최소값보다 작 으면 실행할 수 있지만 최적으로 실행되지 않거나 전혀 실행되지 않을 수 있습니다. 두 경우 모두 지원되는 시스템이 아니며 문제는 자신의 것입니다.

하드웨어 요구 사항을 얻는 가장 간단한 방법은 추측입니다. 개발자는 자신의 컴퓨터를보고 "그렇습니다. 내 컴퓨터에서 실행됩니다. 이것이 요구 사항입니다."

보다 엄격한 환경에서 개발 회사에는 일련의 테스트 시스템이 있습니다. 사내에 있지 않을 수도 있습니다 (사내 이외의 애플 개발자는 때때로 Apple Compatibility Lab 사용 ). 테스트 프로세스의 일부로 사용 가능한 모든 하드웨어를 테스트하고 최소 요구 사항을 결정합니다.

하드웨어 요구 사항의 또 다른 요소는 운영 체제의 기본 요구 사항입니다. 이론적으로 Windows 7을 실행하려면 최소 1GB의 램이 필요합니다. 따라서 Windows 7을 실행하는 512MB 시스템에 대한 테스트는 의미가 없습니다.

1GB의 램으로 실행중인 시스템을 테스트하십시오. 작동합니까? 아니 ... 램 업그레이드 응용 프로그램이 지원 가능한 방식으로 작동 할 때까지 테스트 및 업그레이드를 반복하고 최소 요구 사항으로 나열하십시오.

성능이 소프트웨어 약속의 일부가되면 '지원 가능'에는 실제로 실행하는 것 외에 작업이 최소 성능 기대치를 충족시키는 것이 포함됩니다.


8
확실한 대답. 벽에 은유 적 인 다트를 던지고 추측을 내리는 것이 문제라는 것을 덧붙이는 것은 아프지 않을 것입니다. 그것은 매우 주관적인 과정 일 수 있습니다.

1
+1 : 아주 좋은 대답입니다. 또한 소프트웨어 성능 테스트시 종종 하드웨어 요구 사항이 표시됩니다. 즉, "실행하는"문제가 아니라 성능 요구 사항을 보는 것입니다. 작업 을 완료 하는 o데 <시간이 걸리는 요구 사항이 있으면 t해당 목표를 만족하는 하드웨어 조합이 최소 사양이됩니다.
Steven Evers

생각 하자면 , 개발 시스템 일반적으로 훨씬 강력 해야 합니다. 즉, 개발자가 자신의 설정에서 거의 크롤링하는 것을 보지 않아도 작업이 완료되지 않을 수 있습니다. 당연히 경영진이 어리석은 짓을하지 않았다.
중복 제거기

@ 중복 제거기 나는 Dell 280s에 대한 개발자가있는 최근 고용주를 언급 할 수 있습니다 (일식과 jboss를 실행하는 플래시백). 물론, 그것은 목표 플랫폼이기도하지만 IE 만 실행했습니다.

6

하드웨어 요구 사항은 몇 가지 다른 버킷에 속합니다. 빌드하는 소프트웨어 시스템에 대한 특정 하드웨어 요구 사항을 결정할 때 이러한 버킷 중 일부의 요구 사항을 포함하는 경우가 종종 있습니다.

아키텍처의 기술적 제약

이것은 내장 시스템이 반드시 충족해야하는 종류의 요구 사항이며 처음부터 시스템에 특별히 설계되었습니다. 예를 들어 "x86 프로세서가 필요합니다."

가장 쉬운 예는 Mac 용 Microsoft Office입니다. 원래 Mac은 Power PC CPU를 사용했지만 Microsoft Windows는 "IBM 호환"시스템 (주로 x86 프로세서 사용)을 대상으로했습니다. Windows와 Office는 x86에서만 작동했기 때문에 Mac OS 용 Power PC 용 Office를 지원하기 위해 완전히 다른 코드 (기술적 제약이 있음)가 작성되었습니다. Mac이 Intel x86 프로세서로 옮겨지면 이전의 Power PC 최적화 된 Mac 용 Office는 더 이상 작동하지 않았으며 Intel의 Mac 용 새 Office 버전에 대한 기술적 제약이 다시 한 번 변경되었습니다. 32 비트와 64 비트에 최적화 된 애플리케이션이 또 다른 쉬운 예입니다.

암시 적 하드웨어 요구 사항

때때로 당신은 적극적으로 자신을 구속하지 않기로 결정하지만, 다른 결정은 암시 적으로 요구 사항을 강요합니다. 일반적인 시나리오는 모든 종류의 프레임 워크 위에 구축됩니다.

예를 들어 .Net 4.0 응용 프로그램을 구축하는 경우 .Net 4.0에는 Microsoft의 하드웨어 랩을 통해 확인 된 하드웨어 요구 사항이 있습니다. 이제 응용 프로그램에는 최소한 .Net 4.0 프레임 워크와 동일한 하드웨어 요구 사항이 필요합니다.

상황에 맞는 하드웨어 요구 사항

하드웨어 요구 사항에 대해 이야기 할 때는 대부분 특정 품질 특성 시나리오를 지원하는 방법입니다. 성능, 안정성, 가용성 및 기타 결함과 같은 것들.

IBM InfoSphere Data Explorer (기본적으로 Big Data 검색 엔진 플랫폼) 위에 애플리케이션을 빌드하는 고객을 위해 하드웨어 권장 사항을 작성하는 경우가 종종 있습니다. Data Explorer의 기본 요구 사항은 최소이지만 (랩톱에서 실행할 수 있음) 특정 빅 데이터 응용 프로그램에 대한 하드웨어 권장 사항 (읽기 : 요구 사항)은 해당 응용 프로그램의 특정 품질 특성 시나리오에 따릅니다. 데이터를 얼마나 빨리 색인화해야합니까? 초당 몇 개의 쿼리를 처리해야합니까? 가동 중지 시간은 얼마입니까?

특정 품질 특성 시나리오를 식별하면 모래에 선이 생겨나 고, 이러한 시나리오를 기반으로 최소 하드웨어 요구 사항 (예 : Y 용량의 RAM이있는 X 개의 CPU 수, Z 기가 바이트의 하드 드라이브, N 개의 중복 시스템)을 추천 할 수 있습니다. 우리의 경우, 우리는 하드웨어 속성의 시작을 결정하는 데 도움이되는 품질 속성 시나리오의 가정을 사용하는 기본 공식 (하드웨어 실험실에서 광범위한 테스트를 통해 결정됨)을 갖습니다. 이 권장 사항은 해당 특정 빅 데이터 응용 프로그램의 요구 사항이됩니다.

이 예제에서 모든 프로덕션 시스템의 경우 랩톱은 기술적 으로 "최소한"요구 사항을 충족 하더라도 실제로는 작동하지 않습니다 . 해당 구현의 맥락-특정 시나리오 및 데이터, 프로덕션에서 실행 중인지 여부 등에 따라 하드웨어 요구 사항이 결정됩니다.

시나리오의 가정이 변경되면 하드웨어 요구 사항도 변경됩니다. 따라서 "소프트웨어를 제대로 실행하려면 YGB RAM이 필요합니다"라는 문구는 실제로 "Z 시간에 X 백만 개의 문서 또는 ABC 문서 / 분 속도로 크롤링하려면 YGB의 RAM이 필요합니다"라는 의미입니다.

지원되는 최소 하드웨어 요구 사항

즉, 하드웨어 사양이 올바르게 작동하고 지원 그룹이 문제 해결을 도와 줄 준비가되어 있어야합니다. 일반적으로 이것은 개발 머신이나 어떤 종류의 테스트 랩을 통해 직접 액세스 할 수있는 하드웨어 세트입니다.

이에 대한 한 가지 예는 출시 된 거의 모든 Android 앱입니다. 안드로이드 개발자는 최소한 몇 개의 물리적 장치에서 일부 소프트웨어 시뮬레이터를 통해 앱을 테스트합니다. 그러나 안드로이드를 실행하는 1000 가지의 서로 다른 기기가 있으며, 그 중 상당수는 거의 문제가되지 않을 수 있습니다. 대부분의 경우 사용자가 문제를 겪을 경우 여전히 지원을 제공합니다. 그리고 대부분의 경우 하드웨어 변형을 구체적으로 테스트하지 않아도 사용자는 문제가 발생하지 않습니다. Microsoft는 Windows 에서도이 문제가 있습니다. 얼마나 많은 다른 비디오 카드, 마더 보드, CPU, 메모리 조합이 있습니까?

기본적으로 지원되는 최소 하드웨어를 식별하는 것은 "이 소프트웨어는 내 컴퓨터에서 작동합니다.이 소프트웨어는 내 컴퓨터와 비슷하게 작동 할 것으로 예상합니다. 많은 사람들이이 소프트웨어를 많은 다른 컴퓨터에서 문제없이 사용했으며 마일리지가 다를 수 있습니다." 문제가있는 경우 최선을 다해 도와 드리고 고칠 수 있지만 보장 할 수는 없습니다. "


0

일부 애플리케이션의 경우 개발자가 앱을 분석하거나 프로파일 링 할 때와 같이 요구 사항이 실제로 까다로운 요구 사항 일 수 있으며 특정 성능 벤치 마크를 충족하는 데 필요한 메가 플롭, MIPS, 초당 다각형, 어레이 작업 세트 크기 등을 정확히 알고있는 경우 .

소규모 개발자의 경우 비용이 문제 일 수 있습니다. 그들은 사용 가능한 시스템이 하나뿐이므로 다른 것 (느리거나 작은 것 등)에서 앱을 테스트 할 수 없었고 앱이 어떻게 작동하는지에 대한 단서가 없으므로 시스템 사양을 최소로 선언합니다. 적은 자원으로.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.