scott miller arctic network data manager
DESCRIPTION
National Park Service U.S. Department of the Interior I&M Program >> Alaska Region >> Arctic Network. Natural Resource Monitoring Database Development Using SQL Server A Comparison Between Visual Basic/ADO .Net and Microsoft Access Data Projects. Scott Miller Arctic Network Data Manager. - PowerPoint PPT PresentationTRANSCRIPT
E X P E R I E N C E Y O U R A M E R I C A
Natural Resource Monitoring Database Development Using SQL Server
A Comparison Between Visual Basic/ADO .Net and
Microsoft Access Data Projects
Scott MillerArctic Network Data Manager
National Park ServiceU.S. Department of the InteriorI&M Program >> Alaska Region >> Arctic Network
E X P E R I E N C E Y O U R A M E R I C A
So there I was... Using Access and SQL Server and
spending a lot of time writing tons of code to do complex things unsatisfactorily and starting to wonder if there was a better way to build a front end...
This was about the time Visual Studio Express Editions came out
I tried it out My journey and experiences...
E X P E R I E N C E Y O U R A M E R I C A
SQL Server back-end/Multiple front-end application development
SQL Server
Access
Web
GISCustom application
E X P E R I E N C E Y O U R A M E R I C A
A quick app development demo Visual Basic and ADO .Net Built in Visual Studio 2010 Professional
E X P E R I E N C E Y O U R A M E R I C A
E X P E R I E N C E Y O U R A M E R I C A
E X P E R I E N C E Y O U R A M E R I C A
Drag and Drop
E X P E R I E N C E Y O U R A M E R I C A
Build and run the software
Up to this point•We’ve written no code• Easy as Access•More robust interface
Here, however is where the hard work begins...
E X P E R I E N C E Y O U R A M E R I C A
This is where you realize how much Access does for you You’ve got to write code to
Save Dataset Handle concurrency conflicts Handle connectivity Handle lots of other things Access
usually handles for you
E X P E R I E N C E Y O U R A M E R I C A
IntelliSense is your friend• IntelliSense works by accessing an automatically generated in-
memory database of classes, variable names and other constructs defined in or referenced by the application being edited.
• It speeds up software development by reducing the amount of name memorization needed.
• It also allows for less reference to external documentation
E X P E R I E N C E Y O U R A M E R I C A
Adaptable form controls No longer wedded to a target screen size Example: same application, two screen sizes
1600 x 1200 VGA 640,480
Accomodate desktop/field computers
E X P E R I E N C E Y O U R A M E R I C A
More better tools and controls My favorites:
SplitPanel ToolStrips/ToolStripContainers Context Menus
Example
E X P E R I E N C E Y O U R A M E R I C A
Strength/Weakness ComparisonAccess\VBA
vs. Visual Studio\VB\ADO .Net
E X P E R I E N C E Y O U R A M E R I C A
Access Strengths
Rapid Application Development Major application functions require no
programming Loading data Saving data
Weaknesses Not adaptable to different screen sizes Limited out-of-the-box tools Custom tools and Active-X controls need active
management Poor VBA Editor Wonky
E X P E R I E N C E Y O U R A M E R I C A
Visual Basic/ADO .Net Strengths
Drag/drop application development Screen adaptable Visual Studio IntelliSense makes code 10x easier
to write than VBA editor Custom tools delivered with the installation Many more tools available to use
Weaknesses Major functions must be written by you (data
loading, saving, updating, etc.) Database design changes hard to retrofit Big learning curve
E X P E R I E N C E Y O U R A M E R I C A
Major Weakness Don’t remove tables or columns using Data
Source Configuration Wizard! It doesn’t clean up after itself very well Blown up every time I tried Only build your application when your data
model is very mature Prototype in Access Build in Studio
Don’t remove entities from the Dataset using the Wizard
E X P E R I E N C E Y O U R A M E R I C A
Strategy Start
Is the database simple? Yes Access\VBA
No
Build prototype in Access
Is the data model mature?
Build application in VB/ADO .Net
Yes
No
E X P E R I E N C E Y O U R A M E R I C A
Conclusions Conclusion: It is possible to write
compiled data management software with about the same amount of effort as developing Access applications...
...once the large learning curve has been overcome.
Benefits of VB/ADO .Net development are worth the effort, but only as part of a structured cycle of escalating development steps starting with Access\VBA