Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.java.programmer > #10104
| From | Novice <novice@example..com> |
|---|---|
| Newsgroups | comp.lang.java.programmer |
| Subject | Re: Standard Design and Development Methodologies |
| Date | 2011-11-20 17:18 +0000 |
| Organization | Your Company |
| Message-ID | <Xns9FA37D25E6DA6jpnasty@94.75.214.39> (permalink) |
| References | <Xns9FA29593FF4C2jpnasty@94.75.214.39> <p4_xq.30508$Pm3.8310@newsfe12.iad> <4908121.2133.1321762391730.JavaMail.geo-discussion-forums@prou19> |
Lew <lewbloch@gmail.com> wrote in news:4908121.2133.1321762391730.JavaMail.geo-discussion-forums@prou19: > Arved Sandstrom wrote: >> Novice wrote: >>> What are the standard design and development methodologies being >>> used in > >>> systems departments these days and, ideally, where can I find >>> tutorials > for >>> them, preferably free and online? >>> >> You could probably do worse than to read >> http://en.wikipedia.org/wiki/Software_development_methodology. This >> is of value primarily because it introduces a lot of common >> terminology. >> >> Ultimately _every_ software development methodology (SDM) boils down >> to: >> >> 1. requirements analysis - understanding what the client needs you to >> do; 2. analysis & design - how you intend to meet those needs. See >> http://en.wikipedia.org/wiki/Object-oriented_analysis_and_design, >> since we are talking Java, for general concepts; >> 3. implementation - actually write code; >> 4. testing - ensuring that your code, as written, satisfies the >> requirements; >> 5. maintenance - nurturing the application over its lifespan. >> >> How all the various approaches differ is how they break up and >> sequence these activities. What really matters is that all these >> activities are important. > > There's a comprehensive little pamphlet reviewing various software > development methodologies called /Wicked Problems, Righteous > Solutions/ by DeGrace and Stahl, 1990, that is as relevant today as > when first published. > > Its main conclusion, after a very neutral overview of the extant pet > theories, is that successful methodologies rest on two key features: > an individual who maintains the project architecture and structures in > his/her own mind, and iteration. > > As such an individual (as you should be, too), I have a toolbox of > ways to look at a programming assignment - a kit of ontologies. > > First and most fundamental skill - to look it up. Whatever the > unfamiliar concept or skill, there is never an expert enough who's > patient enough with time enough and communication talent enough to > explain it for you. You have to be able to do with fragments of > advice (at best) and what you discover for yourself - through hard, > hard study and very pragmatic experimentation. A former mentor of > mine trained me that any IT person spending less than 20% over and > above their normal work time to study and practice was doomed to fall > behind. > > 'Struth. > > As for ontologies, the most useful ones I know are event-driven > programming, object-oriented programming, MVC (model-view-controller), > layers (Law of Demeter), and "noun-and-verb" modeling. That last is > my own term for using the language of the problem domain (its nouns > and verbs) to define your program structures. > > There's one style trick that induces better code: Keep it short. > After about 500 lines of code and comment (yes, and comment) your > class should feel too large, and after about 700-800 lines you should > be castigating yourself. > > The pressure to keep it short helps you think more clearly about > structure. > > And there's one mandatory, cross-methodology practice: Javadoc the > shit out of your code. Document private and package-private methods > and all static variables down to private. The extra asterisk at the > start of the comment block hurts nothing. > > Don't use specious comments, the kind that repeat what the code > already says: > > for (Foo foo : bunchOfFoos) // operate on each of the Foos > > Pfeh! If a person doesn't know what a for-each loop is, such a > comment will not rescue them. > > Do liberally comment anything that makes a maintainer go, "Hmm." > > // volatile: thread calling close() might not be same as called > perform() private volatile boolean isStopping; > > This advice might not fit your idea of what constitutes a > "methodology", but for Pete's sake, think. What does that "ology" > suffix buy you but buzzword compliance? The real need is for a > _method_, a process by which you can produce effective, reliable, > correct software on time to spec. In the end it's all about your > personal commitment and skill. > Thanks Lew, lots of sound advice in your remarks! I totally agree with your distinction between a methodology vs. a method; my original question was not ideally worded. I'm trying to figure out what kinds of things an interviewer from the technical side of the shop - as opposed to HR - is going to expect. I'm not sure how open-minded they will be to someone who wants a job but doesn't seem to have much prior contact with specific methodologies so I was hoping to get a list of the key methodologies. But that was probably misguided since I expect they will be relatively open-minded as long as you have the main SKILLS of each stage of the development process, even if they don't use whatever formal methodology you might know. So, even if you've never seen a UML diagram before but have done some other kind of diagram that conveys the same basic information, they will accept you anyway and recognize that you will be easily able to start doing UML instead of whatever you have been doing. Or is all that wishful thinking? -- Novice
Back to comp.lang.java.programmer | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Standard Design and Development Methodologies Novice <novice@example..com> - 2011-11-19 19:42 +0000
Re: Standard Design and Development Methodologies Arne Vajhøj <arne@vajhoej.dk> - 2011-11-19 21:22 -0500
Re: Standard Design and Development Methodologies Novice <novice@example..com> - 2011-11-20 16:55 +0000
Re: Standard Design and Development Methodologies "Charles Hottel" <chottel@earthlink.net> - 2011-11-20 22:20 -0500
Re: Standard Design and Development Methodologies Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2011-11-19 23:01 -0400
Re: Standard Design and Development Methodologies Lew <lewbloch@gmail.com> - 2011-11-19 20:13 -0800
Re: Standard Design and Development Methodologies Lew <lewbloch@gmail.com> - 2011-11-19 20:16 -0800
Re: Standard Design and Development Methodologies "Derek K. Wodenhouse" <dkw@none.of.your.biz> - 2011-11-19 23:49 -0500
Re: Standard Design and Development Methodologies Lew <lewbloch@gmail.com> - 2011-11-19 23:45 -0800
Re: Standard Design and Development Methodologies "Derek K. Wodenhouse" <dkw@none.of.your.biz> - 2011-11-20 03:49 -0500
Re: Standard Design and Development Methodologies Robert Klemme <shortcutter@googlemail.com> - 2011-11-20 13:58 +0100
Re: Standard Design and Development Methodologies Lew <lewbloch@gmail.com> - 2011-11-20 08:32 -0800
Re: Standard Design and Development Methodologies "Derek K. Wodenhouse" <dkw@none.of.your.biz> - 2011-11-20 18:24 -0500
Re: Standard Design and Development Methodologies Patricia Shanahan <pats@acm.org> - 2011-11-20 03:27 -0800
Re: Standard Design and Development Methodologies spk <jhic@speak.invalid> - 2011-11-20 09:54 -0400
Re: Standard Design and Development Methodologies Lew <lewbloch@gmail.com> - 2011-11-20 08:33 -0800
Re: Standard Design and Development Methodologies thoolen <th00len@th0lenbot.thorium> - 2011-11-20 18:30 -0500
Re: Standard Design and Development Methodologies Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2011-11-20 09:35 -0400
Re: Standard Design and Development Methodologies Novice <novice@example..com> - 2011-11-20 17:18 +0000
Re: Standard Design and Development Methodologies Lew <lewbloch@gmail.com> - 2011-11-20 10:30 -0800
Re: Standard Design and Development Methodologies Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2011-11-21 07:23 -0400
Re: Standard Design and Development Methodologies Arne Vajhøj <arne@vajhoej.dk> - 2011-11-25 21:51 -0500
Re: Standard Design and Development Methodologies Lew <lewbloch@gmail.com> - 2011-11-25 20:07 -0800
Re: Standard Design and Development Methodologies Novice <novice@example..com> - 2011-11-20 17:08 +0000
Re: Standard Design and Development Methodologies Arne Vajhøj <arne@vajhoej.dk> - 2011-11-20 12:18 -0500
Re: Standard Design and Development Methodologies markspace <-@.> - 2011-11-20 10:29 -0800
Re: Standard Design and Development Methodologies Lew <lewbloch@gmail.com> - 2011-11-20 10:55 -0800
Re: Standard Design and Development Methodologies Arne Vajhøj <arne@vajhoej.dk> - 2011-11-20 14:07 -0500
Re: Standard Design and Development Methodologies Lew <lewbloch@gmail.com> - 2011-11-20 11:50 -0800
Re: Standard Design and Development Methodologies Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2011-11-21 07:19 -0400
Re: Standard Design and Development Methodologies Roedy Green <see_website@mindprod.com.invalid> - 2011-11-20 22:27 -0800
Re: Standard Design and Development Methodologies Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2011-11-21 07:02 -0400
Re: Standard Design and Development Methodologies Robert Klemme <shortcutter@googlemail.com> - 2011-11-22 18:52 +0100
Re: Standard Design and Development Methodologies markspace <-@.> - 2011-11-22 11:37 -0800
Re: Standard Design and Development Methodologies Gene Wirchenko <genew@ocis.net> - 2011-11-22 14:27 -0800
Re: Standard Design and Development Methodologies Arne Vajhøj <arne@vajhoej.dk> - 2011-11-25 22:06 -0500
Re: Standard Design and Development Methodologies Gene Wirchenko <genew@ocis.net> - 2011-11-26 21:16 -0800
Re: Standard Design and Development Methodologies Arne Vajhøj <arne@vajhoej.dk> - 2011-12-02 21:53 -0500
Re: Standard Design and Development Methodologies Gene Wirchenko <genew@ocis.net> - 2011-12-04 21:25 -0800
Re: Standard Design and Development Methodologies Arne Vajhøj <arne@vajhoej.dk> - 2011-12-05 22:41 -0500
Re: Standard Design and Development Methodologies Gene Wirchenko <genew@ocis.net> - 2011-12-05 19:58 -0800
Re: Standard Design and Development Methodologies Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2011-11-22 19:57 -0400
Re: Standard Design and Development Methodologies Arne Vajhøj <arne@vajhoej.dk> - 2011-11-25 22:04 -0500
Re: Standard Design and Development Methodologies Gene Wirchenko <genew@ocis.net> - 2011-11-26 21:18 -0800
Re: Standard Design and Development Methodologies Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2011-11-27 08:34 -0400
Re: Standard Design and Development Methodologies Patricia Shanahan <pats@acm.org> - 2011-11-27 08:39 -0800
Re: Standard Design and Development Methodologies Martin Gregorie <martin@address-in-sig.invalid> - 2011-11-27 20:07 +0000
Re: Standard Design and Development Methodologies Arne Vajhøj <arne@vajhoej.dk> - 2011-12-02 21:48 -0500
Re: Standard Design and Development Methodologies Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2011-12-03 14:52 -0400
Re: Standard Design and Development Methodologies Arne Vajhøj <arne@vajhoej.dk> - 2011-12-05 22:50 -0500
Re: Standard Design and Development Methodologies Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2011-12-06 07:21 -0400
Re: Standard Design and Development Methodologies Arne Vajhøj <arne@vajhoej.dk> - 2011-11-25 21:54 -0500
Re: Standard Design and Development Methodologies Arne Vajhøj <arne@vajhoej.dk> - 2011-11-25 21:47 -0500
csiph-web