Custom Application Development with Jirat Boomuang Partner Technology Specialist Microsoft Thailand...

Preview:

Citation preview

Custom Application Development with Custom Application Development with

Jirat BoomuangPartner Technology SpecialistMicrosoft Thailand

Jirat BoomuangPartner Technology SpecialistMicrosoft Thailand

Agenda

Challenges when building data centric apps Developing data centric apps is time consuming Building reliable, high performance apps is complex Difficult to consolidate & share meaningful information

What's new for developers in SQL Server 2005 Improved productivity features Enterprise class development & deployment Powerful tools to integrate & report on data

Summary

Customer Examples

Developer ChallengesWhen building data centric applications

Developing data centric applications is time consuming and inefficient

Building and deploying apps with enterprise class scalability, reliability and security is complex

Getting the right information into the hands of decision makers requires diverse tools &

technologies

Improved productivity features

Enterprise class development & deployment

What's New For Developers In

Powerful tools to integrate & report on data

Improved productivity features

Enterprise class development & deployment

Powerful tools to integrate & report on data

What's New For Developers In

Improved Productivity Features

Deep Integration with VS & .NET Simplify development & debugging through integrated tools Simplify deployment by embedding SQL Server Express Build client apps faster through efficient data-binding

Integrated Lifecycle & Collaboration Reduce solution complexity through lifecycle management Improve dev processes through team based collaboration

Standards based Information Access(Native Web Services support) Increase cross platform accessibility of data & information Increase re-use of data tier objects through web services

Deep Integration With VS And .NET

Integrated development Author DB objects directly from VS

(Common Language Runtime) Re-use existing app dev skill sets

Integrated debugging Seamlessly debug across TSQL and .NET Set breaks anywhere, inspect any asset

Efficient data-binding ‘GridView’ control reduces code for..

Editing, sorting, paging, 2-way reads/updates Improve performance through built-in caching

XCopy deploy SQL Server Express Attach and detach SQL Server to any app Easily deploy lightweight client-side DBs

Manage DB Objects in the VS Project

Create Functions, Procedures, Triggers User Defined Types, Aggregates. From the Visual Studio

Solution Explorer

Enhanced property set for the GridView

Increase productivity through…

Integrated Lifecycle And Collaboration

Integrated Lifecycle Management Identify problems early via static code analysis Boost app performance via code profiling Improve test quality via integrated unit testing Ensure test completeness via code coverage

Improve application quality and predictability through…

Progress reports using SQL Server OLAP

Web-based project access

Integrated Collaboration Manage change via integrated src control Manage work through task tracking Improve status visibility via OLAP reporting Improve team communication via

web-based access

Complete Code Coverage

Source Control: Build rules enforced during check-in

Standards based Information Access

Native Web Services access Enables cross platform interoperability Reduces middle-tier dependency (IIS) Simplifies management and

administration

New “ENDPOINT AS HTTP” object Encourage DB object re-use Support service oriented architectures Easy maintenance via loose coupling

Allow component re-use and platform interop through…

SOAP/XML/HTTP

SPSPTSQL

SPSPSPSP

Non Windows

configure connection infoconfigure authenticationexpose stored procedures

expose TSQL batches

Web SvcEndpoints

Improved productivity features

Enterprise class development & deployment

Powerful tools to integrate & report on data

What's New For Developers In

Enterprise Class Development & Deployment

Enterprise class development frameworks Build scalable async. applications via distributed queuing Improve performance through client & mid tier caching

Enterprise class security & scale-up Improve data security through native encryption Seamlessly scale from development to production

Enterprise class deployment processes Design deployable systems through deployment meta-data Facilitate successful deployment through system modeling Validate deployment configurations through logical datacenters

Enterprise class development frameworksBuild scalable, reliable & high performance systems through…

Distributed reliable messagingSQL Service Broker Build scalable apps via async messaging Create reliable & distributed multi-db apps Benefit from improved performance

High performance client & mid-tier cachingCacheSync Build rich event based “Push applications” Leverage high performance client caching Enable high performance mid-tier caching

