38
NW 7.0 NWDI – Netweaver Development Infrastructure Anandha Krishnan R SAP NetWeaver Technology Consultant Kaar Technologies

Nwdi Overview And Features

Embed Size (px)

DESCRIPTION

This presentation is intended to give overview of NWDI and its features

Citation preview

Page 1: Nwdi Overview And Features

NW 7.0NWDI – Netweaver Development Infrastructure

NW 7.0NWDI – Netweaver Development Infrastructure

Anandha Krishnan RSAP NetWeaver Technology ConsultantKaar Technologies

Page 2: Nwdi Overview And Features

Motivation

Design Time Repository

Component Build Service

Change Management Service

Netweaver Development InfrastructureNetweaver Development Infrastructure

Page 3: Nwdi Overview And Features

Motivation

Design Time Repository

Component Build Service

Change Management Service

Netweaver Development InfrastructureNetweaver Development Infrastructure

Page 4: Nwdi Overview And Features

Delivery Process – Shipment to CustomerDelivery Process – Shipment to Customer

• Challenge for Application Software Vendors – Customer Needs to change the Standard Software– Need Complete build environment– Need the delivery format including all type of executables and sources– Need Concepts for handling of modifications

• With NWDI– NWDI Package format enables the shipment of various software types (e.g.

jars, java sources and dictionary)– Build Services option allows recompilation of modified sources– Source Code control system based on distributed versioning

• Enables controlled source delivery between different locations• Allows conflict resolution between customer modifications and new SAP deliveries

Page 5: Nwdi Overview And Features

Development Cycle in Web AS ABAPDevelopment Cycle in Web AS ABAP

• Dev -> Qas -> Prod• Common Transport Directory or Local Transport Directory• The Objects will be available in the form of data file and

control file.

Page 6: Nwdi Overview And Features

Development with NWDIDevelopment with NWDI

Page 7: Nwdi Overview And Features

Development Infrastructure – Learning from ABAPDevelopment Infrastructure – Learning from ABAP

Page 8: Nwdi Overview And Features

Netweaver Development InfrastructureNetweaver Development Infrastructure• Is standards based

– J2ee– WebDav, DeltaV

• Repository standards for accessing and versioning arbitrary development object

• Supported by all development tool vendors– Developer front-end plugged into eclipse (open source

Development tool)• Offers Substantial savings in business application Development

– Supports various parts of Business Applications beyond pure code like DB definitions, UI definitions, web services…

• Supports all SAP Netweaver Authoring Environments (PDK, MDK, IDE,…)

– Supports strong and well organized reuse between many developers

– Central administration frees developers from technical details• Is Adaptive to customer needs

– From simple projects to huge projects– Support projects with hundreds of developers in multiple layers

and mixed with SAP modifications

Page 9: Nwdi Overview And Features

Components of NWDIComponents of NWDI

Page 10: Nwdi Overview And Features

Design Time Repository

Component Build Service

Change Management Service

Motivation

Netweaver Development InfrastructureNetweaver Development Infrastructure

Page 11: Nwdi Overview And Features

DTR – Goals and BasicsDTR – Goals and Basics• Distributed concurrent development

– Distributed Versioning that spans repositories– Conflict detection– Support for conflict resolution

• Open standard– Based on open standard – WebDAV, DeltaV

• Files and folders– DTR has knowledge on files and folders– No knowledge on objects of programming model

(classes, tables, screens)• Check in/check out model

– Files are checked out from DTR and modified “Offline”

– After correction the files are checked in again

Page 12: Nwdi Overview And Features

DTR - ArchitectureDTR - Architecture

Page 13: Nwdi Overview And Features

DTR - ArchitectureDTR - Architecture• DTR Client

– SAP NetWeaver Development Studio – Eclipse based client to perform common tasks with DTR

– Command line client – Performs Administrative task’s

– Web browser – Access to DTR contents using web browser or WebDAV enabled client

