Title: Less code,
1Less code, More logic.
Corporate Presentation 1st January 2006
2An Alternative Vision
Intelligent Business Application Infrastructure
3Agenda
- Company background
- How to improve developer productivity
- How to develop platform independent applications
- How to reduce database deployment costs and
improve server performance 5 to 15 fold
4Agenda
- Company background
- How to improve developer productivity
- How to develop platform independent applications
- How to reduce database deployment costs and
improve server performance 5 to 15 fold
5Company Strengths
- Sequential, profitable growth for over 10 years
- Business application focus
- Diversity
- Geographic
- Market segment
- Company size
- Proven track record
- Blue chip customers
- Millions of users
- Thousands of developers
- Hundreds of VARs
6What we do the Holy Grail
A business application infrastructure that
enables the rapid and cost effective creation of
highly responsive enterprise class software
7World Wide Offices
8WW Revenue Distribution
35
40
10
15
9WW Customers
10The Business Problem
- Geopolitical uncertainty
- Economic uncertainty
- Global competition
- The accelerating rate of change
- The software complexity crisis
11The Business Problem
Charles Darwin
The Origin of Species, 1859
12The Business Problem
- The Chaos Report
- 15 of all IT projects fail
- Failure costs 38Bn per annum in the U.S.
- 82 of all IT projects miss deadline
- Overrun costs 17Bn per annum
- Released projects contain 52 of requested
features
13The Business Problem
Disruptive Technologies
Java
Open Systems/Standardization
Client-Server/Distributed Computing
Internet Web Computing
Age of Proprietary Hardware COBOL
Complexity
The birth of PC platforms, open RDBMS C
The Emergence of RAD 4GL
Time
14Agenda
- Company background
- How to improve developer productivity
- How to develop platform independent applications
- How to reduce database deployment costs and
improve server performance 5 to 15 fold
15Agenda
- Company background
- How to improve developer productivity
- How to develop platform independent applications
- How to reduce database deployment costs and
improve server performance 5 to 15 fold
16Improving Developer Productivity
- The adoption of new technology has for years
tended to slow the IT departments response times
and accentuate the problem of keeping pace with
their enterprises change cycle.
Peter Sondergaard Research Director Gartner IT
Symposium 2004
17Improving Developer Productivity
Per Developer
The Cost of Moving to Java
18Improving Developer Productivity
The 1990s created an explosion in (technology)
alternatives for implementing business
applications
19Measuring Developer Productivity
- An experienced programmer produces on average 100
bugs per 1000 lines of code (KLOC) 50 reach
test phase - An application of 50,000 LOC will ? have 2,500
bugs during the test phase - A developer requires between 5 to 10 hours to fix
each bug, say 20,000 hours - A team of 5 people working 160 hours per month
will take 25 months to finish the task
Page 19
20Measuring Developer Productivity
ISSSTE observed productivity using CMM Level 5
Page 20
10/30/2009
21Measuring Developer Productivity
22Measuring Developer Productivity
Application Development
20
Interface Infrastructure Development
80
No Business Value Cost
Typical Business Application Project
Source IDC
23The Solution
Focus on value business logic
Application Development
rather than infrastructure and interfaces
80
80
Interface Infrastructure Development
20
Page 23
An Alternative Vision Corporate Presentation
10/30/2009
24The Solution
Less code, more logic.
25Simple, Readable Business Logic
Page 25
An Alternative Vision Corporate Presentation
10/30/2009
26The Three Worlds of the Business Application
1 User Interface Design Development
Changing Requirements
2 Business Logic Development
Application Development Effort
3 Relational Database Design Access
27The OOP / RDBMS Mismatch
OOP technologies make it harder to unite the
three worlds of business application
development Currently, the most common way to
bring data from databases into an application
developed in .Net is through SQL (structured
query language). However, SQL uses a completely
different vocabulary from languages such as C
and VB that .Net developers use to build
applications, so it takes a lot of coding to
bring the two languages together in one
development framework Programmers writing
enterprise applications say that sometimes when
it comes to data, they feel more like plumbers
than programmers because they have to create ways
to link the two languages to access data. There
is no native understanding of the query language
in C or Visual Basic. Microsoft .Net creator,
Anders Hejlsberg
28The Root of Failure
- The object relational mismatch
- Complexity increased cost, risk overhead
- Heavy upfront design Inability to adapt to
change
29Less code, More
logic
30Overview
- A comprehensive, integrated suite of tools for
development teams - To design, develop, integrate, deploy, and
maintain - New and legacy enterprise business applications
- Across a complete suite of client, server, and
database systems. - Genero Studio fully leverages Genero BDL
Page 30
An Alternative Vision Corporate Presentation
10/30/2009
31Project Viewer
Page 31
An Alternative Vision Corporate Presentation
10/30/2009
32Code Editor
- Language aware code editor
- Macro insertion,
- Syntax completion,
- Real time syntax checking
- Structured browsing
- Project linked object lookup
- Tight integration with other components
- Compiler errors
- Graphical debugger
- Application performance profiling
Page 32
An Alternative Vision Corporate Presentation
10/30/2009
33Forms Designer
- Drag and Drop database elements or Genero widgets
to create visual interfaces - Visually inspect and edit all interface
attributes - Intelligent attributes, layout
Page 33
An Alternative Vision Corporate Presentation
10/30/2009
34Database Browser
Page 34
An Alternative Vision Corporate Presentation
10/30/2009
35Graphical Debugger
- Source level debugger
- Break points
- Execution location, variable and call stack
display - Watch points
- Variable editing
Page 35
An Alternative Vision Corporate Presentation
10/30/2009
36Preferences
Page 36
An Alternative Vision Corporate Presentation
10/30/2009
37Help
Page 37
An Alternative Vision Corporate Presentation
10/30/2009
38Agenda
- Company background
- How to improve developer productivity
- How to develop platform independent applications
- How to reduce database deployment costs and
improve server performance 5 to 15 fold
39Agenda
- Company background
- How to improve developer productivity
- How to develop platform independent applications
- How to reduce database deployment costs and
improve server performance 5 to 15 fold
40Cross-Platform Architecture
Page 40
An Alternative Vision Corporate Presentation
10/30/2009
41Cross-Platform Architecture
Page 41
An Alternative Vision Corporate Presentation
10/30/2009
42Cross-Platform Architecture
Page 42
An Alternative Vision Corporate Presentation
10/30/2009
43Cross-Platform Architecture
Page 43
An Alternative Vision Corporate Presentation
10/30/2009
44Cross-Platform Architecture
Page 44
An Alternative Vision Corporate Presentation
10/30/2009
45(No Transcript)
46(No Transcript)
47(No Transcript)
48(No Transcript)
49(No Transcript)
50(No Transcript)
51N-tier Scalable, Secure Architecture
Page 51
An Alternative Vision Corporate Presentation
10/30/2009
52Web Services
Page 52
An Alternative Vision Corporate Presentation
10/30/2009
53Web Services
Page 53
An Alternative Vision Corporate Presentation
10/30/2009
54Agenda
- Company background
- How to improve developer productivity
- How to develop platform independent applications
- How to reduce database deployment costs and
improve server performance 5 to 15 fold
55Agenda
- Company background
- How to improve developer productivity
- How to develop platform independent applications
- How to reduce database deployment costs and
improve server performance 5 to 15 fold
56Go Creative. Be
Original
57Why Genero db?
- To better serve our customers
- Improves VAR margins
- Improves end-user TCO
- One-stop shopping
- Better performance
- Tighter Genero integration
- Incremental revenue
Page 57
An Alternative Vision Corporate Presentation
10/30/2009
58Why Genero db?
- Reliability fully automated QA process
- 500 server datacentre
- New code check-ins and QA every hour
- 3,000 hours QA testing per day
Page 58
An Alternative Vision Corporate Presentation
10/30/2009
59Why Genero db?
- Fastest database
- Non-locking architecture
- Concurrency engine
- Compiled SQL
- Lowest cost
- To buy
- To develop no need for performance partioning ?
reduced complexity - To run increased performance ? server
consolidation - To administer ?optimising resources
- Quickest to production
- Reduced training recoding through compatibility
with leading vendors - Rapid progressive migrations through
compatibility wih leading vendors
Page 59
An Alternative Vision Corporate Presentation
10/30/2009
60Why Genero db?
- Revolutionary technology
- Concurrency Engine
- Benefits from atomic architecture of latest
microprocessors - Microprocessor threads guarantee scalability
- Compiled SQL execution, main memory optimised
Page 60
An Alternative Vision Corporate Presentation
10/30/2009
61Why Genero db?
- Revolutionary technology
- Patented lock-free architecture
- ACID database integrity as Informix, Oracle,
etc... - Eliminates 99 of all locking scenarios
- Locks only occur in non-deterministic situations
- Multiple users attempt update of same field with
different values - Also those imposed by application
- Greater locking granularity
- Column (field) level locking
- Simultanenous row updates of different columns
- Processes simultaneous updates to the same column
with commutative arithmetic operations - Indexes are lock-free
- Table rows are lock-free
- No conflict between read and write operations
Page 61
An Alternative Vision Corporate Presentation
10/30/2009
62Why Genero db?
- Between 5 to 15 times faster
- In-memory configuration with automatic dataflow
to disk - Lock-free eliminates lock contention
- Preparation by compilation precompiled SQL
- Thread reassignment saves startup overhead
Page 62
An Alternative Vision Corporate Presentation
10/30/2009
63Why Genero db?
Page 63
An Alternative Vision Corporate Presentation
10/30/2009
64Doing more with less
- Server Consolidation
- Reduce n of servers
- Reduce network admin and traffic
- Reduce Environmental Costs
- Greater the consolidation, better the return
- Real Database Consolidation
- Enabled by Genero db compatibility
- Significantly less maintenance costs
Page 64
An Alternative Vision Corporate Presentation
10/30/2009
65Doing more with less
- Optimise resources
- Redeploy critical resources to new strategic
projects
Page 65
An Alternative Vision Corporate Presentation
10/30/2009
66Why Genero db?
- Compatibility no need to recode or retrain
-
Page 66
An Alternative Vision Corporate Presentation
10/30/2009
67Informix compatibility
- Support for Informix style
- stored procedures triggers (SPL)
- synonyms
- locking control semantics - SET LOCK mode
- GRANT/REVOKE priviliges
- user authentication with default schema at login
- "DATABASE" notation to transparently convert
from database to schema name space. - BEGIN WORK, COMMIT WORK, ROLLBACK WORK
- FILETOCLOB FILETOBLOB
- ANSI outer joins Informix syntax OUTER(tab)
- SUBSTR, LENGTH MATCHES
- syntax when declaring constrains in DDL
- FLOAT(N), INT8, SMALLFLOAT, BYTE, TEXT, SERIAL
SERIAL8 types including quering via dbinfo - TODAY math functions root, pow, trunc
- comments in curly braces double quoted
string literals - WHERE CURRENT OF CURSOR ROWID IN
- client side cursors selected for update UPDATE
tab SET (column-list) (value-list) - scrollable cursors
- CREATE TEMP TABLE ltselect-statementgt INTO TEMP
lttable-namegt
Page 67
An Alternative Vision Corporate Presentation
10/30/2009
68Informix compatibility
- Eg Major household retail brand
- 15,100 lines of Data Definition Language
- 582 tables
- 771 indices
- 53 triggers
- Only 25 lines changed
Page 68
An Alternative Vision Corporate Presentation
10/30/2009
69Doing more with less Database Cost Analysis
Years 1 - 5
- All in proposal
- Enterprise perpetual RDBMS license
- RDBMS upgrades support
- Migrate progressively
In Millions of
Page 69
An Alternative Vision Corporate Presentation
10/30/2009
70Customers
- Sprint
- Advanced Messaging Value Added Services
- 10M transactions/day
- gt10x MS SQL
- eRevolution
- SMB Retail Outsource
- 1-2 Registers, gas pumps
- Store system ASP
- IRI partner
- Grupo SC
- Payroll Document Management
- 200K transactions/day
- Largest SI in Mexico
- 8X Oracle performance
- MLS Assistant
- REALTOR Multiple Listings
- Search for homes tools for the home buying
process. - 5x MS SQL performance
Page 70
An Alternative Vision Corporate Presentation
10/30/2009
71Doing more with less
- Return on Investment
- OPEX Down 85
- CAPEX Down 86
- IRR Greater than 100
Page 71
An Alternative Vision Corporate Presentation
10/30/2009
72Doing more with less
- Return on Investment
- OPEX Down 75
- CAPEX Down 77
- IRR Greater than 100
Page 72
An Alternative Vision Corporate Presentation
73Architecture
- Networked
- Advanced connection management ? better
performance - Handles thousands of concurrent users
-
- Shared memory inter-process communication
- For co-located clients, faster than networking
- Firewall between application data still
maintained
- Embedded server
- Genero db server is in-process with app.
- Fastest when there are few connections
- Still a full server others can connect normally
hot-standby, shared-nothing slave
Concurrency Engine
Page 73
An Alternative Vision Corporate Presentation
10/30/2009
74Architecture
- Pending Changes Management
- Concurrency conflict
- If changes commutative then no lock
- If hard coded app lock process at least at row
level and column level when possible - If lock needed enter into lock table
- If pending change not executable then change
remains in queue - Locks removed after commit phase
- Session Phase
- SQL Request Management
- Compile SQL
- Execute SQL
- Create atomic database update queue
Page 74
An Alternative Vision Corporate Presentation
10/30/2009
75High Availability
- Hot-standby, shared-nothing slave
- Automatic failover of all connections
- Very fast, in seconds
- All committed transactions preserved
- Uncommitted transactions fail application
replays them and then continues as if nothing
happened
Page 75
An Alternative Vision Corporate Presentation
10/30/2009
76High Availability
- Recovery is automatic just restart failed server
- Speed clusters additional replicas
- Real time synchronous with master
- Can be geographically remote for Disaster
Recovery - Can be used for reporting, BI, etc.
Page 76
An Alternative Vision Corporate Presentation
10/30/2009
77Scalability
- Scalability is linear
- Todays limits are locking CPU cache coherency
- Concurrency Engine avoids both problems
- Greatly reduced locking
- Greatly reduced shared data, less cache coherency
problems - 103 concurrent connections, 106 users
- Wireless Services 16,000
- 15 million SMS messages/day peak
- Millions of users
Page 77
An Alternative Vision Corporate Presentation
10/30/2009
78Monitoring events
- Queries for many items of interest
- Server status, configuration, and performance
- Application performance
- SNMP Agent for monitoring this same information
- Dashboard for monitoring multiple servers
- A stored select facility allows applications to
listen for infrequent events without polling
Page 78
An Alternative Vision Corporate Presentation
10/30/2009
79Performance tuning
- Client-side and Server-side tools
- Client tool
- Allows selective tracing performance
characterization of queries - Server tool
- Shows operation counts, timings, query plans
even within stored procedures - Find most expensive queries/procedures and tune
- Add indexes as needed
- Hints available if necessary to change query
plans - All while server continues to run, with minimal
impact
Page 79
An Alternative Vision Corporate Presentation
10/30/2009
80Blobs clobs
- A prefix of each blob/clob is inline
- Any operation (even indexing) supported on inline
portion - Efficient storage using a tree structure as a
page map
Page 80
An Alternative Vision Corporate Presentation
10/30/2009
81Next steps
- Let us prove to you it works
- Proof of conversion
- Provide schemas
- Sample data
- SQL to test against sample data
- How long does it take?
- 2 4 weeks
- How much does it cost?
Page 81
An Alternative Vision Corporate Presentation
10/30/2009
82QA
Intelligent Business Application Infrastructure
83Thank You!
Intelligent Business Application Infrastructure