SlideShare a Scribd company logo
1 of 34
© 2001 AltoWeb
AltoWeb
Raising J2EE to the Business Level
2
© 2001 AltoWeb
Who is AltoWeb?
 Founded December 1998
 Seasoned Management team led by Ali Kutay
• Former CEO of WebLogic, Inc.
 Funding
• Seed Investors: Ali Kutay, Frank Caufield, Regis McKenna
• First round: Intel 64 Fund
• Second round: Norwest Venture Partners
 Based in Palo Alto, CA; 85+ employees
• Excellent Engineering Team (50+ employees)
3
© 2001 AltoWeb
What is AltoWeb?
System Administrator
• Monitors
• Manages
• Deploys
Database Administrator
• Implements database
design
• Creates database objects
GUI Designer
• Creates application
look and feele-Business Analyst
• Creates application map
and process flow
• Creates process
“stubs”
System Architect
• Configures data,
process, interaction
objects
• Generates application
The team can now work on the same problem…using a common J2EE platform
Java Developer
• Extends applications
• Creates custom and logic
components
4
© 2001 AltoWeb
The AltoWeb Value Proposition
Leverage and protect your J2EE investment:
 Within a project
 Across projects
 Across an organization
 Across time
 Across infrastructure
© 2001 AltoWeb
The AltoWeb Value Proposition
1. Within a project
6
© 2001 AltoWeb
Java Pet Store
THE Standard J2EE Application
• Basis for J2EE Blueprints book and white papers
• Basis for JavaOne Deployathon exercise to prove
Application server portability
• Basis for J2EE server certification tests
• Demonstrated in Larry Ellison’s JavaOne 2001 keynote
7
© 2001 AltoWeb
How much work with Standard J2EE?
 Server Side
• 63 handwritten Java classes
• 21 handwritten Java interfaces
• 8,297 handwritten lines of Java code
 Client Side
• ~200 lines of Java code embedded in 35 Java
Server Pages
• Very difficult to deal with since it is embedded inside
presentation markup
• 2,277 total lines of presentation markup (JSP)
8
© 2001 AltoWeb
How much work with AltoWeb J2EE?
 Server Side
• 9 database-mapped MetaObjects
• 17 SQL query customizations
• 14 visually documented process specifications
• 15 lines of Java code
 Client Side
• Used existing JSP presentation
• Removed client Java code, improving maintainability
• Reduced overall markup quantity by 17%
 Development Effort
• 3 man-weeks for novice AltoWeb developer
9
© 2001 AltoWeb
Productivity Increases Rapidly
Producing Java Pet Store Server and Presentation Code with IDEs
Requires 211 Days or 10 Man-Months of Effort *
* One developer producing 50 lines of code a day, 10,574 lines of code
AltoWeb Requires 4 Man-Weeks, Including Training
Engineering Effort Comparison
Java Pet Store
0
40
80
120
160
200
Per Application
Man-Days
AltoWeb
IDE
10 X Productivity Improvement
Applications Created by Four Development
Engineers
Per Year, Java Pet Store
0
5
10
15
20
25
30
35
40
45
50
1 2 3 4 5 6 7 8 9 10 11 12
Months
Number of
Applications
AltoWeb
IDE
10 X Productivity Improvement
10
© 2001 AltoWeb
Return on Development Effort
AltoWeb Has An Immediate Payback
Savings Grow With Each Application
Development Cost Comparison
Java Pet Store
$0
$20
$40
$60
$80
$100
$120
$140
$160
$180
$200
1st Project Subsequent
Applications
000's
AltoWeb Cost
IDE Cost
Cumulative Cost Comparison
Java Pet Store
$0
$100
$200
$300
$400
$500
$600
$700
$800
1 2 3 4 5 6
Number of Applications
000's
AltoWeb Cost
IDE Cost
11
© 2001 AltoWeb
The AltoWeb Value Proposition
2. Across projects
12
© 2001 AltoWeb
Reuse, reuse, reuse
Data Sources
Standard access to data of
all types
Reusable across projects
Abstract and/or compound
for reuse in different
environments
13
© 2001 AltoWeb
Reuse, reuse, reuse
Business Processes
Independent of presentation
Business domain expert
and technical expert work
together effectively
Reusable across projects
14
© 2001 AltoWeb
Reuse, reuse, reuse
JSP Pages
Auto-generate “Skeleton
and muscle”
Start in AltoWeb, then
polish in HTML editor, or…
…Start in HTML editor, and
flesh out in AltoWeb
Reuse standard pages
across projects (error, login)
15
© 2001 AltoWeb
Reuse, reuse, reuse
Components
Starter set in product
Easy to add your own
Technical expert presents
“safe” units of functionality up
to business expert
Reusable across projects
16
© 2001 AltoWeb
The AltoWeb Value Proposition
3. Across an organization
17
© 2001 AltoWeb
“Best Practices” in a box
 A standard way to build J2EE applications
 Separation of interfaces strictly enforced: model,
