The high-level design and description of a software system. Architectural design distills away details of implementations, algorithms, and data representation to concentrate on the interaction of "black box" components.

learn more… | top users | synonyms

6
votes
2answers
2k views

high level design of a browser layout engine?

I'm interested in how browser layout engines like gecko, webkit and trident are architected from a high level. what are the key abstractions? how are they layered? what are the inputs/outputs for the ...
10
votes
3answers
547 views

Is there a good Cognitive Architecture for implementing intelligent software agents?

So, I like dabbling in intelligent agent design (mainly video-game 'bots' but also some general task automation), but as a budding psychologist, I'd be really interested in a platform for developing ...
2
votes
3answers
1k views

When should a class or module be in a separate Assembly/DLL?

Are there any guidelines for deciding when a class should be in its own assembly/DLL? I often see two schools of thought: 1) Every "grouping" of classes belongs in its own DLL e.g. Repositories, ...
7
votes
3answers
1k views

Micro vs Monolithic Server architecture

We are currently working on our new product/project, it is a client-server application directed towards certain specific industrial/service enterprises. We are building a server (C Language and Linux ...
7
votes
4answers
2k views

LINQ vs Data Access Layer

I've taught myself always to handle any data access code in a completely separate 'layer' to my business logic and UI code. This has always been a very good architecture for me and any 'rules' or best ...
1
vote
3answers
310 views

iPad app architecture with very large files

I am working on an iPad app. It needs to contain some very large files. I could put them into the app, but they would push it well over 20MB, which means that it would not be downloadable over the ...
2
votes
2answers
477 views

Are there any good Java/JVM libraries for my Expression Tree architecture? [closed]

My team and I are developing an enterprise-level application and I have devised an architecture for it that's best described as an "Expression Tree". The basic idea is that the leaf nodes of the tree ...
4
votes
3answers
2k views

What are the pros and cons of the MVVM architecture?

In class today we were introduced to the MVVM architecture for Silverlight/WinPhone/WPF; it looks nice for big projects, but what are your thoughts on MVVM? What are the pros and cons? I want to get ...
3
votes
4answers
592 views

Which database should I use to manage relationship?

I need 2 capabilities: calculating mutual friends distinguishing between different types of edges, (e.g. FRIEND, ENEMY and other) getting relationships distinguishing between different types of ...
4
votes
1answer
387 views

PCI Compliance, FDMS and TransArmor

So, I've been tasked to work on an integration project where we will ask customers for credit card information and send it over to our integration partners, who will process the payment/cc info and ...
7
votes
1answer
592 views

How to create an extendable web application?

How would you implement an extendable web application? What I'm thinking about is a web application similar to Jenkins or Hudson which provides plug-in support. While it's obvious to me how plug-ins ...
3
votes
1answer
577 views

How well will a C++ app communicating through Apache handle traffic?

I'm writing an online game that has to run in a web browser and I'm worried about whether my server-side architecture will be able to handle the load. I'm designing for 1000-2000 simultaneous ...
7
votes
1answer
844 views

Definition of a 3-tier system

People often claim that they are following a '3-tier (or n-tier) architecture', and sometimes they then claim to be switching to a Domain Model. But I really never have understood what this mythical ...
9
votes
1answer
1k views

Multiple Zend application code organisation

For the past year I have been working on a series of applications all based on the Zend framework and centered on a complex business logic that all applications must have access to even if they don't ...
-3
votes
1answer
273 views

What is this kind of architecture

I have looked at the Force.com videos, I am fascinated by the way it allows one to add custom fields to forms, create new forms, with the validations built in by just marking as the required kind, all ...
11
votes
5answers
977 views

You write the server, I write the client: Best practices for designing an API?

I'm working on a brand new application that involves a client and a server. Specifically, it's a native mobile app talking to a web server, using a custom API that we will define. I was hired to write ...
5
votes
2answers
340 views

How to define the seams between the domain layer and a database full of stored procedures?

We have a legacy database full of stored procedures. These stored procedures are somewhat CRUD-categorized but upon inspection of some procedures, they are not "simple" as they might update, delete, ...
4
votes
3answers
246 views

For performance critical situations is storing file metadata in a database better?

As per the title of this question, for extremely performance critical situations, is storing a file's metadata (e.g. location, size, download on, etc) in a database going to allow for better ...
4
votes
1answer
383 views

Architecture: for a Single website to be supported for different Clients

I have developed a system with one company profile. The system is built using WCF services, asp.net. Now another company wants to use our system as well. And they might need some customization and ...
14
votes
2answers
3k views

DDD - Does an aggregate root's repository handle saving aggregates?

I am using a DDD-like approach for a greenfield module of an existing application; it's not 100% DDD due to architecture but I'm trying to use some DDD concepts. I have a bounded context (I think ...
2
votes
3answers
617 views

Recommended content for layers

As an expansion from my previous question about using separate projects for seperate layers - Good practice on Visual Studio Solutions I now wish to know if I am putting the right functionality in ...
2
votes
1answer
240 views

What Java client+server stack to allow async client info popups and responses?

Being new to Java I'd like to use the following scenario to steer my learning and could use some advice! First I want to build a Java server app that handles login and client settings, and based on ...
2
votes
3answers
228 views

Does a mobile app need to poll external data sources or can it receive data in other ways?

I'm beginning the design stages of a mobile application. I'm looking for knowledge about common practices for user notifications. I understand that the SDK for the device will expose methods which ...
3
votes
3answers
827 views

How do we handle Categories in database schema and model classes

I am trying to develop an ecommerce solution but stuck on the categories management issue and don't know how to proceed further. See, A category will have a parent category, which in-return can also ...
5
votes
1answer
197 views

Integrating Domain Model Applications - Resources/Guidance

I'm struggling to find guidance on integrating various applications, usually based on a Domain Model architecture. The applications often expose and consume each others WCF services, but this tends to ...
8
votes
1answer
3k views

Hooking up a Business Layer and Repository using Unit of Work Pattern

I am having a bit of trouble explaining precisely the question I have here so bear with me. it is similar to the unanswered question found here: ...
2
votes
1answer
623 views

application architecture with one or more PDFs

I am writing an iPad application. The main view of the application will be a PDF. I have made considerable progress in parsing out the contents of the PDF. The application will also have at least ...
4
votes
2answers
725 views

How to implement a lightweight clustered architecture for a distributed application

I currently have a distributed application that runs on multiple embedded PCs. The whole application is composed of one master server and several nodes. Each node is an embedded PC that runs Windows 7 ...
8
votes
3answers
638 views

Applications Architecture - fewer big systems vs more smaller systems

re: Applications Architecture, that is, "the science and art of ensuring the suite of applications being used by an organization to create the composite application is scalable, reliable, available ...
2
votes
3answers
2k views

Why should I use interfaces if the implementation will mostly stay the same? [duplicate]

Possible Duplicate: Why are interfaces useful? In our company we have a service oriented architecture in our asp.net application. We use interfaces for every crap class. Its a huge ...
6
votes
2answers
2k views

Command handlers and DDD

I have an ASP.NET MVC application, that uses a query service to get data and a command service to send commands. My question is about the command part. If a request comes in, the command service uses ...
0
votes
1answer
154 views

Which technology stack to use for car pooling over web and mobile

I want to start working on a project where I want to build a intranet website and mobile app for people working in my office for car pooling. The basic idea is that if anyone is interested in looking ...
8
votes
4answers
725 views

Supporting multitenancy

What are the typical challenges that arise when converting a single-tenant app into a multitenant app? Security and data isolation strike me as the most significant. What are some others? I'm one of ...
16
votes
8answers
4k views

What is the best way to design a web site to be highly scalable?

For websites that need to be highly scalable, such as social networks like facebook, what's the best way to design the website? Should I have a web service which the site queries to get data that it ...
5
votes
6answers
298 views

The business and architecture challenge behind creating effective user stories

A friend of mine in another department had a problem and came to me with a question that I wasn't sure how to help him with. He recently became promoted to architect and he was put in charge of ...
7
votes
3answers
345 views

Architecture of interaction modes (“paint tools”) for a 3D paint program

We are developing a Qt-based application to navigate through and paint on a volume treated as a 3D pixel graphic. The layout of the app consists of three orthogonal slice views on which the user may ...
10
votes
2answers
242 views

Need advice on designing interactions between various parts of my application

I'm trying to design the "main" classe(s) of a Rich Desktop Application based on NetBeans Platform 7. This application will consume HTTP services and, through a "push system" over TCP, will receive ...
5
votes
10answers
3k views

What do we mean by “design” in software engineering?

I have been reading about different software methodologies. Every method has a design phase to some extent, more or less. I am not clear on what we mean by designing. Does this mean writing your ...
17
votes
2answers
683 views

Standard practices for an architect

I am the architect for my group. Unfortunately I was given this position organically and there are no standards in place for how I should do my job. At different companies, how does the architect role ...
4
votes
3answers
288 views

How to “read” rails apps?

I've just finished the first rails tutorial and now want to learn something about how other developers use it. So is it possible to "read" rails web applications to learn about its architecture and ...
1
vote
1answer
641 views

Writing a game engine using javascript

..by this I mean a logic handler for a chess game. Basically validating a move and checking if somebody has won. Now ignore the complexity of the game(if you can..) I'd like some sort of psuedo code ...
0
votes
2answers
1k views

What are the current problems involved in software engineering programming patterns? [closed]

can someone suggest me the current problems in software engineering and the research links for it? i have some knowledge on MVVM being a pattern but i would like to know more about others and also ...
11
votes
3answers
3k views

Namespace and class name guidelines

I'm having problems naming my classes and services correctly when utils and other help classes are involved. How would you structure the following: EventService.cs EventServiceUtils.cs ...
5
votes
3answers
765 views

What is the best way to scale a CQRS system?

In the previous months I have been asking a lot of questions concerning the architecture of an application I'm working on. Thanks to the answers the architectural design has changed - in fact, it has ...
6
votes
5answers
311 views

Does project architecture have a strong relation to used libraries?

Programmers, when it comes to talk about popular patterns in enterprise applications, preach that you should code against interfaces to remove strong relations between components; doing this will aid ...
20
votes
4answers
2k views

Architectural differences between dynamic and static languages

Are there any major architectural differences when designing applications that will be built on static languages (such as C# or Java) and dynamic languages (such as Ruby or Python)? Which are the ...
1
vote
1answer
139 views

How and when do you scale Azure instances?

When dealing with Azure instances that are under-performing, how do you decide when to scale the instances? Do you scale horizontally by adding more instances or vertically by making the existing ...
2
votes
1answer
222 views

Why so many layers with domainobject like objects in an application?

Take a typical Line-of-Business Silverlight applicatioin for example.First,We have a Product table in database,which has fields of ID,Name,Price,etc; Then, on the server side,we should have a ...
9
votes
4answers
416 views

Is there a name for the not given/null/empty-problem?

I work with code, where data is stored/exchanged in Hashtable/Dictionary/Associative-Array-like structures, like this { 'alpha': None, 'bravo': '', # 'charlie' is not given } there is not ...
6
votes
3answers
207 views

How do you decide where functionality should belong in a large-scale project?

In my current development situation, we have a lot of DLLs, executables, and static libraries. How do you decide what should go into a DLL? What should go into an executable? Why have separate ...