software-architecture

How do I design an application to support changeing requirements?

Changed requirement is bad thing in software development process. If requirements change, we must change software structure. How do you design flexible core modules to support solving this problem? Are there other techniques for dealing with changing requirements? ...

Java Method with Enforced Array Size Parameters?

I would like to create an initialisation method for a Java class that accepts 3 parameters: Employee[] method( String[] employeeNames, Integer[] employeeAges, float[] employeeSalaries ) { Employee myEmployees[] = new Employee[SIZE];// dont know what size is for ( int count = 0; count < SIZE; count++) { myEmployees[c...

Read-only list of string

Is it good to use such approach for keeping read-only list of string, for example, a list of fields in ADO.NET. var list = new System.Collections.ObjectModel.ReadOnlyCollection<string>( new List<string>(4) { "type", "currency", "date", "amount" }); Or this is a superfluous solution? ...

What is SOA (Service Oriented Architecture)?

Call me a troll if you want, but I'm serious -- how exactly is the new SOA trend any different than the client-service architecture that I was building 15 years ago? I keep hearing SOA but I don't see how it's different than what we've always done. Back 10 years ago, ,y company had multiple clients (in multiple languages) which talked to...

MVC Architecture

I would like to have a clarification in MVC Architecture . While going through some of the documents, I could see that the following relationships are established between Model-View and Controller. Please help me in understanding how this is possible. View queries model’s state Model passes the state information to View ...

Managing a difficult manager

I have a situation here at work. We are redeveloping our basic architecture across the entire company. Currently we have the following hierarchy; SQL Database <= Stored Procs not allowed. nHibernate Classes to convert nHibernate into our own objects Web Service <= for all external and [internal] calls. Class...

What is the best way to support multiple databases for a .Net product?

Hi, We are designing a product which could support multiple databases. We are doing something like this currently so that our code supports MSSQL as well as MySQL. namespace Handlers { public class BaseHandler { protected string connectionString; protected string providerName; protected BaseHandler() ...

Cleaning up a complex WebForms project

I'm currently working on a high-traffic online search site. They have various changes they want to implement over time, and they've indicated that ultimately they want the site re-done in ASP.NET MVC. Currently the site is an ASP.NET WebForms project; however true ASP.NET controls are rarely used. Instead there are lots of server-side ...

In RUP: What RUP roles are responsilbe for creating the Software Architecture Document?

Based on the different views documented in SAD which RUP roles should should be responsible for creating the SAD? I thought from the beginning that the SAD was only for a technical audience but from what i can see in RUP it is more than that so it seems like it is not only the Software Architect that should be involved. ...

Looking for good server-side language that will allow players to upload code that can be executed

I had an idea of a program I want to write, but which language would be best is my problem. If I have a car racing game and I want to allow users to submit code for new interactive 3D race tracks (think of tracks such as found in the Speed Racer movie), vehicles and for their autonomous vehicles, so, they would create the AI for their c...

handling amorphous subsystems in formal software design

People like Alexander Stepanov and Sean Parent vote for a formal and abstract approach on software design. The idea is to break complex systems down into a directed acyclic graph and hide cyclic behaviour in nodes representing that behaviour. Parent gave presentations at boost-con and google (sheets from boost-con, p.24 introduces the ap...

Tools for software architecture and design

I want to know if there exist different tools to develop software architecture and software design.. If so how do they differ and can you please mention few tools for software design and software architecture? ...

Books for an aspiring software architect.

I've slightly more than 7 years of work experience designing and developing distributed systems in largely C++ (and some Perl) at a very large internet firm and am currently in the role of a technical lead. The next step for me is to either be an engineering manager or an architect. I've chosen the path of an architect (for all the reaso...

What quality attributes are vital to an ecommerce web application?

This question is just out of interest, and perhaps could be useful for my thesis. A web application, especially when your business is relying on it financially, needs to meet certain requirements in order to survive. I'd like to hear what kind of (software) quality attributes you find most important (name a few) regarding to web applic...

How to setup web.config for build to multi-environments without code changes?

I recently worked on an app in a very interesting environment. There was 6 or 7 parallel levels for this application and only the 1st 2 levels were able to be touched by developers. As part of the company policy all builds were done as Tivoli packages, and very complex to setup. The final kicker was that no code changes are allowed past...

Set user context

My businesslayer\data access library is being used by both a web application and a wcf service. I need to set the current user context on each request for both of these application which would contain userid, Ip, application type etc etc. The library is obviously not aware what type of application is using it. Now i cant keep this info...

When is it appropriate to implement a "spine" for a system?

I understand that some software systems implement message buses or "spines". For what applications is such technology suitable and why? ...

Difference between event handlers and callbacks

Can someone please explain to me what is the difference between an event handler and a callback function? ...

Advantages of three tier architecture

What is the advantages of a three tier architecture from a normal user point of view, not from a developer point of view? ...

Plugin Architecture - Make an MDI Parent Form Aware of Children in DLLs

I'm experimenting with a plugin architecture for my company's internal business system. I have managed to read all .DLLs in a Plugin folder which implement a specific interface. What I am trying to figure out is the best method of communication between the "host" MDI parent application and forms that will be in the .DLLs which I intend t...