Alex Rivera | Logout

How do you begin designing a large system?

Asked 2008-08-19T04:26:33.347
10

It's been mentioned to me that I'll be the sole developer behind a large new system. Among other things I'll be designing a UI and database schema.

I'm sure I'll receive some guidance, but I'd like to be able to knock their socks off. What can I do in the meantime to prepare, and what will I need to keep in mind when I sit down at my computer with the spec?

A few things to keep in mind: I'm a college student at my first real programming job. I'll be using Java. We already have SCM set up with automated testing, etc...so tools are not an issue.

Edit
Report

2 Answers

3

I also disagree about starting with the database. The DB is simply an artifact of how your business objects are persisted. I don't know of an equivalent in Java, but .Net has stellar tools such as SubSonic that allow your DB design to stay fluid as you iterate through your business objects design. I'd say first and foremost (even before deciding on what technologies to introduce) focus on the process and identify your nouns and verbs ... then build out from those abstractions. Hey, it really does work in the "real world", just like OOP 101 taught you!

answered 2008-08-19T06:08:31.770
0

I found very insightful ideas about starting a new large project, based on

  • common good practices
  • Test Driven Development
  • and pragmatic approach

in the book Growing Object-Oriented Software, Guided by Tests.

It is still under development, but first 3 chapters may be what You are looking for and IMHO worth reading.

answered 2008-08-19T21:31:46.883

Your Answer