Challenge Overview
Project Overview
3D Systems is a cutting edge 3D printing company and they are looking to Reskin the UI for their Open Haptics SDK kit and SDK Installer to be more in line with their brand.
Challenge Overview
You are provided with new PSD (Storyboard) in this challenge and existing SDK Windows Installer source code, and you are required to update the SDK installer screens to match the screens provided in storyboard in look-and-feel.
Challenge Requirements
Getting Started
There are two zip files you need to extract them at C:\ folder :
-
������OHBuild (C:\OHBuild)
-
Contains a prebuilt files used for building the installer.
-
This folder can work only with the academic edition
-
There are two folders missing you will need to create manually :
-
C:\OHBuild\uAPI\Documentation\������QuickHaptics_doc\ : you will need to place a dummy txt file, it is expected to be used for documentation.
-
C:\OHBuild\3DTouch\InstallScripts\OpenHaptics_NSIS\Geomagic_OpenHaptics.ico
-
-
-
OHBuildTools (C:\OHBuildTools)
-
The NSIS scripts we use to generate the executable can be found in “OHBuildTools\Installer\”.
-
There are two scripts for the academic edition and the commercial edition of the software. You will work with only the academic edition script because the “OHBuild” that you have has prebuilt files only for academic edition.
-
We are using the NSIS (Nullsoft Scriptable Install System). You can download the NSIS software from the following link.
http://nsis.sourceforge.net/Main_Page
The NSIS software will install NSIS compiler which you can use to compile the .nsi scripts.
The script you will work on it is the Academic Installer Script : OH_NSIS_ACADEMIC.nsi
Download and setup dependency plugins :
-
Registry :
-
Use version 3.5 (You can search the wiki page history to get it)
-
You will run the exe, and registry plugin will be setup
-
Navigate to C:\Program Files (x86)\NSIS\Plugin and copy the Registry.dll to both folders (ansi and unicode)
-
-
UAC :
-
Use version 0.0.11d (You can browse history to get it)
-
Extract zip file and copy the UAC.nsh file to C:\Program Files (x86)\NSIS\Include folder. and UAC.dll to C:\Program Files (x86)\NSIS\Plugins\x86-XX folders
-
- WriteEnvStr :
- Place it in C:\OHBuildTools\Installer\ folder.
Start the NSIS tool and load the academic installer script and compile it. We usually set the compressor to LZMA (Solid) setting which makes the smallest installer footprint.
You can verify the work by running the output exe file. If you received any error during the script compilation and could not figure it out, please ask Copilot in challenge forums.
The installed files will look like this :
NSIS Modern UI 2
You can edit the script by opening it in notepad. The NSIS script is well commented and should be easy to read.
But also you can use Modern UI 2 to create a customized screens that matching the provided PSD files.
You can use NSIS Dialog Designer or Pavonis for easy development (it supports Modern UI 2), or you can find any other NSIS editor that can help you to simplify the development.
Required Screens, Functionality and Flow
Screenshots of existing and new screens are provided in challenge forums.
-
Splash Screen :
-
Existing Screen : splash_screen.png
-
New Screen : 00-3DSystems-Setup-Welcome-Splash.jpg
-
Progress bar should be implemented.
-
-
Agreement :
-
Existing Screen : agreement.png
-
New Screen : 01-3DSystems-Setup-Main-Screen.jpg
-
-
Setup Components :
-
Existing Screen : setup_components.png
-
New Screen : 03-3DSystems-Setup-Components.jpg
-
This step should be visible only when user enable ‘advance setup’
-
If ‘advance setup’ is disabled, GLUT is included to installation - by default -.
-
-
Setup Path :
-
Existing Screen : setup_path.png
-
New Screen : 04-3DSystems-Setup-Path.jpg
-
This step should be visible only when user enable ‘advance setup’
-
If ‘advance setup’ is disabled, the existing predefined path should be used - by default -.
-
-
System Installation :
-
Existing Screen : installing_details_collapsed.png and installing_details_expanded.png
-
New Screen : 05-3DSystems-Setup-Installing.jpg
-
In the new screen the log details is always displayed and it will a single line displaying the current item being setup/installed.
-
-
Installation Completed :
-
Existing Screen : installation_completed.png (we don’t have screen for failed installation but it should be same as success one but with different message)
-
New screens : 07-3DSystems-Setup-End-of-Installation-Error.jpg and 06-3DSystems-Setup-End-of-Installation-OK.jpg
-
-
Advance setup option/flag :
-
Screen : 02-3DSystems-Setup-Advance-Setup.jpg
-
The advance setup is new feature added to script, the Components and Path steps should be skipped (hidden) if the option is disabled.
-
-
Left side panel and navigation :
-
User can click arrows to navigate back and forth between screens.
-
The left side panel will show the progress of installation steps. Not clickable.
-
Clicking ‘Cancel’ will cancel the setup, it will display confirmation popup.
-
Testing
You need to write behavior testing to verify the new code/reskinning. Use this cucumber framework. If you want to use other framework you need to get Copilot/PM approval in challenge forums.
General Notes
-
Use latest stable versions of NSIS and Plugins.
-
You can use new plugins to reskin the new screens if needed.
Documents
provided in challenge forums :
-
Existing screens screenshots
-
New screens screenshots
-
PSD (Photoshop Files)
-
3DSystem NSIS Windows Installer
Final Submission Guidelines
Technologies
-
Windows OS
Deliverable
-
All source code that implement the requirements above.
-
Detailed deployment document