• DTR Server– Handles file versioning– Uses relational database to store files– Resources are accessed in context of workspace– Versions are managed in context of activities

• Integration– Data transferred between client and server using

WebDAV and DeltaV+

Page 14: Nwdi Overview And Features

DTR – Integration ConflictDTR – Integration Conflict

• Same file was changed in two workspace concurrently

• The changes are propagated and meet in workspace

• Conflict is detected and stored

Page 15: Nwdi Overview And Features

DTR – Conflict resolutionDTR – Conflict resolution

• Conflict resolution– Create new merge version– Accept Current Version– Accept Integrated Version

• Merges– Are propagated– Conflict can be resolved

by integration

Page 16: Nwdi Overview And Features

DTR – Distributed VersioningDTR – Distributed Versioning

• Propagation of changes between repositories

• Distributed versioning and conflict resolution– Changes are recognized as versions of same file– Imported versions are correctly placed into version

graph– No risk of overwriting changes in target repository

• Allows upgrade of source code modified by customers

Page 17: Nwdi Overview And Features

DTR – User ManagementDTR – User Management

Page 18: Nwdi Overview And Features

Motivation

Design Time Repository

Component Build Service

Change Management Service

Netweaver Development InfrastructureNetweaver Development Infrastructure

Page 19: Nwdi Overview And Features

Component Based DevelopmentComponent Based Development

• CBS– Is responsible for building the sources stored in

DTR– Provides Central Build environment– Automated Build Process– Build process happens in Incremental fashion– Successfully built DC’s are put into DTR and will

be ready for release.– The source state will be changed to Active– Activation concept guarantees consistent build

environment

Page 20: Nwdi Overview And Features

CBS UsageCBS Usage

• CBS is J2EE based database application• CBS is accessed with

– SAP NetWeaver Developer Studio: Activation view and Activation Request view are integrated into Developer Studio

– The CBS Web User Interface for CBS Administration

– Command line tools: There is a dedicated command line tool for working with the CBS

Page 21: Nwdi Overview And Features

CBS - ArchitectureCBS - Architecture

Page 22: Nwdi Overview And Features

CBS Architecture & Integration with other ServicesCBS Architecture & Integration with other Services

• CBS Request Receiver– J2EE Application which accepts request from clients– Places in request queue and assigns request number– Execution later done by CBS J2EE Service– User can Query the process status

• CBS Database– Contains the request queue and the archive pool with the

built and imported archives – Contains data on the buildspaces, the activated

development components and the activation state of activities in the DTR.

• CBS J2EE Service– Service of the J2EE Engine, which implements the actual

build engine – Takes the requests from the request queue and starts a

build task for every request to execute the request – Can execute Several build task in parallel– Several server nodes with individual CBS J2EE services in

one J2EE cluster

Page 23: Nwdi Overview And Features

Cont.,Cont.,

• Build Directory in File system– To start the build for a request, the CBS J2EE service first

creates a temporary directory – source text from the DTR and the required libraries from the

archive pool are copied– Also copies the build space-related components of the build

environment, the build plug-ins

• CBS Build Controller– Build Controller loads the required build plug-ins and

requests them to execute the actual build. – Is a Java command line application, which is started as a

separate process

• CBS Web UI– a Web Dynpro-based Web interface, which allows users to

use the CBS from within a Web browser.

Page 24: Nwdi Overview And Features

The Component Model - ExplanationThe Component Model - Explanation• Development Objects

– Stored as versioned files in the source repository (DTR)

• Development Components– Development and build units– Group development objects

without overlapping

• Software Components– Delivery and installation units (like

e.g. HR in ABAP)– Group development components

without overlapping– Own the release definition

• Products– Overlapping selections of

software components

Page 25: Nwdi Overview And Features

CBS FeaturesCBS Features

• Encapsulation/Decoupling– Reusable elements explicitly declared public– Nested components– Access control lists restrict component usage

