Starbucks Simple Payroll System

Next week, the Software Engineering one month course I am teaching will end. Overall, I am happy to see the progress of my students. They have improved much in their programming skills. Their assignment title is “Starbucks Simple Payroll System”. While they are doing their assignment, I also do a sample version for them. So, just to print screen some here.





Some sample documentation I created for students are reference:



For more info or if you also wish to learn how to develop a simple payroll system like this, feel free to contact me. That’s all for today 🙂

My Software Development Principles

Everyone has his/her own working principles and these are some of mine. These principles are the main one I always focus in my software or website development. Well, just some of my principles 🙂

Usability
For me, this means the system is easy to use or user-friendly. This includes good navigation link, consistency, correct usage of font size, font color and font family. My role model of this principle is Jakob Nielsen, the king of usability.

Clean
For me, means no redundant code. Clean code gives me 2 main benefits. First, smaller file size which helps web page to load faster and save up bandwidth. Secondly, it helps me to maintain it better because I know exactly the usage of every single code. My entire, http://resume.findingsteve.net/ only has less than 40Kb 🙂

Easy maintenance
During every stage of the development, I always try to make the system as easy to maintain as possible. One of the way is to modularize those same code. I know if I don’t put extra effort to make sure the system is easy to maintain, I will sure have much nightmare debugging or when there is a need for future enhancement.

Process flow + Sequence Diagram – Mixed Breed of UML

As most of job scope of my previous job in BCSIS is to support the application, on my own I have created plenty of own version internal ‘software document’. I think some of these documents are mixed breed between process flow diagram and sequence diagram 🙂 Nevertheless, this is my favorite internal document as I can easily understand the flow of the system just by some quick glance. I also converted some source code into some flow chart diagrams (again my version).

In fact, I do enjoy and satisfying creating all these diagrams. And I did the same for my Product Management department as QC Manager in GHL. By the way, I just use Ms Power Point. No need expensive tool like Visio 🙂

Here are the entire list of ‘Process flow + Sequence’ diagram documents which I have created. Yes, the sample diagrams are a little ‘unclear’ for reasons. To view the ‘clear’ version and to view more diagrams, you can contact me personally ya.

CTCS Gateway Interface (GWC)

  • EPKI – Outward – GWC and Bank Host
  • Inward  Downloading – ISC, GWC and Bank Host
  • Transmission – OCS and GWC
  • Transmission – OCS and PODClient

Bank and BNM Web

  • Branch and Routing Policy Request

Bank Negara Malaysia (BNM) – Back End Host

  • Inward Generation
  • Generate Billing
  • Generate Settlement File
  • File and Data Archival
  • Report

CSS / RBE / FMS

  • Billing and Settlement @ CSS
  • SQL Server Agent Job @ CSS

Others

  • Swing CTCS – HQ and Recovery Center
  • Host Support Escalation

Product Management

  • Activate Dialogic Card (only for PRI card type)
  • Certificate of Origin – Special Case
  • Check warranty period and SLA maintenance
  • Product Request
  • Supply Chain Management – Procurement / Production
  • Supply Chain Management – Distribution
  • New Project or Change Request