473,387 Members | 1,575 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,387 software developers and data experts.

OO Design and n-tier systems

I have a couple of general questions:
(1) Are many companies really developing OO systems, and if so, who does the OO analysis, i.e. the design of classes, is this typically done by the developers or by some king of OO analysis specialists. Is a company wide data model needed or can systems be developed independently with each system having its own classes etc? I can't see this company ever agreeing on a centralized data model as there are so many independent groups all doing their own thing. What kind of infrastructure is needed to enable the benefits of class-reuse?
(2) Is it that important to develop web-based systems on the n-tier model? The extra complexity and processing overhead seems huge. The main reason given is the isolation of the tiers. Is this just a theoretical benefit or is it real? I can't forsee massive changes to any tier that would justify it, or am I completely wrong.
Jul 21 '05 #1
4 1537
OO is not right for everything - sometimes its quicker and more appropriate
to crunch it in a very procedural manner.

However, larger systems developed well and though out at deisgn time will
reap benefits, specifcally in terms or object reusability - thus cost
reduction. Its a topic for debate however as not everyome agrees with why
and how OO should be applied. In my firm the developers often do the
classes, but they may have been defined by some UML reference. It really
depends on the project and the requirement.

What can I suggest - do some reading and make up your own mind.
http://www.4guysfromrolla.com/webtech/091800-1.shtml

--
Regards

John Timney
Microsoft Regional Director
Microsoft MVP
"kneejerkreaction" <kn**************@discussions.microsoft.com> wrote in
message news:A9**********************************@microsof t.com...
I have a couple of general questions:
(1) Are many companies really developing OO systems, and if so, who does the OO analysis, i.e. the design of classes, is this typically done by the
developers or by some king of OO analysis specialists. Is a company wide
data model needed or can systems be developed independently with each system
having its own classes etc? I can't see this company ever agreeing on a
centralized data model as there are so many independent groups all doing
their own thing. What kind of infrastructure is needed to enable the
benefits of class-reuse? (2) Is it that important to develop web-based systems on the n-tier model?

The extra complexity and processing overhead seems huge. The main reason
given is the isolation of the tiers. Is this just a theoretical benefit or
is it real? I can't forsee massive changes to any tier that would justify
it, or am I completely wrong.
Jul 21 '05 #2

"kneejerkreaction" <kn**************@discussions.microsoft.com> wrote in
message news:A9**********************************@microsof t.com...
I have a couple of general questions:
(1) Are many companies really developing OO systems, and if so, who does the OO analysis, i.e. the design of classes, is this typically done by the
developers or by some king of OO analysis specialists. Is a company wide
data model needed or can systems be developed independently with each system
having its own classes etc? I can't see this company ever agreeing on a
centralized data model as there are so many independent groups all doing
their own thing. What kind of infrastructure is needed to enable the
benefits of class-reuse?

The greatest benefits of OO are not based on class reuse, or common code for
a data model. They are based on writing less code, more powerfully, to
solve complicated problems with fewer defects. By localizing the effects of
changes in the description of an object, you can make changes efficiently
with a minimum of impact on code that shouldn't be affected by the changes.

Take a look at my blog entry on learning OO design.

http://biztalkbum.blogspot.com/2004/...-oriented.html

(2) Is it that important to develop web-based systems on the n-tier model?

The extra complexity and processing overhead seems huge. The main reason
given is the isolation of the tiers. Is this just a theoretical benefit or
is it real? I can't forsee massive changes to any tier that would justify
it, or am I completely wrong.

I don't find that there is any extra processing... I'm not sure what you are
getting at. Are you concerned about having objects that operate in tiers,
or are you thinking of a more distributed model using .NET Remoting and web
services? For most web-based apps with less than 200 users, there is little
reason to add layers of indirection. However, layers of abstraction are
useful and can reduce your defects.

See my blog entry on partitioning a system into layers
http://biztalkbum.blogspot.com/2004/...ogic-into.html

