Feasibility of converting complex .NET application into Domino
I am the sole programmer for a web application that the company I work for has become very reliant on. The application manages assets, tracks maintenance and maintenance schedules, records downtime, keeps track of part inventory, interfaces with SAP and our SCADA system, and various other tasks for about 60 production facilities. The application is currently written in ASP.NET and backed by MS SQL.
The person who may soon become my boss has requested that I submit a business case for moving the whole application into the Lotus Domino environment and I'm at开发者_JS百科 a loss as to how to complete it. I've gone through this process once about 5 years ago - took about a month's worth of classes learning Domino programming, only for my professor to state in the end that it was not possible or not worth the effort. This is not something I have the time to do again at this point.
Aside from being a big Lotus/Domino fan, my possibly-soon-to-be-boss would like to have me covered if I win the lottery and leave the company. We currently have a slew of Domino developers and only a couple .NET developers. This is something I can completely understand and agree with, but don't think should be the only determining factor.
I guess my question boils down to: Is it feasible to recreate a dynamic, flexible, and very large (just shy of 100k lines) ASP.NET application in Domino? Would there be any benefit (other than ready-made backups already in the company) or drawbacks to the finished product?
From the brief description, it sounds like an experienced Domino developer would have no trouble building a great app that does exactly what you want.
The conversion process is likely to be closer to a ground up rewrite, with the existing system being little more than a specification. Maybe you can reuse some of the static resources; images, css etc.
From a business point of view, there are a few of angles to consider. First you need estimate the cost of the rebuild. So for that money what do you get? The same app sitting on a different platform. Where do you save money? What additional costs do you have? If your boss wants everything on Domino, what is the saving on not having to support two platforms? What could the company do with the money if it didn't spend it on the rebuild? Would it be better spent elsewhere?
Ultimately I'd be very surprised if there was any financial advantage to rebuilding an existing app, just to have it on another platform. The cost will typically outweigh any return by a large margin. Only if the existing app requires a similar level of work doing to it, e.g. a large upgrade, would it make sense to move.
Note, this question is frequently asked the other way round, i.e. Domino -> .Net or Java, and the same answer applies.
[...] and backed by MS SQL.
There's the only thing that I can see could pose technical problems. If the model of your application relies on the fact that MSSQL is a relational database, you might have to re-think that layer to fit it into the document-oriented Domino databases. There are ways to query DB2 databases or ODBC sources, but you will have to tackle conversion issues.
Domino is not a drop-in replacement, you will have to re-design and you are probably going to need lots of help from the Domino developers in your organization.
Well,
it will take time to re-write it to Domino. The most difficult for you case will be to re-write backend logic. UI (HTML+CSS) and JS should work in same way so it has to be easy.
Is it feasible to recreate a dynamic, flexible, and very large (just shy of 100k lines) ASP.NET application in Domino? yes, it should be fisible if you have developers who still remember how .NET application work.
Would there be any benefit (other than ready-made backups already in the company) or drawbacks to the finished product? it depends what to compare with. Don't think you will get many benefits.
精彩评论