Design and Development
We have designed and optimized various types of high transaction, large scale and real-time databases and terabytes data warehouses providing us deep insight in innovative design and development. We utilize the attained database expertise and years of experience to help you save time and money by avoiding a poor design which can be the root cause of costly performance issues that arise down the line.
We offer the services below to help you create a database that meets your short-term and long-term needs
- Software Architecture Design
- Data Modeling
- Database Design & Development
-
Data Warehousing and Business Intelligence Development
- Dimensional Data Modeling
- Data Warehouse Design
- SSIS Packages Design
- SSAS (OLAP Cubes, Analytics and Data Mining)
- SSRS Design
- Maintenance Plans Design
- Application Middle Tiers Design
Database Development & Maintenance Cycle
Common Issues in Design and Development
Here are some common issues in design and development we have encountered over the years
- Missed business rules and requirements
- Weak entity, relation and identifier definition
- Poor super-type/sub-type models
- Redundant objects
- Poor naming standard
- Poor normalization/de-normalization
- Wrong primary key (natural key / surrogate key)
- Missed foreign keys or check constraints
- Weak security policy design
- Poor index definition
- Neglected statistics
- Proper use of table partitioning
- Combine huge OLTP databases with OLAP
- Inefficient data types
- Neglected storage design
- Poor Planning and configuration
- Poor SQL scripts
- Redundancy in SQL scripts
- Ad-hoc queries instead of stored procedures
- Place business logics in triggers
- Wrong usage of SQL and DLR stored procedures, triggers, different type of UDFs and views
- Poor error handling
- Poor event logging
- Poor data archiving design
- Wrong usage of transactions
- Wrong transaction isolation level
- Cursors with high loads
- Sequential SQL programming instead of set-based SQL scripts
- Inappropriate usage of temporary tables, table variables and common table expressions
- Query/table hints as a first option
- No execution plan evaluation
- No performance measurement
- Incorrect performance measurement criterion
- Lack of proper quality assurance
- Single update/insert statements in loop instead of batch update/insert
- Weak data loading strategies
- Poor data transfer model instead of high-performance SSIS packages
- Call Ad-hocs queries instead of stored procedures and functions
- Wrong load division between middle tier and database
- Write SQL codes of a single process in both middle tier and database
- Call queries/stored procedure in a loop
- Unnecessary data retrieve
- Poor SQL scripts generated automatically by data access drivers
- Implement the same middle tier to connect to different types of DBMS
- Poor planning
- Poor documentation management
- Lack of database knowledge & experience
- Unknown capabilities
Our Principles on Design & Development
- We concentrate on efficient solutions that offer the most value.
- We consider all current and future requirements including all business logics, user stories, rules and scenarios
- We believe a good design is simple and little as possible
- Integration and consolidation are essential
- Design is an iteration process and requires continues feedback
- When considering changes all systems require deliberate analysis for risk and potential side effects
- We pay extra attention to security and confidentiality
- We avoid all ambiguities to guarantee real progress
- Precision in progress measurement manifests enduring advancement
Let us help you design and develop your databases and data warehouses from scratch. We are committed to harnessing our expertise, experience and principles to avoid any future database deficiencies and issues.