Svc 2

Svc 1

DB Instance 2

DB Instance 1

Push applications alert to users when interesting things happen:

Push Application

Users

Alerts

Subscribe

message

Dialog

Enterprise class security & scale-upReduce security and scalability risks with…Enhanced data and app security Reduced compliance violations due to built in data encryption Increased security control through granular permissions

Scale-up from prototype to production Free RAD with SQL Server Express Embed and re-distribute SQL Server Express as needed Deploy on larger editions as requirements increase

scale-upExpress

WorkgroupStandardEnterprise

RAD/Small Workloads Larger Workloads

new capabilities

Xcopy

Enterprise class deployment processes

System Design & Deployment Meta-data

Compose re-usable app systems Easily communicate how applications

map to logical servers Reduce deployment errors by validating

against hosting & application constraints

Reduce barriers to successful deployment through…

Logical Datacenter Design Communicate target deployment

environment to app architects Remove ambiguity for

datacenter boundaries physical server requirements communication pathways & protocols application & server settings

Define physical requirements via the Datacenter Designer

Design systems with deployment meta-data via the System Designer

Improved productivity features

Enterprise class development & deployment

What's New For Developers In

Powerful tools to integrate & report on data

Powerful tools to integrate& report on Data

Embedded & Ad-hoc reporting Create intelligent applications by embedding reports Empower decision makers through ad-hoc reporting

Enterprise Class Data Integration Provide richer information from multiple data sources Leverage built in designers & integration tools

Native support for XML Store platform agnostic data in a standards based format Generate dynamic content using semi-structured data Support high perf apps through XML & relational indexing

Embedded & Ad-hoc reporting

Embedded Reports for end users Easily design & embed reports in

VS via report designer Enhance reports via 3rd party

extensions e.g. visualizations Support on-line & offline

applications

Inform key decision makers through…

Ad-hoc reports for business users Enable ad-hoc reporting through

report templates Insulate business users from DB

schema through model design

Enterprise Class Data Integration

Integration Services Manage ever increasing volumes of

data Consolidate data from diverse formats Share information through multiple

channels

Integrate & enrich data with…

Consistent tools & methodology

Minimize learning curve through built in designer

Continue to benefit from integrated toolset

Continue to benefit from collaboration capabilities

Call center

binary files

Apps

semi-structured

Legacy

database

WarehouseReportsMobile

ETL

Native Support For XMLEnable the development of new application types through…

Native XML Support Store platform independent data Create dynamic content rich applications Enable loosely-coupled systems via coarse-grained messages

XML data typePhoneAddressLast NameFirst Name

E.g. Insurance Policy

DB

Tab

le

Point-of-Sale Svc(Windows Platform)

Supplier Svc(Non-windows)XML message

Loosely coupled services

XML and Relational co-existence Support high performance XML storage and query Enhance existing applications with XML co-existence Create rich full-text search applications

Summary

• Integrated Development and Debugging• Integrated Lifecycle and Collaboration• Standards based Information Access

• Enterprise class development frameworks• Enterprise class security & scale-up• Enterprise class deployment processes

• Embedded and Ad-hoc reporting • Enterprise class data integration• Native support for XML

Customer Examples

• Austrian Broadcasting Corporation• Provide information for live & pre-recorded broadcasts• XML import & delivery to multiple devices & services• Provide data online & offline + reporting• Leveraging native XML & Reporting capabilities

• 4th Largest retail mortgage lender• Monitor, Measure & provide Reports on loan risk• ~20TB DB Size, 2115 Tables & 705 Views• Leveraging Analysis & Reporting Services

• Managed Services & Office Hardware • Building next gen services for help-desk & accounting• Productivity gains due to VS Integration• Leveraging CacheSync & Service Broker

© 2003-2004 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Appendix

App Developer DB AdminData Developer• Business Logic• Client side UI• Database Agnostic• Little to no SQL• Language Centric• Object Oriented

• DB Maintenance• User Management• Security• Patch Management• DB Tuning & Perf• Backup & Restore

