2

I've recently worked on improving our development processes by working through McConnells "Rapid Development" and "Software Project Survival Guide".

One area of weakness I've identified here is software design - we either skip it completely or only do it from a modularisation perspective. Once I had this awareness, I found numerous examples of bus that would have been found by designing first, ie. creating mock functions, files etc.

I have however difficulties formalising this for myself and (expectantly) difficulties to transfer the knowledge to my employee.

Can someone recommend books in this area that could be helpful. We are working in an environment of web based applications, mostly within the Symfony and Joomla frameworks.

closed as not constructive by jmort253 Jul 27 '12 at 3:16

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance. If this question can be reworded to fit the rules in the help center, please edit the question.

  • Is your problem question about representation or knowledge? Software architecture or detailed design? – Michael Jan 29 '12 at 2:41
  • both knowledge and representation referring to detailed design mainly, but also covering software architecture. The Doug Rosenberg book below was a very good suggestion, as it outlines a short process that can be implemented. But I'm open to other suggestions as well. – jdog Jan 30 '12 at 20:53
4

You could refer: Use Case Driven Object Modeling with UML: Theory and Practice by Doug Rosenberg and Matt Stephens and Design Driven Testing (same authors).

They walk you through to a very step by step approach to go from use-cases to robustness diagrams to sequence diagrams and then to code.

The latter book also focuses on the testing aspect and adds details about how to to 'test smarter'.

Both are great books for improving the development process. They are generic books but the way to approach software development is beautifully explained and are worthwhile books on a developer's bookshelf. The most valuable concept is that of robustness analysis IMHO.

Not the answer you're looking for? Browse other questions tagged or ask your own question.