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

19
votes
4answers
3k views

How to significantly improve java performance?

The team over at LMAX have a presentation about how they were able to do 100k TPS at less than 1 ms of latency. They have backed up that presentation with a blog, technical paper (pdf) and source code ...
4
votes
1answer
332 views

Does anyone have suggestions for design or open source libraries specifically for a single page AJAX application? [closed]

I'm working on a major new version of a browser based application and I'm looking for comments/suggestions about the architecture/design. It's a single page application using AJAX and client side ...
44
votes
13answers
9k views

What is the advantage of little endian format?

Intel processors (and maybe some others) use the little endian format for storage. I always wonder why someone would want to store the bytes in reverse order. Does this format have any advantages ...
3
votes
2answers
1k views

N-Tiered Web App Using JQuery/ASP.NET Web Services

For fairly small, non-complex web applications, we have utilized jQuery to make asynchronous calls to an ASP.NET web service for interaction with our Sqlite data store. This has proven to be a pretty ...
1
vote
3answers
2k views

Has anyone used “Design Pattern Framework (TM)”? [closed]

Has anyone purchased Design Pattern FrameworkTM? Are these samples worth investment? Are they practical? What are the pro and cons of the guidelines? Anyone used this in the real-world development?
3
votes
3answers
102 views

Location of Solution Components - Centralisation versus Multiple Instances versus Libraries

We're currently in the early stages of building a substantial system, aiming to do much of what several existing systems do, in a flexible, extensible, maintainable way. It will support multiple ...
0
votes
1answer
266 views

How to Improve this socket over TCP-IP system

Im new to Socket programming and im building a Socket over TCP-IP system with this architecture: Server: Basically a TCPIP Listener that waits for connection from the clients. Client: It knows the ...
22
votes
9answers
3k views

Are abstract classes / methods obsolete?

I used to create a lot of abstract classes / methods. Then I started using interfaces. Now I am not sure if interfaces aren't making abstract classes obsolete. You need a fully abstract class? ...
4
votes
1answer
444 views

Understanding the DIP, DI, IoC theory

For about 2 months I've been reading everything I can find for these 3 topics and I'm not yet sure I got it. Dependency Inversion Principle. Means you should always only rely on interfaces and not ...
1
vote
2answers
148 views

Can we regard file-system structure as one part of architecture?

Put this image inside images folder. All JavaScript files should go inside a folder called js. Put templates inside a folder called site-templates and for each template, have three folders called ...
14
votes
10answers
868 views

How can I get paid for reducing technical debt?

I'm currently working for small company that has few technically complicated products. I'm the one and only developer for one of them. About a year ago, I got the legacy version of the product and ...
5
votes
0answers
633 views

Architect's question: How to help developers cleanup maven poms… Is there a static analysis build tool? [closed]

I have a bunch of developers in my org that are constrained under time and political pressure to push projects out at any cost. As a result, their code quality is suffering and they're already ...
6
votes
4answers
1k views

Logic in setters vs. getters?

Okey dokey, next crappy-code-at-work-rant-turned-into-a-real-question (I hope): So, I'm debugging some code, and we've got something like this: objFoo.TabIndex = 5 'VB.NET property with setter ...
1
vote
2answers
720 views

Best practice for mapping between data/business/model and etc

What is the best approach to mapping between Entity, View Model or dataContract. For example I've seen the following modelling structures for SOA. WCF -> DataContract distributed to client. ...
10
votes
6answers
732 views

How should I plan out my code base?

I'm currently working on a project that's about to reach over 5,000 lines of code, but I never really completely thought out the design. What methods should I use to structure and organize my code? ...
17
votes
8answers
1k views

Dangers of huge monolithic application

The big project I'm working on for a couple years now is a control (and everything) application of an advanced device, heart of its firmware. The device is quite advanced, with more different ...
5
votes
5answers
6k views

How do you answer “explain current architecture of your project” question in interviews?

