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
55 views

pipeline step with two outputs which will be used by different later steps

I am creating a java package which offers an API based on a pipeline pattern. That is I have a series of steps which can be plugged together in any combination provided their inputs match the Output ...
1
vote
0answers
82 views

Architecture on OpenStack with Docker [closed]

My team presently has an application in production that was hastily written and poorly maintained. In an effort to slowly replace pieces of the overall application and address bottlenecks, I’ve been ...
10
votes
2answers
435 views

Why do programmers define programming models to replace C/POSIX for parallelism?

Providers of new computer architectures regularly try to introduce new programming models, e.g. recently CUDA/OpenCL for GPGPUs, and displace C/POSIX as the control interface to platform ...
1
vote
2answers
92 views

Implementing per-user storage usage quota in SaaS products

In a SaaS solution, that allows users to maintain their data on the server, if I have to implement various pricing schemes, where each scheme offers different storage quota, say, Basic subscription ...
1
vote
2answers
64 views

How to design a meta model for configuration? [closed]

In our software we have a client/server architecture where the server is actually running on an embedded system with various hardware components (sensors, etc.). The different sensors as well as other ...
2
votes
2answers
476 views

Making major version step in software development in separate repository [duplicate]

Currently we are planning to switch from our software version 5.x.x to 6.x.x. Such major releases contains in our case a lot of refactoring work and changing the software architecture. Instead of ...
1
vote
2answers
285 views

How to write highly changeable, highly complex software? [closed]

I know questions like this has been asked before. But none of them truly answered me. How to keep a big and complex software product maintainable over the years? How do you organize highly customized ...
1
vote
1answer
45 views

Architecture/technology for implementing Management console [closed]

I'm having a distributed environment which include several machines under the same network , which are being controlled by another computer in another network which is also running a UI for doing the ...
3
votes
3answers
202 views

Web Services vs Server Side Methods

With all the front end development frameworks now available. I'd like to know if the generally accepted protocol is for a back end service to simply provide web services for the front end to consume? ...
2
votes
1answer
173 views

Enterprise Architecture: Where to put persistence/dbContext management? [closed]

I'm working on architecting a somewhat enterprise-level solution and have a question about how to best handle the persistence details. My overall setup is that there's a core set of business logic/...
1
vote
3answers
234 views

I have one app on one server - is there a critical reason to use a web server like IIS or NGINX? [closed]

Considering the following For a stack: ASP.NET/MVC5 WebApi with Single Page Application (SPA). This typically must run in IIS or hosting container (OWIN). I want to deploy multiple web application ...
8
votes
3answers
4k views

Uncle Bob's clean architecture - An entity/model class for each layer?

BACKGROUND : I'm trying to use Uncle Bob's clean architecture in my android app. I studied many open source projects that are trying to show the right way to do it, and I found an interesting ...
18
votes
5answers
2k views

Where to describe architectural problems?

I joined the middle of a middle size project, which runs already for several years. One of problems is that the document describing the architecture was never written. Now I was assigned a task to ...
1
vote
1answer
258 views

What are the benefits of Docker? [duplicate]

Docker is becoming quite popular. I've used it as an end-user just 3 times, and it never worked as expected. But assuming it does work, can you please list some actual benefits? And contrast them with ...
1
vote
2answers
87 views

Architecture supporting digitally signing of tons of soap requests [closed]

What is the optimal architecture for such case: Web application(.Net Web Forms) connects to third party web service via wcf. Third party web service accepts only digitally signed soap requests Some ...
0
votes
1answer
114 views

How to write unit tests for an application that mostly performs “hard to test” actions? [duplicate]

In my company we develop medical data-acquisition systems. The main functions of each application are: Interface with data-sampling hardware; Save/load collected data to/from files on disk; Perform ...
4
votes
1answer
238 views

Is it always the best way to go to queue emails instead of sending them real-time? [duplicate]

If you had to decide between queueing emails and sending them real-time, is it always the best way to go putting them in a queue and sending them one by one instead of instantly as soon as a user ...
3
votes
2answers
146 views

Design review of a small configuration framework [closed]

I want to create a simple configuration framework. Yes I know, there are many frameworks, which make their job very well. But for interesting in architecture, I want to create my own. My framework ...
0
votes
1answer
51 views

Where should I log in the user based on http session: service or controller?

I know that best practice is to let everything about authentication/authorization to the service layer. Controller should not be aware of that. But how to let a service (from service layer so) to ...
0
votes
1answer
129 views

expressjs: is it bad practice to use req.hostname for querying a db?

I'm building a nodejs app I would like to make available under various settings by my customers. I want my customers to build their websites on top of my app, so: - the app can be configured in a way ...
1
vote
2answers
309 views

What are the advantages of a 'traditional' 'backend' architecture for a standard CRUD app? [closed]

In the past few years, 'client-side' web applications have become popular. A common approach nowadays is to have the backend as thin as possible, mostly exposing an API for the client-side Javascript ...
1
vote
1answer
824 views

Difference between ESB and ETL

When should a ESB vs ETL tool be used? I have worked on ESB projects using Tibco Businessworks quite a few years ago. The message bus that we built used to consume messages from a source system , ...
9
votes
4answers
528 views

Are there any significant disadvantages to depending upon abstractions?