view and controller
 A standard, reusable library of enterprise
functionality
 Standard deployment, management, monitoring
across all J2EE applications
 Code reviews and audits are quicker, simpler
18
© 2001 AltoWeb
Consider this JSP page…
<%@page … %>
<HTML><BODY>
<%
try{
Integer userId = (Integer)session.getAttribute(“id”);
Context ctx = new InitialContext();
MyEntityBeanHome home =
(MyEntityBeanHome )ctx.lookup(“SomeJNDILookupString”);
MyEntityBean ejb = (MyEntityBean)home.findByPrimaryKey(userId);
%>
Hello
<%
out.println(ejb.getUserName());
}
catch(Exception e){
%>
<!-- error -->
Something is wrong:
<%
out.println(e.getMessage());
}
%>
</BODY></HTML>
<%@page … %>
<HTML><BODY>
<%
try{
Integer userId = (Integer)session.getAttribute(“id”);
Context ctx = new InitialContext();
MyEntityBeanHome home =
(MyEntityBeanHome )ctx.lookup(“SomeJNDILookupString”);
MyEntityBean ejb = (MyEntityBean)home.findByPrimaryKey(userId);
%>
Hello
<%
out.println(ejb.getUserName());
}
catch(Exception e){
%>
<!-- error -->
Something is wrong:
<%
out.println(e.getMessage());
}
%>
</BODY></HTML>
19
© 2001 AltoWeb
So, what’s wrong?
 Independence of interfaces
• Presentation, control flow and business logic are intermingled
 Reuse
• Nothing can be separated out for reuse
 Teamwork
• The author needed to know the whole J2EE stack
 Change
• Change anywhere means change everywhere
 Performance
• Distributed object calls being made from the browser
…but it’s totally J2EE compliant!!!
20
© 2001 AltoWeb
Changing applications today…
18
7/11/2001AltoWeb, Inc. Confidential© 2001AltoWeb
Consider this JSP page…
<%@page … %>
<HTML><BODY>
<%
try{
Integer userId = (Integer)session.getAttribute(“id”);
Context ctx = new InitialContext();
MyEntityBeanHome home =
(MyEntityBeanHome )ctx.lookup(“SomeJNDILookupString”);
MyEntityBean ejb = (MyEntityBean)home.findByPrimaryKey(userId);
%>
Hello
<%
out.println(ejb.getUserName());
}
catch(Exception e){
%>
<!-- error -->
Something is wrong:
<%
out.println(e.getMessage());
}
%>
</BODY></HTML>
Steps to change the EJB support class without AltoWeb
• Understand the application and related standards
• the application flow, since a series of pages are dependent on the previous one
• the underlying J2EE Specifications and the application framework from the data
layer through to the presentation layer
JDBC JNDI EJB Servlet …
• the application framework API and the data layer API
• the deployment rules, including specified location, for this EJB
• application error handling reflected on the page
• Implement your changes
• Change the EJB source code
• Compile the EJB
• Deploy the application with vendor-specific tools
• Shut down and restart the server
• Test functionality and graphic design on the deployment server
• Repeat the above steps if necessary
• Release to production
21
© 2001 AltoWeb
Changing applications with AltoWeb
Steps to change an AltoWeb application
• Locate the component to be changed
• This is typically at the data access or business logic level
• AltoWeb provides a visual model of the entire application
• Change the component using point and click configuration settings
• Save the changes
• Component changes are reflected immediately across an application
• Test the application
• Release to production
22
© 2001 AltoWeb
AltoWeb provides clean architecture
<%@page … %>
<%@taglib … %>
<HTML><BODY>
Hello <aw:value name=”/user/name” />
</BODY></HTML>
<%@page … %>
<%@taglib … %>
<HTML><BODY>
Hello <aw:value name=”/user/name” />
</BODY></HTML>
 Independence of interfaces
 Reuse
 Teamwork
 Change
 Performance
23
© 2001 AltoWeb
The AltoWeb Value Proposition
4. Across time
24
© 2001 AltoWeb
“Organizational memory” in a box
Standard architecture helps
new people understand
applications
Visual environment exposes
application flow
Incremental testing exposes
application functionality at all
levels
25
© 2001 AltoWeb
Changing the page with AltoWeb
<%@page … %>
<%@taglib … %>
<HTML><BODY>
Hello <aw:value name=”/user/name” />
</BODY></HTML>
<%@page … %>
<%@taglib … %>
<HTML><BODY>
Hello <aw:value name=”/user/name” />
</BODY></HTML>
 Make your changes to the EJB
 Save the changes
 You are finished
26
© 2001 AltoWeb
Brocade Change ROI
<%@page … %>
<%@taglib … %>
<HTML><BODY>
Hello <aw:value name=”/user/name” />
</BODY></HTML>
<%@page … %>
<%@taglib … %>
<HTML><BODY>
Hello <aw:value name=”/user/name” />
</BODY></HTML>
 Make your changes to the EJB
 Save the changes
 You are finished
