The Design of Software (CLOSED)

A public forum for discussing the design of software, from the user interface to the code architecture. Now closed.

The "Design of Software" discussion group has been merged with the main Joel on Software discussion group.

The archives will remain online indefinitely.

Weblication or GUI App

Hello everyone,

I am currently in the process of designing an application for teachers and schools. In its essence, it must capture specifically formatted lesson plans, marks and provide an overview of how each learner is doing.

Now, this seems to be a straight forward GUI app, right? Well, here are my concerns. We are developing in .NET on a SQL server. This means that we will have problems with deployment (for Linux machines, which are being implemented in some schools).

Are weblications the answer then? My concerns: Cannot be operated on offline (what if teacher wants to mark at home?). Limiting UI. Longer development time, if Ajax is used.

I am stuck between a rock and a hard place.
Does anyone have any suggestions, or comments about their experiences? Any comment is welcome

Thanks in advance
Bjorn Send private email
Thursday, July 21, 2005
Matthew Lock Send private email
Thursday, July 21, 2005
Create it as a server application.

Then create a web interface to it. Then, if time permits create a GUI that allows teachers to download whatever data they need and take it home on a laptop, process it, and upload it the next day if need be.
redeye Send private email
Thursday, July 21, 2005
You do also have the option of using Java to solve the cross platform issue.  Many will disagree with Java on the client but if you know what you are doing it isn't an issue.

In my opinion a web app would work.  How many people don't have online access at home now, especially a teacher?
Bill Rushmore Send private email
Thursday, July 21, 2005
Can you go with a web application and an ASP model with this?  I'd imaging most schools have high speed internet access now and a fair amount of teachers probably have broadband in their homes.  It'd be a good selling point in that the school would have no setup costs/time to deal with and everything is maintained offsite for them.
Thursday, July 21, 2005
There is one last thing I forgot to mention, which adds a little twist to the tale.

Our company is based in South Africa. Although many schools have a school network, most do not or have a really slow internet connection.

Overall, I do like the whole Web App idea more and more. At the beginning, we will only be able to implement the system at schools with a LAN. Later, we can develop stand-alone GUIs for other schools.
Does that sound like a good strategy?
Bjorn Send private email
Thursday, July 21, 2005
For those teachers without a LAN, if you make it a desktop app, what will they do with the data they've entered? Is it just for thier own personal user?

(My minimal understanding of schools is that they tend to be highly centralized. This SOUNDS like a way for teachers to report back to central admin with lesson plans, attendance, etc.). If so, then this is really a client-server app and the internet/web is the best way to do that. (And I'm always very critical of the jump to make everything a web app.But for client-server, it's the best way to go)
Mr. Analogy {uISV} Send private email
Thursday, July 21, 2005
We recently did some consulting for a company that developed a math application for schools.  They did it in ASP.NET/SQLServer as a Web app to be installed on the school's server. Long story short - deployment was an absolute nightmare and I suspect it may have killed the whole product. I believe the project may have been axed altogether.

My reccomeddation:

A. Make it a Web-based application but host it yourself on your servers.  Then charge the school a fee for access.  You could make admin pages, etc.  I think that it might even have more appeal to schools as a hosted app - no fuss no muss.

B.  Make it a desktop application.  Make it easy for the teacher to install at home if they want to and they can just bring the data file along with them.  This is sort of the KISS method.  This method has the added benefit of attracting small schools and teching environments as well as homeschoolers.  These groups may not see hosting a web app as an option.
Thursday, July 21, 2005
The above is a A _or_ B type thing... my bad.
Thursday, July 21, 2005
If the schools have a slow internet connection and you can't run a local server on each school's LAN, then a web app is going to frustrate the heck out of people.

There are lots of ways to write cross-platform GUI apps - Mono, Java, wxPython/wxPerl, GTK, and so on. Alternatively, choose one platform to support first and write another client later.

Web apps are attractively easy for _you_, but even under the best circumstances they're less fun to use than a real GUI ... and if your schools are sharing a single dialup connection between fifty boxes (or something), it will be unbearable.

Please, think of the users.
Brendon Send private email
Thursday, July 21, 2005
Well, I thank you all for your comments and advice. There's still alot to consider, and market research is the next step. (ie. how many schools have a decent LAN or even internet connection).

The main thing is to develop something extremely useful for the teachers. To lower their administrative burdens, so that they can do what they do best: teach.

Thank you everyone...
Bjorn Send private email
Friday, July 22, 2005

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics
Powered by FogBugz