|
 
Customer
Concept design and project documentation for an e-book was developed to further present materials to the investor.
Objective
An e-book is a device first and foremost aimed at comfortable reading. Thus, the requirements to such device are as follows: usability, a middle-sized screen (around 8 inches) and portability.
Solution
A device concept was developed: an e-book should be felt as a standard book both in size and in use. The front panel format would be an A5 page, with a book-like cover, a battery case in the book back, and margins matching those of a paper book.
The functionality of the device is achieved due to 6 control buttons that trigger different actions depending on the reading mode (landscape, portrait in the left or right hand). Two additional buttons open the menu and change the reading mode of the device. A self-supported cover ensures both screen protection during transportation and a possibility to set the device on the table and read without having to hold it. In such case, rubber inserts will prevent the book from being shifted if a button is pressed. Interface slots are protected by a flap cover, which prevents dust, dirt, and other smaller particles from entering inside.
Benefits and features
- Convenient and standard form factor;
- Visual resemblance to a paper book;
- Three modes (landscape, portrait in the left or right hand);
- Screen protection by a flap cover;
- A self-supported cover for landscape mode when placed on the surface.
| Development tools |
Photoshop, 3DS MAX, Pro Engineer |
| Project management tools |
MSProject |
| Efforts |
60 man-days |
| Duration |
1,5 months |
Objective
The customer requested a Distributed computing software application to manage their daily routine document processing. Our task was to provide a solution which could make documents like PDF files, MS-Office documents, TIFF files and other image format files easy for processing. Enormous numbers of documents were to be processed using this application. It was necessary that system resources should be utilized in the best possible way.
Solution
We worked hard to develop a Document Management System for the customer. In the end we got end-to-end solution to handle documents in electronic format. Our team integrated it according to the standards of "Ringtail" and "Summation" databases as well as to "Z-print" application. The Document Management System was strongly based on OOP concept. It integrated many third party tools like "Black ice" and "Clear Image" for image processing and barcode recognition.
Features
PDF to TIFF conversion;
PDF password removal up to processing;
PDF Pagination based on folder directory structure;
Delimit pagination or page count.
PDF optimization;
Batch processing of documents for PDF to TIFF conversion;
Optical Character Recognition (OCR) of PDF files content;
Processing from and into Ringtail/ Summation databases;
Complete Ringtail and Summation handling;
Bulk processing of documents;
Z-print of documents;
Barcode recognition
Deployment in Distributed computing environment
Input of raw documents for processing can be done from multiple folders and in a sequence defined by the user.
Technologies used
.net 2.0 platform
VB.net
C#.net
SQL server
MS-Access
XML files
Windows Services
COM
Multithreading
Objective
The customer requested a software application that could fully meet scanning and image processing requirements. The primary target was to develop an application that could completely automate document scanning and processing. The documents were to be displayed in cells, and such functions like numbering, barcode reading, addition and deletion of documents in a batch, etc. were also to be performed. The aim was to develop an application that could handle thousands of documents in batches to deliver desired output.
Solution
Our team developed a Document Scanning and Processing application to cater to the customer's requirement. It interfaces with Twain compatible scanners and allows user to Scan single document in Single scanning mode or multiple documents in Batch scanning mode.
The use of scanning toolkits from Black Ice is incorporated to set features like contrast, brightness, etc. to the scanner up to the scanning. The documents scanned are then sent to barcode recognition and image display for QA (Quality assurance). The QA is done to check the documents for good or bad quality. If any document had mistakes it could be rescanned and inserted directly in a batch needed.
The documents are filed in various folders at the user's discretion; each scanned document is displayed in a grid-view form. The user can move from one page view to another and see other documents. The user can also move from one folder to another to see documents selectively.
It supports all 1-D and 2-D barcode patterns for recognition from the scanned documents. Clear Image third party toolkit was used for the same reason. The user can select what barcodes are to be checked while scanning. The user can set document rotation at own discretion and view the document scanned in the grid form. The user can set the contrast, resolution, and brightness etc. of the images scanned.
Technologies used
.net 2.0 platform
VB.net
C#.net
Windows services
COM
Multithreading
MS-access and XML
Customer
Issue Tracking System
Objective
Issue Tracking System maintains Employee Details and their Issues. Each of them can have several properties and an associated discussion. The properties can be used to classify or search for Issues. The discussion is a sequence of e-mail messages. Each Issue is identified by a unique Ticket number, and has an activity log which records the time and content of the edits made on its properties. The log remains fairly small, since the design intentionally provides only small data types as item properties, and encourages anything of a big size to be attached to e-mail where it becomes part of the discussion.
Solution
We propose an issue-tracking system called CAT Issue tracking System , which will manage a number of issues ( with properties such as "description", "priority", and so on) and provide the ability to (a) submit new issues, (b) find and edit existing issues, and (c) discuss issues with other participants. The system will facilitate communication among the participants by managing discussions and notifying interested parties when issues are edited.
The Issue Tracking System consists of Three Modules
ADMIN
EMPLOYEE
NETWORK
Benefits and features
Simplicity:
It is a strongly required for the software to be accessible and understandable. It should be fairly obvious what different parts of the interface do, and the inner mechanism should operate in ways that most users can easily predict.
Efficiency:
We Aim to optimize for minimum effort to do the most common operations, and best for the Issue Tracking to maximize the amount of information that we summarize and present.
Persistence:
We prefer hiding or reclassifying information to deleting it. This helps Support the collections of Statistics/Reports later. The Records are never destroyed; there is little danger in providing access to a larger community, and logging yields accountability, which may encourage better behavior.
Generality:
We try to avoid making unnecessary assumptions that would restrict the applicability of the Software.
| Design tools |
Smart Draw |
| Technologies |
Asp.Net |
| Programming languages |
C# |
| Project management tools |
Visual Source Safe |
| Database |
SQL Server 2005 |
| Duration |
1 + Months |
Objective
The main purpose of the project is to allow the user of this application to navigate through the streets of the virtual city with the options to speed up and slow down the movement as well as to change directions at junctions of the videos. To provide with additional navigation facilities such as an overhead map, guided tours and a helicopter view.
To provide the elements the user can further interact with, such as collecting some information in a nearby shopping mall while passing or even enter a virtual showroom to view items on display.
Solution
A two tier Client-Server Architecture is developed. The Server side application will be holding the database consisting of all videos required for the application. Its basic functionality is to render services for the requests made by the client.
The Client side application will be holding the media player design and its basic functionality will be sending requests to the server for running a specific video, based on the position, client type and client environment. Also the client side will be provided with the ability to download the multiple videos concurrently. The position of the user has to be tracked along with the other interactive states and present him with an interface to affect these states.
Benefits and Features
- It is a virtual tour of a city, so any user can access it from anywhere.
- The user can get an actual visual tour in forms of video of the places, which is more realistic than anything else
- The user can navigate through the videos of the streets of the city in a way he wants.
- It can be used for promoting the tourism for some of the countries.
- Also it can be used for promoting some specific business houses like restaurants, shops, shopping malls, hotels, motels etc.
| Design tools |
Microsoft SilverLight, Microsoft Expression Blend |
| Technologies |
.Net Framework 3.5, VS 2008(Orcas) |
| Programming languages |
C#.Net, ASP.Net |
| Duration |
10 months |
Customer
UK Taxation Product.
Objective
The Tax Return Software is designed by working specialists within each area, ensuring the products to be equipped to deal with the complexities of the 'Tax-reality' whilst remaining user friendly. Alongside the suite runs dedicated support service, offering users both tax software and tax technical support from specialist tax professionals. It offers a complete taxation package to both novices and professionals alike.
Solution
The Personal Tax Manager Professional program makes completing and filing a tax return straight forward. This cost effective package is easy to use and is backed up by our experienced tax team who use the package daily. This software is fully comprehensive and is able to calculate the tax liabilities for a wide range of people. The Personal Tax Manager requires no prior training and is self explanatory in all cases, whilst offering an outstandingly powerful calculation engine that deals with returns from 95/96 to 05/06.When all details have been entered on the computer, the Self Assessment Returns can be filed by internet, allowing for paperless returns!
Benefits and features
Allows easy entry of data with Automatic Calculations supported by on-screen prompts:
- Calculates Tax Liability
- Calculates Payments on Account
- Offers Data Validation for Compliance
Data links into Inland Revenue approved forms:
- SA100 (Personal tax)
- SA800 (Partnership tax)
- R40 Tax Liability Computation
Cost Effective:
- Saves time
- Reduces Risk
- Provides control
- Ensures Inland Revenue Compliance
| Technologies |
ASP.Net, HTML, Java Sript,Ajax, ADO .Net, SQL Server, Crystal Reports |
| Programming languages |
VB .Net, |
| Project management tools |
dot Project, MSProject, CVS |
| Efforts |
625 man-days |
| Team Size |
8 |
| Duration |
5 months |
Objective
The objective was to develop a hardware and software system to monitor and track the vehicles moving on roads. Using the GSM\GPRS and GPS Technology Knowing the Registered Vehicle Location by Sending an SMS to Server. This Project is SMS Based Communication Server Sends Request to VMU (Vehicle Monitoring Unit) Attached to Vehicle. The VMU Sends the Location and Cell Area code to the server and server in turn sends Location Name and Area Name Of that Vehicle at that Time.
Solution
A Tracking system was developed so that the Vehicles moving on different routes could be identified by sending the request to the Vehicle Monitoring Unit (VMU) which is fixed in the vehicle in the form of an SMS. The GPS receiver attached to the Vehicle receives the Data from satellites in NMEA format that is stored in hardware device. When ever user wants to monitor a particular vehicle he has to send an SMS to the Vehicle Monitoring Unit (VMU) of that vehicle and the VMU will send the Location of the Vehicle in the form of SMS.
It Consists of:
Hardware Device (Consists of Mobile Unit).
Microcontroller (8081).
Modem
Solution
Benefits
Easy to Trace the Vehicle
With the help of GPS Technology we can accurately find the Vehicle
| Technologies |
.Net Framework 1.1 and VB6.0 |
| Programming languages |
C#.Net |
| Duration |
6 Months |
The Client
The client is a big fabric provider in Asia. Since the scale of the client's company is growing day by day and its relationship with external sub-companies becomes closer, the existing systems couldn't satisfy its business needs any more.
What the client wanted
The client desired a much more advanced Supply Chain Management system which could transfer information, data, message, raw material etc from one phase like supply, manufacture or distribution to another in different directions. For every department involved, this system sent out coordination instructions to obtain feedback and master corresponding information in time, accordingly, achieving the management with efficiency, speediness, high-quality and low-cost.
We must integrate several separate systems to provide real-time track on raw material transfer and make the flow of operation more fluent. The departments involved technical department, sales department, distribution department, warehouse department, Compounder, etc.
The system must guarantee the fluency and smoothness for all the activities among these departments and keep better track on all the transfer of products, materials and so on.
Challenges
- There were several separate existing databases needing integration, the biggest difficulty was the structure of the databases couldnt be changed and there was little connection among these original databases due to the relative independence of each department.
- The system should meet the needs of database migration because the client would use Oracle as the database instead of SQL Server in the future.
- The project schedule was tight.
- Clients requirements were not fixed and need to be optimized during the development process.
- The business procedure was complex because many external and internal departments were involved.
- Our team would provide remote support after the Alpha release.
Approach
Our team was involved in this project from the analysis phase, and went through design, development, implementation and remote site support. We designed the system based on the Functional Specification provided by client and delivered the design with System Design Specification Document including architecture diagram, class diagram, sequence diagram, data flow diagram, and solution architecture as well as software component design. We developed the system based on the database design provided by client.
In order to make the hierarchy legible and easy for maintenance, we adopted 3 layers B/S structure according to J2EE standard and used open source framework Struts for a standard mechanism of transferring data between the presentation tier and the business logic tier.
As an important part of Apache Jakarta, Struts is popularly used in the Java Web Application development. In this system we used Struts to realize the following functions:
- Routing: distribution of every page and the related logic processes.
- Validation: customer end and data end Validation. Some business logics, such as types of data, range of value are realized in Struts. We took full advantage of Validation module in the Struts framework.
- Presentation: by using the Taglib of Struts, the confliction between UI design and coding was avoided and the web maintenance became more easily.
One issue of the development is to integrate the existing databases into one system. According to our development experience, we recommended the client to adopt Hibernate to solve the problem. Hibernate was a powerful and effective Object/Relational mapping solution, which we used to construct the data layer. We used Hibernate framework to realize the data-groups compounding of separated databases. This transparent data management added high flexibility and expansibility to the logic layer.
Other third party modules we have used:
- DBCP: provided the support of data connection pooling.
- Log4j: log module.
- iText: pdf format support.
- Jakarta serial open source module, for example: Jakarta commons and so on.
- Displaytag: table tag library.
Benefits
- Access to better control of the system.
- Reduced maintenance and operational costs.
- Improved communication among different departments expediting the real-time transaction.
- A flexible and scalable system.
- Timely and accurate inventory reporting.
- Convenient database migration.
The Client
The client is a Canadian consulting and product development group. To improve the low office efficiency caused by fast growing business, it is in dire need of a system that provides the maintenance for the enterprise object XML files with a Mozilla XUL UI.
What the client wanted
Currently, at the end-users'side, product information are typically created and updated by mailing Excel spreadsheets or Word documents around. They want to keep the familiarity of being able to email or save a local copy of a product description while working on it, while at the same time improving the accuracy and efficiency of the process. The problem with the current method is that the information is converted to SQL based on a Word document or Excel spreadsheet when it is time to update the Database with the results. This makes error prone and time consuming because everything must be retyped, and requires IT staff.
The new system will make it possible for everyone to submit suggested updates or new product information by filling in a simple XML document. The objective is not for users to directly edit the XML but helps constrain their choices and ensure the document is correct.
This project is to open, create, edit and save the XML files with a simple Mozilla XUL UI. The main objective is to create a client user interface that allows XML descriptions of some enterprise objects to be read and modified. This should allow updates to existing objects as well as the creation of new objects. The purpose of separating the client and server is to allow product and mapping descriptions to be treated as documents which can be e-mailed, compared, put into CVS, and shared in the file system for future reference. This decouples the description of the information from the enterprise system and database so that changes can be scheduled in a rational fashion.
Challenges
- The adoption of latest technology of XUL.
- JavaScript code should be structured and object-oriented.
- The set of object properties are not final, so the code needs to be flexible and maintainable.
Approach
First we thoroughly studied XPCOM, the Cross Platform Component Object Model. It is a framework for developing cross-platform and modular software. The application's running platform, Mozilla Firefox, uses the XPCOM technology.
The client needed the code is as structured and object-oriented as possible, we wrote the enterprise entity "interface" into a separated js file, included it into XUL UI codes as JavaScript library. Its implementation took place in each of the entity classes?' scripts.
The names of each entity properties are not stable, nor the order of the properties. We introduced the XPath technology to do this string matching for inconstant order of properties (elements). And for the property (element) names, which now become bunch of XPath expressions literals. We extracted them out as constants and stored them as parts of the framework, in order to keep the code as structured as possible.
Benefits
- OOD method makes it easy for further implementation.
- Great flexibility and maintainability can be accessed for non-IT staff users.
- Easy to deploy, all it needs is a browser which supports the XUL and XPCOM such as FireFox or Mozilla..
- Cross-platform application is available.
The Client
The client is a software consulting and technical support company in Netherlands with the mission of improving customers' software development capability and enhancing customers' competitive advantages.
What the client wanted
The client desired a robust and complete computerized administration tool in pursuit of high efficiency and low cost. This system should be a special administration tool which was used to help financial personnel achieve the supplier management and invoice management. The detailed functions covered the management of raw-material suppliers, user management, invoice track, the management of tax category, report creation and data export etc.
Approach
We developed the system from scratch and participated in the entire life cycle of the system. The system was based on Struts framework and J2EE with Linux as the OS, Tomcat as the application server and MySQL as the database. The n-tier model was adopted in the development, including Presentation Layer, Business Layer, Object Access Layer, Data Access Layer and Data Layer. Other technologies like Log4j, JDBC and iText were also adopted.
Some of the highlights of the system were mentioned below:
- The support of general users and administrators.
- The adoption of Cookie maximally improved the access speed.
- The invoice track included invoices' creation, update and deletion. All the concerned information about invoice was saved into a specified history file for checking.
- All the data could be exported into the files with the format of PDF, Word or RTF to the effect that other systems could utilize these data.
- Report forms and print function were available.
- The system could catch the system exception, JVM exception and application exception to guarantee the system's reliability and stability.
Benefits
- Intuitive and easy-to-use interfaces were available.
- Fast and efficient invoice processing.
- A highly easy-to-maintenance and scalable system.
The Client
Continental Telecom,Inc.is a diversified telecommunications company providing services nationwide. Investing in leading call center and software solutions and using state-of-the-art technology, it offers a unique solution for businesses who wish to outsource their call-handling needs. We have established a long-term partnership with CTI by providing a typical model of ODC service.
What the client wanted
With the business growth, the client realized that manual operations were not affordable to consistently provide standby services at any time. To sharp the competitive edge, the client needed a voicemail system based on CISCO call manager which may dramatically enhance the business efficiency as well as reduce vast cost, and the following functionality were required to effectively support its business process:
- The system could transact the voice message into data information and then save them into the server.
- The voice information in the server was available to be picked-up by any user.
- With the voicemail system, the client could make operations to the message as listening to the message back and forth, even revising, deleting and attaching it. In doing so, the message that has been left by customers would be correct and integrated, which is helpful for the operators to deal with problems.
- A personal responder (mail box) should be provided for each extension.
- The system required every mail box to auto-answer the calls inbound by means of recording the answering information in advance.
Approach
Prior to building the system, we began our work with requirements discussions and a thorough analysis, translated it into a clear technical requirement, created logic design and came up with system specification. The professional technologies like JMF, JTAPI, Java bean, Java swing, JSP, Servlet and Postgre SQL database were used to provide an economic but stable and highly scalable application which is based on B/S structure in the following incremental development phase.
We helped the client realize its goal by implementing the following aspects:
- Each voice mailbox is correspondent with an IP phone.
- Users may leave messages to voice mailbox when the owner is not available to answer the phone call.
- System may send email to mailbox when new messages arrive.
- The mailbox owner may listen to the message with media player in case the IP phone is not available.
- Mailbox owner may manage his/her mailbox on Internet.
- Administrator of the system may manage the whole system on Internet.
Benefits
With the above solution, we developed the system to improve the efficiency of the client's business process and cut down the redundant running cost in the existing system.
- Significant improvement in the time of the running cycle.
-
Improved customer care through the capable and flexible system.
- Cost reduction for the client.
The Client
The client is a division of fortune 500 company in China. It is a large mineral enterprise engaged in coal mining and processing, coal chemical, smelt, building materials, electric power, mechanical electrical repairing & making, light industry and chemical technology, architecture and service sector.
What the client wanted
The challenge was to develop a SCM (Supply Chain Management) system that met the client's requirement of materials supply management and integration of different departments. This project should cover the intranet construction of fifteen mines and the SCM development of the whole mineral Bureau.
Approach
Our team helped the client realize its goal by implementing the following main aspects:
- The SCM system adopted MVC (Model-View-Controller) to design modules and adopts Struts Framework in the web layer. By offering sufficient expansion interfaces, the engineers could adjust Struts to achieve their special demands.
- Because of the complexity of the system business logic, we took full advantage of the new characteristics of struts 1.1 which was divided into several modules. Each module had its configuration file, JSP webpage and action, etc. In this way, the resource was easy to allocate and locate.
- Data access used the objects-relation mapping frame of Hibernate, and the objects model was transparently imported into database by Hibernate. Such technology made the business logic flexible and simple.
Based on advanced J2EE and B/S structure, the SCM system, which was delivered on time and within budget, facilitated the business workflow of materials supply management.
Benefits
After the implementation of the system, the client has significantly improved the work efficiency in the whole company. This has resulted in the following:
-
Helping them execute the intranet construction activities of fifteen mines and the development of the whole mineral Bureau SCM.
- Providing valuable technical information to the implementation team.
- Building reusable components to speed up the implementation efficiency.
- Building knowledge database and sharing knowledge with the client's team
- Improving the inventory management procedures for obsolete and replaced items.
Our team developed the system for the Taxation Bureau to encourage people to ask for receipts at the point of purchase in the expectation to increase taxation.
The system has the following functionalities:
- Invoice authenticity Inquiry
It checks the invoice authenticity through the invoice number and the invoice passwords.
- Taxpayer prize settlement
The system automatically calculates statistics of the prize for the prizewinning taxpayer.
- Consumer prize cashing management
The prizewinning number is chosen by computer randomly. It can only be validated after the invoice password and the prizewinning invoice number are checked.
- The invoice collection management
Such condemnatory measures to stop selling and confiscate the invoice can be accomplished on line.
- Fake invoice report
The system deals with the report of fake invoice, and keep the information of the reporter confidential.
- Statistics data query
The system calculates the statistics data automatically to ensure the issuance of invoice.
- User privilege management
The system provides a convenient web-based interface for users and secures the users' privilege in a better way.
The client
This is a UK client who is the pioneer in the transfer of e-science to e-business by exploiting the potential of next generation computing technology.
What the client wanted
The client intended to develop a RFID tracking and planning system which was used to track the manufacture of aerospace parts that were processed through pipelining utilizing RFID (Radio Frequency IDentification). The whole system was required to include six components involving sales order processing (SOP), touch screen, operation real-time tracking, planning and scheduling, management reporting and customer tracking & reporting.
Solution
Our team was involved in this project from the analysis through design, implementation and test. This project was carried out via two phases. In the first phase,our engineers concentrated on the system's core components: the SOP and the real-time tracking.
Firstly, a high level analysis of the requirement was undertaken followed by the detailed design of the system. This was a role-based system with seven kinds of actors who were able to access to the system with different functions. The SOP was a complicated business process which provided sales order processing function. User could create new order, split job into batches, create job card, purchase order, invoice and delivery note. Our engineers raveled the relationships between entities and clearly understood the course of sales order processing. The purpose of the touch screen module was to utilize human intervention to complement the real-time production information captured from RFID devices. The main deliverables were Analysis and Design Report, modified Prototype Design according to the requirement's change and Use Cases.
The presentation tier consisted of Windows Form front-end and Web Page front-end. The Windows Form front-end was used to manage SOP and touch screen, and the Web Page front-end was mainly responsible for real-time tracking. Business facade provided common interface to Windows Form and Web Page. Common Data Access included all access functions to retrieve, delete, insert as well as update data and Common Utility module provided some utility functions used by other layers.
The technologies and development tools were as follows:
- Running environment:
Hardware: server which supports Window Server + IIS
- Software tools:
Source code control: Visual Sourcesafe
Defect tracking: TestDirector
- Development tools:
Programming language: .VB.Net
Database Server: SQL Server 2000
Application Server: IIS + .Net Framework
Benefits
Our solution resulted in a highly flexible system for complex sales order processing and real-time tracking. The successful completion of the first phase built a good base for the following development, which saved much development time and costs.
The client
The client is Australia's leading IT service provider that specializes in helping its global customers plan, build and support their IT infrastructures. Its business operations cover over 30 countries located on 6 continents and mainly aim at Australian corporation and government organizations both locally and internationally.
What the client wanted
As a result of various intentional or natural factors, the network or infrastructures always suffered some incidents. If not handled in time, these incidents would possibly result in disasters; hence duly obtaining the incidents information in order to deal with the incidents quickly and effectively became the urgent affairs. The client required our team to design a universal system which was used to report incidents and assign repair tasks to related engineers so to improve the efficiency of handling incidents.
The Security Incident Response System was developed to have different authorization roles such as manager, coordinator, internal engineer, external engineer and employee. After authenticated, any user could report a security incident to managers of the IR department by describing the incidents type, status, cause, nature, location, occurred time, detected time, and the person who detected it. After a manager viewed the report, he then classified the incident and assigned it to a coordinator. Once the coordinator received this incident, he would immediately assign the repair task to the most suitable internal/external engineers who would analyze and handle the incident; meanwhile, reports would be generated and mailed to appropriate users after each of the submitting. Furthermore, the functionalities of searching incidents and checking each incident's status would also be available.
Approach
Our engineers were involved in the complete life cycle of the development. The proven delivery model was successfully utilized in the development. The solution was built on Microsoft .NET 2003 and Windows 2003, and applied Application Building Blocks. The Windows Authorization Manager was used to realize the role-based security. The database was SQL Server 2000.
After deeply understanding the requirements, we began the architecture design and database design. This was a multi-layered system which included Presentation Layer, Business Layer, Data Access Layer and Data Layer in order to maximally separating concerns among components and allowing different developers to work on different parts of the solution with minimal dependencies on one another. Many great patterns had been adopted in each of the layer.
Since user interface logic tended to change more frequently than business logic, especially in Web-based applications, modularizing the user interface functionality of a Web application was preferable way so that the user interface could be modified easily. For this reason, we adopted MVC (Model-View-Controller) pattern to separate the modeling of the domain, the presentation, and the actions in the design of Presentation Layer.
In the Data Access layer, a proven O-R Mapping framework, DAP, developed by our engineers was utilized. The DAP Framework was built with C# and designed to be an extensible and reusable package that could be freely deployed in any project developed with the programming languages that conformed to CLS (Common Language Specification). With the help of the DAP Framework, records in database table could be easily mapped to objects. The framework also provided functionalities of object caching, object states management, distributed transaction etc.
In the process of test, we implemented comprehensive test involving Function Test, Unit Test, Security Test, Integration Test, and Load Test to guarantee the quality of the system.
Benefits
-
The time to marketing was slashed
- Improved the working efficiency
- Reduced the chance of accident
- A stable and scalable system was available
The client
CTI is a full- service contact center based in US, providing answering service or call center solutions.
What the client wanted
There existed a telephone exchange system at the client's side, which mainly manages the whole work flow, notifies the coming phone call, imports bills etc. However, w ith business development, the existing system could not satisfy the business needs. So the continuous maintenance was needed and some new functions would be developed to meet the needs.
Approach
We adopted the cooperation pattern of offshore development center (ODC) with the approval of the client. We went through the following steps to finish this project.
Dedicated maintenance/support team
Through filtrating the resumes we provides, the dedicated team including project manager, developers and testers that client was satisfied with was identified. the project manager was responsible for communicating all issues about the project, assigning task priorities, supervising the work and guaranteeing the quality to ensure the success of the project.
Infrastructures setup and Knowledge transition
- For the convenience of communication, a Cisco router and 5 Cisco IP phones were installed to promptly exchange information with the client.
- A reliable VPN (Virtual Private Network) was adopted to improve the security of data information.
- The 10M broadband kept us a constant connection with the client to maintain the high efficiency of huge data transfer.
- A secure and isolate location with exclusive hardware etc was separated for the client's Intellectual property (IP) protection.
In parallel with the infrastructures setup, knowledge transition also commenced. Our team acquired related knowledge and details about the system and tasks via training and efficient communication with the client.
Continuous maintenance
Our team adopted quick turn around of enhancement using the technologies such as C#, VB.NET, XML and SQL Server according to the client's requirements.
Considering the heavy task and work load of the system, our maintenance team adopted an extra load testing to ensure a stable system.
In addition, timely reporting was provided to keep the client updated with the whole development progress.
Benefits
- Significantly improved efficiency of the system after the bug fixing.
- Agile troubleshooting response and quick enhancement enabled the client to rapidly enhance its business competitiveness.
- Systematical testing ensured the system run smoothly under heavy data load.
- The mature model of our ODC (offshore development center) guaranteed cost efficiency for the client.
The client
The client is an IT services and solution provider, helping its customers plan, build and support their IT infrastructures. It is a Microsoft Gold Certified Partner in USA .
What the client wanted
The client was aiming at long term customer relationships for his continuous software development work.
It was required to provide technical consulting and software development on its enterprise in-house management system.
The enterprise in-house system should be entirely web-based and built on Microsoft .NET platform, providing good support for scalability and maintainability. It includes main function models of billing system, history system, job system, website system, and etc.
Approach
In order to make the project development transparent, improve quality and reduce risk, we adopted Agile development method and VSTS (Visual Studio 2005 Team System) during the whole project development process.
Agile adoption method
We split the project into many stories. Every story was a whole feature. Usually it took three or four days to complete a story which ran through the whole development lifecycle from analysis, requirement, design to coding, testing. Then we enter the next story, in parallel with bug fixing of the last one. The whole process is called an iteration.
For five or six iterations, there came an application release. Once all planned features passed the necessary test, the application would be delivered to the client for release. And then, with the new requirements from the client, we enter the phase of the next release.
From iteration to iteration and release to release, the project fell into a predictable and comfortable rhythm. We succeeded in increasing project visibility, reducing project risk via regular feedback, continuous improvement and achieved least cost for our clients.
With VSTS, The task distribution, project progress etc, are a white box for the client. The client can log on the project management platform to check the project progress every day; he will clearly know how the software system is built.
The technology
We utilized ASP, ASP .NET, C#, SQL Server, and web technology for the system development.
- To get clipboard data from client extension in a web page and modify them in the server extension without changing data on the client side, our team used the "TcpListener" and the "TcpClient" classes from the "Socket" namespace efficiently.
- To serialize the object and save the value of an object in a web page, we realized inter-transformation between the "Dataset" object and the Xml language.
- In order to help the customer migrate the system easily, we save the files and the images in the clipboard of the client extension to system database on the server side.
The client
This is a market consulting company which provides market analytical tools for companies from different industries.
Situation
The client was looking to market analytical tools that could integrate Market Research, CRM and Data Analysis. As each of its clients has its own market environment and the impact factors one takes into consideration differ from others. After completed the core product, we were then required to build customized products for several companies.
Approach
With the specification document of the project, we took a deep understanding of the requirements and drew up an implementation plan for the whole project.
At first, we developed a core product with the main function modules of factor analysis and data management. The product was created with the technology of VB.NET. Since the product has to deal with lots of account, we used XML to realize the function of transferring and saving data. Some controls were applied to generate charts and forms from which the trend of market changes can be easily found.
Then we customized individual system for the several companies on basis of their special needs. The market analytical tools can analyze the influences caused by pricing, advertisement, promotion, even new products forecasting, with different parameters changing for the different end users.
During the three years of cooperation, we have successfully completed many products customized for companies in different industries like cosmetic, medicine etc. With the high quality of our service, a long-term partnership has been built with deep trust of each other.
The client
The customer is an Australian distribution & marketing company Headquartered in Melbourne, who assists foreign manufactures penetrate the Australian consumer market without physical presence.
What the client wanted
The client needed a unique fabric system based on web parts development to realize the following functions:
- Add new supplier. New supplier should be able to be visible and selectable from the suppliers drop down boxes throughout the process of the application.
- Update existing supplier information. An existing supplier's information will be updated to reflect new data.
- Delete an existing supplier. An existing supplier's information will be deleted from the software.
- Manage fabric. The user should be able to update existing product summary details, add new product summary details and delete existing products with a confirmation box.
- For fabric item, the user should be able to: update existing fabric details, add new fabric, delete existing fabric with a confirmation box.
- For fabric Description Search, locate a specific fabric based on a predefined query.
Approach
Some web parts needed to communicate with each other; we generated a certain specific interface that when these web parts are connected, data could be transferred. Functions were realized by different web parts, so we didn't need to make a complex web part to realize all the functions. All web parts were assembled as building blocks, making the system framework more rational.
Save value of deployment information through self-defined deployment files. When deployment information (such as database, etc.) changed, we need only to change value of deployment files to change deployment information, without recompiling codes. It was easy to use, and convenient for changes.
We established a completed object model by adapting 3 lays structure for framework design that separated the presentation layer and data layer, It made the codes reusable and showed ideas of Object Oriented Design.
Benefits
- Access to better control of the system.
- A flexible and scalable system.
- Convenient database migration.
- Improved communication among different web parts expediting the real-time transaction.
|