Case Study: Complex Web System Development with DNN Solution
Highlight
- Online Property Renting solution implementation.
- Multiple Extended DotNetNuke techniques.
- SEO enhancement solution in etNuke.
- The custom Authentication implementation out of
DotNetNuke system
Abstract
A Canadian company needed to rewrite an existing property renting system which has
been running for 3 years with DotNetNuke
technique.
Why Nova
Nova Software has rich experience in DotNetNuke
Development, including all kinds of DotNetNuke
standard extension development. Moreover, Nova Software has the ability to accomplish
extension works that are much more complicated.
Nova Software has worked in several small projects for this client. The client is
very much satisfied with the cooperation between us. And they have confidence in
ability of Nova.
One of the other strong reasons is that the client can accomplish the project at
a very competitive cost.
Technology Required
The Challenge
Requirement & System Solution
- The original Property Renting system includes a PHP web site for the front end and
a Win Form application for the back end. Considering the deployment environment,
we decided to rewrite two DotNetNuke web
sites for the front end web site and the back end application. Originally the system
includes a lot of business logic. We had no requirement document at the beginning
of the project. So we just confirmed those logic bases on discussion with client
via our implemented DotNetNuke prototype
Data Access Solution
- The client wishes to adopt Microsoft Enterprise Library as the Data Access, based
on which we imported .netTiers Application Framework in order to improve development
efficiency, and generated the source code for the data access layer for the custom
DotNetNuke modules by Code Smith template
tool.
- The original front end web site has bound 2 different domain names. System will
present different styles and contents in response to different requests. So we implemented
a set of DotNetNuke Skin/Container, which
can dynamically present different User Controls and styles.
- The client wishes to keep the new front end web site the same look as the original
web site. With due consideration of features of
DotNetNuke as well as relative logics, in order to gain high reusability,
we designed/implemented 43 custom DNN modules.
To simplify possible adjustment work in the future, we implemented Setting Views
for the relative DotNetNuke modules to
allow the DotNetNuke super user to adjust
the relative module logic in the web sites.
- There are several periodic data maintenance code blocks in the old PHP web site.
We implemented 4 daily DotNetNuke Scheduler
to provide the similar features.
- Many free existing DNN modules have been
adopted to present the relative content, such as
DNN Text/HTML module and Ad Banner
module.
SEO Solution
- The old web site has been running for 2 years. It is very important to keep and
enhance the SEO features for the new DotNetNuke
web site.
- There are some Meta data in the original PHP web site which cannot be supported
directly by DotNetNuke. So we appended
the relative codes in the Skin and modules to support it.
- In order to keep and improve SEO features for the links, we decided to take the
Pseudo-static URL and 301 Redirection features in the URL Rewriter to achieve our
goal. Considering that the default URL Rewriter of
DotNetNuke and the third-party components iFinity.URLMaster could not meet
all requirements, we developed a custom URL Rewriter component, which supports to
define the rewrite rules.
Authentication Solution
- According the client’s requirement, we implemented a custom Authentication sub system
aside of the DotNetNuke system, which provided
the User and Role management based on the SQL
Membership API. So the new DotNetNuke web
site allows both to login from DotNetNuke
User Account and/or from the Business User Account.
Payment Solution
- According to the original web site, we integrated the Internet Gateway payment solution
to the new DotNetNuke web site. We implemented
the security payment process under the SSL protocol by sharing the cookies between
multiple sub domains.
- The front end system components diagram
- The back end system components diagram
- The deployment diagram
- The payment processing work flow diagram
Benefits to the Client
- Our high development efficiency has helped the client to reduce considerable amount
of cost. The old system took 35-man-month to complete the first version. We took
only 11-man-months by using DotNetNuke
technique to complete the rewriting process for the same features.
- The client is satisfied with the new system. And the expandability and maintainability
of the new system become greatly enhanced. And the end user is very easy to maintain
the new system.
- The new system has higher efficiency and larger data processing ability than the
old system.