Какие навыки вам нужны для правильного пользовательского интерфейса / взаимодействия / функционального дизайна в веб-приложениях? - PullRequest
3 голосов
/ 22 августа 2008

Когда вы разрабатываете веб-приложения с нуля, какие навыки необходимы для производства полезных и интерактивных продуктов?

  • Сначала вы делаете UI Prototype?
  • Используете ли вы пользовательские истории?
  • Какую гибкую методологию или лучшую практику вы бы порекомендовали или активно защищали?

Вкратце: Какие навыки позволяют вам превзойти сбор требований в AmazingWebApp ™?

Наконец: какие книги ты бы порекомендовал?

Ответы [ 9 ]

3 голосов
/ 22 августа 2008

Я думаю, что лучшее, что вы можете сделать, это просто использовать программное обеспечение ..

Когда я работаю над приложениями, я, как правило, отправляю им по электронной почте домой в конце недели (иногда раньше), чтобы выйти из «рабочего режима», установить его как обычно (т.е. не запускать из вашей IDE) и затем использовать ..

Трудно отойти от «тестового режима» и фактически «забыть», что вы знаете приложение. Но как только вы получите его, оно может быть ДЕЙСТВИТЕЛЬНО полезным и очень наглядным. открытие (и да, иногда душераздирающее, когда понимаешь, что «крутая маленькая особенность» на самом деле сосет и требует повторной реализации!).

Мой босс говорит, что я "анальный" по поводу юзабилити. Мне это нравится:)

3 голосов
/ 22 августа 2008

Хорошее чувство дизайна. Это трудно понять программисту. Иногда у программиста будет хорошее представление о том, что работает, но не о том, как создать то, что на самом деле работает лучше или лучше. В основном это требует способности взять все и быть готовым перемещать это бесплатно, пока что-то не срабатывает.

Способ, которым я делаю это, состоит в том, чтобы выяснить, как, если кто-то, где это сделать, что является наиболее логичным и распространенным представлением о том, как задача будет выполняться в Интернете или в автономном режиме, то узнает, как ее воспроизвести. Думайте коротко, кратко, ясно, доступно и логично. Если вы можете передать это кому-то без каких-либо указаний, и они могут делать все, что вы от них хотите, и больше это работает. Если им нужно иметь указания, как выполнять повседневные задачи в вашем приложении, это плохой дизайн.

Я бы также сказал, взгляните на другие приложения, которые привлекают вас на уровне, который вы можете даже не осознавать, а просто по какой-то причине работаете, и попытайтесь воспроизвести это.

1 голос
/ 20 октября 2008

ребята здесь дают отличные советы.

существует различие между «визуально красивыми» и «функциональными» (или простотой использования). вы можете иметь одно без другого. Этот форум - хороший пример, он очень удобен в использовании, но, откровенно говоря, он ужасен - извините, я все еще люблю вас:)

реальность такова, что вам нужно навык , чтобы создавать хорошие интерфейсы. это приходит с годами практики. Я обычно заключаю контракт на разработку и разработку всего пользовательского интерфейса для нового приложения. я редко вижу программистов или графических дизайнеров с такими навыками (это узкий рынок). я обнаружил в универе у меня была естественная хватка для HCI, дизайна пользовательского интерфейса и анализа юзабилити. я развил эти навыки дальше, много читая и набираясь опыта, занимаясь дизайном пользовательского интерфейса. так что, все, что я хочу сказать, будьте готовы к тяжелой работе, если вы серьезно настроены стать хорошими в дизайн пользовательского интерфейса. Вы можете делать все, что только захотите, но если вы тратите время на изучение дизайна пользовательского интерфейса, это означает, что вы не тратите время на изучение гибкой технологии с ruby ​​на рельсах или какой-либо самой модной технологией.

несколько общих советов:

  • если вы создаете веб-приложения (в отличие от веб-сайтов присутствия малого бизнеса), то создание прототипов lo-fi превосходно. соберите группу людей, стопку бумаги мясника и цветные маркеры, и вы будете поражены тем, сколько экранов вы можете набросать за несколько дней.

  • Ваше программное обеспечение должно быть самоочевидным . Ваше программное обеспечение не должно нуждаться в руководстве пользователя. у CMS, которую я разработал, нет руководства пользователя, у меня есть несколько десятков клиентов, которые его используют, и никто из них никогда не просил у меня руководство.

  • посмотрите, что делают "большие мальчики". если у ebay есть окно поиска, подобное этому: '[......] (Поиск)', то сделайте свое тоже самое (вместо нестандартного, но нормально: 'Поиск: [......] ( Идти)'.). это известно как позволить . вы используете знакомство людей с другими системами, чтобы дать им представление о том, как работает ваша собственная система.

Я бы порекомендовал эту книгу:

У меня также есть несколько статей в блоге, которые должны помочь:

1 голос
/ 22 августа 2008

Лучшая практика зависит от талантов членов команды.

Во-первых, всегда пишите пользовательские истории (если это возможно, делайте это командным событием), загружайте их в LighthouseApp.com или в свою любимую систему продажи билетов - только первые 10-20 - это все, что вам нужно, чтобы начать работу. *

