Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations SkipVought on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

How to persuade mgmt on need of MSDN subscription 3

Status
Not open for further replies.

bbarr

Programmer
Sep 15, 2003
51
0
0
US
I posted this elsewhere but was advised this might be a better forum for my question.

I'm developing an App in MS Access 2000 using a lot of VBA. There is a lot of data manipulation and calculations going on and I feel that if used data structures such as Linked Lists, Priority Queues, Binary Search Trees, etc., then the development time would be quicker and easier (as I wouldn't have to build these from scratch or mimic them without using pointers).

If my boss & other relevant managers were developers then it would probably not be difficult to convince them. However, they are not. Does anyone have similar experience in how to justify to non-technical people why it is better that I use C++/C#, etc. rather than just limiting myself to what I can do with VBA in Access?

Thanks.
 
If you were developing already with one of the VisualStudio languages, its a pretty easy sell to upsize that to MSDN based on the included development servers, etc.

Since you're working in Access, that's quite a jump to overcome. Is this "program" meant for distribution? If so, then a copy of Access will be needed for each workstation. If those are already purchased, again, that's a big hill to overcome. If those aren't acquired yet, you can sell a Visual Studio language based on the fact you don't need access to run the end program. Then you can upsell to MSDN.
 
The app is for internal use. The problem isn't really the distribution, but more a matter of there being a lot of computations going on for which data structures would make it easier to do ... I've been doing some research (I googled "Why Use Data Structures") and have the following so far:

1. Increase data processing speed
2. Increase development speed
3. Improve code maintainability
4. Use already tested code (for object libraries)
5. Why re-create the wheel

I am trying to make this as non-technical as possible. If I end up explaining the difference between a Binary Search Tree and a Max Heap or Singly Linked List, I'll end up just talking to myself :) (... which wouldn't be so bad if I was the one who was signing the check!)
 
If you persuade them that it be better you use C++ or C#, they may want to just purchase one of those languages. If you tell them that you want it to test different operating systems, they may say "We already have test boxes for that.". If you NEED many of the products in MSDN, and their combined values when purchases separately add up to more than the cost of the MSDN subscription, then that would be a good buy.
 
Even for internal use - if the app is going to be distributed a compiled app makes the most sense rather than VBA "macro" programming in Access.

Also - if this is not a one shot deal - if there will be other types of programs to do in the future - you can argue your basic productivity will be higher with a language program.

If this is a one shot deal for a single desktop or so - I'm a fraid a non-technical boss will look at one question primarily: "Can you do it with what you have?"

To overcome that, you're going to have to present time arguments: I can create this faster; It will run the calcualtions faster, etc.

Note that these will have to be meaningful differences as you've got the $$$$ of the MSDN sub to overcome.
 
bbarr

Perhaps the best way to get the attention of management is by explaining it in terms of money.

The second best way is if management respects your decisions. They will have confidence in your presentation based on past decisions.

The third is consequences and liabilities. For example, security - easy to hack VB, hard to hack C#. Obsolecense (sp?), etc. I don't know why, but management seems to take a back sit on this type of thing until they get bit.

It seems to me that a current theme with management these days is that management may not be convinced this purchase is a better deal because it saves time. In my current environment, management seems to demonstrate "I pay you a salary, so whether you get the work done in 35 hrs or 60 hrs, I don't care as long as the work gets done." Pretty mean spirited perhaps. It costs them the same regardless.

Build your case on how you will save money, reduce liability, etc. Offset this for the cost of the investment.

When you win your argument, you will be on your way to gaining the respect and confidence for later battles.
 
ROI is what will get management's attention. If you spend 60 developing a VBA app and 3 other tasks were delayed because of the VBA development which will now require other itmes to be delayed because of the need to catch up. Proving that 60 hours in VBA could be reduced to 40 hours .NET allowing time to take care of other items on time is what will get their attention. Management may balk at the Upfront cost but if presented in a manner the yes 2K investment will save them 5K or more in lost time will surely get their attention. If this is the case then things like deployability, interopobility will be icing on the cake.

"Shoot Me! Shoot Me NOW!!!"
- Daffy Duck
 
I used Access 2 / VBA extensively 5 years ago and think it's a really good tool for small databases on stand alone PCs but has some shortcomings including :

- erratic behaviour when the database gets towards 1Gb,
- table locking violations in a multi-user environment,
- it eats up your network bandwidth in a multi-user environment,
- when records are deleted Access 2 didn't free up the space until the database was compacted (I believe that this is still the case with Access 2000),
- it was easy to break into an Access 2 database although I believe that this has been addressed to some extent in later versions.

You might also find some restrictions in functionality.

HTH,

Ella
 
It would be unfair to judge Access today by your experiences with Access 2.

Restrictions in functionality? Most of the restrictions come, in every language, because the programmer does not know how to use the tools that have been made available.

There are lots of very good reasons to use C++ over Access VBA, but at least be sure that you're actually comparing the languages.

Good Luck
--------------
As a circle of light increases so does the circumference of darkness around it. - Albert Einstein
 
Hi CajunCenturion

That's why I added the comments against Access 2's shortcomings. I'm currently using 2000 for a couple of small projects and it doesn't seem to have changed that much. The main benefits seem to be in the VBA.

Ella
 
Exactly my pointe11a. In your previous post, you comments are directed at the backend database manager, and that is not the issue. The issue is the front end language, either C++/C# and VBA. And as you say, the main benefits seem to be in the VBA.

As bbarr asks:
bbarr said:
Does anyone have similar experience in how to justify to non-technical people why it is better that I use C++/C#, etc. rather than just limiting myself to what I can do with VBA in Access?
Just what are those limits. You start my identifying those things that cannot be done cost-effectively in VBA that can be done cost-effectively in C++/C#.

Good Luck
--------------
As a circle of light increases so does the circumference of darkness around it. - Albert Einstein
 
ROI is what will get management's attention"

1. Performance. VB uses a single threaded apartment, STA, model. With C++ you can do your own thread marshalling. It comes down to better performance on the same or less hardware.

2. Code samples, platform SDK, debugging tools, etc. Quantify the hours you'll save with this information easily accessable.

3. Security. From a network standpoint, RPC vs port 1433. You also have the access security model vs. integrated domain security for MSDE or SQL.



 
Knowing the technical differences is nice, and it seems to be something that bbar has a handle on.

Its convincing the PHB that a new tool makes more sense than an existing - and paid for tool. The PHB will ask if he can do the job with what he has. bbar will say yes, but perhaps we can do it more efficiently this other way, which can save me X% in creating it, and overall Y% in running it; but will cost $$$$ to acquire.

At this point, if I read bbar correctly, PHB is only concerned with X+Y being Z greater than $$$$. I doubt PHB moves unless Z is significant.

There may be other factors here. Perhaps PHB doesn't have any budget left. bbar's wages are already accounted for, so it doesn't matter how much more efficient he can make the process - that's all he has to work with at the moment.
 
Trust me, the company decision makers have a responsibility to spend money wisely... if you take the microsoft materials, show them the value received for the price, and make up some *believable* savings, you stand a good chance of success.

If you do, be aware that you have raised expectations of what you can do and you will be held to it--but likewise, your own personal "glass ceiling" may have been raised a notch or three...

JTB
Have Certs, Will Travel
"A knight without armour in a [cyber] land."

 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top