• No results found

SoftFluent. Pragmatic model-driven development with CodeFluent Entities Code Generation June 16 th

N/A
N/A
Protected

Academic year: 2021

Share "SoftFluent. Pragmatic model-driven development with CodeFluent Entities Code Generation June 16 th"

Copied!
17
0
0

Loading.... (view fulltext now)

Full text

(1)

SoftFluent

Pragmatic model-driven development with CodeFluent Entities

Code Generation 2010 - June 16

th

Lionel POLI – [email protected]

(2)

Session objective

Attending this session, you will understand how

CodeFluent Entities software factory can be used to

target various architectures

from the same model:

web, smart client, SharePoint, Office or Silverlight

Second session tomorrow:

more focused on code

and specific implementation points for web projects

(3)

Challenges faced by developers

Common approaches

CodeFluent Entities solution

How it works – principles and demo

Focus on targeting multiple architectures

Customer references and pricing

(4)

Challenges faced by developers

Business decision-makers IT •Unclear needs •Changing needs •Increasing expectations •Less money •Less time Business decision-makers •New technologies •Scarce coding talent •Heterogeneous teams

•More and more legacy code

(5)

Common approaches: focusing on one of the

previous ambition components

TIME

COST

SCOPE

Solution: RAD Tools

Drawbacks: •Constrained features •Prohibitive cost of customization •Dependency Solution: Offshore Drawbacks:

•Weak industrialization and maintenance

•Risk for time-to-market

Solution: CASE Tools

Drawbacks:

•Late on technology innovation •Lack of flexibility

•Proprietary skills and languages

(6)

1.

Business entities have longer lifecycles than technology and should be

defined in formats that will

survive technology shifts

and allow supporting

them without reengineering the application

2.

Business rules and process changes need to occur through

short cycles

that

can fit into a lean continuous maintenance scheme

3.

Efficient

coupling

of data, model, and presentation layers including

customized code parts must be

guaranteed by design

4.

Coding

patterns

need to be standardized and their implementation

automated

to ensure maintenance can be performed by

standardized skills

(7)

Improving on the CASE tool approach

Costly to customize beyond pre-designed elements

Generated code is standard, human-readable, consistently componentized and

can be extended without any limits Strong dependency on

proprietary programming language with specific skills

Difficult to support latest technology platforms

Business design is structurally separated from target architecture that easily evolve

through specific producers

Historical drawbacks

Solution

Fully integrated into usual development tool, the code is standard as our solution just adds a thin abstraction modeling layer Requires stable definition of

business needs by users

Modeling immediately produces executable components which support a design process friendly to business change

(8)

CodeFluent Entities:

Model-driven code generation

CodeFluent Entities Application Life Cycle

Design new models Import existing models Phase 1 Design or Import Phase 2

Model analysis and inference In-memory generation of entity graph, including all modeling concepts (entities, properties, rules, etc.) Phase 3 Generation / Production Generation of technical layers using producers (SQL, .NET object model, web services, etc.) Phase 4 Development Development of customized code usingpartial classes of generated BOM. Phase 4’ Execution Direct use of generated graphic layers(SharePoint, ASP.NET,etc.) Iteration Phase 1 Automated phases

(9)

CodeFluent Entities:

Functional scope

Code

Fluen

t

En

tit

ies

Persistence Transaction Cache

Graphical user interface

Services (SOA) BLOB streaming

Validation rules + external rules

SDK*business

Security

CodeFluent Entities

enables you to develop any

type of application handling

data, while accepting a large

range of development

patterns and generating code

that respects best practices

of .NET development

SDK: Software Development Kit. Through its unique approach to code generation, CodeFluent Entities enables you to immediately produce a ready-to-use SDK for the application you are working on

(10)

Code

,

Components

, etc…

CodeFluent provides several

producers

for generating:

Persistence(SQL Server, Oracle Database)

Generate tables, stored procedure, views, constraints, full text search, paging, sorting

Business Object Model

(

BOM

)

C# business layer with transaction handling, serialization, cache, BLOBs management (streaming), paging, sorting, collections, etc.

Web Service for

Office

Web service for an access through MS Access 2007 et MS Excel 2003/2007 with bidirectional synchronization

Smart Client Object