Если у вас есть дизайнер пользовательского интерфейса, может пригодиться прототип страниц. Но, если разработчик программного обеспечения обладает хорошими навыками HTML / CSS, я предпочитаю как можно быстрее получить работающий прототип с чистым UI / HTML / CSS. Этот вывод может быть передан «современному веб-дизайнеру», который может переработать / украсить HTML / CSS. Разработчик должен работать с той же кодовой базой, что и разработчик, через систему контроля версий.

Некоторые «старшие школьные дизайнеры» будут обижены предложением «украсить сайт» и будут настаивать на передаче программисту файла фотошопа. Это может быть нормально для простого маркетингового сайта, но мне не нравится процесс создания AmazingWebApp ™

1 голос
/ 22 августа 2008

Некоторый тип визуального прототипирования (даже если это делается с помощью HTML и CSS), я думаю, лучше. Мой соблазн - начать писать код и беспокоиться об интерфейсе позже, и это обычно приводит к тому, что что-то плохо сосет (по крайней мере, для меня). Я разрабатываю это © WONDERFUL FUNCTIONALITY и заканчиваю тем, что тороплю интерфейс, чтобы быстро получить инструменты для получения кода

Я забыл, где это слышал, но для конечного пользователя ваш интерфейс - это ваше приложение. Если вы пытаетесь угодить пользователю, вы должны начать с интерфейса и позволить ему диктовать функциональность, которую вы предоставите.

0 голосов
/ 16 сентября 2008

Выяснение того, что вы создаете и что представляет ваш продукт, является огромным ключом к созданию успешного приложения. Недавно я написал запись в блоге о сборе требований, в которой немного об этом говорится. Вы можете прочитать это здесь: Как улучшить свои навыки сбора требований.

Кроме того, вот некоторые принципы высокого уровня, которым я следую, чтобы убедиться, что я создаю правильный продукт с восхитительным опытом:

Знайте разницу между пользователем и клиентом. Владельцы бизнеса, которые одобряют блестящий проект, обычно являются клиентами. Однако разрушительной ошибкой является тенденция запутать их как пользователя. Заказчиком обычно является человек, который осознает потребность в вашем продукте, но пользователь - это человек, который фактически будет использовать решение (и, скорее всего, позже будет жаловаться на требование, которое ваш продукт не выполнял). Перейти к более чем одному человеку

Потому что мы все люди, и мы склонны не помнить каждую мучительную деталь. Вы повышаете вероятность обнаружения пропущенных требований, когда общаетесь с большим количеством людей и перепроверяете.

Избегайте спец. Когда пользователь просит что-то очень конкретное, будьте осторожны. Всегда сомневайтесь в предвзятости и посмотрите, действительно ли это улучшит ваш продукт.

Прототип Не ждите до запуска, чтобы показать, что у вас есть для пользователя. Делайте частые прототипы (вы можете даже назвать их бета-версиями) и получайте постоянную обратную связь на протяжении всего процесса разработки. Вы, вероятно, найдете больше требований, когда будете делать это.

0 голосов
/ 22 августа 2008

Разработка полностью инновационного интерфейса довольно сложна для большинства программистов (это только я?). То, что я считаю полезным для создания / проектирования пользовательского интерфейса для веб-приложений, - это всегда искать приятные, простые в использовании и элегантные пользовательские интерфейсы, которые вы найдете при работе в Интернете или при использовании любых других приложений для настольных компьютеров. Если вы просто найдете наиболее эффективный пользовательский интерфейс (разработанный кем-то другим, в каком-то другом месте) для поставленной задачи, то вы сможете поработать над внедрением и созданием лучшего пользовательского интерфейса для вашего приложения. Например, когда я набираю этот ответ, мне нравится, как он показывает предварительный просмотр ответа в реальном времени с возможностью скрыть предварительный просмотр - я определенно хотел бы использовать подобный тип взаимодействия при создании интерфейса пользовательского форума. .

0 голосов
/ 22 августа 2008

@ Брайан Уоршоу - я думаю, что это был разговор Азы Раскина, это видео, я думаю

0 голосов
/ 22 августа 2008

Некоторые вещи, которые мы делаем:

  1. Лот прототипов, исследующих различные концепции как на бумаге, в фотошопе, так и иногда в реальных реализациях
  2. Обрежь все обратно, будь итеративным. Не пытайтесь выполнить все приложение и совершенствовать его в первый раз (потому что вы знаете, что в вашем сердце этого не произойдет)
  3. Ясность над умом, это одна из моих последних вещей, которую я спрашиваю, когда выполняю работу с пользовательским интерфейсом, уверен, что значки и значки могут выглядеть великолепно, но они ясны и кратки
  4. Сосредоточьтесь на целях пользователя, разработчики часто обращают внимание на один экран за раз, одну задачу за раз. Помните, что это не то, что думает кто-то, использующий ваше приложение, у него есть цель, так что постарайтесь как можно больше погрузиться в это
  5. Используйте программное обеспечение, которое вы создаете, как можно больше, и нет лучшего способа увидеть его недостатки, недостатки и проблемы, чем испытать их самостоятельно.
...