I was reading this wiki on the Stable Abstractions Principle (SAP). The SAP states that the more stable a package the more abstract it should be. This implies that if a package is less stable (more ...
3
votes
2answers
243 views

Should I use my own public API for my web interface?

I am designing an API with django and its rest framework (and I am already not sure if it worth the hassle to version it or not). I totally know the iOS and Android apps will call the API, get a ...
1
vote
1answer
71 views

Custom Outlook Web App Shared Mailbox

We currently have a large amount of custom mailboxes hosted on Lotus Notes/Domino and have been tasked to migrate these over to our Outlook/Exchange environment. The mailboxes are basic Lotus Notes ...
3
votes
3answers
343 views

How to start using DDD in designing a “library” application

I want to design an online book reader. The first step is describing all the use cases which I have listed below: I should be able to search a book by title. I should be able to borrow a book. I ...
2
votes
1answer
67 views

Using short-lived REST requests to obtain messages from a message queue for clients

I would like to put together a system where clients obtain messages from a REST API, but with the producer being able to use the semantics of a message queue: e.g. ordering of messages, a destination ...
2
votes
3answers
290 views

Use of electronics in programming [closed]

Does a programmer need to have a deep understanding of digital electronics. Theoretical v/s practical. As what they teach us at college is pretty basic? If yes, then do all kinds of programmers (...
3
votes
2answers
156 views

C# Abstract math classes from libraries

I'm currently writing a library that abstracts 3D rendering and uses SharpDX and OpenTK as graphics libraries. The problem is that OpenTK and SharpDX have their own implementations of Vector2, Matrix, ...
0
votes
1answer
238 views

Rich Model vs God Class [duplicate]

I have a legacy code containing some behaviour classes, like services and controllers. My model is pretty anaemic. It's just a repository of getters and setters, and I want to refactor it. There is a ...
1
vote
1answer
42 views

What are good/common practices to manage disabling/enabling functionality items in GUI applications for different licenses/permissions?

I have worked on two different desktop applications and both had the problem of enabling/disabling functionality and associated GUI elements depending on available licenses or "user-roles". In the ...
2
votes
3answers
213 views

Design pattern for large amounts of overflowing data?

Our current queues publish messages that consumed by 3rd party services with rate limits. Currently the messages are retried with exponential back-off. However there could be cases where data is ...
2
votes
1answer
73 views

Modeling resources with links

Context To be fully compliant with the REST principles enumerate in Fielding's dissertation, a resource must contains links that redirect to other resources that have a relation with it functionally, ...
0
votes
1answer
86 views

Simple explanation of MVC needed [duplicate]

I am trying to understand MVC, but for most of the Q&A's I have seen, the description is great but I cannot quite understand it, I think it works like this scenario I thought of: User ...
-1
votes
1answer
143 views

Synchronous architecture with asynchronous repository

In order to keep clean architecture of my node.js microservice I have controllers, services and e.g. repositories. I want a synchronous data flow: controller -> service -> repository -> service -> ...
0
votes
0answers
62 views

How to organize common application state?

I'm creating a Java application with JavaFX, using the MVVM pattern to structure the presentation layer (don't get too hung up on the MVVM part, I think this applies to other MV-X patterns as well). I'...
0
votes
2answers
123 views

Change number of publishers/subscribers at runtime

I need to redesign distributed Publish-Subscribe solution in our product. Problem description We have several producers (NT service), queues (MSMQ) and consumers (IIS server). Task handling requires ...
7
votes
2answers
2k views

how to refactor many singletons

I have a medium-sized python program (~5000 lines of code), which I've built up over time, with no particular plan as I went ahead. The architecture I've ended up with consists of 5-6 large Singleton ...
3
votes
1answer
281 views

What architecture should I use for my game entities?

I am working on my final year project and making a multi player game. It's a tank battle game. In the client basically we will have 2 types of Tank. One will be controllable by the keyboard and ...
8
votes
1answer
414 views

Are Windows 10 app services only useful in enterprise environments?

I have been following one of the capabilities Microsoft introduced for the Universal Windows Platform (UWP), namely app services. An app can now provide a service in the form of a background task that ...
1
vote
1answer
250 views

RESTful service layer with MVC

I need a advice on creating an architecture where I want API layer in between UI layer and business layer. UI layer should only consume REST services for displaying data. Reason for doing this is ...
0
votes
0answers
22 views

How to organize enterprise software in Git [duplicate]

I'm running into a conceptual design dilemma with our enterprise software. I'm hoping someone on here can help point me in the right direction. We have many different applications: Three Windows ...
4
votes
2answers
2k views

Benefits of using separate API and UI servers for Web application

At work, we have a large internal application which has been under development for close to 2 years now; I've just recently joined the project and some of the architecture has me slightly perplexed, ...
6
votes
2answers
205 views

Do I violate the Single Responsibility Principle with my multi-purpose AST Class?

I am writing a compiler, for which I devised a rather classic architecture: it's composed of sequential passes piped together, starting with a lexer and a parser, continuing with a macro processor, ...
2
votes
1answer
263 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
6answers
348 views

In which layer I should implement file parsing?

in a simple multi layer architecture, in which layer do I have to implement something like parsing file. For example: I have a file and I have to extract specific information into an object. I think ...
0
votes
1answer
337 views

Why HTML5 got rid of Rich Desktop applications? [closed]

I recently noticed that Rich desktop applications (I define it as an application running inside a virtual machine embded in a web browser, based on tools like Java Web Start, Adobe Flash or Unity web ...
1
vote
1answer
195 views

Data structure to use for time-optimized line-vs-grid check?

I am asking here because I feel that this question can be filed under the "algorithm and data structure concepts" category. Background: I have been recently assigned the task to design and develop a ...
2
votes
2answers
97 views

How to store one-to-many graph? Passing root or passing root and children seperately?

Suppose in the application, there is a type Teacher and a type Students. A Teacher may have a list of Students. So in design, class Teacher has a field of type Collection of Students (aka List). ...
1
vote
1answer
222 views

Best way to separate public API from internal implementation [closed]

I'm developing a little framework (in Scala) where I want to define clean and simple interface for the users of the framework. Some of theses interfaces have to be implemented by the framework itself, ...