O
Ole
I am working in a small company where we are in progress of redesigning our
system. We are going for the N-tier model which so far has worked
beautifully. We are currently working on our Login Module, which will
authenticate users using the Active Directory.
The Login Module can be built using provided controls from Microsoft and
defining membership providers in the web.config and the module can be
finished in no time. This will however break our decision of creating the
entire system using a N-tiered design pattern with a Presentation, Business
and Data Access Layer. It will only create a Presentation Layer that
negotiates directly with the data source (the Active Directory).
There are two choices as I see it:
1. We can use the Login Control as they are and define the providers in the
web.config file. This creates and application with only a Presentation layer
that negotiates directly with the data source.
2. We can override the Login control and the membership provider and create
a 3-tiered module that fits the overall design of the system, and data is
passed from thgough Presentation, Business and Data Access Layer before it
negotiates with the data source.
The first option may be less time consuming and can create a finished module
relatively fast, but breaks the design pattern of the 3-tiered model, and we
have less control of what happens inside the Controls.
The second gives more control of the code, but extends the coding time and
the module will fit a 3-tiered pattern.
We were wondering what other people’s thought on using these controls contra
overriding all functionality of the controls to fit them into good software
design. The question extends to other controls that are provided with the new
Visual Studio 2005 as well, which are great to use, but lets the programmer
create applications where a Presentation Layer that negotiates directly with
the data sources and thereby breaks good software design, but there can much
to gain in time saved from coding the controls from the ground and up. What
do you think?
system. We are going for the N-tier model which so far has worked
beautifully. We are currently working on our Login Module, which will
authenticate users using the Active Directory.
The Login Module can be built using provided controls from Microsoft and
defining membership providers in the web.config and the module can be
finished in no time. This will however break our decision of creating the
entire system using a N-tiered design pattern with a Presentation, Business
and Data Access Layer. It will only create a Presentation Layer that
negotiates directly with the data source (the Active Directory).
There are two choices as I see it:
1. We can use the Login Control as they are and define the providers in the
web.config file. This creates and application with only a Presentation layer
that negotiates directly with the data source.
2. We can override the Login control and the membership provider and create
a 3-tiered module that fits the overall design of the system, and data is
passed from thgough Presentation, Business and Data Access Layer before it
negotiates with the data source.
The first option may be less time consuming and can create a finished module
relatively fast, but breaks the design pattern of the 3-tiered model, and we
have less control of what happens inside the Controls.
The second gives more control of the code, but extends the coding time and
the module will fit a 3-tiered pattern.
We were wondering what other people’s thought on using these controls contra
overriding all functionality of the controls to fit them into good software
design. The question extends to other controls that are provided with the new
Visual Studio 2005 as well, which are great to use, but lets the programmer
create applications where a Presentation Layer that negotiates directly with
the data sources and thereby breaks good software design, but there can much
to gain in time saved from coding the controls from the ground and up. What
do you think?