Castle Zeek's IT Project Engagement Philosophy
First, if you are looking for an "Exact, Final, Total Project Cost" before any project requirements are formally discovered - we respectfully submit that is not a healthy approach to doing custom web application development.  Castle Zeek certainly wants your business, but we have learned through much experience that we must respectfully pass on engagements that threaten destructive business practices.

We hope as you read this Terms of Service page that you get a better understanding how custom web application projects should be orchestrated to maximize success.  We believe if we can show that, plus our mastery of such approaches - you will realize Castle Zeek is the right IT service provider for your SMB.

The acumen and disposition to respect and implement proven methods exhibited by a client contributes critically to project success.  It is a documented fact that most software projects either complete late, run over budget, are deemed failures, or are outright scrapped.  Castle Zeek Systems has a practiced eye for identifying potential clients that keep that failure rate so high.  A critical insight to understanding this worldwide IT project failure rate is to realize the implications of the following:

  1. Companies that fail their IT projects typically fail repeatedly, often regardless of whichever service providers they used.

  2. Companies having successful IT projects repeatedly do so, also regardless of whichever IT service providers they used.  However, since these companies get to "stop looking" for IT service providers it tends to obscure that they are a part of the winning chemistry themselves.

The lesson here is that an excellent IT Service Provider like Castle Zeek Systems must be as judicious to screen good clients as the other way around.  We know you are looking for excellence, but so are we.  Castle Zeek has teamed with a select group of clients equally dedicated to quality and excellence as ourselves.  These savvy clients were able to recognize expertise and total-quality-commitment outside the realm of their own non-IT expertise because their shared focus on excellence primed their affinity for Castle Zeek.


There is a simple motto to describe IT projects:  Do it fast.  Do it good.  Do it cheap.   Pick TWO.
It means this:
  • You can do it FAST and GOOD, but it won't be cheap.
  • You can do it FAST and CHEAP, but it won't be good.
  • You can do it GOOD and CHEAP, but it won't be fast.

Castle Zeek wants to build a relationship with your business.  We hope that you are looking to establish a relationship with Castle Zeek for the benefit of our deep understanding and experience doing complex, enterprise-level web application projects.  Our management and methodologies are a distinguishing competency and a valuable resource to you.

Castle Zeek Systems has a deep background with multi-million dollar web application projects for the Fortune 1000 - and one of our key differentiators is that we make it possible to bring that highest level of enterprise systems discipline into an affordable range for SMBs.  Our project methodology is a vital key to this distinct capability and unique service offering.  Castle Zeek's most successful projects are always those involving clients who understand that web application development is a rigorous discipline, where decades of senior experience deeply matters.  If your organization has a similar culture of excellence and you are looking for an IT service provider exhibiting unsurpassed expertise and discipline, you will realize Castle Zeek is at the top of a very short list.

Project Estimation
Castle Zeek will first consult with you to discuss your project.  From this talk, a high-level estimate is then presented to you.  This estimate gives a low/high range for what the project may cost based on the basic requirements known at this point.  Please understand we do not bid on projects, but instead, we estimate projects.  Castle Zeek has a preference for clients that perceive, understand and appreciate this distinguishing "excellence indicator".  It plays a big part in why Castle Zeek projects overwhelmingly succeed and why the "bidders" so often fail.  Those seduced by the shiny lure "Everything for Nothing!" form the bulk of the line getting fleeced.

Our project quote method first finds "business drivers" forming the basis of why you need this web development effort.  Our initial quote lists these business requirements matched to the web deliverables that achieve the goal.  We also want to know who the stakeholders are for each business requirement in your business, or else maybe who the stakeholders are outside your business.

We then have a meeting to go over the project estimate document.  Please note we need a Mutual Non-Disclosure Agreement (NDA) in place before we deliver the project estimate document.  At this time, we also provide you our Master Services Agreement (MSA) for your review.  The project estimate document shows a range of effort hours across all the currently identified deliverables needed to create the system you need.  We typically show this in a level of detail called a "Work Breakdown Structure" (WBS).  Think of "Microsoft Project" or similar "Project" software.  We usually do this level of detail for Level 2, 3 and 4 projects.  Level 1 projects are small enough to show the same information in a simple table without a full WBS.  Also, many Level 2 projects are also small enough to do the same "table approach" for them.

