software-engineering

Books about the philosophy of software development

The first time I read The Mythical Man Month, I found the book utterly boring, a waste of my time, and thought it was written by some management guru that never wrote a line of code. A few years later, I realized Fred Brooks won the Turing award. Some years after that, after a few large development projects, I started understanding wha...

Any systematic way to avoid "reentry" problem? (embedded system)

We are using C to build a system on ARM core (i.e. an embedded system). The question is: how can we avoid reentry problem in a formal way so that we are confident all reentry bugs are removed. This may not be a practical wish but surely important for any system, I guess. Just for the discussion, I guess drawing UML diagram or have a com...

Is time comes to not worry about memory

About a year ago we are developed for internal use inprocess MOLAP engine that perform aggregation of a large amount of data. We using it only as a part of our platform because we was sure that such a system without custom memory alocation, paging etc is not viable solution, but some time ago Microsoft published beta version of PowerPivo...

What are the most important structured software design principles?

Today I saw a job description that requires "significant experience coding in C++ and a thorough grounding in structured design principles", so I thought about what these principles are. First I felt it was a little odd to see C++ and "structured design" in one sentence, then I thought, OK C++ is a multi-paradigm programming language, so...

How long does it take to start doing productive work for a developer new to the job

He will be a developer inheriting a 6-year-old java+spring code base, and will be part of a 4-person development team. The code has threading components and messaging components. The code is messy and complex, with both client/server components, and overly structured with all kinds of interfaces, abstract classes, multiple branches from ...

Preparing unit tests : What's important to keep in mind when working on a software architecture?

Let's say I'm starting a new project, quality is a top priority. I plan on doing extensive unit testing, what's important to keep in mind when I'm working on the architecture to ease and empower further unit testing? edit : I read an article some times ago (I can't find it now) talking about how decoupling instantiation code from class...

OOP software design problem

There are two classes:A and B. And I need to implement a function whoViewed, I have two options,make it an member function of A and B.Which smells a little duplicate. Another choice is to make it a separate class:Viewer,but it's more abstract. If you were me,which way will you choose? To make it more general: what will you do when ...

High-Level Pattern for Dynamic Status Progression?

Have you ever encountered a situaton like this, and if so, how did you solve it? We have a record which goes through multiple stages of progression, such as: submission -> preliminary evaluation -> final review -> active The order of progression for these main status types is guaranteed. However, there are factors which complicate t...

Better performance or better structure

Better performance: list($result1,$result2,$result3,$result4)=get_all_result(); The number of total sql queries are fewer,and performance is a bit better.But it's hard to reuse. Better structure: $result1=module1_get_result(); $result2=module2_get_result(); $result3=module3_get_result(); $result4=module4_get_result(); It'll need m...

Imposing strict and methodic Software Engineering to Open-Source projects

Preface: please don't flame against Software Engineering. This question is about applying software engineering in opensource projects, not about the effectiveness of software engineering in general. Opensource development is performed in parallel, as it involves large communities of globally distributed developers and a system of indep...

Recommended framework for an enterprise software?

We are studying the best way to create a new enterprise software. The software will be similar to SAP in term of application style (a database, a lot of input forms, grid reports, internal calculation engine, ...). What is for you the best framework/technology to build it? We are evaluating many technologies like: ASP.NET MVC + Entit...

Help identifying the author of this phrase

Hi all. Some time ago I read on the Net something like "you learn a thing only when you really need it" (e.g., learning a new programming language). If memory serves me well that was a sort of "law" or "principle", ironic or not, and I cannot remember its author's name. Any help in identifying the correct phrase and its author? Thanks...

Is there a Marketplace for finding ASP.Net projects to work on?

I am looking to find some good projects to work on. Is there a good site to find such projects and make decent bucks? ...

Finding the range in which a number lies

Hi, I have the following method: private static final int OPEN_FOR_RAISE_RANGE = 35; private static final int OPEN_FOR_CALL_RANGE = 25; public void foo(double num){ if(num <= OPEN_FOR_RAISE_RANGE){ //do something } else if(num <= (OPEN_FOR_RAISE_RANGE + OPEN_FOR_CALL_RANGE)){ //do something else } ...

is there a book overviewing different types of source code metrics ?

Hi I have to submit a paper about the usage of source code metrics in software engineering processes. I thought it would be nice to start by introducing some categorization of source code metrics (for example using plane LOC count Vs doing some static analysis of the code) , but I can't find a book or article that will present the dif...

Looking for discussion or literature on WordPress as a software engineering project.

Over the last few months I've had a gig working on a modified WordPress installation. My initial reaction to the codebase was disdain, one that I suspect many web application developers might share: it's certainly not MVC, it seems a bit hodge-podge, and it takes a bit of getting used to. On the other hand, there's no denying that Word...

What is an Architecture Context Diagram (ACD) and are there any other names for it?

I've been charged with the following tasks for a group project: a) Design/Draw an Architecture Context Diagram b) ACD Description c) UML deployment diagram The UML deployment diagram is no issue as there are plenty of straight-forward resources online but this is not the case for the ACD. I need resources on exactly what an ACD is and...

Google vs. Yahoo; Software process model

Does any one knows which software process models are used by Google and Yahoo. And What is the difference in Yahoo and Google's software processes? Thanks & Regards, Jay ...

Tools and environments supporting Domain Driven Design (DDD)

Hi everyone, I'm doing a kind of research on the topic "Domain Driven Design". My question is what tools (or maybe environments) do you use, that support this paradigm? I know that I can google it, but I wonder which of them actually work and are useful, since I have no experience with neither of them. I'm interesting mainly in the .N...

How do I embed Mercurial tags into my C/C++ code?

Hi, I would like to know if there is a way to embed Mercurial tags into my C/C++ code. Basically I would like the tag string, which will end up being a release number (major.minor.rev), to be automatically inserted in a determined location of my C code as a static string. The overall objective is that the application could be querie...