For Programmers: Free Programming Magazines  


Home > Archive > Software Engineering > October 2006 > Modularity in Large Systems









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author Modularity in Large Systems
rsam@postmark.net

2006-10-12, 10:00 pm

Hi all,

I hope someone can help me on this. I am working in a small but growing
company in the IT industry. We have a catalogue shopping system built
in VB6 and we are currently going through the process of re-writing the
system on a web-based platform. We have chosen ASP.NET for this
purpose. Our system is being used by several customers, and each
customer has his own set of customizations.

We are now aiming to build a modularized system and at the same time
have a standard interface throughout the whole application. I would
like some advise from people who may be working on a modularized system
in ASP.NET and give me some ideas on the best methods to use. What are
the usal methods of working in the such an environment when you have a
team of developers continously developing and maintaining different
versions (customizations) of the same system?

thanks,
Robert

Phlip

2006-10-12, 10:00 pm

rsam wrote:

> I hope someone can help me on this. I am working in a small but growing
> company in the IT industry. We have a catalogue shopping system built
> in VB6 and we are currently going through the process of re-writing the
> system on a web-based platform. We have chosen ASP.NET for this
> purpose. Our system is being used by several customers, and each
> customer has his own set of customizations.
>
> We are now aiming to build a modularized system and at the same time
> have a standard interface throughout the whole application. I would
> like some advise from people who may be working on a modularized system
> in ASP.NET and give me some ideas on the best methods to use. What are
> the usal methods of working in the such an environment when you have a
> team of developers continously developing and maintaining different
> versions (customizations) of the same system?


When you rewrite, use Test-Driven Development, so you can match each feature
of the old system with a test in the new one.

The test cases will support, direct, enforce, and sometimes emerge clean
interfaces.

Google ASPunit. But I don't know if ASP couples to a web server and makes
ASPunit suck. You should also test as much business logic as possible,
behind the GUI layer, and those tests therefor don't need to call a web
server!

--
Phlip
[url]http://www.greencheese.us/ZLand[/url] <-- NOT a blog!!!


JXStern

2006-10-12, 10:00 pm

On 10 Oct 2006 12:53:11 -0700, rsam@postmark.net wrote:
>We are now aiming to build a modularized system and at the same time
>have a standard interface throughout the whole application. I would
>like some advise from people who may be working on a modularized system
>in ASP.NET and give me some ideas on the best methods to use. What are
>the usal methods of working in the such an environment when you have a
>team of developers continously developing and maintaining different
>versions (customizations) of the same system?


If I guess correctly, much of the system is not modular as such, so
much as parameterized.

If this is the case, you are doing concurrent development of a
framework and using it to build systems, and that's one of the
toughest jobs there is.

J.

xpyttl

2006-10-12, 10:00 pm

Microsoft has a series of webinars on a variety of topics, and a year or so
ago, .NET was a pretty popular topic. It may be still, but I haven't
watched these in a while.

Anyway, the webinars are archived, and some of them are quite good. The
latest Visual Studio stuff is intended to enable yet another way of looking
at your application, and it seems to be pretty good, but like its
predecessors, this is yet another thing that is sort of hard to get your
head around. The webinars are one way to do this, and actually pretty
enjoyable.

If you haven't already, I would suggest you also get your head around the
patterns work of the Gang of Four. Much of the MS stuff kind of assumes
that this is pretty ingrained. They don't really go on about patterns, they
just sort of assume this is part of your background.

...

<rsam@postmark.net> wrote in message
news:1160509991.161590.205350@c28g2000cwb.googlegroups.com...
> Hi all,
>
> I hope someone can help me on this. I am working in a small but growing
> company in the IT industry. We have a catalogue shopping system built
> in VB6 and we are currently going through the process of re-writing the
> system on a web-based platform. We have chosen ASP.NET for this
> purpose. Our system is being used by several customers, and each
> customer has his own set of customizations.
>
> We are now aiming to build a modularized system and at the same time
> have a standard interface throughout the whole application. I would
> like some advise from people who may be working on a modularized system
> in ASP.NET and give me some ideas on the best methods to use. What are
> the usal methods of working in the such an environment when you have a
> team of developers continously developing and maintaining different
> versions (customizations) of the same system?
>
> thanks,
> Robert
>