The application which I am working on currently is a bit huge. It cannot be explained in 15 minutes or so. Last time I ended up drawing some class diagrams and how they are linked, but I could see ...
53
votes
17answers
4k views

How to train yourself to avoid writing “clever” code?

Do you know that feeling when you just need to show off that new trick with Expressions or generalize three different procedures? This does not have to be on Architecture Astronaut scale and in fact ...
3
votes
3answers
160 views

How to hire a contract/outsourced architect for

The company I work for has a legacy application that we are looking at rewriting and enhancing using more modern technology. We are a very small company (5 people) and do not have the resources to ...
0
votes
2answers
88 views

Encompassing term for software and data in a system

I am writing up a description/guide/wiki of an "open source software framework for the easy integration and utilization of datasets, algorithms, tools, and computing resources". I feel like software ...
7
votes
2answers
920 views

In .NET (Visual Studio), when do you create a new assembly?

I'm working on a Silverlight application. I've split it up in several assemblies: Domain Repositories (everything with persisting to the Sterling database) UI ... This is how I've learned it, but ...
0
votes
3answers
764 views

Choice of technology to develop multi-platform application

What I have is business WinForms application written in C#. What I would like to do is to redesign it to meet multi-platform approach. I was thinking about architecture involving application server ...
1
vote
6answers
504 views

What do you call this pattern/technique?

Lately I've used this technique a few times, and I'm trying to figure out if it has a name, if it's one of the patterns, etc. In complicated situations where I might normally have a number of giant ...
2
votes
2answers
466 views

CQRS applicability when some commands need to block the UI

I am working on an app which I would dearly love to transition from a fairly traditional layered architecture to CQRS, for a number of reasons, not least fo which is that having a robust event log ...
6
votes
3answers
733 views

Is collective code ownership mandatory in Scrum?

Is is an absolute must when following the Scrum methodology to practice collective code ownership, instead of for example weak code ownership?
15
votes
1answer
314 views

Are there any examples of implementing and effectively responding to a “Chaos Monkey”?

Jeff Atwood recently wrote a blog post about Netflix's implementation of a "Chaos Monkey". It is a very high level article. I am curious if anyone has actually implemented this technique for testing a ...
3
votes
1answer
3k views

What's the difference between a solution and platform architect?

I'm having trouble finding any information regarding the job title "platform architect". What is the difference between it and a solution architect?
1
vote
1answer
242 views

Designing controller for modular Java architecture

We are designing a system which mimics a BPEL application with sets of functional requirements such as bulk messaging, managing SLAs, error handling and so on. One of the intentions is to modularize ...
1
vote
1answer
187 views

How do libraries such as DirectX relate to drivers?

I've always been curious, how libraries such as DirectX, OpenGL and OpenAL are implemented. Do they use some sort of unified API provided by OS? Talk directly to kernel? Maybe hardware drivers provide ...
6
votes
10answers
405 views

What is the best way to discuss/plan/negotiate about code architecture remotely?

Our team is distributed in space and time, so we have no ability to discuss the architecture of the code in real time. How can we discuss it via documentation: write code interfaces/ comment/ modify, ...
-2
votes
2answers
1k views

Architecture diagram of a computer virus

I am looking for an architecture diagram of a computer virus. Does anyone have a link to a good example? Edit Looks like I am getting hammered with downvotes. I agree that there is no single ...
327
votes
33answers
110k views

How do I create my own programming language and a compiler for it [closed]

I am thorough with programming and have come across languages including BASIC, FORTRAN, COBOL, LISP, LOGO, Java, C++, C, MATLAB, Mathematica, Python, Ruby, Perl, JavaScript, Assembly and so on. I ...
0
votes
2answers
191 views

Gathering application architecture

Suppose there is system for gathering info about system activities. There is a client part with an interface and there are agent parts that are installed on each machine. I estimate that there could ...
2
votes
2answers
2k views