• Persistence Logic• Data Access Layer• SQL Centric• Object & Relational• Sprocs & Functions• DB Scripting

• System Modeling• Component Design• App Deployment• Object & Relational

• Database Modeling• Schema Creation• Relational Mindset• DB Scripting• SQL Centric

Data ArchitectApp Architect

App Tier XML & Web Services

Converging the App Developer & the DBA

Common Language Runtime SQLCMD

TSQLService Broker / Query Notifications (Async)

System Designer Deployment Designer Datacenter Designer

DB Tier XML & Web Services

Report Controls Report Builder 360 Data Integration

XML Indexing

Data MiningAnalytical Cubes

VSTS (Source Control, Tracking, Team Projects) Management Studio

Database Diagrams

Table/Query/View Designers

Win/Web Forms

Application Designer

Help-Desk Service application

Mobility application for delivery trucks

Large Retail Data Warehouse

High-transaction trading infrastructure

Large 16-way Tandem Migration

5000 concurrent user OLAP application

Large SAP/R3 Deployment

Multiple internal Systems – High Tech Vertical

Customer Examples

Assessments

Introducing Microsoft® SQL Server™ 2005 for Database Administrators

http://assessment.learning.microsoft.com/test/launchassess.asp?pid=1052

Introducing Microsoft® SQL Server™ 2005 for Database Developers

http://assessment.learning.microsoft.com/test/launchassess.asp?pid=1053

Puangpan: puangp@microsoft.com Jirat: jiratb@microsoft.com

Appendix(Productivity Features)

Team Edition (Developers) The Tools the Microsoft Uses Features

Static code analysis Support for managed and native code PREfast used in Trustworthy Computing Code Reviews FxCop used to develop .NET framework

Code profiling Based on two internal profilers:

Instrumented – IceCAP, used by Windows Base and SQL Server Sampling – LOP, used throughout MX, including Xbox

Includes ETW events Sequence view examines running threads GC view of object allocation and lifetime Caller-callee, callstack, and function views

Code coverage Basic Block Coverage Based on the BBCover technology that Windows & Visual Studio

use Application Verifier

Static Code Analysis

Static Code AnalyzerStatic Code Analyzer

Code Coverage

Code CoverageCode Coverage

Unit Testing

Integrated Unit TestingIntegrated Unit Testing

Team Edition (Testers) Testing is 1st class in Visual Studio Tests are Source Code Test Authoring & Execution Environment

Test View Test Explorer (Test Case Management UI)

Load testing Web services load testing via protocol-based script Load patterns: constant, step, custom Perf counter collection and threshold monitoring

Unit Testing Similar to NUnit

Load Testing CreationLoad TestingWeb recorderLoad TestingWeb recorder

Load Testing

Perf Counter integrationand monitoring

Perf Counter integrationand monitoring

Load TestingLoad Testing

Test Case Management

Test Case ManagementTest Case Management

Work Items Everywhere

Author work items inMicrosoft Excel

Author work items inMicrosoft Excel

Work items show up inVisual Studio

Work items show up inVisual Studio

Assign work items toresources usingMicrosoft Project

Assign work items toresources usingMicrosoft Project

View project status inMicrosoft Excel orMicrosoft Project

View project status inMicrosoft Excel orMicrosoft Project

Change ManagementCheck In

“Shelve”work in progress

“Shelve”work in progress

Build rules enforcedduring check-in

process

Build rules enforcedduring check-in

process

Native SOAP access Standards based access

to SQL Server No client dependency Improved Interoperability

New “ENDPOINT AS HTTP” object Configure connection info Configure authentication Expose SPs Expose TSQL Batches

http://server1/aspnet/default.aspx

http://server1/sql/pubs?wsdl

KernelMode

Listener

Appendix(Enterprise Class

Capabilities)

Asynchronous, Distributed, Decoupled programming environment Fully integrated into the database engine Programming Model - DDL and DML Integrated Management and Deployment

Dependent SQL Server 2005 features: Events, Query Notifications, SQLiMail

Customer Usage, benefits: Enables new scenarios – async SPs, Scalable distributed multi-db applications