H. S. Lahman

2006-10-12, 10:00 pm

Responding to Rsam...

> What are
> the usal methods of working in the such an environment when you have a
> team of developers continously developing and maintaining different
> versions (customizations) of the same system?


You might check out the category on Application Partitioning in my blog.
It is at a higher level than VB and ASP, but it definitely addresses
modularity.


*************
There is nothing wrong with me that could
not be cured by a capful of Drano.

H. S. Lahman
hsl@pathfindermda.com
Pathfinder Solutions
http://www.pathfindermda.com
blog: http://pathfinderpeople.blogs.com/hslahman
"Model-Based Translation: The Next Step in Agile Development". Email
info@pathfindermda.com for your copy.
Pathfinder is hiring:
http://www.pathfindermda.com/about_us/careers_pos3.php.
(888)OOA-PATH



Andrew Gabb

2006-10-12, 10:00 pm

This is a common problem, and much more difficult than it might
seem. I've seen various developers try to do this and most fail
after 6 months after a lot of wasted effort. They give up and
maintain each variant as a separate product. And once you split
them, of course, they're very hard to get merged again.

To be able to do this the way you describe, you need to be very
organised and disciplined, with documented and matured processes,
which are followed. If that doesn't sound like your shop, then you
may be in for a period of intense misery followed by failure.

For a start you need to design the system and your processes to
accommodate variants. This means you need to be able to anticipate
the areas of variation reasonably accurately and work out how to
handle them. This is not just coding and testing, but includes
configuration control, user and tech. documentation, design, etc.
Generally the docn requirements are much more severe for this type
of approach.

You also need to work out how you're going to manage your changes
and charge your customers, given that some changes may affect others.

An easier approach is to identify a number of modules which are
invariant across customer versions. This might be limited to a batch
of lower level forms and modules for example, and is really a
'reuse' approach.

Remember also that most changes will require more effort (perhaps
20% more) than if the variants were separate, for a number of
reasons including the increased management, configuration and
document load.

Good luck
Andrew

rsam@postmark.net wrote:
> Hi all,
>
> I hope someone can help me on this. I am working in a small but growing
> company in the IT industry. We have a catalogue shopping system built
> in VB6 and we are currently going through the process of re-writing the
> system on a web-based platform. We have chosen ASP.NET for this
> purpose. Our system is being used by several customers, and each
> customer has his own set of customizations.
>
> We are now aiming to build a modularized system and at the same time
> have a standard interface throughout the whole application. I would
> like some advise from people who may be working on a modularized system
> in ASP.NET and give me some ideas on the best methods to use. What are
> the usal methods of working in the such an environment when you have a
> team of developers continously developing and maintaining different
> versions (customizations) of the same system?
>
> thanks,
> Robert
>


--
Andrew Gabb
email: agabb@tpgi.com.au Adelaide, South Australia
phone: +61 8 8342-1021
-----
Ed Wegner

2006-10-12, 10:00 pm

rsam@postmark.net wrote:
> Hi all,
>
> I hope someone can help me on this. I am working in a small but growing
> company in the IT industry. We have a catalogue shopping system built
> in VB6 and we are currently going through the process of re-writing the
> system on a web-based platform. We have chosen ASP.NET for this
> purpose. Our system is being used by several customers, and each
> customer has his own set of customizations.
>
> We are now aiming to build a modularized system and at the same time
> have a standard interface throughout the whole application. I would
> like some advise from people who may be working on a modularized system
> in ASP.NET and give me some ideas on the best methods to use. What are
> the usal methods of working in the such an environment when you have a
> team of developers continously developing and maintaining different
> versions (customizations) of the same system?
>
> thanks,
> Robert
>

Robert,

Google "Software Product Lines".

Ed.
Sponsored Links







Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive

Copyright 2008 codecomments.com