27
© 2001 AltoWeb
The AltoWeb Value Proposition
5. Across infrastructure
28
© 2001 AltoWeb
Protect your investment…
…across Operating Systems:
• Windows NT 4.0, Windows 2000
• Solaris 7.x, 8.x
…across Application Servers
• BEA
• WebSphere (August 2001)
• Jboss
• Tomcat
• ATG (August 2001)
29
© 2001 AltoWeb
Run-time Return on Investment
The AltoWeb Server Provides
Standardization on J2EE Best Practices That Reduce
Maintenance Costs
Architecture Separating Information, Business and Presentation Logic
Custom Tag Libraries, …
Quick Response to Changing Business Requirements
Use our structured environment to substantially change a data
mapping, process or presentation element without dropping down into
systems-level Java coding
Example: Changing CRM Systems
Underlying databases change both brand and data structure
Rebuild data objects once to generate the same data models as before
Reduced cost of change across all projects
30
© 2001 AltoWeb
Run-time Return on Investment
The AltoWeb Server Provides (cont’d)
Reuse, reuse, reuse
Train people once, leverage organizational knowledge across many
projects
Leverage processes and data objects across many projects
Don’t “Recode the wheel”
Efficient Knowledge Transfer
AltoWeb users create applications that are easier to understand and audit
People can quickly pinpoint items in a standard architecture
Visual Application and Process Maps are quickly understood
Point and click presentation logic and data object
configurations are easy to examine
31
© 2001 AltoWeb
The AltoWeb Value Proposition
Leverage and protect your J2EE investment:
 Within a project
 Across projects
 Across an organization
 Across time
 Across infrastructure
© 2001 AltoWeb
How does it work?
AltoWeb Architecture Overview
33
© 2001 AltoWeb
X
M
L
X
M
L
J
S
P
J
S
P
J
S
P
J
S
P
J
S
P
J
S
P
J
S
P
J
S
P
Views:
Transforms, Trigger & Respond
JSP Wizard – Auto Tag Generation
Actions:
Maps the process to Inputs & Outputs
Recv, Validate, Exec, Dispatch, Respond
Multiple actions for the same process
Data Sources:
SQL DB (JDBC or JNDI), Web Server,
File System, XML, HTML, Flat File
abs absDS DS DS DS
Meta Objects:
Data Source: Configure Queries
Abstract: Create Placeholders
Compound: Heterogeneous Joins!
Data Models:
Defines Structure, Houses DataProcess Data Model Process Data Model
Compound Compound
X
M
L
X
M
L
J
S
P
J
S
P
J
S
P
J
S
P
J
S
P
J
S
P
J
S
P
J
S
P
DS DS
Process:
The heart of the business logic,
Insert Standard & Custom components,
Create responses, Test processes
© 2001 AltoWeb
AltoWeb
Thank you!

More Related Content

What's hot

Seven Points for Applying Java EE 7
Seven Points for Applying Java EE 7Seven Points for Applying Java EE 7
Seven Points for Applying Java EE 7
Hirofumi Iwasaki
 

What's hot (20)

Module 3: Working with the DOM and jQuery
Module 3: Working with the DOM and jQueryModule 3: Working with the DOM and jQuery
Module 3: Working with the DOM and jQuery
 
JSF 2.2 Input Output JavaLand 2015
JSF 2.2 Input Output JavaLand 2015JSF 2.2 Input Output JavaLand 2015
JSF 2.2 Input Output JavaLand 2015
 
2015 JavaOne LAD JSF 2.3 & MVC 1.0
2015 JavaOne LAD JSF 2.3 & MVC 1.02015 JavaOne LAD JSF 2.3 & MVC 1.0
2015 JavaOne LAD JSF 2.3 & MVC 1.0
 
Best Practices for JSF, Gameduell 2013
Best Practices for JSF, Gameduell 2013Best Practices for JSF, Gameduell 2013
Best Practices for JSF, Gameduell 2013
 
What's New in WebLogic 12.1.3 and Beyond
What's New in WebLogic 12.1.3 and BeyondWhat's New in WebLogic 12.1.3 and Beyond
What's New in WebLogic 12.1.3 and Beyond
 
The productive developer guide to React
The productive developer guide to ReactThe productive developer guide to React
The productive developer guide to React
 
Ed presents JSF 2.2 and WebSocket to Gameduell.
Ed presents JSF 2.2 and WebSocket to Gameduell.Ed presents JSF 2.2 and WebSocket to Gameduell.
Ed presents JSF 2.2 and WebSocket to Gameduell.
 
What's Coming in Java EE 8
What's Coming in Java EE 8What's Coming in Java EE 8
What's Coming in Java EE 8
 
Java EE and Spring Side-by-Side
Java EE and Spring Side-by-SideJava EE and Spring Side-by-Side
Java EE and Spring Side-by-Side
 
