개발의 첫 단계로 프로토 타입이 얼마나 일반적입니까?


10

지난 몇 학기 동안 소프트웨어 디자인 과정을 수강했으며 많은 형식주의의 이점을 보았지만 프로그램 자체에 대해 아무 것도 알려주지 않는 것 같습니다.

  • 프로그램이 수행 할 수있는 작업에 대해 논의하더라도 유스 케이스 스펙에서 프로그램이 어떻게 작동하는지 알 수 없습니다.
  • 품질 요구 사항을 포함 할 수 있지만 요구 사항 문서에서 사용자 경험에 대해 아무 것도 말할 수 없습니다.
  • 시퀀스 다이어그램은 소프트웨어가 호출 스택으로 작동하는 방식을 잘 설명하지만 매우 제한적이며 전체 시스템을 부분적으로 볼 수 있습니다.
  • 클래스 다이어그램은 시스템 구축 방법을 설명하는 데 유용하지만 소프트웨어가 무엇인지 파악하는 데 전혀 도움이되지 않습니다.

이 모든 형식의 요점은 결론입니다. 프로그램의 모양, 작동 방식 및 경험은 무엇입니까? 그걸로 디자인하는 것이 더 합리적이지 않습니까? 프로그램이 프로토 타입을 통해 어떻게 작동해야하는지 파악하고 실제 구현을 위해 노력하는 것이 낫지 않습니까?

나는 아마도 이론가들에 의해 공학을 배우는 데 어려움을 겪고 있다는 것을 알고 있지만, 그들이 업계에서 이것을 하는가? 사람들은 프로그램이 실제로 무엇인지, 어떻게 준수해야하는지 어떻게 알 수 있습니까? 사람들이 프로토 타입을 많이 사용합니까, 아니면 UML과 같은 공식 도구를 주로 사용합니까? 아직 사용하지 못하고 있습니까?


2
필자가 읽은 바에 따르면 소프트웨어 개발의 사용자 인터페이스 부분에 너무 집중 한 것 같습니다. 프로토 타입은 UI를 개발하고 수정하는 데 탁월하며 핵심 로직을 망치는 데 그치지 않으며 (또는 구현하려는 비즈니스 로직이 무엇인지 정확히 파악하기까지)
Anon.

1
사람 사용자가있는 경우 일반적으로 GUI가 있습니다. GUI의 모양과 수행 방법은 전체 시스템의 디자인에 영향을 미칩니다.
Job

답변:


6

GUI 애플리케이션을 구축하는 경우 거의 항상 프로토 타입 또는 POC (개념 증명)를 만듭니다. 앱의 시각적 어휘가 무엇인지 설정하겠습니다. 우리는 일반적으로 고객이 POC를 통해 부분적으로 참여하게하고 목적이 무엇인지, 무엇에 집중해야하는지 이해하도록합니다. 프로토 타입을 제작 한 것이 유감입니다. 프로토 타입 코드를 프로덕션 코드로 바꾸지 말고 프로토 타입에서 배운 내용을 기반으로 프로덕션 코드를 처음부터 시작하십시오.

우리는 거의 서버 측 애플리케이션 (서비스, 미들웨어 등)을 프로토 타입 화하지 않습니다. 새로운 기술을 사용하고 다른 개념을 입증 해야하는 경우가 아니라면 실제로 투자 수익을 보지 못합니다.


+1 우리 회사 프로토 타입은 주로 GUI 에서뿐만 아니라 서버 측에서도 문제에 대한 새로운 접근 방식을 연구 할 때 개념 증명으로 만 사용됩니다.
Orbling

6

비즈니스 세계에서는 많은 문제가 있습니다.

당신도 비즈니스 세계에 부딪 치기 전까지는 그렇게 생각합니다. 그런 다음 더 이상 요구 사항을 취하지 않고 구축하고 구축 할만큼 단순하지 않습니다.

사용자가 다이어그램을 "흐르는"비즈니스 개념과 lo-fi 프로토 타입이 실제로 의미가 있습니다.

"프로그램"의 작동 방식은 아마도 쉬운 부분 일 것입니다. LOB (Line Of Business) 앱에서 대부분은 CRUD입니다. 문제는 에있다 비즈니스 로직 및 규칙 . 효과적인 이해와 계획을 위해 사용자 흐름 다이어그램과 비즈니스 프로세스 흐름이 매우 중요합니다.


1

프로그램이 "작동하는"방법은 무엇을 의미합니까? 특정 최종 구현 이외의 다른 구현에서 정확한 구현 세부 정보를 찾고있는 것 같습니다. 상위 레벨 요소는 구현을 결정하는 것이 아니라 구현을 안내해야합니다.

내 경험상 프로토 타입 제작은 다소 드문 일입니다. 나는 사양, 요구 사항, 아키텍처 등과 관련하여 확실히 배웠으며 매우 유용 할 수 있습니다.

"소프트웨어가 필요로하는 것"에 대한 요구 사항입니다. 전체 포인트가 누락 된 것 같습니다.

인터페이스는 종종 미리 스케치되어 있으며 사용 사례는 인터페이스 "흐름"에 사용될 수 있습니다. 사용자 경험이 전혀 없습니다. 어떤 요소가 빠졌다고 생각되면 교수가 언급하지 않은 다른 것을하십시오. 디자인은 하늘에서 전달 된 명확한 규칙 세트로 구성되지 않습니다.


0

내 개인적인 관찰은 프로토 타입에 많은 립 서비스가 제공되지만, 너무 자주 프로토 타입이 생겼다면 일단 '베타 (Beta)'또는 더 나쁜 v1.0으로 브랜드가 바뀌 었다는 것이다.


+1 매우 사실, 프로토 타입은 프로젝트 완료를 알리는 마케팅 담당자가 볼 수 있습니다.
Orbling

1
이것은 프로토 타입을 거부하는 것이 아니라, 주어진 시간에 프로토 타입을 가능한 한 좋게 만드는 데 대한 주장입니다.
Inaimathi

0

프로토 타입에는 두 가지 종류가 있습니다. 실제로 세 가지가 있습니다.

  1. "실제"코딩을 시작하기 전에 설계를 개선하고 위험을 줄이기위한 프로토 타입을 제작합니다 (엔지니어링)

  2. 우리는 일련의 세련된 프로토 타입으로 프로젝트를 구축합니다 (Agile)

  3. 프로토 타입을 제작하고 작동하자마자 배송합니다 (Cowboy)



0

프로토 타입은 필요한 작업의 "반복 0"으로 간주 될 수도 있습니다. 몇 가지 사항을 수행합니다.

  • 개념을 수행 할 수 있음을 증명합니다. 이것은 상사 나 유료 고객에게 있습니다.
  • 생산력을 얻기가 어려울 수있는 것을 식별하고 필요한 작업량에 대한 일반적인 아이디어를 제공합니다.
  • 실제로 무언가를 하는 코드가 있습니다 . 이것은 매우 중요합니다!

완전히 다른 접근법이 필요하지 않다면 모든 프로토 타입에서 최종 제품을 만드는 데 유용 할 것입니다.

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