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

4
votes
1answer
87 views

Considerations for decoupling and refactoring business logic to a REST API

We've got a .NET Solution consisting of a MVC Website and a bunch of libraries for business and data logic. In the past the website was the only way to interact with our business logic, but we're ...
3
votes
3answers
282 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 ...
0
votes
0answers
34 views

Suggestions for dataloading - semi dynamic data

I have a very old Perl based system that is used for CAD drawing searches, where each drawing has many metadata fields associated with it. Currently, the 'old' system has a database schema that has ...
2
votes
1answer
120 views

What functionality to expose in a database abstraction layer?

I'm trying to design a simple way of abstracting away data persistence behind an interface, but I'm having a hard time figuring out how much fine grained control should be exposed to higher layers. ...
0
votes
0answers
30 views

Resolve route before invoking middleware chain

Say I have a HTTP middleware chain that handles all incoming requests. Where should the incoming request be resolved into an appropriate route? I have thought about doing so before the middleware is ...
-1
votes
1answer
70 views

Are there methods for mapping out a program's flow? [closed]

I am writing a modeling script that is composed of many functions, and I'm trying to keep a document going that looks something like this: build_model(data, outcome_variable) returns(model) ...
0
votes
3answers
242 views

What does Architecture of the project mean

I'm working on website and java application for my project and I'm writing report and there is question that say "What is the architecture of the project" I don't know what should I write because I ...
0
votes
3answers
127 views

How to deal with customer specific code

I would like some input to the following problem. Our product consists of many separate "modules" which can depend on each other. To bundle them up to a final product we create another "module" to ...
0
votes
0answers
91 views

How to limit api calls

I have following APIs in Node and I use Angular to consume the API. Each user is restricted to 100 news item. GET /news --> Get all the news GET /news/:id --> Get news with the id POST /news --&...
5
votes
5answers
463 views

.NET: Are web-based applications inherently harder to build than client-server?

We currently have an ongoing discussion about which approach to move into - we want to replace multiple older environments with .NET applications, and two potential architectures are under discussion: ...
2
votes
0answers
83 views

Architecture design for Web API with single endpoint

Scenario: I have a situation where I need to refactor a Web service with a single API endpoint that uses complex logic to insert, update and fetch data from a database. The clients use one call, and ...
4
votes
2answers
195 views

What are the advantages of using multi-tenant architecture with separate db schemas per customer?

I have a client that wants me to build a SaaS application with a multi-tenant architecture, where different clients will go in a separate schema on the same db server. I have seen this architecture ...
0
votes
2answers
105 views

When to use default arguments in functions [closed]

I've seen some people overusing default arguments and I was wondering when it is reasonable to use them. The main issue that I have is that sometimes it makes me think it using overloading when it ...
2
votes
1answer
86 views

Can I manage transactions in the UI

Do I need an "application/service" layer to manage transactions if the domain layer only services the UI? In other words, can't I just manage transactions in the UI when I have only one consumer of ...
2
votes
0answers
97 views

Data Layer Architecture Help

I need help architecting a data access layer using Entity Framework. Here are the requirements: The database is preexisting, an absolute mess, and it's structure and cannot be altered Entity ...
1
vote
1answer
85 views

System for scheduling parallel tasks/callbacks

I am looking for a system for building state machines with timed/scheduled transitions, and with events that happen periodically during a given state. I can implement it myself, though I feel like ...
4
votes
1answer
71 views

Protocol vs Generic

I have a class that uses a type, but it doesn't need to know anything about that type. In Swift, I can code this up one of two ways: protocol Type { } class Class { // use Type } or class ...
1
vote
4answers
450 views

Using negative numbers to return error conditions

In a method where any positive number returned would signify success, would it be good practice to use negative numbers to define error conditions? Could then use enums to make readable.
2
votes
3answers
92 views

What should be primary guideline when defining a bounded context?