EJB and CDI - Alignment and Strategy
EJB and CDI - Alignment and StrategyEJB and CDI - Alignment and Strategy
EJB and CDI - Alignment and Strategy
 
Jboss Application Server training-course-navi-mumbai-jboss-course-provider-na...
Jboss Application Server training-course-navi-mumbai-jboss-course-provider-na...Jboss Application Server training-course-navi-mumbai-jboss-course-provider-na...
Jboss Application Server training-course-navi-mumbai-jboss-course-provider-na...
 
Testing Java EE Applications Using Arquillian
Testing Java EE Applications Using ArquillianTesting Java EE Applications Using Arquillian
Testing Java EE Applications Using Arquillian
 
Java EE 8 Recipes
Java EE 8 RecipesJava EE 8 Recipes
Java EE 8 Recipes
 
A Succesful WebCenter Upgrade: What You Need to Know
A Succesful WebCenter Upgrade: What You Need to KnowA Succesful WebCenter Upgrade: What You Need to Know
A Succesful WebCenter Upgrade: What You Need to Know
 
Seven Points for Applying Java EE 7
Seven Points for Applying Java EE 7Seven Points for Applying Java EE 7
Seven Points for Applying Java EE 7
 
Angularjs y Simple Page Applications
Angularjs y Simple Page Applications Angularjs y Simple Page Applications
Angularjs y Simple Page Applications
 
JavaOne - 10 Tips for Java EE 7 with PrimeFaces
JavaOne - 10 Tips for Java EE 7 with PrimeFacesJavaOne - 10 Tips for Java EE 7 with PrimeFaces
JavaOne - 10 Tips for Java EE 7 with PrimeFaces
 
jDays2015 - JavaEE vs. Spring Smackdown
jDays2015 - JavaEE vs. Spring SmackdownjDays2015 - JavaEE vs. Spring Smackdown
jDays2015 - JavaEE vs. Spring Smackdown
 
Move from J2EE to Java EE
Move from J2EE to Java EEMove from J2EE to Java EE
Move from J2EE to Java EE
 
Java EE Revisits GoF Design Patterns
Java EE Revisits GoF Design PatternsJava EE Revisits GoF Design Patterns
Java EE Revisits GoF Design Patterns
 

Viewers also liked (9)

NJ_RFP_Project-Schedule_v2_cfc_03-02-13
NJ_RFP_Project-Schedule_v2_cfc_03-02-13NJ_RFP_Project-Schedule_v2_cfc_03-02-13
NJ_RFP_Project-Schedule_v2_cfc_03-02-13
 
Dissertation-UCB_Camargo-2003_sm
Dissertation-UCB_Camargo-2003_smDissertation-UCB_Camargo-2003_sm
Dissertation-UCB_Camargo-2003_sm
 
NAFTechProgram-cfc2
NAFTechProgram-cfc2NAFTechProgram-cfc2
NAFTechProgram-cfc2
 
FinAnalystPreso1
FinAnalystPreso1FinAnalystPreso1
FinAnalystPreso1
 
GRANDFIN_Federal Procurement Landscape
GRANDFIN_Federal Procurement LandscapeGRANDFIN_Federal Procurement Landscape
GRANDFIN_Federal Procurement Landscape
 
CompTech4MicroEnt-HNC
CompTech4MicroEnt-HNCCompTech4MicroEnt-HNC
CompTech4MicroEnt-HNC
 
ACC-CostBenefit-Intranet-
ACC-CostBenefit-Intranet-ACC-CostBenefit-Intranet-
ACC-CostBenefit-Intranet-
 
Pratt-Preso.ppt
Pratt-Preso.pptPratt-Preso.ppt
Pratt-Preso.ppt
 
The ABC Philosophy & Approach to Strategic Alliances
The ABC Philosophy & Approach to Strategic AlliancesThe ABC Philosophy & Approach to Strategic Alliances
The ABC Philosophy & Approach to Strategic Alliances
 

Similar to AWValuePitch, 7_12

Reach End Users With Next Generation Web Applications
Reach End Users With Next Generation Web ApplicationsReach End Users With Next Generation Web Applications
Reach End Users With Next Generation Web Applications
Jeff Blankenburg
 
SoCal Code Camp 2011 - ASP.NET MVC 4
SoCal Code Camp 2011 - ASP.NET MVC 4SoCal Code Camp 2011 - ASP.NET MVC 4
SoCal Code Camp 2011 - ASP.NET MVC 4
Jon Galloway
 
Employee Info Starter Kit
Employee Info Starter KitEmployee Info Starter Kit
Employee Info Starter Kit
joycsc
 

Similar to AWValuePitch, 7_12 (20)

AltoWeb_SPEED_Overview-2001
AltoWeb_SPEED_Overview-2001AltoWeb_SPEED_Overview-2001
AltoWeb_SPEED_Overview-2001
 
From Backbone to Ember and Back(bone) Again
From Backbone to Ember and Back(bone) AgainFrom Backbone to Ember and Back(bone) Again
From Backbone to Ember and Back(bone) Again
 
