The following is an overview of the hardware rules
for the project options.



In phase 1, you should not consider issues such as programming languages in the design aspects in that context. As a team you will start thinking about that in general, but this project phase is meant to focus on issues such as anticipated users, their tasks, overall appearance and functionality.

In phase 2, you will choose the specifics of how to implement your project within certain limits. Since you will need to demonstrate your project in class as well as give it to another team to evaluate, all project demos must be able to run on Windows 10 and OS X machines without any software installations beyond Android Studio, Chrome, and Java 11 with WindowBuilder. For example, we install an Android simulator and run your app on our machine, or launch your Java app after installing the standard Java 11 JDK, or launch Chrome and open your HTML file locally, all without installing anything extra. You may create (for example) Java applications or HTML/CSS/Javacript pages that run on a PC which appear just like a smartphone application would even though Java does not simply run on smartphones and webpages won't look identical.

If you would like to simulate communication over a network by simply having both the client and server running on the same machine and communicating via local sockets (for example) please discuss it with Dr. Golub first (though we discourage the approach, he might approve it as long as we don't have to install anything extra. The better approach is likely to simulate things via a shared text file on the machine (don't build a database system) or shared objects in Java or using things like localStorage.setItem in Javascript. However, in this project phase, these should not be limiting factors.

If you are designing for a touch-based device, consider things such as the lack of tooltips or a physical keyboard on the actual device (so you might need to reserve part of your screen for the soft keyboard).

Consider screen resolution for your chosen platform.
  • If you are working on the kiosk, assume you have a 24" touchscreen monitor whose resolution is set at 1024x768.
  • If you are working on a tablet, assume you have a 9.7" diagonal iPad 2 with a resolution of 768x1024. However, realize that due to screen dpi, for a more accurate feel if working in Java you might want your Java app to be of lower resolution, but still the same aspect ratio. Perhaps that equates closer to something like 450 by 600.
  • If you are working on a smartphone, assume you have a 5" Nexus 4 with a resolution of 768x1280. However, realize that due to screen dpi, for a more accurate feel if working in Java you might want your Java app to be of lwoer resolution, but still the ame aspect ratio. Perhaps that equates closer to something like 375 by 500.

    Note: The only piece of hardware that you may simulate is a camera, and you cannot use it for advanced computing such as image recognition (we're not building that type of software in this course) but just as a camera.












  • Web Accessibility