When defining bounded contexts of a Domain, what should be a primary guideline: departments (Sales/Manufacturing/Warehousing), where each department has a common context (http://programmers....
1
vote
1answer
29 views

Approach for comparing versions of hierarchy

I'm looking for a language agnostic approach for the following. We are prototyping this in both relational and graph DBs, so, again I'm open to hearing all opinions with respect to those. Here is ...
2
votes
3answers
161 views

Can one html page with web services replace current server-client technology?

I have everything I need in 2 services in form of REST api's, is it a good idea or even possible to replace my existing asp.net app by writing ONE single html page (embedded with Angular templates) ...
1
vote
3answers
79 views

Should a repository or the Login/Register service have an encryption service as a dependency?

I'm designing a simple user login/register program with user login/register and a repository. The passwords for users should be encrypted when stored but I don't know where to put the encryption step ...
2
votes
3answers
164 views

Logging an audit trail (Java application)

I'm creating a Java (Spring Boot) application for creating Entities. I've got my @Controller for getting the data from a web front end, I've got my @Service for processing the data, and I've got my @...
0
votes
1answer
76 views

Should I use cqrs + es to build a slot machine app?

for me the app that I'm building, a very simple slot machine app where there is which users can deposit money to buy credits, and use those credits to play teh slot machine, and withdrawl their ...
1
vote
2answers
73 views

Stateful server on heroku

I'm building a multiplayer trivia game where the server is written in NodeJS and hosted on Heroku. I ran into a problem when the server should notify the users that time's up for answering a question ...
0
votes
3answers
64 views

Value of dependency injection in MVC with skinny controllers

Dependency injection is often recommended in MVC projects because it's easy to implement with the pattern and adds a host of potential benefits. Indeed, it actually comes bundled with the default MVC ...
3
votes
2answers
161 views

Write unit tests for the libraries, or just the application?

Background I am fairly new to unit testing, and have been recently using the Visual Studio Test Manager to create my Unit Tests. The way that I have currently been doing things is as follows: ...
0
votes
1answer
67 views

Is it a good practice to use a Service without Delegate?

I have a simple REST application with a single controller. The application needs to fetch data from a Database, convert it to JSON and return this to the caller. I need to decide what layers I should ...
3
votes
2answers
141 views

Do there exist terms or classifications that describe the type of command line program you are writing?

Are there terms that are used to describe what kind of command line program you are programming based on how the program is designed to interact with the user? For example, I can write a program that ...
1
vote
1answer
129 views

How to deal with states in front end?

This may sound as a naive question but its bugging me since a long time. I have the following scenario: I have written a new shiny Todo service with my favorite front-end and back-end framework. To ...
1
vote
1answer
87 views

Most efficient way to keep count of objects in State X without constantly counting

The application I work on manages hundreds of thousands of records each in a different state in their lifecycle. A large requirement is to have a nearly accurate count of these objects in each state ...
0
votes
1answer
63 views

Universal Form Handler

I'm building a API that gets called from web / mobile applications written using Ionic (web languages on mobile), which uses Angular.js. We want to be able to do server side validation of forms but ...
0
votes
1answer
42 views

Where to put peripheral use cases in android while using clean architecture

I'm trying to work myself into the Clean Architecture by Bob Martin with respect to android applications. It seems to me like there are Use Cases which do not encapsulate the Domain Layer, but belong ...
1
vote
3answers
47 views

Archiving data by semester

The problem is similar to this question, but not a duplicate. What I'm looking for is a better solution than my current one. I'm building a web application for a department in my university, and due ...
1
vote
1answer
62 views

My web app uses a number of photo hosting APIs. What would be an effective database design to store their limitations?

For the sake of an example, let's say I'm using Picasa, Flickr and 500px APIs, and that each of the services has limitations on these simplified parameters: overall account space individual file ...
1
vote
1answer
49 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 ...
-2
votes
1answer
133 views

Business domain vs technical domain

So I came across this post while researching about package structuring for MVC. I just need some clarifications on what a business domain and technical domain are. Examples would be helpful.
0
votes
0answers
33 views

Local and web apps: spawning child process vs two independent processes

This is high-level question of sorts, hoping to avoid answers that would get into OS specific logic, language/framework specific logic, etc. I have a console application that I built mostly for ...
2
votes
2answers
172 views

What is a good approach to get a detailed system design from an existing system?

I will be working on a system which will be ported over from Java to .Net. It is a pretty big system. I don't have any specifics about how the system is designed, no documentation, nothing. You know ...
3
votes
2answers
432 views

Communication between microservices - distinguishing internal calls safely

I am rearchitecturing and rewriting my monolithic BaaS solution into microservices regarding to scalability and single responsibility rules. Due to the internal dependencies, services are placed on ...
0
votes
1answer
51 views

Using static methods in layered architecture

In layered architecture does it matter where static methods go? Or is it the architect deciding this? For example can the DAL be static to cache records and perform smart data retrieval at the ...
2
votes
1answer
208 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 -&...
1
vote
3answers
256 views

Where should I do localization (server-side or client-side)?

I am currently developing a new web application based on a rich JavaScript client which communicates with multiple REST web services on my server. That application is intended to be used in at least ...
-3
votes
1answer
132 views

Should I use NoSQL or HDFS for storage?

I have millions of tweets currently stored in HDFS and I plan to analyze them from Spark (Data mining, text mining, Frequent Term-Based Text Clustering, Social Network Analysis) however, do not know ...
1
vote
1answer
133 views

MVC Architecture: How to generate a view-model that is displayed on every page

I have been building a greenfield application. It is three layer (data-access, domain-models, presentation) with the presentation layer being VMVC. This is the cleanest application I've ever built by ...
6
votes
2answers
246 views

DDD: Creating reusable modules and service type distinctions (Domain, Infrastructure, Application)

So after reading "Implementing Domain-Driven Design by Vaughn Vernon" I've decided to refactor my code for better re usability by isolating what I believe to be core domain concepts into separate ...
5
votes
3answers
109 views

In the MVP pattern, the Presenter must control the call flow of Model methods?

I have a Presenter ( RoomPresenter) and a Model ( RoomModel). My RoomModel have some methods like: void createRoom(RoomData roomData, List<User> users) void addUsersToRoom(int roomId, List<...
1
vote
1answer
77 views

Architecting a middle-tier enterprise system

I am a software developer with limited exposure to designing larger systems. I am interested in determining some common techniques, maybe even common diagrams, to help me complete the design of a ...
0
votes
0answers
48 views

Incorporating external web services in Java/Spring web app

With traditional Java/Spring web apps, I've historically used an JEE architecture where there's a domain tier and a web tier. The web tier mostly contains web controllers. The domain tier includes ...
1
vote
1answer
61 views

What is meant by “Call Stack” in the context of an OWASP review?

I am studying the OWASP Level 2 review measures and methodology. I am applying this to a software I am designing and developing now, so the goal is to write the software the proper way so that it will ...