views:

51

answers:

2

So...I am creating software for a university. The purpose of the software doesn't matter. What I do need to know is, the best way to make it, and what technology to use.

The software needs to be able to accept multiple data sources, from Excel to SQL. However, the students will be using it primarily, and they won't always be on the schools network. I don't know if this should be created as a Web Application, or an app using Java (or something similar). Also, the students are going to need to be validated to use the software according to their current student status.

If I do this as a Web Application, and have it run off of the schools server, is this a better idea? Only thing is, this would require a lot of testing on their end as well right?

If I did this as say a Java program, can this even be done?

-Scott

+1  A: 

If you want to use this application by students outside of schools network than a web application is the only viable option. If you will develop this as a Java program (I assume by Java program you mean a desktop application), you have to install this on every student's computer in school as well as home.

Edited in reply of your comment :

Regarding framework/platform selection, I would advise to develop this in what you know most. A good programmer can develop a good software in a language/framework/platform of which he/she has good knowledge and experience.

Deependra Solanky
Leaves me with another question. Do I make this in .NET, or something open source. .NET costs money to develop, open source probably wont be as tool rich. This app will be interacting with a class database from the school, as well as verifying students. That's the only database interaction we will really need.
Scott
Tool support in open source is not a concern. You can find a lot of good framework for PHP and off course there are django and ruby on rails.
Deependra Solanky
A: 

I'm assuming that a web technology will be best, because you can access it from any machine that connect to the Internet.

Java EE can manage this. So can .NET.

I'd recommend either one with Spring (Java or .NET flavor) as the framework.

The software needs to be able to accept multiple data sources, from Excel to SQL.

Spring will accomodate relational databases or Excel.

However, the students will be using it primarily, and they won't always be on the schools network.

A web app will only require Internet access. This could pose some security issues that you'll have to sort out. It's easier if they're on your network, because they're already authenticated as students and authorized to use your app.

I don't know if this should be created as a Web Application,

I would recommend it.

or an app using Java (or something similar).

Both Java and .NET can be written as either desktop or web.

Also, the students are going to need to be validated to use the software according to their current student status.

Don't know what your security architecture looks like, but Spring Security can work as a cross cutting concern with databases, LDAP, etc.

If I do this as a Web Application, and have it run off of the schools server, is this a better idea? Only thing is, this would require a lot of testing on their end as well right?

Can be done. Testing is required no matter what.

If I did this as say a Java program, can this even be done?

Hard to tell. No requirements, no idea of your capabilities, etc.

duffymo