• Controlling Dependencies– Explicit declaration of dependencies– Checked by build process

• Build Support– Predefined build templates for component types

• Generic Model– Independent of technology / programming language

• Tools– Fully integrated in SAP NetWeaver Developer Studio

Page 26: Nwdi Overview And Features

Development ComponentsDevelopment Components

• Development Component (DC):– Container for

development objects and built units

– DCs are grouped to make software components

• Nested DCs– DCs may be contained in

another DC• Public parts

– Elements of a DC that may be used by other DCs (DC-interfacing)

• Usage dependencies– Declare that a DC uses

parts of other DCs during build or runtime

Page 27: Nwdi Overview And Features

Components and Development Studio IntegrationComponents and Development Studio Integration

• Eclipse project handling– Development Components are mapped to eclipse projects– DC types are mapped to eclipse project types (natures)– Projects automatically created from DC data in the

repository– Automatic references to used libraries based on DC

dependencies

• Local Component Build– Checks rules of component model– Same build procedure as on CBS

• Preconfigured DC types– Web Dynpro, Data Dictionary, J2EE, Web Services, Java …

Page 28: Nwdi Overview And Features

Component Model StructureComponent Model Structure

Page 29: Nwdi Overview And Features

CBS, Build ProcessCBS, Build Process

Page 30: Nwdi Overview And Features

Motivation

Design Time Repository

Component Build Service

Change Management Service

Netweaver Development InfrastructureNetweaver Development Infrastructure

Page 31: Nwdi Overview And Features

NW Development Infrastructure - Big PictureNW Development Infrastructure - Big Picture

Page 32: Nwdi Overview And Features

JAVA Development Life CycleJAVA Development Life Cycle• SLD – Definition of software to be developed

– Define a product– Define one or more software components (SCs) that

form the product• CMS – Definition of development landscape

– Define a trackfor the specific release of the SC– Development configurations are generated for each

development state of an SC (DEV or CONS)• Dev Studio – Edit and Build development

objects– Use the SAP NetWeaver Developer Studio with

access to the SAP NW DI for all development projects

– Release objects for further processing by QM/Admin.• CMS – Define further use of SC’s

– Transport into next dev. steps, quality assurance, and assembly using the Change Management Service

• CMS – Deliver Software components and patches

– Deliver software component versions building products as well as support packages

• CMS – New track for next software release

Page 33: Nwdi Overview And Features

Track definition in CMSTrack definition in CMS

• A track comprises configurations and runtime systems (systems in CMS) required for developing software component versions.

• It ensures stable states of deliverables used by subsequent tracks.

Page 34: Nwdi Overview And Features

Local and Central Development IntegrationLocal and Central Development Integration

• environment defined by development configuration

• based on SAP Component Model

• NetWeaver Developer Studio as local IDE

• Central versioning with the Design Time Repository (DTR)

• Local build and test cycles while developing components in inactive state

• For activating a development component, central build using the Component Build Service (CBS) is necessary

• Tests can run on central test system of the development system

Page 35: Nwdi Overview And Features

Summary – Java Development StepsSummary – Java Development Steps

Page 36: Nwdi Overview And Features

Summary – NWDI BenifitsSummary – NWDI Benifits• Higher efficiency in development

& maintenance• Allow Source-Delivery for

applications• Component concept

– better means to structure the software– control of dependencies

• CBS & BuildTool– no handwritten build scripts– consistent and up-to-date libraries for

IDE– activation check

• Design Time Repository– controlled source delivery &

modifications– avoidance of multiple maintenance

• Change Management Service– central control of logistics (similar to

TMS)– immediate deployment into central

test runtime– early integration

Page 37: Nwdi Overview And Features

Questions?Questions?

Q&A

Source: http://help.sap.com, http://sdn.sap.com

Page 38: Nwdi Overview And Features

Thank You

Thank You