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

1
vote
1answer
237 views

Data serialization architecture, injection on construction vs. on function call

I am creating a data serialization/deserialization mechanism for essentially a persistent storage object. Due to the variety of systems this mechanism could run on, there needs to be a a variable ...
4
votes
3answers
3k views

Separation of retrieving data and business objects between DAL and BLL Layers

I did some research before posting this question. Among other questions or post, one of those is provided below. I could not get a clear mind how to determine.. Business Objects within a Data Access ...
2
votes
2answers
36 views

AMQP broker and happen-before guarantees

I am trying to figure out how an AMQP broker, such as RabbitMQ, can be integrated in our architecture. This should allow to easily scale horizontally in the future. For the sake of simplicity, let me ...
0
votes
1answer
24 views

Design question to best option for storing data in file or DB

I am working on a feature where I need to store some data and I am not sure what should be my best option to store this data. I am sending data to some third party and want to show some part of that ...
17
votes
6answers
3k views

Why did the team at LMAX use Java and design the architecture to avoid GC at all cost?

Why did the team at LMAX design the LMAX Disruptor in Java but all their design points to minimizing GC use? If one does not want to have GC run then why use a garbage collected language? Their ...
1
vote
1answer
204 views

Onion architecture and independence

Trying to understand onion architecture. As I understand it, there is different opinions about the names of the layers. In this post I refer to the layers as: infrastructure -> api -> domain -&...
100
votes
9answers
16k views

Is there any “real” reason multiple inheritance is hated?

I've always liked the idea of having multiple inheritance supported in a language. Most often though it's intentionally forgone, and the supposed "replacement" is interfaces. Interfaces simply do ...
1
vote
1answer
47 views

Handling Production Seed Data

We have a requirement for a new feature which requires some seed data to be present in the database (basically some default values) for the feature to function correctly. We have this in 2 different ...
3
votes
1answer
273 views

Building dedicated codepad in PHP

I am author of growing framework, which is focused around User Interface building in PHP. Essential requirements for the up-coming website redesign is ability to run code examples. I am willing to ...
0
votes
0answers
64 views

How to convince teammates to start separating database queries into one single layer

We are using ORM with bunch of database models and those ORM database queries (and models, of course) - are literally all over application from top to bottom. And when change in model structure ...
0
votes
2answers
59 views

Parallel testing API based mobile application

The setup So we have a RESTful JSON API. There are iOS and Android applications that consume the said API (one of each). The code for the applications is such that the endpoints are hardcoded to "...
0
votes
0answers
59 views

Should Rails views actually render anything?

I've joined a Rails app with hundreds of pages and no tests, first thing I've done is set us up with model-, controller- and feature-tests and I'm adding them as I work on areas. One thing I'm ...
0
votes
0answers
21 views

Background layer for e-mail actions

