Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles / Mobile

Cardar™, credit cards metadata organizer

5.00/5 (4 votes)
17 Feb 2015CPOL7 min read 14.2K  
Store securely credit cards' structured meta-data, like contact info, PIN, APR on balance transfer/purchase/cash advance, and other terms/conditions

Introduction

This article describes Windows 8 application entry in Intel® App Innovation Contest 2013

Contest Credentials

  • Target Platform: Tablet

  • Category: Finance

  • Overview of the application 

    Application Cardar™ ("credit card radar") allows securely storing essential credit cards meta-data on Tablet PC, including: issuer contact info, inception date and billing cycle info, APR on purchase, balance transfer and cash advance, and other terms/conditions metrics in a structured/organized manner. It also implements a basic call management module allowing to organize the communications records with card issuers (please refer to Fig.1 showing the sample screenshot of existing Microsoft Access-based app, which will be converted to Win 8 app). Application could be extended with optional "card alert" module (it requires interfacing to card issuers web service), that enables bi-directional communication between issuer/card holder in case of emergency of fraud detection, for example, sending the notification to card-holder of potential credit-card fraudulent use (i.e. identity theft), or reporting lost/stolen card to the bank issuer via Internet. Another potential functional extension relates to the novel credits cards terms/conditions and other meta-data structured as XML document that can be directly downloadable from the card-issuer web site (in the same manner as it currently done for card financial transaction). Application will be implemented as an aesthetic single-window (borderless) solution providing intuitive navigation between functional areas.

  • Intended uses for the Application

    Application is well suited for both individual and business use. It allows Users to organize and securely store essential credit card metadata, trace the communication with card issuer and perform credit card comparative analysis based on their APR and other terms/conditions matrix. This app could be a valuable tool in case of credit-cards related emergency (lost/stolen card, identity fraud, etc).

  • Application Development approach

    Existing application is encapsulated in a single Microsoft Access file (see Fig. 1), encrypted and password protected. Proposed solution will be built on .NET/WPF adapted for Tablet PC running Windows 8. Development approach adheres to the cornerstone principle of separation of programmatic concerns, namely: all layout and aesthetic enhancement to be achieved via WPF/XAML; data content to be stored in local User databases (presumably SQL CE); the algorithmic part will be implemented as managed code compiled into .NET assembly. Proposed  application will utilize novel hardware features of Tablet PC like multi-touch screen, pen support and speech technology (TTS/ASR).
  • Coding Languages and Frameworks: .NET, WPF, C#, T-SQL

    Application's managed code base will be developed using C# language and .NET framework/WPF. SQL/T-SQL will be used for Database operations on Microsoft SQL Server Compact edition (SQL CE).

    About Author

    Dr. Alexander Bell is a Microsoft technology veteran with development experience span from DOS to Win 8. He actively participates in digital life of online development communities (published 15 article and 36 tips on Codeproject). He is personally credited for the completion of 10+ of enterprise level FLCD projects, providing consulting services to major financial institution in NYC, including JPMorgan Chase, Societe Generale, etc. Dr. Bell is a pioneer and enthusiast of speech-enhanced Windows application software and novel MMUI concept [1-5]. 

Round 1 Contest Ideas

How effectively does the Idea Submission demonstrate innovation and user experience?

Proposed application several innovative ideas:

  • User Experience (UX) improvement via efficient  Multi-Modal User Interface (MMUI) utilizing touch-screen (multi-touch) feautures of Tablet PC and .NET speech enhancement (ASR and TTS)
  • Single-window solution providing intuitive navigation between functional areas
  • Aesthetic improvement achieved via novel border-less WPF windows implementation
How effectively does the Idea Submission demonstrate usage of key technical enabling vectors?
  • Multi-touch UI extension pertinent to Tablet PC utilizing most common gestures, namely: Tap, Press and Hold, Swipe, Turn and Slide, corresponding to primary action, learning/instructional mode, navigation between screens and functional areas.
  • Voice feedback to User implementing error, instructional and notification messaging via TTS
  • Voice commands via ASR (optional, depends on the availability of microphone input)
  • High data density and feature aggregation in a single Window, utilizing Tablet PC high-resolution display
  • Application is well suited for use with various external HID, like detachable keyboard/mouse, stylus or digitizer pen
  • Can utilize orientation sensor to switch between portrait/landscape
  • Automated brightness/contrast adjustment (optional, depends on availability of the ALS)
How viable is the Idea Submission for the Category (i.e. Finance) in which it was submitted?
  • Credit cards are quintessential (in many cases, a primary) tool of financial transactions, used by individuals and businesses as well.  As this sector of continuously industry evolves, the terms and conditions are becoming more sophisticated, and, yes, more complex as well. There is a substantial set of meta-data associated with each credit card. Proposed solution provides a convenient productivity tool allowing better organizing of structured credit card meta-data, to be effectively used in a course of normal operations, and in case of credit-card emergency as well.  As a further extension of this idea, the card meta-data, which includes key terms/conditions could be presented in a structured form (like XML document shown in Listing 1) downloadable from the card issuer web site. That will require the cooperation with financial institutions in credit-card sector of industry.
How effectively does the Idea Submission describe the proposed application?

Proposed application is based upon several innovative Submission Ideas and practical know-hows, including those already implemented by author, plus newly introduced ideas and corresponding programmatic tasks/challenges/solutions discussed later in this submission article (see sections Background and Points of Interest). 

Background 

Existing version of the application was encapsulated in a single Microsoft Access file and programmed w/VBA and SQ: (see Fig. 1).

Existing application