ASP.NET AJAX with Visual Studio 2008
ASP.NET AJAX with Visual Studio 2008ASP.NET AJAX with Visual Studio 2008
ASP.NET AJAX with Visual Studio 2008
 
Oracle JavaScript Extension Toolkit Web Components Bring Agility to App Devel...
Oracle JavaScript Extension Toolkit Web Components Bring Agility to App Devel...Oracle JavaScript Extension Toolkit Web Components Bring Agility to App Devel...
Oracle JavaScript Extension Toolkit Web Components Bring Agility to App Devel...
 
2008_478_Lyons_ppt.ppt
2008_478_Lyons_ppt.ppt2008_478_Lyons_ppt.ppt
2008_478_Lyons_ppt.ppt
 
Reach End Users With Next Generation Web Applications
Reach End Users With Next Generation Web ApplicationsReach End Users With Next Generation Web Applications
Reach End Users With Next Generation Web Applications
 
SoCal Code Camp 2011 - ASP.NET MVC 4
SoCal Code Camp 2011 - ASP.NET MVC 4SoCal Code Camp 2011 - ASP.NET MVC 4
SoCal Code Camp 2011 - ASP.NET MVC 4
 
ExtjsPart1
ExtjsPart1ExtjsPart1
ExtjsPart1
 
Employee Info Starter Kit
Employee Info Starter KitEmployee Info Starter Kit
Employee Info Starter Kit
 
Developing Java Web Applications
Developing Java Web ApplicationsDeveloping Java Web Applications
Developing Java Web Applications
 
Liquibase – a time machine for your data
Liquibase – a time machine for your dataLiquibase – a time machine for your data
Liquibase – a time machine for your data
 
Web development concepts using microsoft technologies
Web development concepts using microsoft technologiesWeb development concepts using microsoft technologies
Web development concepts using microsoft technologies
 
Resume
ResumeResume
Resume
 
VAST 7.5 and Beyond
VAST 7.5 and BeyondVAST 7.5 and Beyond
VAST 7.5 and Beyond
 
Intorduction to struts
Intorduction to strutsIntorduction to struts
Intorduction to struts
 
ASP.pptx
ASP.pptxASP.pptx
ASP.pptx
 
Brudnick Net Ppt Portfolio
Brudnick Net Ppt PortfolioBrudnick Net Ppt Portfolio
Brudnick Net Ppt Portfolio
 
How to Build Single Page HTML5 Apps that Scale
How to Build Single Page HTML5 Apps that ScaleHow to Build Single Page HTML5 Apps that Scale
How to Build Single Page HTML5 Apps that Scale
 
Resume
ResumeResume
Resume
 
The future of ASP.NET / CodeCamp/Iasi 25 Oct 2014
The future of ASP.NET / CodeCamp/Iasi 25 Oct 2014The future of ASP.NET / CodeCamp/Iasi 25 Oct 2014
The future of ASP.NET / CodeCamp/Iasi 25 Oct 2014
 

More from Carlos F. Camargo, Ph.D. - Realtor, CalBRE #01988431

More from Carlos F. Camargo, Ph.D. - Realtor, CalBRE #01988431 (20)

BackwardsDesignPedagogy_OUSD_Camargo
BackwardsDesignPedagogy_OUSD_CamargoBackwardsDesignPedagogy_OUSD_Camargo
BackwardsDesignPedagogy_OUSD_Camargo
 
Camargo_Strawman_Aspire Public Schools - Work Plan
Camargo_Strawman_Aspire Public Schools - Work PlanCamargo_Strawman_Aspire Public Schools - Work Plan
Camargo_Strawman_Aspire Public Schools - Work Plan
 
Women Leaders for the World-GWLN_2008-sm
Women Leaders for the World-GWLN_2008-smWomen Leaders for the World-GWLN_2008-sm
Women Leaders for the World-GWLN_2008-sm
 
GWLN-Proposal-Workbook
GWLN-Proposal-WorkbookGWLN-Proposal-Workbook
GWLN-Proposal-Workbook
 
GWLN-FoundationList
GWLN-FoundationListGWLN-FoundationList
GWLN-FoundationList
 
CP-GWLN-FEMALE ECONOMIC EMANCIPATION
CP-GWLN-FEMALE ECONOMIC EMANCIPATIONCP-GWLN-FEMALE ECONOMIC EMANCIPATION
CP-GWLN-FEMALE ECONOMIC EMANCIPATION
 
ABC-8MillionWishes
ABC-8MillionWishesABC-8MillionWishes
ABC-8MillionWishes
 
8May2009-PovertyEdCrisis-SVEF
8May2009-PovertyEdCrisis-SVEF8May2009-PovertyEdCrisis-SVEF
8May2009-PovertyEdCrisis-SVEF
 
ICT-Vision-Brief-Camargo
ICT-Vision-Brief-CamargoICT-Vision-Brief-Camargo
ICT-Vision-Brief-Camargo
 
