Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Developers matter 23rd May 2006, Helsinki, Finland Developers matter, a Borland Seminar Gerard van der Pol DTG BDS Regional Evangelist Agenda 1200 – 1230 Borland / Delphi Update 1230 – 1330 Extreme Developer Productivity 1330 – 1345 Break 1345 – 1445 Using Together with Delphi 1445 – 1545 Build and run Model Driven Software 1545 – 1600 Q&A 1600 – End Borland Update What the IDE Spin-off really means Borland Announcements : February 8th 2006 Borland acquires Segue Software Pursuing a “spin-out” independent developer company – “DevCo” March 20th 2006 Announcement of new “DevCo” General Manager – Nigel Brown Borland EMEA VP April 2006 Developer Tools Division Established Divesting of IDE Product Lines – “DevCo” Pursuing a “spin-out” independent developer company – “DevCo” The expert IDE teams are involved in this process Focus on code and the developer role What is right for customers is to have two separate yet co-operative businesses Interim time, Borland continues to invest and advance the IDE business Announced new world wide Developer Tools Division General Manager Now on to work with potential investors Major Product Areas by Organization “DevCo” Borland Delphi C++Builder CaliberRM InterBase Together “Peloton” StarTeam Segue Silk JDataStore C#Builder JBuilder VisiBroker Developer Studio Tempo Developer Network BES Large Community User 6.5M registered members Oracle Enterprise 1.5M active BDN community Sun >1M Foundation users IBM Geographically distributed Small Team Cross-platform orientation Microsoft DevCo Individual Platform .Net Java Heritage of Leadership Redefining Software Engineering for Over 20 Years From inventing IDE & RAD to enabling J2EE & .NET 1st C++ IDE Invented the IDE 1st Extensible Component Framework Redefined RAD 1st RAD IDE for Linux Defined JavaBeans 1st Pure Java IDE 1st J2EE compliant IDE 1st Enterprise Framework 1st IDE to support SOAP DevCo Industry OO Programming Structured Programming Components Windows JavaBeans Java Linux J2EE .NET Web Services Community Reaction to the News… “Now a great technology, a great community, and a DelphiNewCo Inc. are ready to enter a New Delphi Era. “ Marco Cantu “…personally think this is the best thing to happen to Delphi since it was released eleven years ago today ” Nick Hodges “My loyalty will be to the new company; to Delphi and the other IDE products.” Bob Swart http://blog.marcocantu.com/blog/dreamingnewdelphi.html http://www.lemanix.com/nickblog/ http://www.ebob42.com Borland Team Blogs… Allen Bauer - Fly! Be free! Adam Markowitz- Sojourn of Delphi David Lock - Delphi grows up, moves out David Intersimone – With a big smile on my face... John Kaster - Exciting times for Borland's developer tools Anders Ohlsson - It's a fabulous day Michael Swindell - Go Delphi! Go NewCo! Latest News : http://Blogs.borland.com/abauer Introducing the Nordic DTG team Niklas Karlsson Dan Nygren Robert Lecklin Jani Järvinen (Moonsoft Finland) Juha Piispa (Moonsoft Finland) Delphi Update Delphi 2006 – “All in One” Delphi Delphi 2006 Developer Studio IDE VCL, Win32, IntraWeb C++Builder Delphi Win32 C++Builder Win32 VCL, Win32, IntraWeb Delphi for .NET VCL.NET, Winforms, ASP.NET WebForms, ECO C#Builder for .NET Winforms, WebForms, ASP.NET, ECO Delphi .NET C#Builder .NET Delphi 2006 Mission High quality and performance - Radically increase quality, performance, and responsiveness High Productivity of Model Driven Development to the Masses - State Machine design and execution and ECO features in all SKUs More Developer Productivity - VCL Design Guidelines, Together, Live Templates, Many more refactorings Provide C++Builder developers with Borland Developer Studio 2006 - Re-integrate/introduce VCL based C++Builder Delphi 2006 Responses High quality and performance “the overall stability impressions are very good ” software.gurock High Productivity of Model Driven Development to the Masses “…compelling for serious design…” DevSource More Developer Productivity “…the best RAD tool for Windows ” Tim Anderson, UK, The Register Provide C++Builder developers with Borland Developer Studio 2006 “C++Builder is back ” Reg Developer Quote of the Week… “Delphi is back home at last.. now only Metallica has to make a real album again to make me the happiest developer of the world.” John McLaine Delphi 2006 Mission High quality and performance - Radically increase quality, performance, and responsiveness High Productivity of Model Driven Development to the Masses - State Machine design and execution and ECO features in all SKUs More Developer Productivity - VCL Design Guidelines, Together, Live Templates, Many more refactorings Provide C++Builder developers with Borland Developer Studio 2006 - Re-integrate/introduce VCL based C++Builder Delphi 2006 Responses High quality and performance “the overall stability impressions are very good ” software.gurock “The products look excellent” RegDeveloper High Productivity of Model Driven Development to the Masses “…compelling for serious design…” DevSource More Developer Productivity “…the best RAD tool for Windows ” Tim Anderson, UK, The Register Provide C++Builder developers with Borland Developer Studio 2006 “C++Builder is back ” RegDeveloper Delphi 2006 Architecture Overview ECO BDE IBX VCL (Win32) UML Diagram Suite Live Source C++ Files dbExpress VCL.NET Design Patterns Live Templates Delphi.NET Delphi Defects Topics .NET WinForms and ASP.NET Audits Refactoring Tasks BDP Metrics Unit Testing C# Requirements Design Borland Developer Studio – BDS (IDE) IDE Core Menus, Project Mgmt, Window Mgmt, Editor, Personality Services, etc… Code Editor Debugger Services Project Management Menus Windows/Docking Built in VCL/Win32 Borland Developer Studio – BDS (IDE) IDE Core Menus, Project Mgmt, Window Mgmt, Editor, Personality Services, etc… Open Tools API - Published Code Editor Debugger Services Personality services Project Management Project/File management Menus Editor/Keyboard mappings Windows/Docking Debugging services Built in VCL/Win32 File history services Structure view services Object inspector services Etc.. Borland Developer Studio – BDS (IDE) IDE Core Menus, Project Mgmt, Window Mgmt, Editor, Personality Services, etc… Open Tools API - Published C++Builder Delphi/Win32 Delphi/.NET Personality services Project/File management Editor/Keyboard mappings C++Builder – native Win32 Debugging services Delphi/Win32 – native Win32 File history services Delphi/.NET .NET Structure view -services C#Builder - .NET Object inspector services Etc.. C#Builder Borland Developer Studio – BDS (IDE) IDE Core Menus, Project Mgmt, Window Mgmt, Editor, Personality Services, etc… Open Tools API - Published C++Builder Delphi/Win32 Win32 Debugger Delphi/.NET C#Builder .NET Debugger C++Builder – native Win32 Delphi/Win32 – native Win32 Delphi/.NET - .NET Source C#Builder and CPU Level - .NETStepping Full Function CPU/IL View Local Variables View Watches View Many Breakpoint Types Event Logging Expandable Fly-Over Inspectors Data Inspectors Borland Developer Studio – BDS (IDE) IDE Core Menus, Project Mgmt, Window Mgmt, Editor, Personality Services, etc… Open Tools API - Published C++Builder Delphi/Win32 Win32 Debugger Delphi/.NET C#Builder .NET Debugger Together Source and CPU Level Stepping Full Function CPU/IL View Local Variables View LiveSource Modeling Watches View Class Diagrams Many Breakpoint Types Use Case Diagrams Event Logging State Diagrams Expandable Fly-Over Inspectors Code Audits/Metrics Data Inspectors Coding Patterns (Gang of Four) Borland Developer Studio – BDS (IDE) Borland Developer Studio – RunTime IDE Core Menus, Project Mgmt, Window Mgmt, Editor, Personality Services, etc… Open Tools API - Published C++Builder Delphi/Win32 Win32 Debugger Delphi/.NET C#Builder .NET Debugger Together LiveSource Modeling Class Diagrams Use Case Diagrams State Diagrams Code Audits/Metrics Coding Patterns (Gang of Four) Borland Developer Studio – RunTime C++Builder Delphi/Win32 VCL/Win32 Delphi/.NET VCL/.NET Visual Component Library First Widespread True Component Framework Made Windows Programming Approachable Consistent Programming Model No Need To Understand OOP Concepts Low Barrier To Entry Visual Designers (Drag ‘n’ Drop) C#Builder Borland Developer Studio – RunTime C++Builder Delphi/Win32 VCL/Win32 Delphi/.NET C#Builder VCL/.NET ASP.NET Visual Component Library First Widespread True Component Framework Made Windows Programming Approachable Windows Forms Consistent Programming Model No Need To Understand OOP Concepts Low Barrier To Entry Microsoft .NET Frameworks Visual Designers (Drag ‘n’ Drop) Windows Forms – Similar to VCL ASP.NET – Web Form App Framework Visual Designers (Drag ‘n’ Drop) Borland Developer Studio – RunTime C++Builder Delphi/Win32 VCL/Win32 Delphi/.NET C#Builder VCL/.NET ASP.NET Windows Forms Enterprise Objects Microsoft .NETCore Frameworks Windows Forms – Similar to VCL ASP.NET – Web Form App Framework Model Driven Architecture Visual Designers (Drag ‘n’ Drop) Persistence Database Agnostic State Machines Integrated OCL Engine Borland Developer Studio – RunTime C++Builder Delphi/Win32 VCL/Win32 COM/DCOM/ActiveX Integrated Type Library Editor Full ActiveX Component Framework Based On ATL (C++Builder) Produce & Consume ActiveX Controls Delphi/.NET C#Builder VCL/.NET ASP.NET Windows Forms Enterprise Core Objects Model Driven Architecture Persistence Database Agnostic State Machines Integrated OCL Engine Borland Developer Studio – RunTime C++Builder Delphi/Win32 VCL/Win32 Delphi/.NET C#Builder VCL/.NET COM/DCOM/ActiveX ASP.NET CORBA Integrated Type Library Editor Full ActiveX Component Framework Based On ATL (C++Builder) Based On Mature Visibroker ORB Produce & Consume ActiveX Controls Integrated IDL2CPP Windows Forms Enterprise Core Objects Borland Developer Studio – RunTime C++Builder Delphi/Win32 VCL/Win32 COM/DCOM/ActiveX CORBA Delphi/.NET C#Builder VCL/.NET ASP.NET Windows Forms Borland Database Engine (BDE) Based On Mature Visibroker ORB Integrated IDL2CPP Enterprise Core Objects dbExpress Borland Data Providers (BDP) Database Access Technologies Borland Database Engine – Paradox, dBase dbExpress – SQL (MSSQL, InterBase, Oracle) Borland Data Providers – Similar to dbExpress Delphi / C++Builder Roadmap Delphi/C++ for Win64 Highlander Delphi 2005 • Delphi Win32/.NET • VCL for Win32/.NET • ECO II Update #1 Update #2 Update #3 2005 • Win64 / Win32 native code • Delphi Win32/.NET • VCL for Win64/Win32 • VCL for .NET 2.0 • VCL for Compact Framework • 64bit .NET 2.0 Delphi 2006 • Windows Vista • Delphi, C# and C++ in same IDE • ECO IV – ECO for VCL.NET • VCL for Win32/.NET 1.1 • 64bit .NET 1.1 Delphi for Vista • ECO III – State Machines • VCL for Windows Presentation Foundation (Avalon) • ECO “basics” in all editions • Windows Communication Framework (Indigo) • Together for Delphi • VCL for Win32 • Performance and Quality Update #1 2006 Update #2 2007 2008 Agenda 1200 – 1230 Borland / Delphi Update 1230 – 1330 Extreme Developer Productivity 1330 – 1345 Break 1345 – 1445 Using Together with Delphi 1445 – 1545 Build and run Model Driven Software 1545 – 1600 Q&A 1600 – End Extreme Developer Productivity Delphi 2006 – Unprecedented Developer Productivity VCL Live Guidelines Live Snap-To guides for positioning and resizing VCL controls at design time Live Templates Interactive template system – scriptable and extensible, add your own Block Completion Automatically completes code blocks such as Begin/End, ( ), and others Refactorings Many new refactorings such as Push and Pull members, Extract Interface, Extract Superclass, Safe Delete and more Delphi 2006 - Refactorings Symbol Rename (Delphi, C#, C++) Extract Method (Delphi) Declare Variable and Field (Delphi) Find References (Delphi, C#, C++) Extract Resourcestring (Delphi) Find Unit (Delphi) Use Namespace (C#) Undo (Delphi, C#) Change Parameters (Delphi) Also Together Modeling Refactorings… Delphi 2006 – Database Development Delphi and C++Builder for VCL – Win32 and .NET New Database Explorer for dbExpress Drag-in-drop, table browsing, schema creation and editing New Unicode dbExpress platform MS SQL Server Unicode enabled dbExpress driver – more to follow! New and Updated dbExpress drivers Interbase 7.5, Oracle 10g, Microsoft SQL Server 2005, Informix 9x, IBM DB2 8., MySQL 4.0.24, SQL Anywhere 9, Sybase 12.5 DBGo for ADO, IBX, and BDE for dBase and Paradox supports both VCL and VCL.NET ! Delphi and C#Builder for .NET/ASP.NET – Winforms and WebForms New BDP Connection Pooling! Built-in support for conn pooling make it easy to improve performance and scalability New BDP SQL Tracing Easily debug SQL commands New BDP and DataHub Error Reconciliation Handle errors across tiers in multi-tier database applications New and Updated BDP drivers Interbase 7.5, Oracle 10g, Microsoft SQL Server 2005, IBM DB2 8., MySQL 4.0.24, Sybase 12.5, MSDE 2000, Microsoft Access C++Builder Personality Upgrade to C++Builder 6 IDE productivity improvements since D7 Database Explorer, History Manager, Sync Edit… New VCL Consume latest VCL components Rename Refactoring CodeGuard 2006 Runtime Error Protection Configurable Build Highly configurable and flexible C++ build options Build Events - pre, post build, pre-link IntraWeb RAD C++ Web App Development Agenda 1200 – 1230 Borland / Delphi Update 1230 – 1330 Extreme Developer Productivity 1330 – 1345 Break 1345 – 1445 Using Together with Delphi 1445 – 1545 Build and run Model Driven Software 1545 – 1600 Q&A 1600 – End Break Agenda 1200 – 1230 Borland / Delphi Update 1230 – 1330 Extreme Developer Productivity 1330 – 1345 Break 1345 – 1445 Using Together with Delphi 1445 – 1545 Build and run Model Driven Software 1545 – 1600 Q&A 1600 – End Using Together with Delphi Together for Delphi and C# LiveSource Class diagramming two-way modeling – changes in code reflected in the model and viceversa UML Diagram suite Class, Use Case, Sequence, Collaboration, State Chars, Deployment, Activity, and Component Diagrams Design Patterns Get started quickly with industry recognized GOF (Gang of Four) design patterns or add your own. Refactorings Audits and Metrics Gain insight into your source code Document Generation Automatically generate professional quality documentation from your source code and models Together – Diagramming Types Class Diagram Collaboration Diagram Use Case Diagram Activity Diagram Component Diagram Deployment Diagram Statechart Diagram Sequence Diagram UML™ Modeling with LiveSource™ Together® LiveSource™ technology: UML™ Class diagrams are a live rendition of the underlying source code Model to Code. Code to Model. Always in sync. Incremental Code Generator LiveSource™ Together® Parsing Engine Together – Design Patterns Powerful Reuse Capabilities Defined in Pattern Registry Managed via Pattern Organizer Supports C#, Delphi, Design Projects Create/Edit Patterns XML File Defines Model and Link Information Documentation Generation UML Documentation Wizard HTML Generation Documentation The HTML documentation contains three frames: Diagram frame Project and Overview frame Documentation frame Together – Audit and Metrics Audits Source code conformity rules Violations displayed From Design Issues to Naming Conventions Descriptions & How to Fix Metrics Evaluate Object Complexity Quantify your code Highlight Redesign Needs Change Impact Analysis Agenda 1200 – 1230 Borland / Delphi Update 1230 – 1330 Extreme Developer Productivity 1330 – 1345 Break 1345 – 1445 Using Together with Delphi 1445 – 1545 Build and run Model Driven Software 1545 – 1600 Q&A 1600 – End Build and run Model Driven Software 20 Years of software engineering 1st C++ IDE Invented the IDE 1st Extensible Component Framework Redefined RAD 1st RAD IDE for Linux Defined JavaBeans 1st Pure Java IDE 1st J2EE compliant IDE 1st Enterprise Framework 1st IDE to support SOAP DevCo Industry OO Programming Structured Programming Components Windows JavaBeans Java Linux J2EE .NET Web Services Developer Challenges and Needs Need a higher level separation Users Presentation Layers Business Layers Data Layers Data Sources Services between architecture layers Increasing complexity, need more focus on the business logic Need to adopt to business and technology changes quickly Design Driven Software Service Development Modeling Design Environment UML Model Model Driven Runtime Framework UI Designers UML Model Object Object Object Logic OCL Logic OCL Logic Object Interaction 1. 2. 3. Database Explorer Persistence Modeled by Architect Generated From Model Requires Additional Developer Code ECO provides Focus on the business logic Helps you raise the level of abstraction Achieves higher level separation Implements Rapid Model-Driven Development Builds on 9 years of Model-Centric Application Framework success Uses UML and OCL industry standards from OMG ECO runs on scalable .NET platform Provides Model-Centric not Database-Centric Includes… Object to Relational Database mapping Object to User Interface data binding Advanced Framework Services What is ECO? ECO is an acronym for Enterprise Core Objects ECO is an Application Framework ECO is built upon .NET and FCL from Microsoft ECO is components and classes to use in your Application at Runtime ECO is also design time tools available in Delphi IDE Adopt a framework build on current and future technology Framework provides OR mapping Databases crucial to business software Code to populate objects with data from database and store changes is in the framework – you can focus on delivering business value instead of nuts and bolts Generated SQL Easier to test Less error prone You can still write your own SQL where optimization requires Less code to maintain Easier to change and extend your application Lower maintenance cost Object to User Interface data binding Fully compatible with .NET built-in data binding All third party components can use your objects as data source if they are not hardwired to DataSet class Components to simplify data binding to objects Binding to ordinary (non ECO) objects requires code. You must always wrap single objects in something that support at least the IList-interface Query language (OCL) to help retrieve the right data for UI Component Extenders Auto forms, Drag and Drop to manipulate associations, common actions – All to get less code to maintain Developer Value Quality WYMIWIG – What you model is what you get ! Allow focus at the business need - not implementation Less code = less defects Manageable Complexity Adaptability, Predictability Designed for Change Automatic evolution Manageable side effects Productivity throughout the application lifecycle Iterative design / develop process Development 5 – 10* times faster Maintenance and continuous change; even higher Developer Advantage Less More Details Code Defects Time Focus Quality Adaptability Predictability Productivty Bold Steps to ECO ECO I BOLD • Create Db schema • Evolve Db Schema • Object persistence • .NET Databinding • UML Designer • OCL Editor • Autoforms ECO II • ASP.NET support (Incl. Autoforms) • WebServices • Reverse engineer existing Db • ECO Space Synchronization ECO III • State Machine • Multiple Db support • ECO Action Language • Etc. ECO Features in BDS Editions ECO III (Enterprise Core Objects) Architect State Diagramming/Execution, Multi Database, Multi-ECO Servers External Web apps (extranet) Enterprise WinForms, WebServices, and WebForms, Database persistence (1 Database, 1 ECO Server) Internal Web and Rich Client multiuser apps (intranet) Professional Class Modeling, WinForms only, O/R Mapping, OCL, XML persistence Desktop Rich Client Apps ECO Tools in design time C#Builder / Delphi IDE Designer: UML & OCL Logic: C# / Delphi UI order = true; order = true; ECO IDE Tools ECO Space Tools Order.allInstances .NET Framework Database Schema Generation Database Schema Evolution Model Validation Database configuration Persistence OCL Editor ECO in runtime – logical overview Application Model: UML & OCL Logic: C# / Delphi ECO Framework ECO Space .NET Platform Persistence Persistence Object Relations Transactions Subscriptions Caching Synchronization OCL Evaluation OCL Querying Undo / Redo Versioning order = true; ECO O-R Mapping .NET UI order = true; ECO Basic Components Application Model: UML & OCL Logic: C# / Delphi ECO Platform .NET Platform Persistence Persistence Object Relations Transactions Subscriptions Caching OCL Evaluation OCL Querying Undo / Redo Versioning ECO-Space order = true; ECO O-R Mapping .NET UI order = true; References Community.borland.com http://bdn.borland.com/delphi/eco Seminars Creating your first ECO application http://www.borland.com/delphi/architect/eco/tutorial/tutorial1.html Working with Associations http://www.borland.com/delphi/architect/eco/tutorial/tutorial2.html Using ECO with Databases http://www.borland.com/delphi/architect/eco/tutorial/tutorial3.html References BDNtv Accelerating Development with Enterprise Core Objects http://bdn.borland.com/article/0,1410,33061,00.html Classic “Child’s Play” episode http://bdn.borland.com/article/0,1410,33331,00.html ECO III overview http://bdn.borland.com/article/0,1410,33061,00.html Blogs ECO Team http://blogs.borland.com/ Especially Henrik Jondell… http://blogs.borland.com/HenrikJondell References In the Community… Peter Morris http://blogs.slcdug.org/petermorris/ Holger Flick http://delphi2006.blogspot.com/ Bob Swart http://www.drbob42.com/eco Alois Schmid http://www.ecospace.de/ Summary Online Resources… Borland.com/delphi Community.borland.com Developer Studio 2006 Architect trial White papers Articles BDNtv Reviewers guide Developer blogs … Final Words Continued world class support for software development Clear roadmap moving forward Continuing to provide leading IDE solutions Complete Windows development solution Innovative solutions for .NET integration Migration for existing Borland developers Continued support for Win32 development Q&A Close Thank YOU