Books on software design

G

Guest

I'm an inexperienced developer (as my previous posts have no doubt made
clear to all readers ;) and i would like to know what sorts of sources
of information people here would suggest to me for, um... everything.

At the moment i'm trying to get a handle on large(r) scale program
design - how to use modeling tools (be they software or pen and paper
and brain) to design an application, how to get from the problem in
english to a usable design, etc...

Ideally the books i'm looking for would be targeted at a novice
programmer, but i'm interested in anything recommended to me. My main
language experience is in java and/or Delphi, but i can (mostly) read
C++ and i can pick up what i need to know about anything else, i hope.

I'd love to hear back about this, thanks a bunch for your time.
 
C

Chris R.

wrote:

"Code Complete" and "Rapid Development" by Steve McConnell.

The latter is known to me - i read it cover to cover and got a lot out
of it, as far as the construction end of the study goes. However, i'm
more interested in ways to examine a problem domain and make something
of it - the higher-level design. Any ideas there?
 
J

Joseph Millar

The latter is known to me - i read it cover to cover and got a lot out
of it, as far as the construction end of the study goes. However, i'm
more interested in ways to examine a problem domain and make something
of it - the higher-level design. Any ideas there?

"Design Patterns - Elements of Reusable Object-Oriented Software"
by Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides
ISBN 0-201-63361-2

It's a great book.

--Joe
 
D

Doug Pardee

Chris R. said:
more interested in ways to examine a problem domain and make something
of it - the higher-level design.

What you're looking for is books on analysis, not design.
Specifically, it sounds like you're interested in domain analysis as
opposed to requirements analysis or application analysis.

o Domain analysis produces an abstract description of the business
domain.

o Requirements analysis produces a description of a concrete problem
that needs to be solved within the domain. (often: a text document)

o Application analysis produces an abstract description of the
requirements. (often: use cases)

o Design produces an abstract description of a solution to the
problem. (often: class diagrams and such)

o Implementation produces a concrete expression of the design.
(code)

For OO domain analysis, I absolutely recommend the Streamlined
Modeling technique (http://www.streamlinedmodeling.com/) by Nicola,
Mayfield, and Abney. The full technique is described in their book,
"Streamlined Object Modeling".
 
C

Chris R.

(e-mail address removed) (Doug Pardee) wrote in
What you're looking for is books on analysis, not design.
Specifically, it sounds like you're interested in domain analysis as
opposed to requirements analysis or application analysis.

You've hit the nail on the head, as it were. That's more like what i was
asking - part of the problem is that i'm new enough to this that i don't
even know the words i need to ask the questions :)
o Domain analysis produces an abstract description of the business
domain.

o Requirements analysis produces a description of a concrete problem
that needs to be solved within the domain. (often: a text document)

o Application analysis produces an abstract description of the
requirements. (often: use cases)

Of the three above, the last is the level that i'm looking at *right
now*. The other two are of interest to me, but they're not as important
as the third. So, that is one of the things i'd like to get more info
on.
o Design produces an abstract description of a solution to the
problem. (often: class diagrams and such)

While this, i do have some idea how to go about, more information is
always good. As i understand it, this is where design patterns and OO
design come in, in the sense that here we have the problem analyzed, and
now we plan the implementation, right?
o Implementation produces a concrete expression of the design.
(code)

I'm no ninja at it, but i can sling code as needed. So this area, well,
i think i can track down any one of the thousands of books on the subject
:)

That, or steal my library's copy of Code Complete ;)
For OO domain analysis, I absolutely recommend the Streamlined
Modeling technique (http://www.streamlinedmodeling.com/) by Nicola,
Mayfield, and Abney. The full technique is described in their book,
"Streamlined Object Modeling".

Thanks, Doug, i'm going to look into that and see what i can come up with
that fits what i am looking at.

Appreciate the help, and i'll appreciate further pointers even more, of
course ;)
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,764
Messages
2,569,566
Members
45,041
Latest member
RomeoFarnh

Latest Threads

Top