Environmental Literacy Grant_View from Space_VfS 2009
Environmental Literacy Grant_View from Space_VfS 2009Environmental Literacy Grant_View from Space_VfS 2009
Environmental Literacy Grant_View from Space_VfS 2009
 
EDS_NGEE-Tropics_Project_Insights-CFC_Redacted
EDS_NGEE-Tropics_Project_Insights-CFC_RedactedEDS_NGEE-Tropics_Project_Insights-CFC_Redacted
EDS_NGEE-Tropics_Project_Insights-CFC_Redacted
 
Ops Research_Narcam_1993-FAA-DOT
Ops Research_Narcam_1993-FAA-DOTOps Research_Narcam_1993-FAA-DOT
Ops Research_Narcam_1993-FAA-DOT
 
ICT-IdentityStrategy_2007.pdf
ICT-IdentityStrategy_2007.pdfICT-IdentityStrategy_2007.pdf
ICT-IdentityStrategy_2007.pdf
 
FHS-OverviewVESLContent
FHS-OverviewVESLContentFHS-OverviewVESLContent
FHS-OverviewVESLContent
 
Building Teams by Defining Roles and Responsibility in Meetings
Building Teams by Defining Roles and Responsibility in MeetingsBuilding Teams by Defining Roles and Responsibility in Meetings
Building Teams by Defining Roles and Responsibility in Meetings
 
Empowering New American Communities in the Bay Area
Empowering New American Communities in the Bay AreaEmpowering New American Communities in the Bay Area
Empowering New American Communities in the Bay Area
 
La Planificación Integrada de Negocios
La Planificación Integrada de NegociosLa Planificación Integrada de Negocios
La Planificación Integrada de Negocios
 
LoanPackageDevelopment
LoanPackageDevelopmentLoanPackageDevelopment
LoanPackageDevelopment
 
ACC - The ABCs of Starting A Business
ACC - The ABCs of Starting A BusinessACC - The ABCs of Starting A Business
ACC - The ABCs of Starting A Business
 
Best Practices Accelerator
Best Practices AcceleratorBest Practices Accelerator
Best Practices Accelerator
 