My application features an e-mail layer (IEmailHandler) that implements various protocols (via IImapHandler, IPop3Handler etc.). Now when the user logs in, we fetch all their e-mail accounts (could ...
1
vote
1answer
51 views

Send messages from multiple services/application and display them in one place

Inside system I'm developing I have several Windows Services, couple of applications running in Scheduler and COM+ application that is running my custom DLL's. Some of them are running on same PC, but ...
2
votes
4answers
1k views

Write data to SQL Server directly from BizTalk or use external service?

An external source will be sending us XML data that BizTalk will pick up and transform into an internal schema. We need this data to be loaded into a SQL Server database as we're going to expose some ...
1
vote
4answers
51 views

Handling missing values in response

Suppose a web application relies heavily on the third party APIs and I am expecting a response from it but somehow I don't get any, maybe because of the API exception or missing value on the API side ...
0
votes
0answers
12 views

Web application: Split auth from business logic? And session values?

So when starting a new web project (ASP.NET mostly) I always end up arguing with myself: Where do I keep the Authentication logic, the User entities and how do I combine them with my other business ...
0
votes
1answer
39 views

Web App Authentication's Architecture Related Query

I have a web app that makes use of node.js in the backend and angulajs on the front end. Let's say I have a user who has the ability to login via multiple systems; I must allow multiple logins. I ...
0
votes
1answer
62 views

Cache invalidation on multiple servers

I have 6 web servers which are giving me problems due to cache inconsistency. I am thinking of building a cache invalidation service such that there is a topic on which all the servers can publish a ...
-1
votes
0answers
127 views

Word for “Systems that fatally work” [on hold]

I was thinking about the concept of systems built in such a way that the desired outcome is the only possible result of the natural evolution of said systems. Systems that literally cannot fail. As a ...
1
vote
1answer
69 views

How to decouple backend app?

I have heard this term many times, and it makes sense in theory. That app is doing many things and it'd be easier to manage, scale, test and improve them if they are not completely connected to each ...
3
votes
3answers
674 views

What are the non-technical reasons that make Object-Relational Mapping tools (ORMs) so difficult to write?

I know the technical pitfalls of writing an ORM are pretty well-known nowadays, but what are some non-technical factors (e.g., Scope) that make it difficult to writing a good ORM? I have already ...
0
votes
0answers
53 views

What could the best/better/popular way to design an application so that it can at least share backend code across platforms(web/desktop/mobile)? [closed]

I wanted some suggestion/ any input that will help me make some decisions. Somebody might have already faced such situation and dealt with it and have learnt lessons already. Apologies in advance. ...
0
votes
0answers
48 views

How does maven internally manages package dependency?

Can some let me know how does maven internally manages package dependency? Is there any architecture diagram available on the net for the same? I also asked this in Quora and maven user mailing list ...
0
votes
3answers
228 views

DDD Request Validation Handling

I stuck somewhere that I can't find a solution! There are plenty of validation questions here, but as far as I see, most of them were asking about entity validation. But what about request validation? ...
1
vote
2answers
163 views

Repositories, Gateways, Models and Architecture Questions

I am working with a Laravel project and I am looking for a way to solve the issue of bloated models and cross referencing between them. I had started extracting higher level methods to a repository ...
2
votes
2answers
116 views

Unit testing / How to validate private fields of a newly created object?

I have a basic unit test (for the sample) that involves this code: void testShouldCreateACar() { Car car = someone.createFerrari(); assertTrue(car.name == "Ferrari"); // can't access name since ...
22
votes
11answers
3k views

Should coding best practices always be used [closed]

When coding software, should the architecture always be best practices or practical practices in regards to the application being built? If I am building a two page web application that might live 5 ...
0
votes
1answer
57 views

Cross-cutting concerns and library sharing in Microservice architecture

I've been thinking about practicing with a simple Microservice (oxymoron I guess) application and I found an issue I was not able to resolve. I'll go with a concrete example since the definition of ...
1
vote
3answers
102 views

Event logging: record a whole message, or a list of properties and generate?

I've written a simple event logging system, which I write to with a function similar to: void IIncidentLogic.ReportIncident( string code, string noun, string hostname, DateTimeOffset ...
2
votes
3answers
293 views

Design periodic batch notification system

Problem: I am trying to design a system which takes requests from customers in real time and log them in a database. For example - request to purchase an item. The customer then gets a unique ...
2
votes
1answer
96 views

Web server facilitating a TCP handshake between two native apps behind typical home firewalls

I currently have two parties set up: typical HTTP web server native app distributed to consumers (presumably behind typical home router/firewall configuration) The app is designed to work on ...
2
votes
2answers
104 views

How To Design Time Slot Based App

I have got a responsibility of designing an app which allocates time slots for doctors booking. The scenario is like, there'll be entry for doctors and their time slot for each days. For E.g. ...
0
votes
1answer
137 views

Onion architecture vs 3 layered architecture

I see only benefits to the onion architecture over the 3 layered architecture where the BL had responsibility to call methods on DAL (or an interface of DAL) to do CRUD. The onion has better ...
1
vote
1answer
49 views

“An event can be made of two parts, the event header and the event body.” Is this about event or event notification?

From: https://en.wikipedia.org/wiki/Event-driven_architecture Considering: Events do not travel, they just occur. Are the following statements valid? Event channels are conduits in which events ...
1
vote
1answer
48 views

Eventing solutions for java legacy applications too old for real JMS queue/topic eventing?

What are some architectural solutions that can mimic eventing for systems (Java) that are too old to implement eventing solutions, such as conventional Queue/Topic based JMS messaging? I have a ...
5
votes
3answers
308 views

How can I share data across several websites?

I am trying to develop a simple system for sharing data across several websites. Most of them are developed in PHP while some are developed in Wordpress/Drupal. Redundant information is spread across ...
3
votes
1answer
93 views

Synchronization of resource that has moved out of requests filter range

I have a RESTful API with corresponding clients. If a client request fetches a set of resources (Events) based on a filter, say events taking place between 2015-04-13 - 2015-04-19. If an event which ...
1
vote
1answer
226 views

Modular Filter Architecture for WPF

I am creating a little stock-management tool for private use. I have different views, which need similar but different filters. As an example I have a "current stock" list where I can filter for ...
3
votes
3answers
281 views

Are global variables okay to use in asynchronous programs?

This may be a stupid question, sorry. I've read about the drawbacks of global variables a lot on this site. I'm finally trying to increase my code quality for a large project that'll be reviewed by ...
1
vote
4answers
997 views

How do you make a service stateless?

When doing Domain Driven Design it is advised that services should be stateless. There are several kinds of services when doing DDD: Application services. Domain services. Infrastructure services. ...
0
votes
1answer
27 views

Should I create a settings provider implementing an interface for each handler?

Let's say I got a series of services that are handled by a central hub, part of the behavior of the application is controlled by a series of settings that are stored on a file. Right now when I get a ...
5
votes
1answer
272 views

Small classes and methods, but code still difficult to maintain and follow

Did I do something wrong in my code organization ? I still find my own program difficult to follow. I tried to decompose my program on small, easy to understand classes and functions, still I find ...
2
votes
1answer
90 views

Is it anti-pattern to alter domain model on front end?

We are making a quiz application, I'm trying to integrate my Angular 2 UI with the REST api. Our Quiz domain model consist of the following (simplified) hierarchy: -Quiz -Category -Question -Choice ...
0
votes
2answers
75 views

Connecting an HTML form to a Java program

I would like to create a front-end interface in HTML that interacts with a Java program via an HTML form. I would like to be able to publish this project on the Internet. In other words, the text ...
0
votes
0answers
14 views

Layout for Java Multi window applciation

I need to get to know how to architect my an application with multiple windows. It has a dashboard kind home or main window with few icons(12 or more) on it. Clicking on an icon it will open a ...
1
vote
3answers
215 views

What is wrong with treating a client session as a resource/application state in REST architecture?

Given these example REST API / HATEOAS applications: InfoQ How to GET a Cup of Coffee example Java Spring REST API example ... where POST/PUT/PATCHING resources clearly alters the state/...
27
votes
8answers
4k views

Value of using private methods vs all public in classes for internal software for ease of unit testing [duplicate]

Here's a skeleton of a class I built that loops through and deduplicates data - it's in C# but the principles of the question aren't language specific. public static void DedupeFile(FileContents fc) {...
2
votes
2answers
206 views

Models, types, different views and meta data

We have a software which purpose is to be used to help users build their own applications. It has to be very loose coupled with the infrastructure: for example, I can imagine users running it on MySQL ...