The WBS (or effort table) of the project estimate shows a range of low/high effort for each currently known/expected deliverable task.  It is usual for a project to finally cost somewhere between the 60%-90% percentile of this estimate, based on the known deliverables at the time.  With the project estimate reviewed, the client decides whether to go ahead with the project.  If so then Castle Zeek will initially invoice 15% or more of the estimated total estimated cost to kick-off the project.  This "kick-off" charge covers costs to cover third-party specialist reservations needed for the project, and also immediately upcoming costs for Castle Zeek to conduct the formal requirements workshop.

At this point Castle Zeek asks the client to establish the bi-weekly billing to coincide with the upcoming construction iterations.  Most projects stipulate payment cycles at Net-15, however - long projects may qualify for Net-30.  If your business does not support Net-15 or Net-30, then project commencement will be postponed until you secure a third-party line of credit that Castle Zeek will draw down during the project.  In this way, our invoicing requirement is met and you may then negotiate your preference for delayed payments with a large bank.

Project Commencement
The commencement fee and MSA are respectively done and in effect.  Castle Zeek then authors a Statement Of Work (SOW) to specify current project engagement aspects not detailed in the MSA.

The SOW is reviewed and approved, and then the formal Requirements Gathering process begins.  This involves at least one formal requirements session where Castle Zeek will meet with client project representative(s) to capture the full system requirements.  The formal requirements-capture goes into a Requirements Document we author and review with you to ensure Castle Zeek has completely captured the requirements of the project.  This document will be signed-off before proceeding.

If the project is a Level 3 or 4, then a separate Technical Specification is created and also signed off.  Level 2 engagements will also require a Technical Specification if sufficiently complex.  Otherwise, less complex Level 2 engagements (and usually all Level 1 engagements) will provide a technical addendum to the Requirements Document.  In cases where a separate Technical Specification document is created, that document will be reviewed by the client and signed off before proceeding.

Once these items are all completed, Castle Zeek will commence development of the system.  At this point, the project moves into a phase of construction iterations with weekly progress reporting.

System Construction
Castle Zeek does two-week iterations during construction, and the bi-weekly invoicing concurrently begins.  In the Agile tradition, Castle Zeek puts working software in front of the client as soon as possible.  We seek to avoid the pitfall of the Big Design Up Front ("BDUF"), where you are unable to see what is being done for a long period of time.  The "BDUF" approach may work well for sky-scrapers and battle-ships, but not so good for software.

The regimen of two-week releases permits you to "touch and feel" the system.  This keeps you involved and greatly helps refine everyone's vision of what the system will be and what needs to change as we progress.  This approach permits essential minor "course correction" toward the final product - but it must be balanced against certain foundational, definitively established aspects.  The requirements process is more focused on locking down such foundational aspects.  As a metaphor, consider building a luxury home: The shape of the concrete slab is "foundational", but conversely - it is not that big a deal to later decide you want a different faucet handle in the laundry room.

If any requirements are discovered that substantively impact the cost/duration/scope of the project (ie: "Can we move the house three feet to the left?"), then Castle Zeek reserves the right to amend the SOW, budget, scope, delivery date, and all project documents accordingly.  For this reason, we can not overstate the importance of conducting an effective and thorough requirements process.  Indeed, we have seen cases where a single "Oh, by the way - can we just change this one little thing..." item would have cost more than the annual revenue of the client's business.

Castle Zeek has witnessed cases where clients imagined that "skimping requirements" and then "adding back in" deliverables adhoc - could somehow strategize to "get more for less".  We promise this never works and just runs up cost while jeopardizing the project.  Please realize that attempting to "game" proven methodologies and short-circuit architectural rigor is a recipe for costly chaos that can only defeat YOU.  The single most cost effective path for you to achieve your goals is to adhere to Castle Zeek methods.

Our methodology does permit flexibility as construction moves forward - however there is indeed a diminishing return where it is MUCH better to make architectural alterations as soon a possible.  The further construction progresses, the more likely new requirements will call for a disproportionate level of effort to implement.

