`

SSD04 Exercise06 个人解答

阅读更多

Take Assessment: Exercise 6

Programming and Heuristic Evaluation

This exercise has two parts:

  • A programming part, in which you will create a Visual Basic program that implements a substantial part of the windows Date/Time control panel
  • A Heuristic Evaluation part, in which you will use the heuristics you have learned so far to evaluate the windows Display control panel

When you submit the exercise, you should submit all files for both parts. This doesn't mean that you should start both parts at the same time. In fact, it would be to your advantage to start the programming part immediately, and to not start with the Heuristic Evaluation part until you have finished 2.7.2 HE: Help Users Recognize, Diagnose, and Recover from Errors.

Part A: Programming — Full Date/Time Control Panel

Description

This assignment is to create an interface implementing a full Date/Time control panel (patterned after the standard Windows 98 Control Panel).  As shown below, this interface should contain a Tabbed Dialog control with two panes: one for setting the date and time and one for setting the time zone.   The "Date & Time" tab will be new for this assignment and should be like the one shown here—except that you are not required to draw the clock face on the right.  For the "Time Zone" tab, you should use the interface components and code that you created in the previous programming assignment.




Overall, this interface maintains nine pieces of data:

  • The second setting (0 to 59)
  • The minute setting (0 to 59)
  • The hour setting (in 24 hour time, 0 to 23)
  • The day of the month
  • The month of the year
  • The year
  • The index of the currently selected time zone
  • The offset in minutes from GMT for the currently-selected time zone
  • The title of the currently selected time zone

The interface you construct should consist of one Tabbed Dialog container along with "OK", "Cancel", and "Apply" buttons.  The Tabbed Dialog container should have two tabs—the "Date & Time" tab constructed new for this assignment and the "Time Zone" tab taken from the previous assignment.  The "Date & Time" tab should contain two frames (one for the date and one for the time) and a label that displays the currently selected time zone (but not the time zone's offset from GMT).  The "Date" frame should allow the user to specify the month, year, and day.  This should be done using a ComboBox control for the month and TextBox and UpDown controls for the year, and a Calendar control for displaying and changing the day. The Calendar control used here is the "Microsoft Calendar Control 10.0" with the following settings: ShowDateSelectors = "False",  ShowTitle = "False",  ShowHorizontalGrid = "True", ShowVerticalGrid = "True", DayLength = "System (Medium)",  GridCellEffect = "flat", and BackColor set to "white".  In order to use this specific Calendar control, you may need to add it to your toolbox using the Tools -> Customize Toolbox -> COM Components interface.

The "Time" frame of the "Date & Time" tab should consist of a PictureBox control (that will eventually include a drawing of a clock, but may be left blank for now) and a set of controls for the hour, minute, second, and am/pm settings.  Each of the hour, minute, and second interfaces should consist of a TextBox and an NumericUpDown control.  The am/pm interface should consist of a group (control array) of two radio buttons.

The final part of the interface should consist of the "OK", "Cancel", and "Apply" buttons.  When the user presses the "OK" or "Cancel" buttons, you should produce a small report of the current settings (similar to the one shown below) and then exit the interface (by "unloading" the form).  If the user presses the "Apply" button, you should produce a similar report, but not exit the interface.  As in the previous exercise, the report can be created using the MsgBox() subroutine provided by Visual Basic.

Note that some of the data items underlying this interface are presented to the user in different forms than they are stored internally.  For example, the hour of the day is stored internally in 24-hour format (0 to 23 hours) but is displayed to the user in 12-hour format (1 to 12 hours plus am/pm).  Similarly, some items are either displayed or controlled from more than one point.  For example, the current time zone is displayed both in the "Time Zone" tab (not shown here) and as part of the caption for a label in the "Date & Time" tab.  Similarly, the current month setting appears both in a ComboBox, and as part of the calendar control.

Updating these multiple forms of display and synchronizing between values entered in controls and the underlying data values can be greatly simplified by using properly constructed accessor (set /get ) methods for the data values.  As usual, each control should respond to changes in its property values by calling the set method(s) for the corresponding underlying data (possibly after translations such as from 12-hour to 24-hour time).  The set methods can then take responsibility for updating each of the controls that display their values (after checking to ensure that the control needs to be updated).

Resources

  • An executable like the application you are asked to create, click Ex6.zip .

When you are done with both parts of this exercise, submit all your files by clicking on "Submit" below.

 

 

Part B: Heuristic Evaluation — The Display Control Panel

Description


This is a picture of the Display Control Panel on Windows machines. Become familiar with this control panel in your computer; experiment with it by clicking here and there. In this exercise, we ask you to evaluate this control panel according to the heuristics you have learned in the second half of this unit. Any aspect of the control panel is fair game for using in this exercise (any dialog box you can get it to bring up, any message it displays, etc.)

Using the five heuristics we have learned in the second half of this unit, do a heuristic evaluation of this control panel. Write up five UARs in the format described in 1.3.3 How to Write a Usability Aspect Report (UAR). At least two of the five UARs should be for usability problems (aspects of the interface that violate one or more of the five heuristics) and at least two should be for good features (aspects of the interface that follow one or more of the five heuristics).

The five heuristics we have learned in the second half of this unit are:

  • HE: Error Prevention
  • HE: Aesthetics and Minimalist Design
  • HE: Recognition Instead of Recall
  • HE : Help and Documentation
  • HE : Help Users Recognize, Diagnose, and Recover from Errors

Make sure you give us enough context in the UARs to understand what aspect of the interface you are referring to. Including screen shots of the interface really helps us understand your UARs. To capture a screen shot for a UAR, click in the window you want a picture of, then type ALT-PRINTSCREEN. This will put a picture of the window in the copy-buffer. Then paste this picture into your UAR using your word processor.

When you are done with both parts of this exercise, submit all your files by clicking on "Submit" below. 


Submission

Submit the following files:

  • A project archive named Exercise6.zip
  • UAR_display_cp.doc
  • 大小: 9.6 KB
  • 大小: 9.5 KB
  • 大小: 2.7 KB
  • 大小: 20.3 KB
  • 大小: 41.2 KB
  • ex6AndMSCAL.zip (119.5 KB)
  • 描述: 样例程序和Microsoft Calendar Control 10.0
  • 下载次数: 6
分享到:
评论
1 楼 qianjigui 2009-02-08  
Feedback for Exercise 6 (v2.0)
Total Score: 84/100

    * UAR1
      Score: 10/10

    * UAR2
      Score: 7/10

          o UAR2_Matters_Of_Form
            Score: 2/2

          o UAR2_MattersOfSubstance
            Score: 5/8

                + UAR2 Evidence Slot
                  Score: 1/2
                  The UAR2 Evidence slot does not contain the name of a heuristic identifying the design principle the aspect violates / complies with. -1

                + UAR2 Explanation Slot
                  Score: 3/4
                  The UAR2 explanation does not interpret the evidence in the Evidence slot accurately or at all. -1

                + UAR2 Severity/Benefit Slot
                  Score: 1/1

                + UAR2 Solution/Trade-Offs Slot
                  Score: 0/1
                  UAR2 does not report potential trade-offs for the good feature identified. -1

    * UAR3
      Score: 8/10

          o UAR3_Matters_Of_Form
            Score: 1/2

                + UAR3 Identifier
                  Score: 0.5/0.5

                + UAR3 Name
                  Score: 0.5/1
                  The UAR3 name describes a solution, not a problem. -0.5

                + UAR3 Relationships Slot
                  Score: 0/0.5
                  The UAR3 Relationships slot refers to a heuristic(s), not other UARs. -0.5

          o UAR3_MattersOfSubstance
            Score: 7/8

                + UAR3 Evidence Slot
                  Score: 1/2
                  The UAR3 Evidence slot does not contain the name of a heuristic identifying the design principle the aspect violates / complies with. -1

                + UAR3 Explanation Slot
                  Score: 4/4

                + UAR3 Severity/Benefit Slot
                  Score: 1/1

                + UAR3 Solution/Trade-Offs Slot
                  Score: 1/1

    * UAR4
      Score: 10/10

    * UAR5
      Score: 5.5/10

          o UAR5_Matters_Of_Form
            Score: 1.5/2

                + UAR5 Identifier
                  Score: 0/0.5
                  The UAR5 identifier does not include either the label "HE" or your initials. -0.5

                + UAR5 Name
                  Score: 1/1

                + UAR5 Relationships Slot
                  Score: 0.5/0.5

          o UAR5_MattersOfSubstance
            Score: 4/8

                + UAR5 Evidence Slot
                  Score: 1/2
                  The UAR5 Evidence slot does not enough additional information (some additional comments, for example) about the aspect to allow readers to understand what the analyst was thinking when the aspect was identified. -1

                + UAR5 Explanation Slot
                  Score: 2/4
                  The UAR5 Explanation slot does not state the connection between interface artifacts and heuristic included in the Evidence slot accurately or at all. -1
                  The UAR5 explanation does not address the problem / good feature identified in the UAR's Name slot. -1

                + UAR5 Severity/Benefit Slot
                  Score: 0/1
                  The UAR5 Severity / Benefit slot is missing or does not present reasoning about how important the problem is to fix or the good feature to preserve. -1

                + UAR5 Solution/Trade-Offs Slot
                  Score: 1/1

    * DateTimeControlPanel
      Score: 33.5/40

          o Date-TimeFunction
            Score: 33.5/40

                + VB Non-Functional Elements
                  Score: 5.5/6
                  The Time frame control does not have an access key. -0.5

                + Date-Time Tab -- Date Frame
                  Score: 3/6
                  When the Month combo box value is changed, the Calendar control does not adjust accordingly. -3

                + Time Frame -- Time textbox and UpDown controls
                  Score: 7/10
                  The Hour text box allows typing in the values exceeding the permissible range. -1
                  The Second text box and UpDown controls do not work together to change the Hour settings. -2

                + Time Frame -- AM / PM radio buttons
                  Score: 3/3

                + Time Frame -- label displaying the current time zone
                  Score: 2/2

                + Time Zone Tab -- Time Zone Combo Box
                  Score: 2/2

                + Time Zone Tab -- Daylight Savings Check Box
                  Score: 2/2

                + OK, Cancel, and Apply buttons
                  Score: 3/3

                + The Report
                  Score: 6/6

    * GeneralIssues
      Score: 10/10

相关推荐

    SSD06 Exercise04 个人解答

    标题 "SSD06 Exercise04 个人解答" 暗示这可能是一个关于软件开发或编程练习的解答,特别是涉及到性能分析或者优化的环节。描述中的 "NULL" 没有提供额外的信息,但我们可以从标签 "源码" 和 "工具" 中推测,这个...

    SSD04 Exercise04 个人解答

    【标题】"SSD04 Exercise04 个人解答"主要涵盖了两个关键知识点:源码理解和工具使用。在这个练习中,作者分享了他们对于特定编程问题的解决方案,可能涉及编程语言的深入理解、代码调试技巧以及如何有效地利用开发...

    SSD04 Exercise03 个人解答

    【标题】"SSD04 Exercise03 个人解答"主要涵盖了两个关键概念:源码分析和工具使用。这可能是某个课程或项目中的一个练习,其中"SSD04"可能代表课程编号或者阶段,而"Exercise03"则指示这是第三次实践任务。解答者...

    SSD06 Exercise05 个人解答

    【标题】"SSD06 Exercise05 个人解答"主要涵盖了两个关键知识点:源码分析和工具使用。在这个练习中,作者分享了他对某个特定编程问题或项目的解答,这通常涉及深入理解代码的运作机制,包括算法、数据结构以及编程...

    SSD04 Exercise01 个人解答

    这是我的解答 博文链接:https://qianjigui.iteye.com/blog/248917

    SSD06 Exercise02 个人解答

    【标题】"SSD06 Exercise02 个人解答"主要涵盖了两个关键概念:源码分析和工具使用。这可能是某个课程或项目练习的一部分,其中作者Qianjigui分享了他在解决特定编程问题或实现某功能时的经验和理解。 在源码分析...

    SSD06 Exercise03 个人解答

    标题“SSD06 Exercise03 个人解答”暗示了一个编程练习或课程作业,其中可能涉及 SSD(固态存储)相关的技术,而 Exercise03 可能是该系列练习中的第三个部分。描述提到的“Ubuntu8.04+Gcc+Gdb”是一个古老的Linux...

    SSD06 Exercise01 个人解答

    NULL 博文链接:https://qianjigui.iteye.com/blog/256678

    SSD04 Exercise08 个人解答

    【SSD04 Exercise08 个人解答】 在这个学习实践中,我们主要关注的是与源码分析和工具使用相关的知识。这个题目可能源自于一个软件开发或计算机科学的课程,其中"SSD04"可能是课程代码,而"Exercise08"指的是第八个...

    SSD04 Exercise05 个人解答

    综上所述,SSD04 Exercise05 个人解答不仅仅是完成了一个具体的编程练习,更重要的是,通过这个过程,我学习到了如何有效地阅读和分析源码,如何深入理解编程语言特性和算法的运作,以及如何熟练运用开发工具来提升...

    SSD04 Exercise02 个人解答

    我的解答 博文链接:https://qianjigui.iteye.com/blog/248918

Global site tag (gtag.js) - Google Analytics