คำถามติดแท็ก user-interface

คำถามเกี่ยวกับการโต้ตอบของซอฟต์แวร์กับผู้ใช้ที่เป็นมนุษย์


4
วิธีจัดการกับการออกแบบส่วนต่อประสานกับผู้ใช้และรองรับคุณสมบัติต่าง ๆ ในการพัฒนา Agile?
ในกระบวนการพัฒนาแบบ Agile โดยปกติจะเน้นที่เรื่องของผู้ใช้ แต่บางครั้งความต้องการเดียวอาจครอบคลุมเรื่องราวของผู้ใช้หลายคน ตัวอย่างเช่นลูกค้าอาจขอหน้าค้นหาสำหรับผู้ใช้ทั้งหมดในฟอรัมและมีการดำเนินการหลายอย่างที่อาจเกิดขึ้นกับผู้ใช้แต่ละรายเช่นผู้ใช้แบนผู้ใช้ลบผู้ใช้รีเซ็ตรหัสผ่าน ฯลฯ เราอาจแบ่งคุณลักษณะนี้ออกเป็นเรื่องราวของผู้ใช้อย่างน้อย 4 เรื่อง: ค้นหาผู้ใช้ แบนผู้ใช้ ลบผู้ใช้ รีเซ็ตรหัสผ่าน ผู้ออกแบบส่วนต่อประสานผู้ใช้จะใช้ส่วนต่อประสานกับผู้ใช้ได้อย่างไร? เขา / เธอควรทำงานกับเรื่องราวของผู้ใช้คนแรกแล้วเริ่มเพิ่มคุณสมบัติเพิ่มเติมให้กับ UI หรือไม่ อย่างไรก็ตามฉันคิดว่า UI ขั้นสุดท้ายจะเลอะ! หากเขาตัดสินใจที่จะทำงานกับคุณลักษณะทั้งหมด (การค้นหา + การกระทำ) จะเกิดอะไรขึ้นถ้าการกระทำที่มีลำดับความสำคัญต่ำและจะต้องดำเนินการซ้ำหลายครั้งหลังจากฟังก์ชั่นการค้นหาเสร็จสิ้นแล้ว