We want to put a working version in front of you quickly so that we can identify these potential impacts early and not later.  If essential requirements are withheld from Castle Zeek and introduced late enough that they pose high risk to the project, they may be postponed until a subsequent project with a new statement of work.  This is Castle Zeek's call, as are all situations where Castle Zeek must intervene to avert project failure.

System Testing
Castle Zeek does thorough unit, integration, system, and load testing.  There are varying levels of these activities depending on the level of the engagement.  Specific details of testing are captured in the Technical Specification, usually as an appendix section of that document.

During initial consultations and requirements gathering, Castle Zeek gathers information about current or expected traffic on the system.  These exercises form the basis for the Use Cases that define the user-centric view of the system.  These Use Cases drive many aspects of later system testing, load testing, and especially acceptance testing.

Castle Zeek also solicits the contribution of testing effort from client representatives/employees.  They help drive system testing and acceptance testing with each construction iteration so that system acquaintance is reinforced early.  This attention and involvement by client test-users goes far to ensure that system adoption is rapid and seamless once the system is officially deployed.

Again, we stress these activities are needed to lesser or greater extent depending on the complexity of the system.  A Level 4 system definitely needs the gamut of all testing, yet that would be expensive overkill for a small-scale Level 1 engagement.  As we come to an awareness of your project requirements, we will discuss and document the appropriate range and depth of testing.

Development Engagement Model
Castle Zeek Systems does all development at its own facilities.  There are various instances early in the engagement before construction commences that Castle Zeek will be onsite with the client.  There will also be possible onsites by Castle Zeek personnel during certain construction iteration events, or testing.  In cases where the production deployment is done in a server-delivery approach, then this too requires an onsite visit.  Castle Zeek will identify in advance these instances when it needs to be onsite.  Clients may also discuss other needed onsite visits as appropriate.

Castle Zeek often does engage with third-party specialists, typically web designers. Here are Castle Zeek's stipulations governing such resources:

  1. Castle Zeek prefers to subcontract any needed third-party specialists to perform a project.
  2. Any case where a third-party specialist's artifacts deviate from Castle Zeek's Requirements Document or Technical Specification, either overtly, implicitly, or otherwise directly or potentially causing disruptive ramifications - Castle Zeek solely reserves the right to amend or veto such missteps by any such third-party.
  3. If aspects of any third-party development artifacts deviating from signed-off Castle Zeek requirements/technical specifications are still reasonably implementable, Castle Zeek solely reserves the right to amend the SOW, budget, scope, delivery date and all project documents as appropriate to effect the change in requirements.
  4. If Castle Zeek deems a third-party is causing excessive project risk, Castle Zeek solely reserves the right to remove any and all such third-parties from the project.  In such cases Castle Zeek also reserves the right to appoint a suitable third-party specialist/consultancy to effect the needed development artifacts.
  5. If any tenets stated above are impeded by the client or any third-party, Castle Zeek may unilaterally terminate the client for contractual non-performance.
  6. Castle Zeek only does IT projects that we fully control together with the client stakeholders and its senior executives.  If Castle Zeek perceives that a previously undisclosed third party is materially involved in the project at any phase, Castle Zeek reserves the right to unilaterally terminate the client and dissolve any agreements thereupon.

Please understand that the controlling aspects of how Castle Zeek manages IT engagements is for YOUR benefit, and specifically why we are so successful.  Businesses that try to do the things we are expressly forbidding above are the same companies that ALWAYS FAIL in their IT projects.  You can see that the sorts of mistakes described above are the CLIENTs doing and not the hypothetical fault of Castle Zeek, or any service provider.  Yet, those kinds of debilitating mistakes are exactly why IT service providers can not deliver success for "failure-prone" businesses that commit such self-defeating actions. You need to be crystal clear on these facts.