Hope this helps,
--- Nick
Jul 21 '05 #3
Exactly
:-)
Cor
Jul 21 '05 #4
Thanks. One of the reasons I asked is because our group is moving from ASP/VB6 to .NET and I understand .NET is completely object-oriented. None of us have any experience at OO design or programming and we are not likely to be given any training, so I can forsee a complete shambles. Our web development was not done in a tiered design because the develpers had no training and basically picked up their web knowledge by trial and error.

"Nick Malik" wrote:

"kneejerkreaction" <kn**************@discussions.microsoft.com> wrote in
message news:A9**********************************@microsof t.com...
I have a couple of general questions:
(1) Are many companies really developing OO systems, and if so, who does

the OO analysis, i.e. the design of classes, is this typically done by the
developers or by some king of OO analysis specialists. Is a company wide
data model needed or can systems be developed independently with each system
having its own classes etc? I can't see this company ever agreeing on a
centralized data model as there are so many independent groups all doing
their own thing. What kind of infrastructure is needed to enable the
benefits of class-reuse?

The greatest benefits of OO are not based on class reuse, or common code for
a data model. They are based on writing less code, more powerfully, to
solve complicated problems with fewer defects. By localizing the effects of
changes in the description of an object, you can make changes efficiently
with a minimum of impact on code that shouldn't be affected by the changes.

Take a look at my blog entry on learning OO design.

http://biztalkbum.blogspot.com/2004/...-oriented.html

(2) Is it that important to develop web-based systems on the n-tier model?

The extra complexity and processing overhead seems huge. The main reason
given is the isolation of the tiers. Is this just a theoretical benefit or
is it real? I can't forsee massive changes to any tier that would justify
it, or am I completely wrong.

I don't find that there is any extra processing... I'm not sure what you are
getting at. Are you concerned about having objects that operate in tiers,
or are you thinking of a more distributed model using .NET Remoting and web
services? For most web-based apps with less than 200 users, there is little
reason to add layers of indirection. However, layers of abstraction are
useful and can reduce your defects.

See my blog entry on partitioning a system into layers
http://biztalkbum.blogspot.com/2004/...ogic-into.html

Hope this helps,
--- Nick

Jul 21 '05 #5

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

43
by: grz02 | last post by:
Hi, Im an experienced database+software designer and developer, but, unfortunately, anything to do with web-programming and web-systems designs is still a pretty new area to me... (been working...
36
by: Andrea Griffini | last post by:
I did it. I proposed python as the main language for our next CAD/CAM software because I think that it has all the potential needed for it. I'm not sure yet if the decision will get through, but...
2
by: adb | last post by:
I came up with a replication configuration that is basically the result of all the restrictions of replication as well as the restrictions of allowable software on work PC's and I was curious if...
0
by: Edward Diener | last post by:
In Borland's VCL it was possible to divide a component into design time and run time DLLs. The design time DLL would only be necessary when the programmer was setting a component's properties or...
7
by: Shimon Sim | last post by:
I have a custom composite control I have following property
2
by: Paul Cheetham | last post by:
Hi, I have moved an application from VS2003 to VS2005, and I am now unable to view most of my forms in the designer. The majority of the forms in my project are derived from class PACForm,...
1
by: Nogusta123 | last post by:
Hi, I have had a lot of problems getting web pages, master pages and content pages to render in VS2005 design view the same as they would in Internet Explorer. I did a lot of looking on the...
19
by: neelsmail | last post by:
Hi, I have been working on C++ for some time now, and I think I have a flair for design (which just might be only my imagination over- stretched.. :) ). So, I tried to find a design...
10
by: vital | last post by:
Hi, I am designing the middle tier of a project. It has 6 classes and microsoft application data access block. The six classes are DBServices, Logger, ProjectServices ... etc. and all these...
4
by: Ken Fine | last post by:
I've been living with a frustrating issue with VS.NET for some months now and I need to figure out what the problem is. Hopefully someone has run into the same issue and can suggest a fix. I...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.