building enterprise applications using visual studio ®.net enterprise architect

27
Building Enterprise Building Enterprise Applications Using Applications Using Visual Studio Visual Studio ® ® .NET .NET Enterprise Architect Enterprise Architect

Post on 19-Dec-2015

234 views

Category:

Documents


6 download

TRANSCRIPT

Building Enterprise Building Enterprise Applications Using Visual Applications Using Visual StudioStudio®® .NET Enterprise .NET Enterprise ArchitectArchitect

AgendaAgenda

OverviewOverview Enterprise software Enterprise software

development processdevelopment process Enterprise architect toolsEnterprise architect tools

Provide architectural guidanceProvide architectural guidance Communicate application architectureCommunicate application architecture Capture business/data requirementsCapture business/data requirements Ensure application scalabilityEnsure application scalability Team developmentTeam development

OverviewOverview

Enterprise development is systematicEnterprise development is systematic Collaborative work environment Collaborative work environment Support for all roles essential Support for all roles essential Standards help – e.g., UML, XML, etc. Standards help – e.g., UML, XML, etc. Architectural guidance and reusable Architectural guidance and reusable

assets essentialassets essential

Enterprise Software Enterprise Software Development ProcessDevelopment Process EnvisioningEnvisioning

Requirements gathering, product visionRequirements gathering, product vision PlanningPlanning

Architectural/technology decisionsArchitectural/technology decisions DevelopingDeveloping

Software/database designSoftware/database design ImplementationImplementation Testing Testing Documentation Documentation

StabilizingStabilizing Deployment and maintenanceDeployment and maintenance

IT development projects are getting more IT development projects are getting more complex, larger, and more criticalcomplex, larger, and more critical

A poor application architecture can make A poor application architecture can make any platform perform poorlyany platform perform poorly

A good architecture only works if people A good architecture only works if people follow the rules when implementing itfollow the rules when implementing it

Good help is hard to find (and expensive!)Good help is hard to find (and expensive!) ““Best practices” are useless if no one Best practices” are useless if no one

follows themfollows them

Provide Architectural Guidance Provide Architectural Guidance Enterprise templatesEnterprise templates

Enterprise TemplatesEnterprise TemplatesWhat is it?What is it?

Enterprise TemplateEnterprise Template

Application Application Structure Structure (projects, (projects, code, etc.)code, etc.)

Policy Policy (TDL)(TDL)

Guidance Guidance (context (context & html)& html)

Things to IncludeThings to Include

Things to ExcludeThings to Exclude

Enterprise TemplatesEnterprise TemplatesFeatures and the Visual Studio .NET IDEFeatures and the Visual Studio .NET IDE

Toolbox & Menu ConstraintsToolbox & Menu Constraints

Initial Project StructureInitial Project Structure

Property ConstraintsProperty Constraints

Constrain AdditionsConstrain Additions

Policy Task List RemindersPolicy Task List Reminders

Dynamic GuidanceDynamic Guidance

Enterprise TemplatesEnterprise TemplatesAdd “best practices” to frameworksAdd “best practices” to frameworks

Organize structure for Organize structure for complex projectscomplex projects

Supply pre-built common Supply pre-built common implementationimplementation

Simplify IDE for newer developersSimplify IDE for newer developers Help avoid common mistakesHelp avoid common mistakes Predefine common property settingsPredefine common property settings ““Just in time” focused guidanceJust in time” focused guidance

demodemo

Enterprise TemplatesEnterprise Templates

Communicate Application Communicate Application ArchitectureArchitectureModeling using UMLModeling using UML

UML building blocksUML building blocks ElementsElements

Basic building blocks of a modelBasic building blocks of a model

RelationshipsRelationships Tie various “things” togetherTie various “things” together

DiagramsDiagrams Show interesting collections of “things”Show interesting collections of “things”

Modeling Using UMLModeling Using UMLDiagram typesDiagram types

StructuralStructural ClassClass

BehavioralBehavioral Use case, state chart, activity, sequence, Use case, state chart, activity, sequence,

collaborationcollaboration

ImplementationImplementation Component, deploymentComponent, deployment

Modeling Using UMLModeling Using UML

Generating Code from UML designGenerating Code from UML design Generate code into multiple Visual Studio languagesGenerate code into multiple Visual Studio languages Perform semantic error checking on diagrams and codePerform semantic error checking on diagrams and code