Technical Aspects of Development

  1. Server logic is implemented in Java 5+, and does not back-port to 1.4.x.  Castle Zeek does not do projects using .Net/ASP, Visual Basic, Ruby On Rails, PHP, ColdFusion, or CGI.  There may be certain utility aspects of a Castle Zeek system that implement some PHP or Perl/CGI (or even other scripting types), however, they do not form the core of the development.  However, keep in mind - Castle Zeek has expertise in ALL those languages, which we employ when we replace lesser systems written in them.  We are able to very proficiently read what we are replacing.
  2. Castle Zeek architects solutions on the Tomcat 6+ reference container on Linux platforms.
  3. Castle Zeek architects its persistence mechanism with MySQL 5.5+.  Alternatively, Oracle or PostGRE may be used.  Although it is possible that MS SQL database can be supported, Castle Zeek will not develop toward that proprietary platform.  Furthermore, Castle Zeek will actively pursue the mission to have the client abandon that platform altogether and migrate to one of the more standards-compliant databases.
    Remember, we are here to HELP you get technology right, and when we see general strategic mistakes - we put our "consultant" hat on to assist you out of dead-ends you may not perceive.  If you have already wasted $20,000.00 on MS SQL, don't be too attached to it.  You will save MANY times that if you listen to Castle Zeek and let us help you be rid of it.
  4. Castle Zeek implements various open source technologies as integral aspects of its "Framework" subsystems.  The selection and manner of implementation of such open source technologies are not negotiable aspects for any engagement.  However, these technologies do havemyriad configuration features which are certainly part of "fitting" them to the specific engagement.
  5. Castle Zeek designs the relational schema for any systems requiring relational persistence.  If you have a resource with database skills that you wish to participate, that is alright.  However, Castle Zeek has full control and final determination of the schema design.
  6. Castle Zeek will not implement any browser technology that uses .COM or any other proprietary Microsoft technologies.  If a solution only works on Microsoft stuff, it did not come from Castle Zeek.
  7. If there is an existing system in which the data will need to be migrated into the new Castle Zeek system, this migration effort will be performed under a separate Statement of Work (SOW) than the development of the new Castle Zeek system.
  8. In cases where the development project is to replace a prior system, Castle Zeek reserves the right to select the implementation approach to effect any replicated requirement.  Understand this distinction: Castle Zeek will replicate the business requirement independently from any prior mechanism of implementation.  The purpose of this rule is that, in every case Castle Zeek has replaced a prior system, the prior system was a horrible mess.  Castle Zeek does not reuse parts and pieces of a horrible mess "just because its already there".
  9. Castle Zeek's "ZeekEngines" are specifically designed for Unix and Linux platforms.  Castle Zeek builds Enterprise class software systems.  If a client mandates the deployment platform should be a Windows machine, it is - however - still possible, although discouraged.  In such cases Castle Zeek reserves the right to NOT provide any warranty whatsoever where such contraindicated deployment environment aspects occur.
  10. In cases where a "ZeekEngine" is deployed in the client's own production environment, any environmental factors impinging on the normal operation of the ZeekEngine do NOT constitute errant behavior or failure of the ZeekEngine.  Such cases constitute a "contraindicated environment" and have potential to void all warranties.  Castle Zeek's involvement to diagnose and resolve such issues are billed at Castle Zeek's full consultancy rate.
  11. If the client implements any foreign software mechanism that directly binds to a ZeekEngine's relational persistence mechanism or any other persistent medium managed by the ZeekEngine in such a manner that could potentially disrupt the ZeekEngine's normal operation, all warranties are immediately voided.
Post Deployment Support
Castle Zeek's Level 1 and 2 engagements are sufficiently small that our Subscription Service aptly provides the needed professional oversight.  However, Level 3 and Level 4 engagements introduce Service Level Agreement aspects worth noting explicitly here.  As described on the "Engagements" page of this site, Castle Zeek's technology offerings span to a continuum of complexity defined as Levels 1, 2, 3, and 4.  Therefore, let us make some statements about businesses/organizations and the appropriate support for their respective levels of engagement.  Please also review the "Support Levels" page of this site.

