473,413 Members | 1,778 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,413 software developers and data experts.

Ask for general suggestion on project design.

Tim
Dear All,

In my opinion, there are so many possible designs for a project, even
small up to a class. How can I know which one is better? Is there any
important point I should consider in the design? What I should do
first for a large project? Design the whole system? or Start a small
workable version and then expand?

I really need your kind suggestion.

Thanks a lot!

Tim

Aug 21 '07 #1
1 1360
Tim wrote:
In my opinion, there are so many possible designs for a project, even
small up to a class. How can I know which one is better? Is there any
important point I should consider in the design? What I should do
first for a large project? Design the whole system? or Start a small
workable version and then expand?
I am not really sure what book to recommend, there are so many. But
one thing for sure: you need a good book on designing software systems.

To answer your question directly: the best design is (a) simple,
(b) extendable, (c) scalable, (d) maintainable, (e) ... You get the
idea. Of course it has to reflect the model it's supposed to
represent (it's kind of useless to have all the scalability and
maintainability in the world, if your system doesn't do what it's
intended to do). Now, how to achieve those things is what you want
to learn. And it's not just software that needs those things in its
design. Any engineering product is supposed to fit the description
to some degree. Nobody says you need an extendable *shovel*. Most
likely it will not be as extendable as some designs in the software
field nowadays. But if you think of it, simplicity, ability to come
in different sizes, be made from different materials, etc., can be
pretty important in a shovel... I digress.

You need to start a library of good books in the field you want to
dedicate yourself to. I assume you already have some C++ books.
Check out 'comp.software-eng' newsgroup and ask about books they
recommend for taking your knowledge about software design to the
next level. Or you could simply search on the Web, I bet you are
not the only person concering themselves with "what makes a good
design".

Good luck!

V
--
Please remove capital 'A's when replying by e-mail
I do not respond to top-posted replies, please don't ask
Aug 21 '07 #2

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

51
by: nospam | last post by:
THIS IS the DOTNETJUNKIES MESSAGE ------------------------- We're Sorry As many of you know we have recently launched SqlJunkies.com. We have overhauled our runtime and will be using it on...
0
by: Rob Cheshire | last post by:
Hi to all, I need some help deciding on the best database system for our specific application. OPTIONAL INFO: We currently have 2 separate projects that need to be updated from dos-based dBase. ...
0
by: Ramks | last post by:
Hi, We have a strange requirement for our project.The user will be able to give a HTML page layout in which he will specify the design of the page as well as the controls they want in the page as...
6
by: Ivan Weiss | last post by:
I am designing a class to represent an item in a database (containing model's of products). I need to display a listing of all of these items in a listview to be displayed to the user (so they can...
105
by: Christoph Zwerschke | last post by:
Sometimes I find myself stumbling over Python issues which have to do with what I perceive as a lack of orthogonality. For instance, I just wanted to use the index() method on a tuple which does...
3
by: Claudia | last post by:
Hi all... I'm working on a project that uses MSMQ as its core for inter-process communication. At the moment there is a single process that listens for inbound TCP-based messages on a socket,...
5
by: MP | last post by:
context: vb6 / ado / adox 2.8/ mdb file format / jet 4.0 provider (not using Access) trying to design first database I work for a very small company, detailing building 'components' There is...
5
by: Aykut Canturk | last post by:
Dear friends, I recently decided to move vb.net 2005 from vb6. my projects has average of 200 forms and 20 modules. I mostly write enterprise solution about production automation like...
1
by: Born Bugler | last post by:
Hi, this is Born Bugler. My interests include architecture design and 3D programming. I would like to share my latest project with you and am looking forwatd to receiving your suggestions or...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.