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

learn more… | top users | synonyms (1)

6
votes
5answers
254 views

From analysis to application [closed]

Which learning path would you recommend to be able to create complete application from requirement analysis, design (with various diagrams) to coding and testing? It's not easy to get this knowledge ...
7
votes
2answers
246 views

OO Design principle name?

I think I remember reading somewhere that one of the principles of good OO design is to write methods which take the least derived type possible, but return the most derived type possible? First, is ...
7
votes
2answers
2k views

Decoupling UI code?

In my application I have several event handlers that perform some action in response to user interface events such as a button click or menu selection. The code in these event handlers looks like ...
21
votes
9answers
7k views

Delegate vs Interfaces-Any more clarifications available?

After reading the article- When to Use Delegates Instead of Interfaces (C# Programming Guide), I need some help understanding the below given points, which I found to be not so clear (for me). Any ...
6
votes
2answers
746 views

Thread class design?

I have a method like this in my UI code: void MyDialog::OnCommandSaveData() { std::list<MyClass*> objects; service_->GetAll(objects); dataService_->SaveObjects(objects); ...
4
votes
4answers
683 views

How can I know when my application is too complex? [closed]

I'm currently working on my own project for an Android app, but then as time goes it feels like my app is concentrating more on another feature than what I had in mind when I first design the app. So ...
3
votes
2answers
132 views

Displaying and processing objects in a list?

I currently have code like this to display some objects that meet some criteria in a grid: // simplified void MyDialog::OnTimer() { UpdateDisplay(); } void MyDialog::UpdateDisplay() { ...
4
votes
5answers
341 views

Should the admin interface of a public-facing webapp be accessible externally?

I am working on an application right now that needs a way for employees to log in to the back-end of the public facing application for some basic reporting. If you were creating this, would you put ...
1
vote
3answers
974 views

Coding to interfaces

I understand why it is a good idea to code to an interface rather than to a concrete class. I find it hard to implement though as other methods generally need to use properties of the given object. ...
1
vote
3answers
837 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 ...
11
votes
3answers
2k views

Should you use C# and F# together

I know you can use C# and F# together in the same project however i'm not sure if its a good idea to do so. It seems to me that mixing two very different coding styles (functional vs OO) could cause ...
3
votes
4answers
1k views

Who should be responsible for writing/updating design specifications in an agile team

I work as part of a scrum-like Agile team and a while ago, one thing we identified that the team should do is maintain good set of design documents for our code base. Because we are agile and do have ...
5
votes
3answers
170 views

Maintaining a list of nodes with challenging requirements

This is a question regarding the design of a collection of ordered nodes which have some requirements that I am struggling to satisfy. In the problem area that I am dealing with we have routes which ...
2
votes
2answers
452 views

How would you design a generic layer for OpenGL windowing that does not care how the program underneath actually looks like?

The kind of OpenGL windowing that I refer to is like GLFW, GLUT, SDL, etc. Imagine three C++ programs: (ignore syntax) Game A: class Game resize() keyEvent() Game B: resize() keyEvent() ...
12
votes
8answers
564 views

What to do if boss always postpones major decisions about requirements and overall design?

When starting a new project, my boss always avoids to make fixed decisions. He is usually saying: ok, just start to write something and be as generic as possible. When you're finished we look how we ...
32
votes
18answers
2k views

Should a developer argue against unnecessary or harmful features?

What is a good attitude from developers when discussing new features, and namely, non critical/questionable features? Say you are developing some sort of Java like language, and the boss says: "We ...
28
votes
3answers
24k views

Which is a better practice - helper methods as instance or static?

This question is subjective but I was just curious how most programmers approach this. The sample below is in pseudo-C# but this should apply to Java, C++, and other OOP languages as well. Anyway, ...
3
votes
1answer
330 views

Do “Builder” static methods violate SOLID?

I am writing a class which consists mostly of data storage responsibilities. The context for the use of this class will, in general, be retrieving an array of objects of this type for display later. ...
4
votes
3answers
2k views

How do we handle Categories in database schema and model classes

I am trying to develop an ecommerce solution but stuck on the categories management issue and don't know how to proceed further. See, A category will have a parent category, which in-return can also ...
5
votes
4answers
1k views

Should I learn design patterns or algorithms to improve my logical thinking skills? [duplicate]

Possible Duplicate: How can I improve my problem-solving ability? When starting a programming task, I have trouble breaking it up into steps and figuring out how to go about solving it. I ...
6
votes
4answers
338 views

Using a SDK with crazy code

I recently had to work with an SDK that had a lot of crazy parts*. Not using the SDK was not an option as it had to talk to some third party software. What is the best way to deal with the crazy ...
9
votes
8answers
507 views

Refactoring or upgrading databases to handle new features

Several responses to a database schema question, suggested an additional table to normalize a database for a feature that is not part of the current requirements (A UserDepartment table to allow for a ...
2
votes
5answers
331 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 ...
0
votes
2answers
290 views

What should I do when my project manager does not care about implementation details?

My project manager, when providing requirements for specific tasks, does not care about the implementation details. Although he has a programming background and has some knowledge of the MVC ...
7
votes
7answers
2k views

How to cope with the problem of (compiling) a large code base?

Although I can code, I don't yet have any experience with working on large projects. What I did so far was either coding small programs that get compiled in matter of seconds (various c/c++ exercises ...
35
votes
2answers
9k views

What are the advantages of prototype-based OOP over class-based OOP?

When I first started programming Javascript after primarily dealing with OOP in context of class-based languages, I was left confused as to why prototype-based OOP would ever be preferred to ...
3
votes
1answer
411 views

How a .NET dev team should be designing and delivering greenfield projects? [closed]

Some of the hottest topics in the software world atm are: Domain-Driven Design SOLID principles Agile methodologies ORM Now assuming that you are not currently using all of these in your team, ...
17
votes
9answers
2k views

How do I move a client from UI mockups to a set of real requirements?

Say you are given a mock-up of 25 screens of the visual states of your application. The expectation is that this is enough for us to be confident we can develop and hand it to the original stakeholder ...
23
votes
8answers
1k views

When do you rebuild an application or keep on fixing the existing one [duplicate]

Possible Duplicates: When is a BIG Rewrite the answer? Have you ever been involved in a BIG Rewrite? I am at a customer where I have been tasked to fix a number of issues they have in their ...
3
votes
5answers
317 views

How to decide which classes are necessary for the system

I know design principles and design patterns in theory. But it's embarrassing to realize that it's not clear when applying it in practice. For example, let's think about simple tic tac toe console ...
24
votes
8answers
9k views

What is the best way to design a web site to be highly scalable?

For websites that need to be highly scalable, such as social networks like facebook, what's the best way to design the website? Should I have a web service which the site queries to get data that it ...
36
votes
7answers
3k views

What makes a piece of software an Engine? [closed]

The descriptor 'Engine' gets thrown around a lot: graphics engine, RegEx engine, AI engine, etc. but what actually makes a piece of software an Engine? Design, Input/Output, Purpose, Size?
1
vote
3answers
1k views

what are your web application server side layering design rules and the best practices you like to apply?

A web application is often designed to be layered. Typically there would be a Repository (Dao) layer, a Service layer and a Control (web handling) layer. The Control layer uses the Service layer which ...
2
votes
1answer
620 views

Login with Twitter or Facebook - How to link accounts

I've been developing a site and I've been trying to come up with a method to make sure all Social Network accounts of a certain user are linked together. I've had one snag from the start, and maybe ...
4
votes
7answers
2k views

What to do with obsolete code? [closed]

Code that we no longer use builds up. So what should one do when one doesn't need it anymore? Deleting it feels wasteful, especially large chunks, and there's always the chance the exact same thing ...
5
votes
5answers
969 views

Proper OO design for State and Command

I'm working (a bit) on a (turn-based strategy) game. There are two classes relevant for the question: State: This is an immutable class, which exposes all its fields (either via getters or another ...
2
votes
6answers
667 views

Why most of large corporations websites are bad? [closed]

As a electronic customer, I sometimes have to go to manufacturer's websites to find information about products, drivers/firmware update, etc. More ore less, most of these websites, IMO, are bad. ...
7
votes
10answers
12k views

What do we mean by “design” in software engineering?

I have been reading about different software methodologies. Every method has a design phase to some extent, more or less. I am not clear on what we mean by designing. Does this mean writing your ...
12
votes
6answers
2k views

Under what circumstances are flowcharts still a valuable and useful tool?

When I first started programming, I relied heavily on flowcharts (and printer spacing charts). While I was in COBOL class, I couldn't start writing any code until my flowchart was signed off by the ...
6
votes
4answers
240 views

Injecting properties/settings into an application

In applications that I write at work, I often need to have an external properties/settings file so that certain parameters can be configurable after the application is deployed with the end-user. The ...
13
votes
7answers
1k views

Should a design document contain a discussion of the pros/cons to a given design or should it focus on facts and rationale?

I'm currently in the process of updating a design document so that it is correct and up-to-date for future developers. Currently, the document focuses on only the facts, presenting how the design is. ...
0
votes
2answers
2k views

What are the current problems involved in software engineering programming patterns? [closed]

can someone suggest me the current problems in software engineering and the research links for it? i have some knowledge on MVVM being a pattern but i would like to know more about others and also ...
7
votes
11answers
976 views

What kind of questions and processes do you ask yourself and follow when designing software? [closed]

I've read books on design, I troll the internet for articles on best practices and software design principles. However, I always seem to struggle to put into practice the kind of suggestions and ...
3
votes
7answers
1k views

Pass in single settings object vs multiple setter methods?

Working with C++. Suppose I have a class BoxFilter. The class is used to filter boxes which have properties such as height, width, depth, weight, etc. The filter might have something like MaxWidth ...
9
votes
9answers
717 views

Should development methods squash a developer's individualism?

I'm in my final semester of college and am taking a software engineering course. In the class we learn about various software development methods. The one we focused on, and used to develop our ...
11
votes
4answers
293 views

Is it better to team up with a designer, or to piece out design work to a contractor?

I am clueless when it comes to design but I am proficient in programming. If you are a programmer who lacks visual design skills, what has worked best for you -- to pair up with a graphic designer or ...
6
votes
5answers
324 views

Does project architecture have a strong relation to used libraries?

Programmers, when it comes to talk about popular patterns in enterprise applications, preach that you should code against interfaces to remove strong relations between components; doing this will aid ...
10
votes
3answers
2k views

Applying SOLID principles

I am quite new to the S.O.L.I.D. design principles. I understand their cause and benefits, but yet i fail to apply them to a smaller project which I want to refactor as a practical exercise to use the ...
21
votes
4answers
3k views

Architectural differences between dynamic and static languages

Are there any major architectural differences when designing applications that will be built on static languages (such as C# or Java) and dynamic languages (such as Ruby or Python)? Which are the ...
3
votes
1answer
244 views

Why so many layers with domainobject like objects in an application?

Take a typical Line-of-Business Silverlight applicatioin for example.First,We have a Product table in database,which has fields of ID,Name,Price,etc; Then, on the server side,we should have a ...