An essential aspect of our Post Deployment Support levels is that none of them is to be construed as "Costless Warranty Work".  Our Support Levels are expressly NOT any manner of warranty provision.  The Support Levels are a definition of minimal responsiveness that we strive to provide under specific circumstances.  It is also important to understand that, although we seldom have difficulty according to the SLA definitions below, our occasional inability to provide the stated timeliness does NOT constitute a breach of service agreement.  Castle Zeek is a custom web application development provider and NOT an operations center, which is precisely why you will see language under SLA 3 and 4 regarding the client's own responsibility to provide their own inhouse "data center support" capability.

  • Level 1 - A basic Online Presence
    These sites are essentially HTML/CSS/Javascript websites from a "Single Home Page Site" to a multi-page site.  It is customary that Castle Zeek also extends its Subscription Service to manage these kinds of sites on behalf of clients.

    1. Castle Zeek does NOT provide SLA-1 or SLA-2 for this kind of site.  Sites of this simplicity typically only suffer actual technical failures in cases where there is an internet segment outage or there is a problem with the remote data center, both of which are so exceedingly rare they are effectively "unheard of".  Castle Zeek has never witnessed either and so deems SLA-1 and SLA-2 inapplicable.

    2. The only sort of thing left to go potentially "wrong" with a Level 1 site is if some content/text narrative needs to be changed.  Think of these items as changes to wording, or color, or the thickness of a line, etc.  Our SLA-3 defines that we will acknowledge within two (2) business days - but typically we can respond very soon during the day.

      We are responsive, and think this is an appropriate service level.  We ask that you consider it before hand and abide by it with professional courtesy.  We try to be flexible and prompt as possible, are always understanding, but never abused.

      Consider a scenario: Imagine a client with a Level 1 "Brochure Site" convinces himself that changing a colon to a comma somewhere on his "Salad Recipes" website constitutes a "dire emergency" at 3:00am, and floods Castle Zeek with phone calls during the wee-hours to "rectify this calamity".  Please note it is our strict policy to deal with this sort of "support level misunderstanding" by charging a fee that makes penetratingly clear that dire emergencies are, in a word, unaffordable.

  • Level 2 - An Information Management Site
    These sites are based on a Level 1 site, but have the additional ability to gather forms data from site visitors.  These sites are also extended in capability because they introduce Web Content Management capabilities, which Level 1 sites do not.

    1. Castle Zeek does NOT provide SLA-1 or SLA-2 for this kind of site.  Please review the descriptions above for Level 1 sites, as they are essentially equally applicable.

    2. Given that a Level 2 site suggests a client organization that has some number of employees, Castle Zeek asserts that such organizations should be looking to secure their own inhouse technical resources if they don't already have it.  That said, the more appropriate support measure is to fund the training of your own technical team by Castle Zeek to be able to competently provide your own first line of on-call support.

  • Level 3 - Basic to Intermediate ZeekEngine External Site with Basic Intranet
    A Level 3 site is an actual, custom ZeekEngine implementation that models your organization.  This level of system introduces the notion that your Intranet is part of how your employees do their work.  Think of travel agents who log into a central system to book vacations.  This is the level of web application a Level 3 ZeekEngine system is.  A Level 3 system is often "mission critical", where failure may have substantive impact on your business.  The potentially critical nature of Level 3 (and Level 4) systems are what our higher "Service Levels" are about.

    1. Castle Zeek requires that the client has an existing technical resource that will be the first-call analyst in cases the system is indeed mission-critical and requires around the clock on-call support.  In cases where the client organization's own analysts have specifically ascertained the ZeekEngine is the point of failure, and the situation is indeed mission-critical - then Castle Zeek does provide SLA-2 and SLA-1 level support.

    2. If the client does not have at least one in-house technical resource as stated above, the client should secure such technical resources before the system is deployed to production.  Failure to do so can potentially leave the client exposed to unacceptable gaps in coverage.

    3. Castle Zeek strongly urges the client should fund training for their appointed technical resources with Castle Zeek.  This will give them the knowledge they need to be effective as your first-call support analysts.

  • Level 4 - Advanced ZeekEngine Intranet/Extranet
    Consider a Level 4 system as a superset of level 3.  Like a Level 3 system, a Level 4 system is likely mission critical and may require prompt attention of there is a failure having substantive impact on the business.

What is important to realize is that Castle Zeek produces robust systems, and we stand by them - however, we are NOT your operations center.  Please realize that our Level 3 and Level 4 ZeekEngine systems are not "toys", and we expect that clients wishing to get such systems do so in a rational and sustainable manner that makes sense in the context of their business.

