Re: job announcement - Software Architect

2009-03-22 Thread Gregor Schneider
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

2009-03-22 Thread Martin Gainty

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

2009-03-22 Thread Leon Rosenberg
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

2009-03-22 Thread Martin Gainty

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

2009-03-22 Thread Hassan Schroeder
 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

2009-03-22 Thread André Warnier

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

2009-03-21 Thread Leon Rosenberg
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

2009-03-21 Thread Caldarale, Charles R
 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

2009-03-21 Thread Frank W. Zammetti
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

2009-03-21 Thread Frank W. Zammetti

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

2009-03-21 Thread Martin Gainty

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

2009-03-21 Thread Caldarale, Charles R
 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