Questions about problem solving and planning for a solution through software design.

learn more… | top users | synonyms (1)

5
votes
6answers
2k views

Software design for procedural programming

Right now, I'm trying to learn a well documented software engineering. I knew that if we code using Object Oriented concept, we can do software design concept using UML. But what if we code using ...
14
votes
4answers
365 views

Should consistency be favoured over programming convention?

When designing a class should consistency in behaviour be favoured over common programming practice? To give a specific example: A common convention is this: If a class owns an object (e.g. it ...
2
votes
1answer
226 views

How should I design a correct OO design in case of a Business-logic wide operation

EDIT: Maybe I should ask the question in a different way. in light of ammoQ's comment, I realize that I've done something like suggested which is kind of a fix and it is fine by me. But I still want ...
2
votes
1answer
389 views

ORM Tools and advantages of circular references in entities

Let me demonstrate a simple example, Class Organization ID type Number, Name type String, HAS A -> Collection Class Facility ID type Number, Name type String, ...
3
votes
3answers
431 views

How to deal with designers? [duplicate]

Possible Duplicate: How do you handle a graphic designer who thinks he's a web designer? As a mobile/web developer in my company, I deal a lot with designers (i.e. Adobe suite ...
5
votes
2answers
1k views

Abstract classes in package structure

I have an abstract class that will have many implementors. There are, of course, many places to put abstract classes in a Java package structure. Should the abstract class be in the same package as ...
3
votes
4answers
277 views

Evidence of Bad Design: Updating feature A breaks/interferes with existing feature B

I am working on a Javascript Web App & I am finding as I expand the program & add new features(new animations) it causes existing features to break or work differently than prior to adding ...
7
votes
1answer
600 views

How can I gather client's data on Google App Engine without using Datastore/Backend Instances too much?

One of the projects I'm working on is online survey engine. It's my first big commercial project on Google App Engine. I need your advice on how to collect stats and efficiently record them in ...
2
votes
5answers
243 views

For user defined data, is it better to use a table of tables or dynamically created tables?

In an application that allows users to define their own tables and columns (details of that are not the focus of this question, but imagine a tool that lets users create their own forms and ...
19
votes
4answers
2k views

Best Practices for Redesigning a Database

I'm aware of some general best practices when designing a database for an application, but what about redesigning? I'm on a team tasked with re-designing an internal business application, though ...
0
votes
1answer
462 views

Wrapping a 3rd party API - Gateway Pattern connections

Given a 3rd party API with a very cumbersome object with many different responsibilities-- we decide to wrap using small, manageable, single-responsibility objects. This is the gateway pattern (I ...
21
votes
11answers
992 views

Choose code design effort or laziness in Bank world

I've worked for two years in a great Investment Bank. I made some technical projects with the desire of creating code the most optimized, respecting the adapted good design patterns, SOLID principle, ...
0
votes
3answers
159 views

User friendly scheduling feature

I'm trying to add a scheduling feature to my web scraping application that will let the user schedule scraping jobs so he can, for instance, perform a job every Monday, or every 2 hours or stuff like ...
3
votes
1answer
478 views

What's a good notation for showing MVC interactions?

I'm developing various websites and functionality to cater to various different use-cases up in Django. Is there a good notation for showing what behaviour is at each stage, e.g., swimlanes. I use ...
7
votes
9answers
3k views

Multithreaded file copy

There is an utility we have which is used to upload files (and perform other operations on the file) to a network shared location. The file size tends to vary from a few mb to 500 mb. A suggestion has ...
1
vote
2answers
161 views

Am I misusing instance initialization?

I often write tests when I need to set data object for integration tests involving a few pages with forms. Herein each form on a page could be represented by a different data object class. There are ...
2
votes
1answer
215 views

Would you choose a database or a dvcs as storage for a documentation wiki?

I'm about to start coding a documentation oriented wiki, as a pet project. The core features are: Extremely easy grouping of documents per version Markdown syntax (subset of) Multiple authors ...
8
votes
1answer
394 views

Is this bad design? How can it be improved?

I wrote the following a while back, but I've come to review it recently, and now don't think it's good design. The design is for a kind of modular database layer using Entity Framework 4. There is a ...
1
vote
1answer
225 views

What's the best way to design a data and php model for a multi-account system?

I'm doing some high-level sketching of a system that will require users to register, when they do they get an account and can invite others to that account. To be clear, an account would be similar ...
5
votes
5answers
2k views

C# Design, many properties, complex constructor and equality

I'm still a relative novice with OOP, so I am still trying to understand some of the best practices for how to design "good" objects. I know this question is probably a rather subjective, which is ...
2
votes
1answer
299 views

Customizing configuration with Dependency Injection

I'm designing a small application infrastructure library, aiming to simplify development of ASP.NET MVC based applications. Main goal is to enforce convention over configuration. Hovewer, I still ...
4
votes
4answers
2k views

Web pages in UML sequence diagrams?

In my current project, we have an ongoing discussion about whether or not it's a good idea to include an artifact representing a web page in an UML sequence diagram for a web application, making ...
5
votes
5answers
1k views

Where should date formatting take place in an MVC pattern?

Suppose that you want to show a user list, on a web application having to handle custom date formats (depending on current selected interface language). Several locations for applying the date format ...
2
votes
1answer
1k views

How do you do to create the ViewModel part of your MVVM designs?

Sometimes, when I plan to create a program using this architectural pattern, I've got a lot of difficulties when I'm in the View Model phase. I'm using WAF Framework to develop this architectural ...
2
votes
1answer
138 views

App shell using MEF

I am designing an WPF app shell using MEF. I would like to have the app start a "view" upon startup. I also would like the option of having another add-in have a "startup" attribute and then the app ...
1
vote
4answers
673 views

Design Document From Code

I am not much familiar with documenting/System designing stuff. I have to maintain an application written in C# - working as windows service. However there is no documentation for this system which ...
1
vote
1answer
1k views

Drag and drop application design

I am hoping to create a mind-mapping like application and it needs to have a central workspace that will hold the map. Users should be able to drag items (like rectangles, texts, etc.) from a ...
3
votes
2answers
2k views

Example of an Object Oriented System design [duplicate]

In the early days of web programming there was the Java Pet Shop application which was used as a reference type of example application. Currently I am looking for a similar reference but with the ...
0
votes
2answers
203 views

How can I efficiently handle input data without a framework?

I am working on a very small project and my design would be using technologies such as JSP, servlets, and POJOs. I'm considering a workflow where a JSP page will receive input data, then submit it to ...
8
votes
9answers
435 views

Internationalization : What things to think about?

I was listening to Jon Skeet's talk at the last StackOverflow Dev Days and he piqued my curiousity regarding internationalization. Suppose I have a waffle-making program, either complete, or still in ...
12
votes
8answers
2k views

Single responsibility principle - am I overusing it?

For reference - http://en.wikipedia.org/wiki/Single_responsibility_principle I have a test scenario where in one module of application is responsible for creating ledger entries. There are three ...
2
votes
5answers
624 views

Design Methodology for Developing Interoperable Systems?

A bit of background The company I work for has been creating database applications since around 1980 and, until relatively recently, most of these systems have been stand-alone "silo" systems. ...
1
vote
2answers
256 views

What kind of documentation should UX designers provide to the developer?

It would be interesting to hear what is used besides sketches from UX engineers during development of a GUI. Unfortunately our UX team provides just a minimum of requirements for GUI screens. I ...
2
votes
2answers
392 views

How do you end up with event-sourcing if you use a xDD approach?

When working in a TDD or BDD manner your unit tests are supposed to drive your design. But how do you end up with event-sourcing using a xDD techniques? As I see it event sourcing is something you ...
2
votes
3answers
684 views

Recommended content for layers

As an expansion from my previous question about using separate projects for seperate layers - Good practice on Visual Studio Solutions I now wish to know if I am putting the right functionality in ...
3
votes
7answers
490 views

What is the appropriate level of granularity for services in a distributed or service-oriented architecture?

Our shop is attempting to move towards a more "distributed" architecture. I didn't want to use the term "SOA" because I'm not really sure if that's appropriate in our situation. For each new feature ...
0
votes
1answer
30 views

Users and roles: Where to put queryUsersWithRole()?

I have two model classes User and Role and two managers/DAOs (UserManager and RoleManager) plus a method which gives me all users with a certain role (List<User> getUsersWithRole(Role)). In ...
27
votes
6answers
2k views

Object Oriented “normalization”

In database programming there's a technique called "normalization" that you do to data you want to store. Has anyone tried to apply this concept to object design? How did you? How did it work out? ...
0
votes
1answer
949 views

What are the important factors for database table design and object design?

When I do database table design, I often wonder if I should try to make the table as simple as possible, or if I should make the object as clear as possible. The requirement is to store all month of ...
11
votes
2answers
740 views

Is Dijkstra's algorithm an appropriate solution to this signal routing problem?

I'm in the process of developing a signal management and routing module for an integrated audiovisual system and am designing it with the intent of being as flexible as possible across different ...
1
vote
6answers
357 views

How to encourage creative user interface design?

When I picture a really well functioning software team in my mind, one of the visions I have is of a developer showing off to a small group of devs some cool, clever UI that they just came up with ...
1
vote
3answers
188 views

How to get a programmer to apply nice design touches? [closed]

We have a small webdesign firm, and count with one designer. We can currently not afford too much expansion in the design area, so that means that the designer creates the main design of a website ...
5
votes
5answers
381 views

How valuable and rare is being able to create something from scratch?

I just found out the other day that the previous web company where I worked for 8 years will pretty much be shut down except for occasional updates and support of existing applications. I was ...
3
votes
1answer
621 views

ASP.NET MVC - should the MVC's M, V and C be explicitly aware of domain entities?

Since this question seems to be pretty subjective, I'm posting it here. Let's say you're writing your own version of Stackoverflow using ASP.NET MVC, so there are classes like Question, Answer, User, ...
10
votes
7answers
529 views

How do I go from being able to write code to being a good developer?

I'm frustrated by the lack of concrete explanations on how to go from being able to script (bash, awk) and write simple applications (c, php, python) to designing and developing larger, more ...
10
votes
6answers
885 views

Struggling with the Single Responsibility Principle

Consider this example: I have a website. It allows users to make posts (can be anything) and add tags that describe the post. In the code, I have two classes that represent the post and tags. Lets ...
2
votes
4answers
273 views

How one could use a live editor

I was thinking about a live editing environment where code / a source file is synchronized so that changes made by one user would be carried across to all others editing the file. Something like ...
17
votes
7answers
969 views

What are the essential things one needs to know about UML?

I want my scribbles of a program's design and behaviour to become more streamlined and have a common language with other developers. I looked at UML and in principle it seems to be what I'm looking ...
17
votes
5answers
774 views

Is loose coupling w/o use cases an anti-pattern?

Loose coupling is, to some developers, the holy grail of well-engineered software. It's certainly a good thing when it makes code more flexible in the face of changes that are likely to occur in the ...
3
votes
4answers
250 views

How to determine the right amount of up front design? [closed]

Software developers occasionally are called upon to write fairly complex bits of software under tight deadlines. Often, it seems like the quickest thing to do is to simply start coding, and solve the ...