What is the architecture model of an Android application?

I finished my app in Android and now I have to write about the architecture model in Android. Does the Android architecture resemble or fit with any of the well known architectures such as like MVC ...
7
votes
4answers
395 views

What “code smells” are there that are a symptom that an event listener model is required?

What are the symptoms in a code base that indicate that an event-listener approach is required? It seems to me that when there are classes that need to be called by multiple, not defined at ...
2
votes
2answers
365 views

Solution organisation

I have been working on asp.net applications for 6 years but almost all of it has been extending and maintaining existing applications. I now have the need to develop a new application and I am ...
1
vote
1answer
90 views

Clarification needed for various architect terms and their roles

After going through many SO questions and answers on "Architects" , I am now basically confused with the various terms and their roles. Could any one please explain the terms clearly and their roles ...
4
votes
2answers
972 views

Using an actor model versus a producer-consumer model?

I'm doing some early-stage research towards architecting a new software application. Concurrency and multithreading will likely play a significant part, so I've been reading up on the various topics. ...
20
votes
8answers
10k views

What software can be used to create architecture diagrams? [closed]

I use MS Visio for most of my design/architecting work when I need to be able to save the diagram somewhere and edit it later. I'm not the biggest fan of Visio, but it gets the job done (and it's free ...
2
votes
5answers
431 views

Anti patterns - Worth spending time or not

I have read this question and after a very long time it's clear I still don't understand anti-patterns. perhaps, it raised a new level of curosity to know why should I read Anti design pattern if they ...
4
votes
1answer
288 views

Are there any actual drawbacks to self-referential method chaining?

I recently suggested a method of chaining be implemented for a certain class in a certain project so readability of the code could be improved. I got a "fluent interfaces should not be implemented ...
3
votes
2answers
2k views

Data Access Layer, Business Class or Repository?

I've been having a debate within my team on what constitutes a Data Access Layer vs Data Functions vs Business Layers. My thoughts is all database access is done in a data access layer with ...
7
votes
1answer
2k views

What open source C# projects exemplify separation of concerns and good solution structure? [closed]

I'm looking for something showing best practices in N-tier enterprise application design with focus on code re-use and scalability. Possibly using DDD or CQRS methodology. Don't really care about ...
9
votes
8answers
2k views

Scanning a billion rows in an ultra-fast database

Background A local database contains nearly 1.3 billion unique rows. Each row is indirectly associated with a specific latitude and longitude (location). Each row has a date stamp. Use Case The ...
1
vote
2answers
212 views

When embarking on a cloud computing project should a Chaos Monkey be the first application?

After reading Jeff Atwood's article "Working with the Chaos Monkey" and considering the implications of "Fallacies of Distributed Computing" it made me wonder if the first task of developers creating ...
4
votes
3answers
489 views

Architectural Patterns for a Game

So I've got a solution that contains a few big projects, which I'm trying to break down into smaller projects with more isolated responsibilities. This is a game I'm tinkering with -- I'm mainly a LOB ...
13
votes
3answers
833 views

What is the best way to do offline failover of a desktop based client that uses a web service?

I have three incoming projects that share a common problem: they need to have the logic on a web system and they need a local application (e.g. point of sale) that communicates with such system ...
4
votes
1answer
203 views

How can you make a cluster run a task only once?

If you had a task that you wanted to run only once on a cluster of servers, at a regular interval what would be the best way of achieving this? The definition of cluster in this case is 2 or more ...
3
votes
1answer
382 views

What is one correct architecture when using a DB with multiple clients?

We have a legacy system with data stored in a SQL database. Several clients connects to this database using a web service. The web service expose a lot of "commands" to query the database and to "do" ...
-1
votes
3answers
243 views

Architecture suggestions [closed]

I'm writing a small application that will reset the entire “environment” consisting of various machines and applications. Machine names are added via config file - this is read, the appropriate ...