1
เมื่องานอะซิงโครนัสทำให้ UX ไม่ดี
ฉันกำลังเขียน COM add-in ที่ขยาย IDE ที่ต้องการอย่างยิ่ง มีคุณสมบัติหลายอย่างที่เกี่ยวข้อง แต่ให้แคบลงเป็น 2 เพื่อประโยชน์ของโพสต์นี้: มีเครื่องมือExplorer ในหน้าต่างที่แสดงมุมมองแบบต้นไม้ที่ช่วยให้ผู้ใช้นำทางโมดูลและสมาชิกของพวกเขา มีเครื่องมือตรวจสอบรหัสหน้าต่างที่แสดงDataGridviewที่ให้ผู้ใช้สำรวจปัญหารหัสและแก้ไขให้โดยอัตโนมัติ เครื่องมือทั้งสองมีปุ่ม "รีเฟรช" ที่เริ่มงานแบบอะซิงโครนัสที่แยกวิเคราะห์รหัสทั้งหมดในโครงการที่เปิดอยู่ทั้งหมด รหัส Explorer ที่ใช้ผลการแจงการสร้างTreeViewและรหัสการตรวจสอบการใช้ผลการแจงที่จะพบปัญหารหัสและแสดงผลลัพธ์ในของDataGridView สิ่งที่ฉันพยายามที่จะทำที่นี่คือการแบ่งปันผลแยกระหว่างคุณสมบัติเพื่อที่ว่าเมื่อรหัส Explorer ในการรีเฟรชแล้วรหัสการตรวจสอบรู้เกี่ยวกับมันและสามารถฟื้นฟูตัวเองได้โดยไม่ต้องทำซ้ำการทำงานแยกว่ารหัส Explorer ที่ก็ไม่ได้ . ดังนั้นสิ่งที่ฉันทำฉันทำให้ parser class เป็นผู้ให้บริการเหตุการณ์ที่คุณสมบัติสามารถลงทะเบียนได้ที่: private void _parser_ParseCompleted(object sender, ParseCompletedEventArgs e) { Control.Invoke((MethodInvoker) delegate { Control.SolutionTree.Nodes.Clear(); foreach (var result in e.ParseResults) { var node = new …

2
การสร้างรหัสผ่านโดยอัตโนมัติในระหว่างการลงทะเบียนเป็นความคิดที่ดีหรือไม่
ฉันกำลังพัฒนาระบบการลงทะเบียนสำหรับโครงการที่ฉันกำลังทำอยู่ เนื่องจากผู้ใช้มักจะไม่สมัครใช้งานหากกระบวนการนี้ยาวเกินไปฉันคิดว่าจะต้อง (อย่างน้อยเริ่มต้น) เพียงแค่อีเมลของพวกเขาซึ่งฉันจะส่งรหัสผ่านที่สร้างขึ้นโดยอัตโนมัติให้พวกเขา (และนั่นจะทำให้ฉันสามารถยืนยันที่อยู่อีเมลของพวกเขาได้ ) ซึ่งจะป้องกันไม่ให้พวกเขาเลือกรหัสผ่านที่ไม่รัดกุมเพื่อให้การลงทะเบียนเสร็จสมบูรณ์อย่างรวดเร็ว ฉันยังไม่พบข้อเสีย แต่ฉันกลัวว่ามีบางอย่างที่ฉันไม่เคยเห็นไซต์ที่ใช้ระบบนี้ นั่นเป็นความคิดที่ดีหรือไม่? PS: แน่นอนฉันยังสมัครใช้งานผ่าน Facebook และบริการอื่น ๆ ที่คล้ายกันเพื่อให้ผู้คนสมัครใช้งานได้อย่างรวดเร็วโดยไม่ต้องใช้รหัสผ่าน แต่หลายคนอาจต้องการเลือกสมัครใช้แบบดั้งเดิมสำหรับข้อกังวลด้านความเป็นส่วนตัวหรือเพราะพวกเขาไม่ ใช้บริการเหล่านั้น

1
ออกแบบสำหรับกรอบแอปพลิเคชันที่จะช่วยให้แต่ละการใช้งานสามารถปรับแต่งส่วนต่างๆของ UI
ฉันได้รับมอบหมายให้ออกแบบเฟรมเวิร์กแอปพลิเคชันที่จะอนุญาตให้แต่ละการปรับใช้ส่วนต่าง ๆ ของส่วนติดต่อผู้ใช้เอง ตัวอย่างหนึ่งดังกล่าวอาจเป็นไปได้ว่าการใช้งาน (ลองเรียกว่าไคลเอนต์นับจากนี้เป็นต้นไป) สามารถกำหนดเซลล์มุมมองคอลเลกชันที่จะกลับมาสำหรับหน้าจอเฉพาะ เฟรมเวิร์กมีหน้าที่รับผิดชอบในการจำหน่ายวัตถุที่เหมาะสมเพื่อให้การสร้างแอปง่ายขึ้นมากเนื่องจากเราจะสร้างอินสแตนซ์ที่ดูคล้ายกันหลายครั้ง แนวทางปัจจุบันของฉันในกรอบการทำงานคือการออกแบบตัวควบคุมประสานงานที่รับผิดชอบการนำเสนอและเลิกจ้างกิจกรรมทั้งหมดในแอพ ตัวควบคุมการประสานงานเริ่มต้นจะแสดงตัวควบคุมมุมมองเริ่มต้นทั้งหมดภายในกรอบงานที่ทำงานทั้งหมดที่เกี่ยวข้องโดยไม่จำเป็นต้องมี UI ที่กำหนดค่าไว้ ตัวอย่างเช่น: หนึ่งคอนโทรลเลอร์จะแสดงมุมมองคอลเลกชันที่มีเซลล์แม่แบบและไม่มีอะไรพิเศษ ประโยชน์ของการออกแบบนี้คือการลบการเชื่อมต่อระหว่างตัวควบคุมและยังช่วยให้ลูกค้าสามารถแทนที่ผู้ประสานงานเริ่มต้นและส่งกลับตัวควบคุมมุมมองใหม่ทั้งหมดสำหรับงานเฉพาะ ปัญหาที่ฉันมีคือฉันควรออกแบบกรอบงานนี้อย่างไรเพื่อให้ลูกค้าสามารถเพิ่ม UI ที่กำหนดเองของตัวเองลงในแอพได้ แนวทางที่หนึ่ง ทำให้เฟรมเวิร์กจำเป็นต้องใช้มุมมองจากโรงงานและให้มุมมองนี้จากโรงงานรับผิดชอบในการจำหน่ายมุมมองที่เกี่ยวข้องทั้งหมด ดังนั้นใน App Delegate เราอาจบังคับให้ไคลเอนต์สร้าง CollectionViewCellFactory เป็นต้นและอินเทอร์เฟซจะกำหนดเซลล์ทั้งหมดที่คลาสที่สอดคล้องกันใด ๆ จะต้องจัดหา ฉันสืบทอดฐานรหัสด้วยการออกแบบนี้และย้ายออกไปจากที่นี่เพราะมันเป็นนามธรรมและปรับแต่งได้ มันมาพร้อมกับโรงงานมากมายสำหรับทุกแง่มุมของแอพและจะเพิ่มวันเข้าสู่เวลาตั้งค่าของแอพทุกตัว แนวทางที่สอง แต่ละตัวควบคุมมุมมองระบุ hooks subclassing หรือ setup API ที่จะอนุญาตให้กำหนด UI คลาสแบบกำหนดเองเหล่านี้ในเวลาทำงาน (คล้ายกับวิธีที่ UISplitViewController อนุญาตให้ผู้เรียกตั้งค่าตัวควบคุมโดยใช้คุณสมบัติ viewControllers) ในการทำสิ่งนี้ลูกค้าแต่ละคนจะทำการ subclass Base ประสานงานควบคุมและในแต่ละงานนำเสนอของคอนโทรลเลอร์ ตั้งค่าที่เหมาะสมลงบนคอนโทรลเลอร์เพื่อให้ได้ UI ที่ต้องการ …

5
มันเป็นการดีหรือไม่ที่จะต้องใช้เครื่องหมายทับซ้ายสุดในชื่อไดเรกทอรี?
ฉันต้องการขอให้ผู้ใช้ของสคริปต์ทุบตีของฉันผ่านเส้นทางไดเรกทอรีเป็นอาร์กิวเมนต์ ข้อใดต่อไปนี้เป็นแบบฝึกหัดการเขียนโปรแกรมที่ดี? ต้องการให้ผู้ใช้ป้อน / (เครื่องหมายสแลช) ต้องการให้ผู้ใช้ไม่ได้ป้อน / ต่อท้าย (เครื่องหมายสแลช)

7
UX ในโครงการต่อสู้ใคร
ตกลง. สมมติว่าคุณกำลังทำงานเกี่ยวกับโปรเจคตำราเรียน คุณได้มีการทะเลาะกันระหว่างหัวหน้ากับเจ้าของผลิตภัณฑ์ วิ่งต่อไปคือ UI-หนัก - ตามเวลาที่ coders ของคุณเริ่มต้นสร้างหน้าจอจริงๆคุณต้องการที่จะมีบางคนคิดว่าพวกเขากำลังจะมีลักษณะเหมือน ใครจะเป็น wireframing และเมื่อไหร่? เจ้าของผลิตภัณฑ์ มีคนสนับสนุนเจ้าของผลิตภัณฑ์หรือไม่ ต้นแบบการต่อสู้? หากคุณมีผู้เชี่ยวชาญ UX พวกเขาจะทำงานร่วมกับโคเดอร์หลังจากเริ่มการแข่งขันหรือพวกเขาจัดหา wireframes & mock-ups ล่วงหน้าที่นั่งอยู่ข้างๆการ์ดเรื่องราวและข้อ จำกัด ของคุณเพื่อเป็นแนวทางและแจ้งให้นักพัฒนาทราบ ฉันค่อนข้างมั่นใจว่าเราต้องการความช่วยเหลือจาก UX คุณเห็น แต่ฉันไม่แน่ใจว่าจะนำมันไปใช้ที่ไหน ... แก้ไข: ฉันขอใช้คำถามใหม่อีกครั้ง คุณจะมอบประสบการณ์ผู้ใช้ที่มีคุณภาพและสม่ำเสมอในโครงการที่คล่องตัวได้อย่างไร
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.