Reverse engineering Visual Studio projects Reverse engineering Visual Studio projects into designinto design

Generating wide variety of customizable reportsGenerating wide variety of customizable reports Publishing diagrams and models on the intranetPublishing diagrams and models on the intranet Documenting your Visual Studio projects in the form Documenting your Visual Studio projects in the form

of software architecture/designsof software architecture/designs

demodemo

UML ModelingUML Modeling

Capture Business Capture Business RequirementsRequirementsData ModelingData Modeling

Conceptual, logical, and physical modelsConceptual, logical, and physical models Leverage business domain experts with Object Leverage business domain experts with Object

Role ModelingRole Modeling

Design and program enterprise databases Design and program enterprise databases Visually design schema, tables, viewsVisually design schema, tables, views Visually develop stored procedures, SQL queries, Visually develop stored procedures, SQL queries,

user defined functionsuser defined functions Full support for both SQL Server and OracleFull support for both SQL Server and Oracle

Data ModelingData ModelingBusiness rules-based database designBusiness rules-based database design

Object Role Modeling (ORM)Object Role Modeling (ORM) Conceptual database design using natural Conceptual database design using natural

language facts and exampleslanguage facts and examples Logical and physical database models Logical and physical database models

automatically built based on natural automatically built based on natural language factslanguage facts

ORM isORM is UnderstandableUnderstandable ReliableReliable ExpressiveExpressive StableStable

Data ModelingData Modeling

Data ModelingData ModelingCreate an ER diagramCreate an ER diagram

StencilsStencils

Tables Tables windowwindow

Database Database Properties Properties

windowwindow

Data Modeling Data Modeling

Reverse engineer database schema to Reverse engineer database schema to create ER modelscreate ER models Drag tables (or views) onto diagram pageDrag tables (or views) onto diagram page Modify code and attributes of the modelModify code and attributes of the model

Validate your logical and physical dataValidate your logical and physical data Perform database/model Perform database/model

synchronizationsynchronization Generate physical database from your Generate physical database from your

data model using ‘Generate data model using ‘Generate Database’ wizardDatabase’ wizard

demodemo

Data ModelingData Modeling

Ensure Application Scalability Ensure Application Scalability Application Center TestApplication Center Test

Provide end-to-end performance testing Provide end-to-end performance testing of applicationsof applications Use XML to store test properties and dataUse XML to store test properties and data

Replicate tests and results with applicationReplicate tests and results with application Developers create testsDevelopers create tests Operations continues to use tests in productionOperations continues to use tests in production Common test framework throughout lifecycleCommon test framework throughout lifecycle

Application Center TestApplication Center TestTesting Web services and appsTesting Web services and apps

Creating testsCreating tests Manually – Visual Basic Script, JScript, etc.Manually – Visual Basic Script, JScript, etc. Browser recordBrowser record

Running testsRunning tests Set test parameters Set test parameters View run-time reportsView run-time reports Trace information at run-timeTrace information at run-time

Analyzing test resultsAnalyzing test results Tabular performance dataTabular performance data Custom graphsCustom graphs

demodemo

Testing With ACTTesting With ACT

Version Control SystemVersion Control SystemVisual SourceSafeVisual SourceSafe

Team supportTeam support Secure file sharing and coordinationSecure file sharing and coordination

Version controlVersion control Maintains audit trails for project files Maintains audit trails for project files

Software lifecycle managementSoftware lifecycle management Project branching, merging, historyProject branching, merging, history

Fully integrated with Visual Studio .NETFully integrated with Visual Studio .NET

SummarySummary

Provide architectural guidanceProvide architectural guidance Enterprise templatesEnterprise templates

Communicate application architectureCommunicate application architecture Software modelingSoftware modeling

Capture business requirementsCapture business requirements Data modeling Data modeling

Ensure application scalabilityEnsure application scalability Application center testApplication center test

Team development supportTeam development support Version control systemVersion control system

For More Information…For More Information…

MSDN Web site MSDN Web site msdn.microsoft.commsdn.microsoft.com

Visual Studio Web siteVisual Studio Web site msdn.microsoft.com/vstudiomsdn.microsoft.com/vstudio

Object Role Modeling resourceObject Role Modeling resource www.orm.net www.orm.net

Application Center Test resourceApplication Center Test resource www.microsoft.com/www.microsoft.com/applicationcenterapplicationcenter

DiscussionDiscussion

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