software-design

Software Design Description Practise

How many people actually write an SDD document before writing a single line of code? How do you handle large CSCI's? What standard do you use for SDD content? What tailoring have you done? ...

Is it worth converting my functional JavaScript code to an object-oriented design?

I'm currently building a small web application that includes a fair amount of JavaScript. When I was prototyping the initial idea, I just hacked together a few functions to demonstrate how the application would eventually behave intending to go forward re-writing the JavaScript in an object-oriented nature. Now that I'm getting into the...

When deciding on a feature, what do you do?

Do you primarily think of reasons TO implement it, or reasons NOT TO implement it? What are the advantages of each? ...

When to call the gang of four? [When to use design patterns?]

In The Guerilla Guide to Interviewing Joel says that guys who want to get things done, but are not smart will do stupid things like using a visitor design pattern where a simple array would be sufficient. I find it hard to detect, if the design pattern suggested by the Gang of Four should be applied. Therefore, I would like some exampl...

When should a UI be updated?

I'm working on an online tool for students in my faculty to calculate their final grade for their degrees, and for a while I've had little problems. Students seem to like using the new UI and I've suffered no criticism for a while. Now, I need to add some functionality to the program, meaning the UI will have to chance slightly, but in s...

Online UML Guide

My software design experience only goes as far as SSADM with C, so when I started Java I knew I'd have to learn UML somewhere along the line, but alas, now that I need to use it I don't know much of it. The only book I have on the subject is strictly a Systems Analysis book and much of it is complete overkill for what I need; a simple in...

What are some situations where Agile is inappropriate?

I have been hearing and reading about Agile for years. I own a book or two on it and I like the idea. I am finally in a position where I could roll something like this out where I work, but I have serious concerns about whether it's the way to go for us: Isn't there a minimum size for this? Big design up front must be more efficient f...

What do you look for in a sequence diagram to indicate that the system is well architected?

What good-practice-indicating idioms do you look for in a sequence of method invocations, as depicted on sequence diagrams? ...

Is there a programming template or a open source framework to study tags in web apps?

Maybe the question is a little confusing. I will like to implement tags (similar to what is used in stackoverflow) in my web application. I will like to take a peak in any documentation, framework or schema made to be able to implement a tag strategy. I can think of many ways of programmatically implement this, but since there are...

What are the main components/layers of a PHP application?

What are the main components of a PHP application? I've come up with these: 1) Database 2) HTML templates 3) Sessions/Cookies/Authentication 4) User Input ($_GET or $_POST or URL segments) Are these the main components or are there any others? The reason I'm asking this is so I can put each 'Object' in its own class without having ...

What PHP application design/design patterns do you use?

Please share your favorite application design / design patterns for use in PHP with me. Some things I'd like to know: How your folders are designed How you use object oritentation in your PHP applications Do you have a standard way of dealing with CRUD, pagination, or any other common tasks? How do you avoid using repetitive code? What...

How To Make a Tetris Clone?

I am working on coding a Tetris clone in XNA C# and am unsure of the best way to approach the data structure side of the game on a high level. I am totally fine with the collision detection, rotations, animation etc. What I need to know the best way to do the storing of "dropped blocks" - ie blocks that are no longer under tha player's ...

What's the best way to resolve a combinatorial explosion of interactions?

One of the things I'm working on right now has some similarities to a game. For purposes of illustration, I'm going to explain my problem using an example drawn from a fictitious, hypothetical game. Let's call it DeathBlaster 4: The Deathening. In DB4, you have a number of Ship objects which periodically and randomly encounter Phenomena...

OOP vs case statement in Windows forms application

I have a s/w design question. Say I have a windows form with some elements and I have a customer object. A customer can either be business, private or corporate for example. Now, all the decisions of what is going to happen in the form will depend on the customer type. For instance, certain elements will be hidden, certain label text wi...

why is UIWindow a child and also a parent of UView?

The UIKit reference says UIView is a superclass of UIWindow, but despite of this parentage, a UIWindow actually manages UIViews. This sounds so unusual to me. Does anyone know what the significants of this are in terms of software design? Many thanks. EDIT: I read the related paragraph in the iPhone programming guide. Yet I couldn't s...

What is the best approach to create MDI pop-up windows in WPF?

I need to create a prototype to test the ability of WPF to do the following: one base window as the application's base within this window user can click (e.g. on "add customer") and a new window pops up the pop-up window is bright the main window in the background is dimmed if the user clicks on the main window main window becomes b...

Interfaces, inheritance and windows forms in c#

I have a design question. When writing an application where there are several components that share some attributes, and differ in others both in terms of GUI (windows forms) and back end, how would one theoretically approach this? For example, I have an application where I have 4 different types of a product. The forms for entering pro...

Diagramming program to help in designing software?

I'm looking for a diagramming program that can help in designing software, right from the high-level requirements down to the low-level classes and functions. I've seen a lot of UML programs, but they don't let you design at multiple levels of detail in the same map, like if you could "zoom in" and design the details of a part. Do prog...

How can I learn to REALLY design software?!

First off, my focus is web development (ASP.net webforms up to now), using C#. But, I am interested in learning design principles that will carry into any technology or language. I have been ready for a long time to step up, and learn how to design software the right way. Up to this point, the software I write has been designing the dat...

How do I handle combinations of behaviours?

I am considering the problem of validating real numbers of various formats, because this is very similar to a problem I am facing in design. Real numbers may come in different combinations of formats, for example: 1. with/without sign at the front 2. with/without a decimal point (if no decimal point, then perhaps number of decimals can ...