![]() |
|
|
|
| ||||||
|
Welcome to the The ProgrammersTalk Community forums. You are currently viewing our boards as a guest which gives you limited access to view most discussions and access our other features. By joining our free community you will have access to post topics, communicate privately with other members (PM), respond to polls, upload content and access many other special features. Registration is fast, simple and absolutely free so please, join our community today! If you have any problems with the registration process or your account login, please contact contact us. |
![]() |
![]() | | LinkBack | Thread Tools | Display Modes | ![]() |
| |
| ||||
| Depends on the complexity. A single, short script and I just sit down and write it. A full-on application and I model out the code structure, the database structure, and a few use case scenarios before even sitting down to code. The most valuable is always the database structure model which I take to close to 3NF (some violations are allowed when it will result in significantly faster processing). |
| ||||
| I was expect something like that from you Tera lol, could you expand on how you model out the code? I know how to take my Database to 3NF so i will maybe start using normalisation when using databases, could you also tell me if there are any further advantages of going beyond 3NF? |
| ||||
| For code modeling, I model the structure, not the individual scripts. So, I'll have an index.php driver, an images folder, an includes folder with a template, a driver class, etc... I usually use a tree to model that all out. As for 3NF, be sure to check for scenarios when 3NF isn't very helpful for live DBs (e.g. when a join is unnecessarily expensive and duplicating a key speeds things up.) I never learned beyond 3NF. All I heard about beyond that is that it was mainly an academic exercise. 2NF or less, however, is bad for many reasons, so I usually hit between 2NF and 3NF, breaking rules only for speed issues. |
| |||
| Completely depends on the type of project, I've been doing a lot of AS3 projects lately, so we have the designer build the comps, get them approved by the client, then I'll build a prototype. The prototype doesn't have "real" functionality, it just displays the app flow and how elements interact (eseentially the visual and interactive portion) - once this is approved internally, I'll build the real app to mirror the prototype but usign real Models and Views with real interactions and events. __________________ Day Cares | Golf Courses | Disc Golf Courses | Campgrounds | Ice Rinks | Paintball Fields | Dentists | Plastic Surgeons | Aging Jokes Catholic Churches | Lutheran Churches | Methodist Churches | Episcopal Churches | Clean Jokes |
| ||||
| Yes, it's totally depending on the project.. If it's for fun, I tend to just code it right away but having the rought idea on how do I want it to be, but as TeraTask has pointed out, if it's a complex system, then I tend to wrote it down first before getting into the coding part so that I know the flow of the system. I tend to draw UML for Database design... Although I'm still suck at it haha... |
| ||||
| Thank you all for your input so far, it has benefited me a little to know how others do it and i hope others reading this thread will benefit just as i have. I am about to embark on a medium size project, i have myself, another coder and hopefully another designer/coder, we all live within the same time zone but we do not live near each other in anyway to work on things together, all the work will be done on each persons computer. What measures would you advise for team work? We have the use of MSN but obviously we are not all on at the same time so i thought how about set up a password protected forum at subdomain.domain.com such as a phpBB3 one and use that as the main discussion. Would you think setting deadlines that we can all agree on would be the best way to manage time? Please could you give me all your suggestions for how to make project like this run smooth, obviously there's always some sort of problem but to avoid most of the common problems like not knowing where people are up to with coding etc... Thanks, Lee. P.S. This will be the first project i have managed, i believe i would be good at managing things, tips will help me and others reading to improve, i don't want this to be my first and last project that i manage lol. |
| ||||
| First, use Model-View-Controller to keep various aspects of your design separate from each other. Since there will be multiple programmers, you have, afaik, 2 options: 1) Use CVS. I personally hate CVS, but 1000's love it. 2) Choose one person to manage the code and all coders submit changes to that person who then checks it against the other code to ensure no conflicts WinMerge is the only thing that makes this possible. Be sure to archive working code bases before upgrading. This may seem like more work, but it's the only way I keep my head on straight and I insist on reviewing code line-by-line before adding it to a base to check against security flaws and intentional hacks. I have to say, however, that I've never been on a project where I'm in the role of anything but lead, so I can't speak from others' perspectives there. As for timelines. A GANTT chart is nice for some. For me, a calendar of deadlines is helpful. Nothing beats daily communication from the project lead as coders are lazy, in general, and will put things off as long as possible. But, if you're constantly asking about how things are going, some progress will be made before the last week anything is due. As for the forum, the key thing is whether it's regularly checked. I find those things slow me down, so I never go to them. There are also software project management solutions out there which allow you to delegate tasks to a coder, file bug reports, and communicate back-and-forth. Again, I never take the time myself to go to these things and nothing really substitutes for one-on-one communication which I do through email and phone (email for important things so that there is a record and phone for shorter or more detailed things which need to be discussed). I don't claim my methods to be the best for everyone. They are the best for me. One thing to be very cautious about is the order in which you build the system. Building a part before its dependencies are completed (or at least its member functions stubbed) can be a major pain in the but and send a project into a tailspin. Here, use case scenarios can help you as well as well-designed models. Hope this helps you forge forth on your first project. When you get time, you may want to look at the field of systems analysis which explores a variety of techniques for project management as well as system design and optimization. |
| The Following User Says Thank You to TeraTask For This Useful Post: | ||
Lee (02-09-2008) | ||
![]() |
| Thread Tools | |
| Display Modes | |
| |