Organizations requiring Level 3 and Level 4 systems have defacto made it a matter of strategic direction that sophisticated technological systems are core to thier business mission.  However, if Castle Zeek should identify a potential client that is attempting to "bootstrap" their technology position in an unsustainable way, we will have that discussion early on.

Castle Zeek is very dedicated to the success of our clients, but we are also skilled at discerning businesses attempting to bet their survival they can induce Castle Zeek to distort itself into something it is not toward some unsustainable end, and everyone's detriment.  As such, we have given much consideration to our Service Levels, which really flipped the lens around to identify that businesses that invest in technology bear their own responsibility to ensure they adopt and evolve systems in a sustainable manner.  Castle Zeek is happy to consult with business owners who need guidance on how this trajectory is navigated, and how we can provide strategic assistance for this.

Limited Warranty
Castle Zeek asserts that its production deployment software will perform substantially in accordance with its intended use for a period of thirty (30) days from the date of final delivery.  This Limited Warranty is void if failure of the Software Product has resulted from accident, abuse, misapplication, or the express negligence of Client.

Please understand that the definition that our systems shall perform "substantially" is not subject to frivolous misinterpretation or distortion.  For example, an actual attorney at a client company openly admitted that he wanted his site bio updated to say he bought a new boat to impress a girl he was after.  He thereby asserted the entire ZeekEngine was fundamentally flawed and in a state of "substantial failure for its intended purpose", which evidently had become for him to pick up chicks.  You may be laughing, but you would be amazed how often this sort of thing occurs.

Which segues to a very important rule:
Castle Zeek solely reserves the right to ascertain the severity of a system failure and its appropriate SLA response, or the applicability of any warranty provision.

It did not used to be this way, folks.  But the abuse shot right off the chart.  Imagine a lady who does not like a certain shade of baby blue, who then threatens a lawsuit to recover "Pain and Distress" reparations and a fully stocked cabinet of pharmaceutical expenses - because the 'ugliness' of that color on a website has physically and emotionally injured her.  Uh huh.

The list below shows the specific criteria that all must be true for Castle Zeek to effect a repair free of additional development charge.  Note that the warranty repair only covers the "development charge", and that any other related/travel/material/incidental expenses associated with the repair are NOT covered by the warranty provision.

  1. A ZeekEngine functional aspect is demonstrably flawed or deficient, in a manner where its implementation (or lack thereof) does not conform to the signed-off Technical Specification or the Business Requirements, or generally accepted sound programming or architectural practices.
  2. The stated, demonstrable flaw or deficiency has a negative impact on the normal operation of the system or its ability to achieve its stated purpose.
  3. The date when the bug is actually identified falls within the stated Limited Warranty duration.
  4. The client has not done any of the actions that void all warranties.
  5. The client is in good standing with Castle Zeek Systems and has not been terminated.


Our Patch Distribution System addresses most every non-critical bug fix needed.

Additional Technical Considerations for Production Deployments relating to code quality

  • Our Level 3 and Level 4 "ZeekEngine" systems include, as part of the Subscription Support service, regular patches.  These patches resolve nearly all of the production issues typically identified by our clients post launch.  We strive to be targeted with patch releases to favor "known and reported" issues over lesser ones that perhaps no client has reported yet, but that we found ourselves in our never-ending code reviews to improve our core systems.  We stay in contact with the Client's technical team to ensure we are focusing on known issues needing resolution.
  • The Patch Distribution System makes every attempt to automate the patches in their release sequence.  Also, they can NOT be applied out of order, or with skips.  The client must not impede this system.
  • We must advise our clients NOT to attempt patching core infrastructure of their Zeek Engines.  Our Patch Distribution System may likely overwrite any modifications in sections of underlying libraries that we ask our clients not to tamper with.  Castle Zeek is not responsible for such overwrites - OR any subsequent system failures caused by normal application of a Patch.  Note that such tampering in the course of the initial Limited Warranty period shall render all warranties immediately void.
Home | Architecture | Consulting | Developer Corner | ECommerce | Engagements | Experience | FAQ | Methodology | Pricing | SMB Focus | Support Levels | Terms of Service | Web Applications | ZeekWidgets