system-design

Building a Black Net (Peer to Peer-like Network) with Participant Anonymity or Plausible Deniability

How would you programmatically design a "black net" where peer to peer-like data exchange (file transfer, chat etc) is possible but the anonymity of the seeder/sender(s) is either entirely hidden or at least all participants have 'plausible deniability', meaning their exact involvement and/or knowledge of transactions or activity on the ...

Database good system decoupling point?

We have two systems where system A sends data to system B. It is a requirement that each system can run independently of the other and neither will blow up if the other is down. The question is what is the best way for system A to communicate with system B while meeting the decoupling requirement. System B currently has a process tha...

Tools for quantitative systems performance analysis ?

I have a model of a simple distributed system as a heterogeneous network of a number of producers and consumers of various classes of workitem, and a number of compute nodes which can process those workitems at various rates. There are arcs connecting the nodes introducing latencies and bandwidth limits. What I'm looking for is some pr...

WCF primitive type vs complex type

I'm designing a WCF service that will return a list of objects that are describing a person in the system. The record count is really big and there I have some properties like person's sex. Is it better to create a new enum (It's a complex-type and consumes more bandwidth) named Sex with two values (Male and Female) or use a primitive t...

What is the best strategy to combine IntrAnet and Web-exposed website?

I was wondering if somebody has some insight on this issue. A little background: We've been using Rails to migrate from an old dBase and Visual Basic based system to build internal company IntrAnet that does things like label printing, invetory control, shipping, etc - basically an ERP The Dilemma Right now we need to replace an old ...

Best Architecture for a Public Queue of Incoming Requests?

We have a web app (ASP) that has workflow in it for management to assign work to individuals. The problem is prior to signing out work. During the evening/night/early morning operations are lightly staffed so the management queue of work may not be watched closely if other critical work is being performed away from the computer (getting...

System Design Document

I did some searching on the site for an answer to help guide me, but my efforts netted 0 results. I need to write a system design document for a client that is bringing their entire operation in house. At the current moment they have outsourced all of their programming to offshore developers, and I fear that many of the issues with o...

Static Vs Dynamic controls + Situation based

Hi All, I'm building an web application to manage instructions based on different parameters (eg. JobCode, State, Customer, Product etc..). I have allocated some 20 filler fields for each of such parameters. The display names of the fields may differ from One Project to another. (multiple implementation). Some project may not use all...

Meaning of Perlis's Epigram #22

From Epigrams in Programming by Alan J. Perlis: 22. A good system can't have a weak command language. What does this mean? What are good examples of this principle? Where can I learn more on how to implement a command langauge that meets this criteria? ...

How to overcome shortcomings in reporting from EAV database?

The major shortcomings with Entity-Attribute-Value database designs in SQL all seem to be related to being able to query and report on the data efficiently and quickly. Most of the information I read on the subject warn against implementing EAV due to these problems and the commonality of querying/reporting for almost all applications. ...

Correct Interactive Website System Design Concepts / Methods?

Hi all, I hope this question isn't too open ended, but a nudge in the right direction is all I need! I am currently building an online accounting system - the idea is that users can register, log in, and then create customers, generate invoices and other documents and eventually print / email those documents out. I am a Java programme...

Good recources on a problem decomposition?

Could you please share some good books, blogs, sites on practical problem decomposition, thanks P.S. Please only practical ones not the scientific/theoretical resources. ...

How to increase my "advanced" knowledge of PHP further? (quickly)

I have been working with PHP for years and gotten a very good grasp of the language, created many advanced and not-so-advanced systems that are working very well. The problem I'm running into is that I only learn when I find a need for something that I haven't learned before. This causes me to look up solutions and other code that handl...

How do you plan for starting a new web system?

I've been creating more and more systems recently and I find more and more planning and preparation I do before starting the project. I determine what libraries or frameworks I will be using, what languages, the basic architecture of how the site will flow, etc. I've also heard of other design processes such as hanging styrofoam balls ...

CLI design and implementation?

I am developing a time management tool for my personal use. I prefer using keyboard over mouse, and on the interface have a general purpose text box which will act like a command line. I have just started thinking about what commands I need, what to use for the command names, how to pass in switches and parameters, and so forth. I wonde...

What would be the best suited language/technology in this scenario?

I'm about to develop a small system to display dynamic information in public spaces across an entire building (similar to Flight Information Displays on an Airport). The system will have two main components: a back-office for managing the information displayed a front-end which acctually displays the information. The back-office com...

Creating a simple Non repudiation/fraud proof system

What are the key features should I consider if I want to create a simple fraud proof and non repudiation system? For this question, I am mainly concentrating on the integrity of the database rows. This is not a security permission question. Using a soccer database as an example, some of the key features that I would implement are: P...

Building the Business Rule Engine using SQL SERVER

Hi, I have a requirement to build a Business Rule Engine. I use the SQL SERVER 2005. The business rules are massive, like 2000 pages long. eg. If col1 = 'xyz' then populate col2 otherwise not. if col3 = 'abc' and col4 = 'def' then col5 = 'ghy' etc. etc. So, I think we can't just write all those rules in if else condition in a proc...

How should I pass parameters between separated parts in my system?

I have a large system working on a set of data. My system is combined of several separated parts (like services) - the separation is based on a platform of sort. Throughout the system flow the set of data is altered and updated to a DB. The platform I use allows communication between the different parts with XMLs. So, if one part needs ...

How important is a good modeling tool toward system design

While a quick wiki/google flood me with numerous uml freeware, most of them doesn't meet my expectation (limited to "drawing" level instead of "modeling"). I know sparx's EA and IBM rational rose offers complete design-to-implementation toolkits but they are out of my budget :( Would if be significantly different if I were to sketch usi...