CIBET Pro ManagerA software created by Bharvi Dixit for a company secretary firm “Munish K Sharma & Associates”
Presentation By:Bharvi Narayan Dixit
MCA, LBSIM (2010-13)Enrollment No: 3614504410
© 2013, Bharvi Narayan Dixit
20K Lines of code
Agenda
Client ProfileThe ProblemThe Solution : CIBET-Pro ManagerProblem FacedMVC Design PatternSome Diagrams & Screenshots of the softwareTools And Technologies UsedLearning'sFinal Points
© 2013, Bharvi Narayan Dixit
Client ProfileMunish K Sharma & Associates
A reputed firm of Practicing Company Secretaries in Delhi NCR. Established in Year 2004 by CS Munish Kumar Sharma. Currently having around 300 clients including Indian and Multinational Companies.
Services Provided by the firm: Financial and Legal Consulting. Incorporation, merger, take-over, reconstruction, re-organization and
winding- up. Secretarial Audit of companies. Services related to RBI, Stock Exchanges, SEBI, Intellectual Property Laws
(Patent, Trademark and Copyrights), Labour Laws etc.
© 2013, Bharvi Narayan Dixit
Client ProfileTo name a few, the clientele list of Munish K Sharma & Associatesincludes following well known names:
Cushman & Wakefield GroupATS Group of CompaniesPrateek Group of CompaniesUniversity of Petroleum & Energy Studies, DehradunM-Power Energy India Pvt. Ltd.Magnum Ventures Ltd.Precision Electronics Ltd.Prime Air Global LtdANI NewsSPAN Group of CompaniesDelhi Mumbai Industrial Corridor Development Corporation Ltd.Colonia Santa Maria Hotels.Fressynet Group of CompaniesBSBK Group of Companies.Hindustan Football Club.
…………………………………………….and MANY MORE !!!© 2013, Bharvi Narayan Dixit
The ProblemCurrently the data of the firm related to Clients, Employees, Expenditures,Receivables, Billing and Inventories are maintained in spreadsheets or registers.
which is: Hard to Manage. Duplicity of Data. Difficult to maintain the workflow. Difficulty in defining and following SOP(Standard Operating Procedures) Difficult to prepare Reports. Problem in tracking bills and payments and keeping close eyes on expenses. Wastage of time, money, and resources.
Some problems also persists because of: Complex work procedures. General purpose software like TALLY and BUSY is not fulfilling the requirement. Large client base and huge data.
© 2013, Bharvi Narayan Dixit
Solutions Required
Data Management - Availability of organized and structured data. Maintaining and updating information related to clients. Keeping track of services provided with billing status, Creating bills and maintaining
their payment status. Updating payments and generating reports for follow-up. Maintaining record of expenses and keeping close eyes on them. Computation of various taxes like Service Tax and TDS for filing tax returns. Maintaining records of firm’s inventories/assets and generating periodic reports. Maintaining information of all team-members. Well defined and easy to follow operating procedures. Workflow maintenance. Consolidation of all internal activities into single system. Saving time, money and resources. Autosuggestion search functionality like GOOGLE.
© 2013, Bharvi Narayan Dixit
The Solution: CIBET Pro ManagerBrief Introduction
The word CIBET is an abbreviation for “Client-Inventory-Billing-Expense-Team”
It is short of an ERP system. However, it doesn’t have complexities of an ERP anddo not require a specially trained person to operate it. Any person with workingknowledge of computers can operate it with a brief training or reading usermanual which will be very easy to understand.
It will help them to overcome all the current problems due to duplicity of data,lack of standard operating procedures for each function and activities related tothem.
It will integrate all activities of the firms into a single system to help them tomanage them with ease and increase the efficiency, saving time and money andoptimum utilization of resources leading to better services for clients and betterrelationship with them.
© 2013, Bharvi Narayan Dixit
The Solution : CIBET-Pro ManagerSoftware Modules and Functions
Expenses Management Add Expense. Modify Existing Expense. View Existing Expense Details. Delete Existing Expense Details.
Client & Service Management Add New Client. View Client Details. Modify Client Details. View Clients by Group. Add New Service Records For Existing Client. View Service Record of Existing Client. Modify Service Record of Existing Client. Delete Service Record of Existing Client.
Billing Management Create Bill (For Professional &
Reimbursement charges). Reverse Bill (Professional &
Reimbursement). Regenerate Bill (Professional &
Reimbursement).
Receivables Management Add payment (Against Professional &
Reimbursement bills) Modify Payment (Professional &
Reimbursement). Track & Maintain Payment Status.
© 2013, Bharvi Narayan Dixit
Software Modules and FunctionsInventory Management Add New Inventory Item. View Existing Inventory. Modify Existing Inventory.
User Accounts Management Add New User. Delete User. Manage Existing User Accounts. Reset password.
Team Management Add New Team Member. View Team Member Details. Modify Team Member Details. View All Team Member Details Update Team Member Status Add Remuneration Record. Modify Remuneration Record.
Report Generation Generate Expense Reports. Generate Inventory Reports. Track And Generate Pending Payment
Reports (Client-Wise as well as Group-Wise). Generate Payment Reports (Fully Paid,
Partially Paid, Rebated, Completely Written-off Payments).
Report generation of Service Tax, TDS,Professional Fee and Reimbursement Fee.
Generate Remuneration Reports.
© 2013, Bharvi Narayan Dixit
Problem FacedProject proposed: In mid-February 2013 with “inexperience hand” and “fear in mind” buthaving a “strong desire” to prove myself and to make something which is robust and goes live.
Problem Faced:
Gathering requirements & Client ConstraintsAsking appropriate questions and understanding their needs.Busy schedule of client and less no of meetings.Increasing expectations.
Designing GUI, Coding and Changing RequirementsSwing Layout Problems.Look and Feel Problems.Design Pattern.Session Management in swing.Handling Exceptions.Validations.No security needed initially.And Many More…
© 2013, Bharvi Narayan Dixit
Problem FacedDatabase Management
Database design and Integrity constraints.Writing complex queries.Database crashing.Providing centralized access to the database.Scheduled backups.
PDF CreationLearning iText and writing codeUsing Different types of Fonts on PDFGenerating dynamic tables on PDF
Monetary TransactionsFloat and Double are not capable of storing larger values.Learning to use “Big Decimal” and handling too many exceptions
Testing and Application PerformanceDeployment IssuesTime and Cost Constraints
In absence of any helping hand, sometimes it felt like there is no way to get rid off someof the problems mentioned above.
© 2013, Bharvi Narayan Dixit
MVC Design PatternModel-View-Controller
Model - Model represents an object or JAVA POJO carrying data.
View - View represents the visualization of the data that model contains.
Controller - Controller acts on both Model and view. It controls the data flow into model object andupdates the view whenever data changes. It keeps View and Model separate.
Advantages:
1. Easier to manage complexity.
2. Separation of application tasks (input logic, business logic, and UI logic)
3. Easier user interface or program logic changes.
4. Easier Testing.
5. Better code organization, extensibility and code re-use.
© 2013, Bharvi Narayan Dixit
Tools & Technologies UsedProgramming Language Java
Database MySQL 5.5
IDE ECLIPSE Indigo 3.7
OS Platform WINDOWS XP/7/8
GUI Designing Tool WindowBuilder
Database Management Tools SQLyog and MySQL Workbench
APIs and other ToolsIText, Apache POI, Microsoft Visio, Acrobat
Reader
© 2013, Bharvi Narayan Dixit
Learning's“every challenge comes with enormous opportunities for learning and improvement”
Interacting with client, understanding his requirements and expectation at all levels of the software development and implementation.
Writing clean & descriptive code using MVC Design Pattern.
Deploying the application in real-environment after setting up the network.
Handling a large database and dealing with all constraints.
Writing code for PDF creation and manipulation.
Accommodating regular changes of client.
“Knowing the importance of testing and Risk Analysis”
And,
The Most important:
Never Say - “It’s impossible”
Keep Trying… Keep Thinking… Keep Coding… Success will be yours.
Happy Coding© 2013, Bharvi Narayan Dixit
ReferencesBooks
IText in Action 2nd Edition (By Bruno Lowagie).Core Java™ 2: Volume I–Fundamentals, SUN Microsystems.Head First Java 2nd Edition.Sun Certified Programmer for Java 6 Study Guide (Katty Sierra - Bert Bates).MySQL 5.5 Reference Manual.The Unified Modelling Language User Guide 2nd Edition (By Grady Booch, James Rumbaugh, Ivar Jacobson).Fundamental of Database Management System (By Elmasri Navathe).Object Oriented Software Engineering- A Use Case Approach.
Linkswww.google.comwww.oracle.comwww.javaranch.comwww.stackoverflow.comwww.itextpdf.comwww.tutorialspoint.comwww.tutorials.jenkov.comwww.mysql.comwww.code.google.com/p/steamtwentythirteen/downloads/listwww.www.caveofprogramming.com/tag/mvc/www.en.wikipedia.org © 2013, Bharvi Narayan Dixit
Top Related