Monday, April 9, 2012

What is Data Warehouse?

Definition #1
A data warehouse is a system that retrieves and consolidates data periodically from the source systems into a dimensional or normalized data store. 

Definition #2
A Data Warehouse is a database that is designed for facilitating querying and analysis. These database contain read-only data that can be queried and analysed.

So what is difference between database and data warehouse?
Database is designed to record data and Data Warehouse is designed to analysis data.

Monday, April 2, 2012

The best way to planning software

I believe Use Case diagram, Entity-Relationship model and flowchart to design a software. It is extremely useful because I loose less time to program and correct the mistakes. I would rather planning during two months than programming during two months. Why? Because a software with good planning is cheap, fast and flexible unlike a software with bad planning that is expensive, slow and inflexible to possible changes.

All my academic life, I got used to program more hours than planning. My works were not awesome but also were not bad. It was enough to pass in evaluation. Finishing my course, I did an internship at the software company. Bringing old habits, I programmed more than planned. I had a project to finish in beginning of December but I finished in end of January. Why? Bad planning! My boss was angry with me for I did not meet deadline. I confess that is not good to see my boss angered!

I learned a lot with that mistake. From that, to develop any software, I always make Use Case diagram, Entity-Relationship model and flowchart. Use Case diagram is very abstract and easy to understand what the actor's goal. Entity-Relationship is used to define tables on database. Without this model, I would be lost. The flowchart is used to define software's logic.

With those three tools of planning, I spend less time to program, more time to planning, I am able to meet deadline and my boss will be happy with my work.