AWValuePitch, 7_12

  • 1. © 2001 AltoWeb AltoWeb Raising J2EE to the Business Level
  • 2. 2 © 2001 AltoWeb Who is AltoWeb?  Founded December 1998  Seasoned Management team led by Ali Kutay • Former CEO of WebLogic, Inc.  Funding • Seed Investors: Ali Kutay, Frank Caufield, Regis McKenna • First round: Intel 64 Fund • Second round: Norwest Venture Partners  Based in Palo Alto, CA; 85+ employees • Excellent Engineering Team (50+ employees)
  • 3. 3 © 2001 AltoWeb What is AltoWeb? System Administrator • Monitors • Manages • Deploys Database Administrator • Implements database design • Creates database objects GUI Designer • Creates application look and feele-Business Analyst • Creates application map and process flow • Creates process “stubs” System Architect • Configures data, process, interaction objects • Generates application The team can now work on the same problem…using a common J2EE platform Java Developer • Extends applications • Creates custom and logic components
  • 4. 4 © 2001 AltoWeb The AltoWeb Value Proposition Leverage and protect your J2EE investment:  Within a project  Across projects  Across an organization  Across time  Across infrastructure
  • 5. © 2001 AltoWeb The AltoWeb Value Proposition 1. Within a project
  • 6. 6 © 2001 AltoWeb Java Pet Store THE Standard J2EE Application • Basis for J2EE Blueprints book and white papers • Basis for JavaOne Deployathon exercise to prove Application server portability • Basis for J2EE server certification tests • Demonstrated in Larry Ellison’s JavaOne 2001 keynote
  • 7. 7 © 2001 AltoWeb How much work with Standard J2EE?  Server Side • 63 handwritten Java classes • 21 handwritten Java interfaces • 8,297 handwritten lines of Java code  Client Side • ~200 lines of Java code embedded in 35 Java Server Pages • Very difficult to deal with since it is embedded inside presentation markup • 2,277 total lines of presentation markup (JSP)
  • 8. 8 © 2001 AltoWeb How much work with AltoWeb J2EE?  Server Side • 9 database-mapped MetaObjects • 17 SQL query customizations • 14 visually documented process specifications • 15 lines of Java code  Client Side • Used existing JSP presentation • Removed client Java code, improving maintainability • Reduced overall markup quantity by 17%  Development Effort • 3 man-weeks for novice AltoWeb developer
  • 9. 9 © 2001 AltoWeb Productivity Increases Rapidly Producing Java Pet Store Server and Presentation Code with IDEs Requires 211 Days or 10 Man-Months of Effort * * One developer producing 50 lines of code a day, 10,574 lines of code AltoWeb Requires 4 Man-Weeks, Including Training Engineering Effort Comparison Java Pet Store 0 40 80 120 160 200 Per Application Man-Days AltoWeb IDE 10 X Productivity Improvement Applications Created by Four Development Engineers Per Year, Java Pet Store 0 5 10 15 20 25 30 35 40 45 50 1 2 3 4 5 6 7 8 9 10 11 12 Months Number of Applications AltoWeb IDE 10 X Productivity Improvement
  • 10. 10 © 2001 AltoWeb Return on Development Effort AltoWeb Has An Immediate Payback Savings Grow With Each Application Development Cost Comparison Java Pet Store $0 $20 $40 $60 $80 $100 $120 $140 $160 $180 $200 1st Project Subsequent Applications 000's AltoWeb Cost IDE Cost Cumulative Cost Comparison Java Pet Store $0 $100 $200 $300 $400 $500 $600 $700 $800 1 2 3 4 5 6 Number of Applications 000's AltoWeb Cost IDE Cost
  • 11. 11 © 2001 AltoWeb The AltoWeb Value Proposition 2. Across projects
  • 12. 12 © 2001 AltoWeb Reuse, reuse, reuse Data Sources Standard access to data of all types Reusable across projects Abstract and/or compound for reuse in different environments
  • 13. 13 © 2001 AltoWeb Reuse, reuse, reuse Business Processes Independent of presentation Business domain expert and technical expert work together effectively Reusable across projects
  • 14. 14 © 2001 AltoWeb Reuse, reuse, reuse JSP Pages Auto-generate “Skeleton and muscle” Start in AltoWeb, then polish in HTML editor, or… …Start in HTML editor, and flesh out in AltoWeb Reuse standard pages across projects (error, login)
  • 15. 15 © 2001 AltoWeb Reuse, reuse, reuse Components Starter set in product Easy to add your own Technical expert presents “safe” units of functionality up to business expert Reusable across projects
  • 16. 16 © 2001 AltoWeb The AltoWeb Value Proposition 3. Across an organization
  • 17. 17 © 2001 AltoWeb “Best Practices” in a box  A standard way to build J2EE applications  Separation of interfaces strictly enforced: model, view and controller  A standard, reusable library of enterprise functionality  Standard deployment, management, monitoring across all J2EE applications  Code reviews and audits are quicker, simpler
  • 18. 18 © 2001 AltoWeb Consider this JSP page… <%@page … %> <HTML><BODY> <% try{ Integer userId = (Integer)session.getAttribute(“id”); Context ctx = new InitialContext(); MyEntityBeanHome home = (MyEntityBeanHome )ctx.lookup(“SomeJNDILookupString”); MyEntityBean ejb = (MyEntityBean)home.findByPrimaryKey(userId); %> Hello <% out.println(ejb.getUserName()); } catch(Exception e){ %> <!-- error --> Something is wrong: <% out.println(e.getMessage()); } %> </BODY></HTML> <%@page … %> <HTML><BODY> <% try{ Integer userId = (Integer)session.getAttribute(“id”); Context ctx = new InitialContext(); MyEntityBeanHome home = (MyEntityBeanHome )ctx.lookup(“SomeJNDILookupString”); MyEntityBean ejb = (MyEntityBean)home.findByPrimaryKey(userId); %> Hello <% out.println(ejb.getUserName()); } catch(Exception e){ %> <!-- error --> Something is wrong: <% out.println(e.getMessage()); } %> </BODY></HTML>
  • 19. 19 © 2001 AltoWeb So, what’s wrong?  Independence of interfaces • Presentation, control flow and business logic are intermingled  Reuse • Nothing can be separated out for reuse  Teamwork • The author needed to know the whole J2EE stack  Change • Change anywhere means change everywhere  Performance • Distributed object calls being made from the browser …but it’s totally J2EE compliant!!!
  • 20. 20 © 2001 AltoWeb Changing applications today… 18 7/11/2001AltoWeb, Inc. Confidential© 2001AltoWeb Consider this JSP page… <%@page … %> <HTML><BODY> <% try{ Integer userId = (Integer)session.getAttribute(“id”); Context ctx = new InitialContext(); MyEntityBeanHome home = (MyEntityBeanHome )ctx.lookup(“SomeJNDILookupString”); MyEntityBean ejb = (MyEntityBean)home.findByPrimaryKey(userId); %> Hello <% out.println(ejb.getUserName()); } catch(Exception e){ %> <!-- error --> Something is wrong: <% out.println(e.getMessage()); } %> </BODY></HTML> Steps to change the EJB support class without AltoWeb • Understand the application and related standards • the application flow, since a series of pages are dependent on the previous one • the underlying J2EE Specifications and the application framework from the data layer through to the presentation layer JDBC JNDI EJB Servlet … • the application framework API and the data layer API • the deployment rules, including specified location, for this EJB • application error handling reflected on the page • Implement your changes • Change the EJB source code • Compile the EJB • Deploy the application with vendor-specific tools • Shut down and restart the server • Test functionality and graphic design on the deployment server • Repeat the above steps if necessary • Release to production
  • 21. 21 © 2001 AltoWeb Changing applications with AltoWeb Steps to change an AltoWeb application • Locate the component to be changed • This is typically at the data access or business logic level • AltoWeb provides a visual model of the entire application • Change the component using point and click configuration settings • Save the changes • Component changes are reflected immediately across an application • Test the application • Release to production
  • 22. 22 © 2001 AltoWeb AltoWeb provides clean architecture <%@page … %> <%@taglib … %> <HTML><BODY> Hello <aw:value name=”/user/name” /> </BODY></HTML> <%@page … %> <%@taglib … %> <HTML><BODY> Hello <aw:value name=”/user/name” /> </BODY></HTML>  Independence of interfaces  Reuse  Teamwork  Change  Performance
  • 23. 23 © 2001 AltoWeb The AltoWeb Value Proposition 4. Across time
  • 24. 24 © 2001 AltoWeb “Organizational memory” in a box Standard architecture helps new people understand applications Visual environment exposes application flow Incremental testing exposes application functionality at all levels
  • 25. 25 © 2001 AltoWeb Changing the page with AltoWeb <%@page … %> <%@taglib … %> <HTML><BODY> Hello <aw:value name=”/user/name” /> </BODY></HTML> <%@page … %> <%@taglib … %> <HTML><BODY> Hello <aw:value name=”/user/name” /> </BODY></HTML>  Make your changes to the EJB  Save the changes  You are finished
  • 26. 26 © 2001 AltoWeb Brocade Change ROI <%@page … %> <%@taglib … %> <HTML><BODY> Hello <aw:value name=”/user/name” /> </BODY></HTML> <%@page … %> <%@taglib … %> <HTML><BODY> Hello <aw:value name=”/user/name” /> </BODY></HTML>  Make your changes to the EJB  Save the changes  You are finished
  • 27. 27 © 2001 AltoWeb The AltoWeb Value Proposition 5. Across infrastructure
  • 28. 28 © 2001 AltoWeb Protect your investment… …across Operating Systems: • Windows NT 4.0, Windows 2000 • Solaris 7.x, 8.x …across Application Servers • BEA • WebSphere (August 2001) • Jboss • Tomcat • ATG (August 2001)
  • 29. 29 © 2001 AltoWeb Run-time Return on Investment The AltoWeb Server Provides Standardization on J2EE Best Practices That Reduce Maintenance Costs Architecture Separating Information, Business and Presentation Logic Custom Tag Libraries, … Quick Response to Changing Business Requirements Use our structured environment to substantially change a data mapping, process or presentation element without dropping down into systems-level Java coding Example: Changing CRM Systems Underlying databases change both brand and data structure Rebuild data objects once to generate the same data models as before Reduced cost of change across all projects
  • 30. 30 © 2001 AltoWeb Run-time Return on Investment The AltoWeb Server Provides (cont’d) Reuse, reuse, reuse Train people once, leverage organizational knowledge across many projects Leverage processes and data objects across many projects Don’t “Recode the wheel” Efficient Knowledge Transfer AltoWeb users create applications that are easier to understand and audit People can quickly pinpoint items in a standard architecture Visual Application and Process Maps are quickly understood Point and click presentation logic and data object configurations are easy to examine
  • 31. 31 © 2001 AltoWeb The AltoWeb Value Proposition Leverage and protect your J2EE investment:  Within a project  Across projects  Across an organization  Across time  Across infrastructure
  • 32. © 2001 AltoWeb How does it work? AltoWeb Architecture Overview
  • 33. 33 © 2001 AltoWeb X M L X M L J S P J S P J S P J S P J S P J S P J S P J S P Views: Transforms, Trigger & Respond JSP Wizard – Auto Tag Generation Actions: Maps the process to Inputs & Outputs Recv, Validate, Exec, Dispatch, Respond Multiple actions for the same process Data Sources: SQL DB (JDBC or JNDI), Web Server, File System, XML, HTML, Flat File abs absDS DS DS DS Meta Objects: Data Source: Configure Queries Abstract: Create Placeholders Compound: Heterogeneous Joins! Data Models: Defines Structure, Houses DataProcess Data Model Process Data Model Compound Compound X M L X M L J S P J S P J S P J S P J S P J S P J S P J S P DS DS Process: The heart of the business logic, Insert Standard & Custom components, Create responses, Test processes

Editor's Notes

  1. AltoWeb was founded in Dec 98 We have spent the last 18 months focusing on the technology and creating a robust platform to support end-to-end e-business. Seasoned management team is led by our CEO Ali Kutay who was the CEO of WebLogic that was sold to BEA We have very solid backing which started with a seed round that was funded by Frank, Regis and Ali First round funding by Intel 64 – very active in the Intel 64 programs and have received a tremendous amount of support from Intel Second round funded by NorWest and Kevin Hall joined our Board. We launched the company in June 2000 and started an early adopter program at the beginning of August.