CardMan-Pro for Windows 8

Fig.1: Existing CardMan app encapsulated in Microsoft Access file

Proposed Tablet version

Proposed solution will be implemented as a standalone Windows 8 app running autonomously; it does not require Internet connection for its core operations and stores User data locally, thus properly addressing the privacy security/concern.

As mentioned above, for the purpose of UX improvement proposed app will implement novel MMUI utilizing novel features of Tablet PCs. Proposed Tablet app could benefit from external input devices, in particular: detachable keypad and digital pen.

Using the code

NOTE: This section will be continuously updated as project progressing. 

Listing 1. Structured credit-card sample metadata (shown for DEMO purpose only)

<?xml version="1.0" encoding="utf-8" ?>
<Card>
  <association>VISA</association>
  <issuer>Some Bank out there</issuer>
  <use>business</use>
  <number>4000000000000000</number>
  <inception>09/01/2013</inception>
  <expiration>12/31/2016</expiration>
  <billing_day>10</billing_day>
  <phone>
    <USA>800-000-0000</USA>
    <overseas>212-000-0000</overseas>
  </phone>
  <web>www.someBankOutThere000.com</web>
  <email>
    <info>info@someBankOutThere000.com</info>
    <emergency>emergency@someBankOutThere000.com</emergency>
    <support>suppor@someBankOutThere000.com</support>
    <service>service@someBankOutThere000.com</service>
  </email>
  <APR>
    <promotion>
      <purchase startdate="09/01/2013" enddate="09/01/2014">0</purchase>
      <transfer startdate="09/01/2013" enddate="09/01/2014" fee_pct="" fee_amount="" currency="">0</transfer>
      <cash> startdate="09/01/2013" enddate="09/01/2014" fee_pct="3.0" fee_amount="5" currency="">16.99</cash>
    </promotion>
    <regular>
      <purchase>12.99</purchase>
      <transfer fee_pct="3.0" fee_amount="5" currency="USD">7.99</transfer>
      <cash fee_pct="3.0" fee_amount="5" currency="USD">19.99</cash>
    </regular>   
  </APR>
  <fee>
    <over_credit unit="USD">29</over_credit>
    <return_check unit="USD">29</return_check >
    <stop_payment unit="USD">29</stop_payment>
    <purchase_overseas main_country="USA" unit="PCT">3.0%</purchase_overseas>
  </fee>
  <cashback>
    <purchase note="">3%</purchase>
    <transfer note="">0%</transfer>
    <cash note="">0%</cash>    
  </cashback>
  <closed closing_date="">false</closed>
  <owner>
    <name>Software, Hardware and Underwear, Inc</name>
    <PIN active="true">0000</PIN>
  </owner>
</Card>

Points of Interest

Programmatic Challenges

There are several potential programmatic challenges corresponding to the tasks partially listed below:

  • Borderless WPF windows with custom control box
  • Multi-touch operations and voice commands set
  • Reliable I/O operations on clients Tablet w/various User Account Control settings
  • Installer modules digitally signed and configured (not a trivial task from the previous experience)
  • Intuitive and effective voice-message set: error messages, notification/instructions via TTS
  • Voice-commands via ASR, providing adequate recognition accuracy and UX improvement

Novel Borderless WPF Window

Sample screenshot of border-less WPF Window, implemented in the latest version of Engineering Calculator Volta-8014D is shown below in Fig 2. Borderless Windows have better aesthetic appeal and increase the overall UI, though they represent certain programmatic challenge. The borderless effect" could be easily achieved via XAML, but it also requires some coding to make the window moveable/re-sizeable (notice the novel window control box having additional resizing option). Further aesthetic enhancement could be achieved by making the window translucent (it corresponds to the setting of opacity level). Tablet PC provides excellent opportunity to improve UX by adding multi-touch and voice-controlled re-sizing feature.

Image 2

Fig.2: Sample Border-less WPF window implemented in Engineering Calculator Volta-814D

Speech-Enhancement

The author has been working on speech-enhanced applications for more than a decade and published multiple articles covering two cornerstone technologies, namely: TTS and ASR. Speech-enhancement is planned for proposed application, including extended set of TTS voice messages (error messages, instructional and notification messages) and (optional) ASR voice commands.

History

  • 2002: Author developed a series of speech-enhanced Windows apps
  • 2013 Engineering Calculator Volta-814D implements novel borderless WPF window
  • Aug 15, 2013: Current article submitted to the contest (Tablet PC, Finance)

References

  1. Alexander Bell, Voice feedback enhances engineering calculator (EDN, 2002, 7)
  2. Alexander Bell, Add voice command to virtual instrumentation (EDN, 2002, 5)
  3. Alexander Bell, Voice-controlled Virtual Instrumentation based om MS Excel, sample screenshot
  4. Alexander Bell, Excel at Audio-Visual UI Development (Access-VB-SQL Advisor, 2002, 11)
  5. Alexander Bell, Build a Validation Object with Voice Feedback (Access-VB-SQL Advisor, 2002, 12)

Acronyms and Abbreviations

  • ALS Ambient Light Sensor
  • APR Annual Percentage Rate
  • ASR Automatic Speech Recognition
  • BI Business Intelligence
  • I/O Input/Output operations
  • MMUI Multi-Modal User Interface (multi-touch, speech-enhanced)
  • PIN Personal Identification Number
  • SQL CE SQL Compact Edition
  • TTS Text-to-Speech
  • UI User Interface
  • UX User eXperience
  • WPF Windows Presentation Foundation
  • XAML eXtensible Application Markup Language

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)