Performance Guage Portal
evelopment of this application was taken up to enable the customers to track the status of their shipments for a third party logistics provider and analyze all the information.
evelopment of this application was taken up to enable the customers to track the status of their shipments for a third party logistics provider and analyze all the information.
The overall purpose of the system is to enable a company to documentits business strategy along with critical success factors and define an information bank with key performance indicators (KPI aka Balanced Scorecard) that act as signals for monitoring business health or provide alerts for decision making to avert potential problems in the business.
We envisaged the following 11 interlinked and dynamically updated modules that can be accessed in any order within this application and this document has been written as an addendum to our proposal.
Third Party components will be required for HTML to PDF conversion or for LIVEPERSON integration if such features are required. The cost of these components is extra and not included in the proposal. The price in the proposal is purely for software development services only. Hosting, domain and hardware / software licensing costs with third party vendors will be extra and borne directly by Stratorama.
Generic Cross-Industry solution is proposed as Phase 1 and the architecture was designed with future scalability in mind to migrate to industry specific solutions if needed.
In this document we have provided the feature list and technology architecture overview for this performance tracking portal.
The overall objective is to enable companies to cost effectively monitor key performance indicators to achieve their strategic objectives. A completely generic solution while technically and conceptually elegant will be too formidable for users to configure and use. We recommend a set of pre-configured industry specific versions of the proposed performance management system (hereafter PMS). These pre-configured versions can be further enhanced or modified by the customers to match their specific business needs. Security is a key concern and SSL will be used for communication across application tiers (browser-web server-database).
The core solution has the following key modules:
Here is a brief description of how the system works:
Customers specify their industry area while registration and are provided a system administrator login account. The system admin user gets a control panel from where he has access to all functions including creating users and defining access rights for each user. This system is pre-configured and is ready for user from the start. Hence there are certain things that the customer cannot change but there is a dequate flexibility that allows updating any data entities or relationships among entities or defines key KPI or appends the document management structure or modifies the personalized cockpit / dashboard or creates custom reports.
This system is NOT an online transaction process system (OLTP). Rather it is a system where an information bank can be created and ratios / formulae defined to track KPI or custom reports generated out of this information bank.
The biggest point of persuasion with customers will be security of data and security considerations should get top priority in application design. The solution should be offered as an online service on demand at launch stage (Application Service Provider hosted on Stratorama server). The next step will be to provide bigger customers the option of a self hosted solution which will use a dedicated database resident on client server while the presentation and business logic will continue to reside on the STRATOMA server for preserving the IPR security. Each event in the system is tracked with a user specific data time stamp and an audit trail can be done at any time. Erroneous activities can be reversed in all situations. No record is ever deleted from the system and at worst any given record gets marked inactive and can be activated later.
We also provided a live chat tool to enable cross user collaboration as well as for customer support. Custom developed interface utilities can be provided to automatically synchronize client business information from the existing ERP / proprietary system to the application database of our PMS system.
This section describes how the process will work from a layman perspective.
The project execution is a two part process. The initial part is called "first creation" when the entire requirement is conceptualized as feasible application capabilities which are first graphically represented as a comprehensive navigational layout and next translated into a DB Schema design documented as a data dictionary. The code structure and project folder convention is documented along with test plans / coding conventions.
A project schedule is drawn up to indicate a detailed work breakdown structure and the programming phase is split into several releases (8-15) each signifying a milestone and subject to rigorous module testing before being submitted to client for review. The methodology is to do a client review of intermediate project deliverables with client at least once a week to determine any mid course path corrections and land at the right completion product as per schedule without any significant effort wasted on rework activities. In this context we have provided a table below that describes the split of effort and cumulative project completion as per the above approach
# | Milestone | Percent Effort or Significance | Approximate Completion Sked |
1 | Detailed Navigation Layout | 6% | Week 1 |
2 | DB Schema | 2% | Week 2 |
3 | Program Design & Project Schedule | 2% | Week 2 |
4 | Module 1 - Strategy | 5% | Week 3 |
5 | Module 2 - Information Bank | 15% | Week 5 |
6 | Module 3 - Data Input Wizard | 5% | Week 6 |
7 | Module 4 - KPI Configuration Wizard | 15% | Week 8 |
8 | Module 5 - Report CONFIG Wizard | 10% | Week 9 |
9 | Module 6 - Personalized Dashboard | 10% | Week 10 |
10 | Module 7 - User Management | 3% | Week 11 |
11 | Module 8 - Reporting Module | 10% | Week 11 |
12 | Module 9 - Audit Trail | 4% | Week 12 |
13 | Module 10 - Data Export | 3% | Week 13 |
14 | Module 11 - Online Help & Demo | 5% | Week 14 |
15 | System QA Testing | 4% | Week 15-16 |
16 | Live Site & Transfer to Production | 1% | Week 17 |
TOTAL | 100% | 17 Weeks |
The proposed application will be programmed in web architecture using PHP 5 and MY SQL 5 as RDBMS (LAMP architecture). Application architecture will be centralized for easy manageability. Application will be optimized for Internet Explorer 6+ but HTML 4 compliance will be preserved to ensure cross browser compatibility with other common browsers like Firefox, Safari and Netscape Navigator
Cross browser compatibility is largely ensured through use of XHTML 1.0 and HTML 4 compliance. All application testing will be done in Firefox which has a more restrictive implementation of HTML / JavaScript and this ensures that it runs well in IE browsers too. Any cross browser issues will be debugged if they arise during module testing. Optimistic locking will be used in database operations to improve concurrent user performance. Extensive use of stored procedures will ease network traffic and database performance. The project developed in the LAMP environment. The acronym LAMP refers to a solution stack of software programs, commonly open source programs, used together to run dynamic Web sites or servers. The original expansion is as follows: Linux, referring to the operating system; Apache, the Web server; MySQL, the database management system (or database server); PHP, the programming language. Linux utilizes the latest stable kernel version. The underlying ext3 file system is a well-proven technology for both rapid recovery and protecting the integrity of the data on the server. Apache is developed and maintained by an open community of developers under the auspices of the Apache Software Foundation.
MySQL database, another robust open source tool that has revolutionized the way web pages, graphics, tables, and data sets of all sorts are served up on the web. Web-based databases in general, and MySQL in particular, have made it possible to build and present fully dynamic websites, capable of presenting content in real time. They have also helped to further the goal of separating content from formatting, speeding the load time of sites while making them far more manageable than in the past. PHP has, in just a few short years, become one of the predominant scripting languages on the web. With a relatively easy syntax and open source licensing, webmasters and developers around the world have migrated to PHP from the more difficult and syntactically challenging scripting languages like Perl.
PEAR coding standards were used throughout the application.