TransactionTransaction

Tran

saction

Tran

saction

Stored proc runs onStored proc runs on Different transactionDifferent transaction Different threadDifferent thread Different securityDifferent security Different timeDifferent time

ClientClientAppApp

Persisted Dialog

LaunchedLaunchedStoredStoredProcProc

Enabling easy implementation of highly efficient mid-tier data caching Off-load query workload from

the server to caching clients SQL Server manages cache invalidation

Integrated change detection notifies client as soon as results of query changed

Deep Query Processor integration No more “roll-your-own”

cache management! Just add a few lines of code to

your existing requests ADO.NET OLEDB

Leverages Service Broker architecture

Requests/Responses

IIS/ASP.Net

Notification of Cache Invalidation

Query & Subscription/Results

SQL Server

2005

Team Edition (Architects)

Key scenarios Design connected

systems “Design for Operations” Code visualization Documentation and

conceptual drawings UML and more

UML tools for software documentation

DSLs tools for precise software development

DSL tools Distributed Systems

Designers Service Oriented

Application Designer Deployment Designer Logical Infrastructure

Designer Class Designer Common Features

Multiple artifact generation

Continuous synchronization

Design-first mode SDM schema underlies

Distributed System Designers

Application Designer

Service-OrientedArchitecture modelService-Oriented

Architecture model

Port Details editorPort Details editor

Logical Infrastructure Designer

Services assignedto logical infrastructure

Services assignedto logical infrastructure

Architecture validatedagainst operational

settings and constraints

Architecture validatedagainst operational

settings and constraints

Class Designer

Class Designerand

two-way code synch

Class Designerand

two-way code synch

MSF Process Guidance

Integrated throughout Team System Framework for GSIs and customers to implement

custom software development process Harvests proven guidance from in- & outside of MS

Includes two process methodologies Instantiation of an agile software development process Instantiation of a formal software development process

Customizable content, policies, workflow

Methodology Template

Delivered via Team Foundation Server Contains:

Work Item Types, workflow Check In Policy Specification Templates Reports Groups & Permissions Integrated Help Phase Exit Criteria

Exposed within Help

Appendix(Insightful: Data Integration,

Analysis & Reporting)

Enterprise ETL platform High performance High scale Trustworthy and reliable

Best in class usability Rich development environment Source control Visual debugging of control

flow and data Great range of transforms

out-of-the-box Highly extensible

Custom tasks Custom enumerations Custom transformations Custom data sources

A complete, integrated tool for the development of BI applications

One tool, multiple technologies: Relational, OLAP, DM, SSIS,

Reporting, Code, Web pages… Enterprise software

development environment: Integrated into Visual Studio.NET Team development, source control,

versioning, developer isolation, resource independent coding

Development cycle lifetime support Develop, Test, Deploy, Modify, Test…

Breakthrough ease of use

Unified Dimensional Model Integrating relational and OLAP views

Pro-active caching Bringing the best of MOLAP to ROLAP

Advanced Business Intelligence KPIs, MDX scripts, translations, currency…

Web services Native XML/A

SQL Server Catalog

Report Server

XML Web Service Interface

Report Processing

Scheduling & Delivery

Delivery Targets(E-mail, SharePoint,

Custom)

Rendering

Output Formats (HTML, Excel, PDF, Custom)

Data Processing

Data Sources(SQL, OLE DB, XML/A, ODBC, Oracle, Custom)

Security

Security Services(NT, Passport,

Custom)

Office Custom ApplicationBrowser

Introduced with SQL Server 2000 Open, extensible enterprise

reporting solution Report authoring,

management, delivery Office System integration VS.NET development environment

SQL Server 2005 enhancements Integration with AS, IS,

management tools Developer enhancements Improved report interactivity Rich end-user reporting

Extending the Reach of Reporting Services

Ad hoc Reporting for the End-User

With Report Builder you can: Report off a

Business Model Modify a Report Build a New Report Report on Relational

or OLAP data

VS Reporting

© 2003-2004 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Recommended