Home
The Agile Developer
Kirk is an Analyst at Burton Group. For 15 years, he's worked in the trenches on real software projects. Kirk
believes software development is an amazing profession. He take a keen
interest in design, architecture, application development platforms,
agile development, and the IT industry in general, especially as it
relates to software development.
Subscribe to this RSS Feed -
|
|
Written by Kirk Knoernschild
|
|
Tuesday, 01 August 2006 |
Agile development practices such as test driven development, refactoring and continuous integration are proven techniques contributing to more robust software, and tools and utilities are available to facilitate each technique. When faced with the deadline pressures and scope changes that run rampant on real world projects, great discipline is required by the agile developer to continue practicing these important techniques. Teams that cave to project pressures and neglect the practices favor seemingly short-term gain, while compromising the future growth and integrity of the software system. Integrating the tools that support the agile practices into a robust build process is the cornerstone of an effective continuous integration strategy, enabling refactoring and test driven development. An automated and repeatable process ensures development teams never stray far from practicing important agile practices, allowing them to take the next step toward becoming a team that can consistently deliver reliable, high quality software.
Tags:
Click to add your tags...,
|
|
|
Written by Kirk Knoernschild
|
|
Sunday, 09 July 2006 |
The benefits of Service Oriented Architecture (SOA) are clear: greater business agility through loosely-coupled and transparent services that speed delivery of valued software by leveraging reusable and composable services. SOA promises to accommodate and isolate change to individual services with minimal disruption to service consumers, increase quality through independent testability and verification, ease integration through open standards and technology and minimize cost and risk by leveraging existing transport protocols and internet infrastructure. While SOA presents a different technological landscape and development climate, it is not the complexity of either that risks dooming SOA initiatives. Instead, SOA initiatives face the same challenge the software industry has been struggling to resolve for decades. Whether SOA be manifested using Web Services, messaging or some other technology stack, responding quickly to changing business demands is only achieved if the underlying service itself can easily accommodate change. Thus, there exists a natural synergy between agile methods that embrace change and SOA initiatives that encourage adaptable technology solutions.
Tags:
Click to add your tags...,
|
|
|
Written by Kirk Knoernschild
|
|
Wednesday, 07 June 2006 |
The promise of agile development is to deliver high value software more quickly, while remaining responsive to change. But change tends to cause software rot where simple modifications ripple throughout the application, exercising the design in unexpected ways. Avoiding software rot and maintaining design integrity requires frequent refactoring to ensure code remains clean and concise with minimal dependencies between modules. Code quality and design metrics offer objective advice in identifying areas of the application that are solid candidates for refactoring, while coverage metrics provide the guidance and courage necessary to undertake the refactoring effort.
Tags:
metrics,
Click to add your tags...,
|
|
|
Written by Kirk Knoernschild
|
|
Wednesday, 03 May 2006 |
A defining characteristic of agile development is to keep moving forward, recognizing working code as the primary measure of valued software. Undoubtedly, there is no way to judge a software system until you have a system to judge. Yet, experienced developers recognize that requirements frequently change and traditional methods have achieved very little success in stabilizing requirements early in the lifecycle. Instinctively, we may feel change impedes progress, but agile developers embrace an attitude where change is viewed as an opportunity to improve the system. A variety of open source software tools can enable important agile practices, allowing you to keep moving forward so long as you are willing to embrace change.
Tags:
accommodates,
agile,
applications,
architecture,
behaviorally,
characteristic,
collaboration,
comprehensiveness,
conclusionagility,
configuration,
continuously,
cruisecontrol,
demonstrations,
documentation,
frameworkstools,
functionality,
inconsistencies,
incorporating,
incrementally,
independently,
instrumentation,
modifications,
practicesembracing,
professionals,
relationships,
specifications,
Click to add your tags...,
|
|
| | << Start < Prev 1 2 Next > End >>
| | Results 12 - 15 of 15 |
|