Re: job announcement - Software Architect
Martin, On Sat, Mar 21, 2009 at 9:50 PM, Martin Gainty mgai...@hotmail.com wrote: test driven means if I create a component as a developer I need to install a JUnit testcase that will test the requisite function Actually there's a bit more behind it. Usually, you start to design an application starting with some UseCases, Sequenz-Diagrams, Action-Diagrams, Class-Diagrams etc. So basically you have a MDA (Modell Driven Architecture) reflecting / incooperating *all* business-requirements (hopefully...) When Using TDD, all of that is left behind. The flow of activity is like - analyse the problem / requirement - write a test reflecting the requirement - code something on which the test will not fail As you can see, TDD is more something being used for small projects. I'd even say that what we understand as a project is already too big for pure TDD. TDD is great if you have a small problem, need ti implement a new requirement or just fix a bug / unwanted behaviour. IMHO it's useless for real-world projects having a certain complexity and size. Besides, if you are using something like MDA, you start up like outlined above, however, one you start to implement, you don't start to code but you start to write some tests for the smallest parts aka classes. IMHO tests should mirror the requirements aka modells, however, I do not think that the process should start with tests but tests should come after the design is roughly set. Rapid Iterative Development means make as small a piece of functionality such as a component and then add ancillary functions such as this project requirement The thing is, that we all want the requirements to be complete once we start with the development (which, in my understanding, consists of analyses, design, test, implementation). However, most of us know that requirements almost never are complete. Therefore, one tries to accept the fact and uses something like RID (being developed from RAD). The lifecycle is: - Requirements capture - Analysis - Design - Implementation - Testing After that again starting with requirements capture. This seems to be perfect - but hold it: As you can imagine, it's almost impossible to estimate the effort for a project, since you don't know all requirements beforehand. So the big challange will be to convince your customer that this will not be a fixed-price / fixed-time-project, however, he (the customer) will definately benefit since this approach is most flexiable, you are able to shortly implement new requirements (i.e. market-conditions, new legal requirements etc.). The problem still is: Most customers don't actually know their own requirements, they don't know what they want / need, but still they want a statement on what the project costs and how long it will take... Rgds Gregor -- just because your paranoid, doesn't mean they're not after you... gpgp-fp: 79A84FA526807026795E4209D3B3FE028B3170B2 gpgp-key available @ http://pgpkeys.pca.dfn.de:11371 - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: job announcement - Software Architect
MGquestions/comments __ Verzicht und Vertraulichkeitanmerkung Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede unbefugte Weiterleitung oder Fertigung einer Kopie ist unzulaessig. Diese Nachricht dient lediglich dem Austausch von Informationen und entfaltet keine rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen. Martin, On Sat, Mar 21, 2009 at 9:50 PM, Martin Gainty mgai...@hotmail.com wrote: test driven means if I create a component as a developer I need to install a JUnit testcase that will test the requisite function Actually there's a bit more behind it. Usually, you start to design an application starting with some UseCases, Sequenz-Diagrams, Action-Diagrams, Class-Diagrams etc. So basically you have a MDA (Modell Driven Architecture) reflecting / incooperating *all* business-requirements (hopefully...) MGagreed but unless you have the business requirement clearly stated beforehand MGSequence,Action and Class Diagrams would not reflect true customer need When Using TDD, all of that is left behind. The flow of activity is like - analyse the problem / requirement - write a test reflecting the requirement - code something on which the test will not fail As you can see, TDD is more something being used for small projects. I'd even say that what we understand as a project is already too big for pure TDD. TDD is great if you have a small problem, need ti implement a new requirement or just fix a bug / unwanted behaviour. IMHO it's useless for real-world projects having a certain complexity and size. MG6 years ago we faced this very dilemma where a massively monolithic MGwebapp was released to user base and accomplished everything it was supposed to MGdo we had not developed any testcases..after all the main objective was that 'it MGworked' MGthe user found that when the webapp was deployed in their locale and their MGenvironment that the webapp 'did not work' with their specific environment MGwe simply did not accomodate 'their environmental requirements' into the code Besides, if you are using something like MDA, you start up like outlined above, however, one you start to implement, you don't start to code but you start to write some tests for the smallest parts aka classes. MGcould you provide an real-life scenario where MDA is applicable? MGare there advantages of using MDA over TDD? MGare there disadvantages of using TDD over MDA? IMHO tests should mirror the requirements aka modells, however, I do not think that the process should start with tests but tests should come after the design is roughly set. Rapid Iterative Development means make as small a piece of functionality such as a component and then add ancillary functions such as this project requirement The thing is, that we all want the requirements to be complete once we start with the development (which, in my understanding, consists of analyses, design, test, implementation). However, most of us know that requirements almost never are complete. Therefore, one tries to accept the fact and uses something like RID (being developed from RAD). MGcould you explain RID? MGcould you explain RID's advantages over RAD? The lifecycle is: - Requirements capture MGagree..this is important.. - Analysis MGi take it this means prioritisation? MGwhere is resource allocation? - Design MGi assume conforming your webapp's architecture to real world test scenarios? - Implementation MGthis is where TDD tests would either fail/succeed..yes/no? - Testing MGif you spent more than 6 months coding in the wrong direction than I hope MGthe projects funding source is infinite MGthe notion of a bunch of folks in one country coding and tossing a webapp MGover the wall to another country to test is not cost-feasible and would fail MGbecause the coders environment never accomodated real-world scenarios After that again starting with requirements capture. MGthis should've been the first step.. This seems to be perfect - but hold it: As you can imagine, it's almost impossible to estimate the effort for a project, since you don't know all requirements beforehand. MGi once worked for someone that would automatically cut your estimate in half MGso if you need a min 1 week your estimate to this P/L would task at 2 weeks.. MGthe developer needs to grasp 75% of the code requirements before they start MGin other words your core functions need to be in the first 75% of your deliverables MGif the remaining 25% takes more time than 75% already completed that means MGyour process methodology is not robust So the big challange will be to convince your customer that this will not be a fixed-price / fixed-time-project, however, he (the customer) will definately benefit since this
Re: job announcement - Software Architect
On Sun, Mar 22, 2009 at 11:18 AM, Gregor Schneider rc4...@googlemail.com wrote: Martin, On Sat, Mar 21, 2009 at 9:50 PM, Martin Gainty mgai...@hotmail.com wrote: test driven means if I create a component as a developer I need to install a JUnit testcase that will test the requisite function Actually there's a bit more behind it. Usually, you start to design an application starting with some UseCases, Sequenz-Diagrams, Action-Diagrams, Class-Diagrams etc. So basically you have a MDA (Modell Driven Architecture) reflecting / incooperating *all* business-requirements (hopefully...) When Using TDD, all of that is left behind. The flow of activity is like - analyse the problem / requirement - write a test reflecting the requirement - code something on which the test will not fail You are describing Test Driven DEVELOPMENT. The original post included Test Driven _DESIGN_. Since the main criticism of TDD usually goes into the lack of Design, I was really interested how they managed to come around this problem and probably came out with a new methodology. Otherwise one have to assume that the OP was just using Buzzwords he found to sound cool without understanding what they actually mean. regards Leon Btw, what you were describing is the general OOD which doesn't imply a Model Driven Architecture (they invented UML before they trademarked MDD). - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: job announcement - Software Architect
i googled 'TDD' followed the link to Wikipedia (automatically assumed this is what he meant) http://en.wikipedia.org/wiki/Test-driven_development *thanks for the clarification* Martin __ Disclaimer and confidentiality note This message is confidential and may be privileged. If you are not the intended recipient, we kindly ask you to please inform the sender. Any unauthorised dissemination or copying hereof is prohibited. This message serves for information purposes only and shall not have any legally binding effect. Given that e-mails can easily be subject to manipulation, we can not accept any liability for the content provided. Date: Sun, 22 Mar 2009 16:38:29 +0100 Subject: Re: job announcement - Software Architect From: rosenberg.l...@googlemail.com To: users@tomcat.apache.org On Sun, Mar 22, 2009 at 11:18 AM, Gregor Schneider rc4...@googlemail.com wrote: Martin, On Sat, Mar 21, 2009 at 9:50 PM, Martin Gainty mgai...@hotmail.com wrote: test driven means if I create a component as a developer I need to install a JUnit testcase that will test the requisite function Actually there's a bit more behind it. Usually, you start to design an application starting with some UseCases, Sequenz-Diagrams, Action-Diagrams, Class-Diagrams etc. So basically you have a MDA (Modell Driven Architecture) reflecting / incooperating *all* business-requirements (hopefully...) When Using TDD, all of that is left behind. The flow of activity is like - analyse the problem / requirement - write a test reflecting the requirement - code something on which the test will not fail You are describing Test Driven DEVELOPMENT. The original post included Test Driven _DESIGN_. Since the main criticism of TDD usually goes into the lack of Design, I was really interested how they managed to come around this problem and probably came out with a new methodology. Otherwise one have to assume that the OP was just using Buzzwords he found to sound cool without understanding what they actually mean. regards Leon Btw, what you were describing is the general OOD which doesn't imply a Model Driven Architecture (they invented UML before they trademarked MDD). - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org _ Internet Explorer 8 – Now Available. Faster, safer, easier. http://clk.atdmt.com/MRT/go/141323790/direct/01/
Re: job announcement - Software Architect
followed the link to Wikipedia (automatically assumed this is what he meant) http://en.wikipedia.org/wiki/Test-driven_development :: which includes in the initial description the line: Note that test-driven development is a software design method, not merely a method of testing. TDD/BDD as an iterative *design* process is one of those things that I think you just have to try until you achieve that 'a-HA!' moment :-) YMMV! -- Hassan Schroeder hassan.schroe...@gmail.com - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: job announcement - Software Architect
To the OP : I know of only two people in the world who meet all the criteria you expressed in your advertisement (*). Unfortunately, they were working for a US Fortune 500 financial company which has since been bailed out. Consequently, they got their boni and are now happily retired in Florida and not interested anymore. May I thus respectfully suggest that you lower the barrier of entry somewhat, so that more of us could apply ? (*) Mind you, they meet them together, not individually. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: job announcement - Software Architect
not that i'm interested, but do you actually find people who have expertise in text search engines such as Lucene or FAST who have customized these systems and deployed them on a large-scale. Also preferred are candidates with experience in applying NLP and Machine Learning to solving problems for Fortune 500 end-users. AND * Expertise in Adobe Flex, Flash and Python are nice to have at the same time? regards Leon P.S. on a very side note, what is test-driven design and rapid iterative development ? On Fri, Mar 20, 2009 at 7:44 PM, Michael Osofsky mosof...@netbase.com wrote: Software Architect Location: Mountain View, CA NetBase, a well-funded, fast growing company with an impressive roster of top-tier Fortune 500 companies, seeks to grow its team with a hands-on software architect. NetBase delivers Content Intelligence solutions that harness value and insight from any source, including the Internet, premium and enterprise content. NetBase reads every sentence inside documents, linguistically understands the content and powers breakthrough search experiences with relevant answers and insights. NetBase is being used by organizations that are recognized as global leaders in healthcare, publishing, manufacturing, consumer packaged goods and government such as Elsevier, Clorox, 3M, The U.S. Army, Pepsi and many more. We seek a hands-on architect with extensive background in software development to translate business objectives into a technology vision and articulated architecture. Candidates should have a strong track record of designing and developing multi-tiered web applications that are high quality, scalable, and reliable. We prefer generalists who have driven feature development at every layer of the stack. We have a strong preference for someone with expertise in text search engines such as Lucene or FAST who have customized these systems and deployed them on a large-scale. Also preferred are candidates with experience in applying NLP and Machine Learning to solving problems for Fortune 500 end-users. Candidates should have excellent interpersonal skills and a track record of increasing responsibility. Those who are skilled in organizational needs assessment and driving change via consensus will fit in well on our team. Candidates should be able to establish credibility quickly and provide mentorship to team members. We target talented individuals who are resourceful, flexible, and aggressive about learning new things. We are an Agile development shop. We do test-driven design and rapid iterative development and are looking for a like-minded architect to help us build for the future. Requirements: * 10 years work experience with 3+ as an architect * Experience in large-scale, distributed, web-based applications * Agile development methodology * Deep knowledge of Java * MS or PhD in CS * Database design and SQL (MySQL a plus) * Excellent interpersonal and communications skills * High degree of integrity and drive * Expertise in Adobe Flex, Flash and Python are nice to have Authorization to work in the US and relocation are required. To apply: Please submit a resume and cover letter via email to t...@netbase.com with the subject of Software Architect. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: job announcement - Software Architect
From: Leon Rosenberg [mailto:rosenberg.l...@googlemail.com] Subject: Re: job announcement - Software Architect P.S. on a very side note, what is test-driven design and rapid iterative development ? I think that means We don't need no stinkin' requirements. - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: job announcement - Software Architect
Eh, we've all done rapid iterative design... it usually goes something like this... 10:34am: I need the logo to be flaming instead of waving, and it has to be done by 11:00am 10:58am: Scratch that, the logo has to fade in and out and it MUST be implemented by 11:15am 11:20am: Please change the site's layout from three fluid columns to two static by noon's product demo 12:22pm: The demo went well, but they want the logo to be a subtle background image, and the layout has to have a header, footer, sidebar and the original three fluid columns. The next demo is at 1:30 so it has to be done by then. By the way, tapid iterative development usually ends in one or more suicides, loss of staff to the local Wal-Mart or any version of Windows Vista. Frank -- Frank W. Zammetti Author of Practical Ext JS Projects with Gears (coming soon) and Practical Dojo Projects and Practical DWR 2 Projects and Practical JavaScript, DOM Scripting and Ajax Projects and Practical Ajax Projects with Java Technology (For info: apress.com/book/search?searchterm=zammettiact=search) My look ma, I have a blog too! blog: zammetti.com/blog Caldarale, Charles R wrote: From: Leon Rosenberg [mailto:rosenberg.l...@googlemail.com] Subject: Re: job announcement - Software Architect P.S. on a very side note, what is test-driven design and rapid iterative development ? I think that means We don't need no stinkin' requirements. - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org __ Information from ESET Smart Security, version of virus signature database 3953 (20090321) __ The message was checked by ESET Smart Security. http://www.eset.com - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: job announcement - Software Architect
Err, that's Rapid or course dunno what tapid is :) -- Frank W. Zammetti Author of Practical Ext JS Projects with Gears (coming soon) and Practical Dojo Projects and Practical DWR 2 Projects and Practical JavaScript, DOM Scripting and Ajax Projects and Practical Ajax Projects with Java Technology (For info: apress.com/book/search?searchterm=zammettiact=search) My look ma, I have a blog too! blog: zammetti.com/blog Frank W. Zammetti wrote: Eh, we've all done rapid iterative design... it usually goes something like this... 10:34am: I need the logo to be flaming instead of waving, and it has to be done by 11:00am 10:58am: Scratch that, the logo has to fade in and out and it MUST be implemented by 11:15am 11:20am: Please change the site's layout from three fluid columns to two static by noon's product demo 12:22pm: The demo went well, but they want the logo to be a subtle background image, and the layout has to have a header, footer, sidebar and the original three fluid columns. The next demo is at 1:30 so it has to be done by then. By the way, tapid iterative development usually ends in one or more suicides, loss of staff to the local Wal-Mart or any version of Windows Vista. Frank - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: job announcement - Software Architect
test driven means if I create a component as a developer I need to install a JUnit testcase that will test the requisite function Rapid Iterative Development means make as small a piece of functionality such as a component and then add ancillary functions such as this project requirement Project FuBar (core consists of mission criticial SNAFU module) --logging (using log4j and/or commons logging to log Project Fubars ability to achieve SNAFU) --security (encrypting username/password so admin privs are restricted to project fubar) Harumph.. Martin __ Verzicht und Vertraulichkeitanmerkung / Disclaimer and confidentiality note Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede unbefugte Weiterleitung oder Fertigung einer Kopie ist unzulaessig. Diese Nachricht dient lediglich dem Austausch von Informationen und entfaltet keine rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen. This message is confidential and may be privileged. If you are not the intended recipient, we kindly ask you to please inform the sender. Any unauthorised dissemination or copying hereof is prohibited. This message serves for information purposes only and shall not have any legally binding effect. Given that e-mails can easily be subject to manipulation, we can not accept any liability for the content provided. From: chuck.caldar...@unisys.com To: users@tomcat.apache.org Date: Sat, 21 Mar 2009 15:18:38 -0500 Subject: RE: job announcement - Software Architect From: Leon Rosenberg [mailto:rosenberg.l...@googlemail.com] Subject: Re: job announcement - Software Architect P.S. on a very side note, what is test-driven design and rapid iterative development ? I think that means We don't need no stinkin' requirements. - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org _ Hotmail® is up to 70% faster. Now good news travels really fast. http://windowslive.com/online/hotmail?ocid=TXT_TAGLM_WL_HM_70faster_032009
RE: job announcement - Software Architect
From: Frank W. Zammetti [mailto:fzli...@omnytex.com] Subject: Re: job announcement - Software Architect Err, that's Rapid or course dunno what tapid is :) I took it as a combination of tepid and vapid... - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org