Challenge Overview
Note - The challenge will be reviewed jointly by the client and copilot
Welcome to the CAIL6530 iPad App - Bug Fixes challenge.
The client wants to develop an iPad app that emulates a text based terminal called "Tandem 6530" on iOS tablets. The App will allow users to access legacy, text based applications running on HP NonStop (formerly Tandem) mainframe systems. The app will be used by financial and manufacturing companies to connect to these mainframe systems.
The client has already built an Android app (source code for the same is provided in forums). We also have a Objective-C proof of concept which isn’t stable and not the highest code quality but can be used as a reference to see how it works.
There’s also the T-Term Pro app on the App Store which closely describes what we’re trying to build.
So far, we’ve run three challenges for this app to implement conversation mode and block mode
CAIL6530 iPad App - Conversational Mode POC Implementation
CAIL6530 iPad App - Block Mode Implementation + Bug Fixes
CAIL6530 iPad App - Block Mode Refinement + Bug Fixes
CAIL6530 iPad App - Bug Fixes + Application Front End
Challenge Requirements
As part of this challenge, we need to fix the following issues
1) Blinking and underlining should work. This was working previously and has been broken in one of the earlier challenges.
2) Scrolling is much better, but at end of screen memory the lines get shorter. Can be seen by doing “fileinfo $system.sys04.*”. if it doesn’t happen after that, do another “fileinfo $system.sys04.*”. Here is an image:
This needs to be fixed
3) We still get partial lines at top and bottom sometimes, and not when I change orientation. This happens with Test003, subtest 3 as per:
4) Seeview still crashes, but not always when I start it. It does crash every time I tab to “SeeLocl” and hit “Enter” right after starting it.
5) Test072 - still crashes with uncaught exception in Xcode output window
6) Test003, subtest 1 – still crashes after while drawing 3rd or 4th page
7) Test004, subtest6 – still crashes after running other tests. Can reproduce by running the test, then running it again without exiting the test.
8) Viewsys – If I start a new session and run viewsys right away after logging in I get a blank screen. Rotating the display fixes it.
9) Test002 - The “X” does not appear in the correct row/column, but the “Y” does appear in the correct row/column.
10) Test003, subtest 2 - This one is better now, but still get “&” characters in some places as per image:
11) Test004, subtest 10 - Allows keys to be sent while the keyboard is locked, which is not allowed.
12) Test021, subtest 2 - Cursor does not go to the home position when the host sends Esc H.
13) Test021, subtest 5 - Cursor does not end up at the home position, as it should.
14) Test025 - Cursor still not in first field when screen finished drawing. I talked to our engineers and they said that if the cursor isn’t already in an unprotected field when the unlock keyboard command (Esc b) is received, while in block protect mode, scan for the first unprotected field and place the cursor there.
15) Test029 - Still get unexpected data when pressing Enter.
16) In conversational mode, with most of screen memory filled, when I touch the screen to move the cursor, the screen shouldn’t change, and the cursor should go to where I tapped. Also, after the first tap, if I try to tap again nothing happens.
17) Setup – Font Selection - We still can’t show non-fixed width fonts, as fields won’t line up on the screens. Please only show Courier (default) and Menlo, as they are the only fixed width fonts in iOS.
18) Setup – Pages in Buffer – can this be changed to a type in field? I find it hard to get the exact number I want with the slider.
19) Setup – Pages in Buffer – please default to 16.
20) Setup – Columns – same as #17. Please grey this out (user can’t change for now) and make it 80.
21) Setup – Rows – same as #17. Please grey this out (user can’t change for now) and make it 24.
22) Setup – Bell – When unchecked, still get a bell when I connect.
23) Setup – logging, debugging, tracing – capitalize the words. These should work. Please document as part of your submission on where these files are created
Evaluation/ Review Criteria
- The application must connection to the sample 6530 server (details provided in forum) and be able to run the sample programs and provided tests must pass (details in forum).
- The conversational mode & block mode must also work correctly with the bug fixes mentioned above.
Challenge Assets
-
Existing app source code
-
Android App source code
-
XPrize Objective C Proof of Concept
-
Connection information to sample HP server including VPN connectivity
-
6530 Manual
General Notes
NOTES
-
Only iPad device is in scope.
-
All source code changes must be well commented and MUST follow existing coding conventions
-
If you face any API issues or have doubts related to request response for any API, please raise it in the forums so it can be clarified by client.
-
The app works in both portrait and landscape modes
-
App must support 2x and 3x assets and retina devices
-
App must support iOS 10.x
-
All code must be written in the latest version Swift and the project must use latest XCode version. Do not use Objective-C or Bridging approach
-
Please ask in the forums if you wish to use any open-source third-party libs to ensure there are no license violations
Final Submission Guidelines
- Updated XCode Project with all source code that addresses the requirements
- Deployment guide with configuration & verification steps. Describe all config params and include steps to run
- Demo video (Mandatory and will be scored down if not provided)