Model (

SCOM

)

Extension of the objet model based on WCF. Dramatically simplifies development of Smart Client (SOA)

(11)

Access 2007/2010

WSS 3.0

(*)

Excel 2003/2010

(*) Windows SharePoint Services 3.0 (**) Communication based on WCF using the generated SCOM (Smart Client Object Model)

Smart Client WPF

(**)

Beyond standard generation,

it’s easy to develop

professional software

applications on various

Microsoft architectures:

ASP.NET, WinForms,

Silverlight (>=2.0) and WPF, ...

Generated

user interfaces

architected in

components

(12)

A

Modular

target architecture

Logi ca l La ye rs P re se nt at ion Bu si ne ss D at a

Web ASP.NET Application (n-tier architecture) Client Tier Web Navigator Data Access ADO.NET Business Objects ASP.NET Middle Tier SQL Server, Oracle, Etc. Data Tier Smart Client (n-tier architecture) SQL Server, Oracle, Etc. Data Tier

Data Access ADO.NET Business Objects

WCF Services

Middle Tier Client Tier

WinForms WPF SilverLight DevicesMobile

Proxy WCF (SCOM) Proxy WCF For SilverLight Proxy WCF For .NET Compact

Web SharePoint Application (n-tier architecture) Web Navigator Data Access ADO.NET Business Objects ASP.NET Middle Tier SharePoint WebParts SQL Server, Oracle, Etc. Data Tier Client Tier Heavy Client (client/server architecture) SQL Server, Oracle, Etc. Data Tier Middle Tier

Data Access ADO.NET Business Objects Client Tier WPF WinForms

Generated

Generated

Generated

(13)
(14)

Various customer references

Medium and large companies Software publishers Startups and Investors Service companies Developers

I have been using CodeFluent Entities for 18 months and this product totally changed my way of building .NET applications. I can no longer live without it!

Sébastien Mizon

Senior Developer, former Microsoft architect

(15)

CodeFluent Entities is available under 3 main versions (*)

Express

• Generation limited to 10 business entities per model.

• Price: Free

Professional

• Generation limited to 30 business entities per model, access to all CodeFluent Entities features (except SharePoint producer)

• Mandatory license for new code developed on top of a CodeFluent Entities generated library

• 1 year “Software Assurance” included with free email support

499 € excluding taxes per developer license

• Additional maintenance (year 2&3): between 25% to 33% (of 499€) per year

Enterprise

• Unlimited generation, access to all CodeFluent Entities features (except specific extra producers such as SharePoint)

• 1 year “Software Assurance” included with free email support

2490 € excluding taxes per developer license (no ‘runtime’ fee)

• Additional maintenance (year 2&3): between 25% to 33% (of 2490 €) per year

• SharePoint producer: add. of 1490 € excluding taxes per developer license

CodeFluent Entities versions and licensing model

(16)

Don’t wait…

Register for FREE on

http://www.CodeFluentEntities.com

and get your express license TODAY!

For any questions, feel free to

contact us on

[email protected]

Thank

You!

(17)

References

Related documents

2 diatonic modes 27 Seven-note scales using the pitch classes of a major scale, but having a different tonal center (except Ionian).. They are Ionian, Dorian, Phrygian, Lydian,

UNINSURED/UNDERINSURED  UNINSURED/UNDERINSURED  (UM/UIM) MOTORIST (UM/UIM) MOTORIST • Required (Can Be Rejected In Writing) • Protects From UM/UIM or Hit and Run

Objectives The purpose of this study was to evaluate if positron emission tomography (PET)/magnetic resonance imaging (MRI) with just one gradient echo sequence using the body coil

In our policy simulations, we apply endogenous carbon taxes which are sufficiently high to effect a linear reduction of carbon emissions till 2010 and thereafter by 5% (scenario

methods or programs, teachers should try out a range of practices or conduct self-initiated research in their classrooms” (p.45). The opinions of the teachers, however—the ones

Hand server code for creating net applications with n architecture for this method calls data access tier application presentation layer, a great concept is part one of

The amount of heat available from any solid fuel can be determined by testing a small The amount of heat available from any solid fuel can be determined by testing a small sample of

(a) Its per capita income (b) Its average literacy rate (c) Health status of its people (d) None of