<?xml version="1.0" encoding="utf-8"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><atom:link href="http://www.sqassociates.com/RSSRetrieve.aspx?ID=12748&amp;Type=RSS20" rel="self" type="application/rss+xml" /><title>Blog</title><description>Blog</description><link>http://www.sqassociates.com/</link><lastBuildDate>Sun, 27 May 2012 20:26:18 GMT</lastBuildDate><docs>http://backend.userland.com/rss</docs><generator>RSS.NET: http://www.rssdotnet.com/</generator><item><title>Next steps: Moving forward</title><description>&lt;p&gt;&lt;strong&gt;&lt;span style="font-size: 14px; color: #cd732a;"&gt;Do you need help optimizing your software development lifecycle?&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;By assessing your software development practices against the four SQA quality levels, you should be able to determine your maturity level &amp;mdash; and figure out roughly where you fall on the improvement continuum. &lt;/p&gt;
&lt;p&gt;Now: Is that good enough? &lt;/p&gt;
&lt;p&gt;If your team is already delivering software on schedule, only slight improvements may be necessary. &lt;/p&gt;
&lt;p&gt;However, if you need deeper insight into your software development process &amp;mdash; if you&amp;rsquo;d like to optimize it the way you&amp;rsquo;d ideally optimize your delivery of software &amp;mdash; SQA can help.  &lt;/p&gt;
&lt;p&gt;Our specialists can work collaboratively with you to assess your maturity, identify your key drivers, and then create a tailored roadmap of change.&lt;/p&gt;
&lt;p&gt;Got questions?  Contact us today for more information! Email: &lt;a href="mailto:info@sqassociates.com"&gt;info@sqassociates.com&lt;/a&gt; &lt;/p&gt;
</description><link>http://www.sqassociates.com/RSSRetrieve.aspx?ID=12748&amp;A=Link&amp;ObjectID=298065&amp;ObjectType=56&amp;O=http%253a%252f%252fwww.sqassociates.com%252f_blog%252fBlog%252fpost%252fThe_four_levels_of_quality_maturity_%25e2%2580%2593_so_you_know_where_you_are_and_is_your_current_level_good_enough_part8%252f</link><guid isPermaLink="true">http://www.sqassociates.com/_blog/Blog/post/The_four_levels_of_quality_maturity_–_so_you_know_where_you_are_and_is_your_current_level_good_enough_part8/</guid><pubDate>Tue, 22 Nov 2011 20:48:00 GMT</pubDate></item><item><title>A few near-universal best practices</title><description>&lt;p&gt;One very interesting discovery from the two SQA Benchmark studies was this: there are certain key activities that can significantly improve software project delivery no matter what an organization&amp;rsquo;s maturity level may be.&lt;/p&gt;
&lt;p&gt;In fact, we found that the most successful software development projects&amp;mdash; those that succeed 80% of the time or more &amp;mdash; typically utilize some or all of a shared set of core principles.  &lt;/p&gt;
&lt;p&gt;These principles include:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Centralized control of project resources. This is accomplished via formalized methods (independent of an implemented tool) to manage project resources at the Program level during inception of the project and at the Project level (from Requirements on through Release).&lt;/li&gt;
    &lt;li&gt;Formalized Project Tracking, Risk Management, and Quality Planning practices. In combination with project schedules, risk and quality plans are created to address not only quality control activities such as testing, but also activities such as code reviews, project reviews, release readiness indicators and risk factors. These activities are embedded in the project schedule.&lt;/li&gt;
    &lt;li&gt;Development of Test Strategies and / or Test Plans in the early phases of the Software Development Life Cycle. The team has a clear vision for the full spectrum of testing, obtained by developing test strategies and plans in the requirements and / or design phases that apply to all phases of the test lifecycle (unit, system, integration, acceptance, performance and regression).&lt;/li&gt;
    &lt;li&gt;Management of defects in the early phases of the Software Development Life Cycle. The idea is to hammer out defects in the requirements phase, when doing so costs the least in time and money. A significant number of participants that reported project success rates at 50% and below did not start this activity until the construction/code phase.&lt;/li&gt;
    &lt;li&gt;Dedicated Quality Assurance,  Process and Governance Resources (not to be confused with Test Execution).  Here, a software development process framework is in place with an identified set of activities and results. There is a centralized group, or at a minimum, dedicated resources (full time or contingent workforce) to provide: &lt;/li&gt;
    &lt;ol&gt;
        &lt;li&gt;Leadership in the definition and continuous improvement of the software development framework (activities, results, stage gates, workflow)&lt;/li&gt;
        &lt;li&gt;Governance and oversight of the software development activities once it is in place (including training / rollout)&lt;/li&gt;
        &lt;li&gt;Involvement at project initiation to ensure an appropriate stage approval process&lt;/li&gt;
        &lt;li&gt;Management of the workflow throughout the software development lifecycle&lt;/li&gt;
        &lt;li&gt;Facilitation and leadership of quality assurance activities such as walkthroughs, code reviews, and defect trending and analysis&lt;/li&gt;
        &lt;li&gt;Metrics and reporting of the pipeline activities&lt;/li&gt;
    &lt;/ol&gt;
    &lt;li&gt;Measurement of System Maturity. The goal should be a defined and repeatable measurement system, well-designed for the needs of project decision makers. Metrics portfolios are expanded beyond defect and project per se, to other domains such as change management and resource utilization. There is an understanding of the cause and effect relationship between quality indicators, and they are utilized as predictors and criteria to evaluate release candidates.&lt;/li&gt;
    &lt;li&gt;Demonstrated ROI in Performance Testing. Getting high project ROI typically requires:&lt;/li&gt;
    &lt;ol&gt;
        &lt;li&gt;Performance testing &lt;/li&gt;
        &lt;li&gt;Performance enhancement that occurs in the earliest possible phases of the development lifecycle&lt;/li&gt;
        &lt;li&gt;Using performance measures as a criterion to assess release candidates&lt;/li&gt;
    &lt;/ol&gt;
&lt;/ul&gt;
&lt;p&gt;Be sure to read next week&amp;rsquo;s blog on next steps for furthering your lifecycle optimization.&lt;/p&gt;
</description><link>http://www.sqassociates.com/RSSRetrieve.aspx?ID=12748&amp;A=Link&amp;ObjectID=295741&amp;ObjectType=56&amp;O=http%253a%252f%252fwww.sqassociates.com%252f_blog%252fBlog%252fpost%252fThe_four_levels_of_quality_maturity_%25e2%2580%2593_so_you_know_where_you_are_and_is_your_current_level_good_enough_part7%252f</link><guid isPermaLink="true">http://www.sqassociates.com/_blog/Blog/post/The_four_levels_of_quality_maturity_–_so_you_know_where_you_are_and_is_your_current_level_good_enough_part7/</guid><pubDate>Tue, 22 Nov 2011 20:46:00 GMT</pubDate></item><item><title>Which level are you?</title><description>&lt;p&gt;&lt;strong&gt;&lt;span style="font-size: 14px; color: #cd732a;"&gt;Level 4 Quality Management / Optimization&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Level 4: Quality Management is the highest level of maturity in SQA&amp;rsquo;s assessment model. &lt;/p&gt;
&lt;p&gt;It&amp;rsquo;s characterized by full deployment and use of tools, effective IT governance and oversight and advanced use of a skilled and scalable workforce.  &lt;/p&gt;
&lt;p&gt;Automation, just-in-time communication via dashboard reporting is also needed for intuitive project management at this phase. This means tools will need to be fully integrated.  &lt;/p&gt;
&lt;p&gt;Within dashboards, key performance indicators (KPIs), based on quantitative data, can help predict project-slip and mitigate risk. Any detected issues can then be addressed proactively, before they get a chance to escalate and threaten the project&amp;rsquo;s success.&lt;/p&gt;
&lt;p&gt;The main characteristic of this level is that the processes are Governed.  The following are additional characteristics of Level 4 organizations:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Inter-group communication, collaboration and coordination.&lt;/li&gt;
    &lt;li&gt;Work that&amp;rsquo;s accomplished according to a plan. Actual results are compared to planned results, guiding improvement in best practices.&lt;/li&gt;
    &lt;li&gt;Practices are executed consistently using defined processes (outlined as a Level 2: Quality Control Best Practice).&lt;/li&gt;
    &lt;li&gt;Ongoing process reviews, updates and training are rendered as required.&lt;/li&gt;
    &lt;li&gt;Well-defined roles/responsibilities.&lt;/li&gt;
    &lt;li&gt;Management formally commits to projects, and suitable resources are fully allocated and governed over time.&lt;/li&gt;
    &lt;li&gt;Reward and recognition are awarded for quantitative improvements.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;As confirmed by multiple studies, our experience has been that some of the biggest rewards from high maturity stem from the fact that software quality is now much more predictable &amp;mdash; regardless of software &amp;ldquo;size.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;Check back next week as we explore best practices in greater detail.&lt;/p&gt;
</description><link>http://www.sqassociates.com/RSSRetrieve.aspx?ID=12748&amp;A=Link&amp;ObjectID=295728&amp;ObjectType=56&amp;O=http%253a%252f%252fwww.sqassociates.com%252f_blog%252fBlog%252fpost%252fThe_four_levels_of_quality_maturity_%25e2%2580%2593_so_you_know_where_you_are_and_is_your_current_level_good_enough_part6%252f</link><guid isPermaLink="true">http://www.sqassociates.com/_blog/Blog/post/The_four_levels_of_quality_maturity_–_so_you_know_where_you_are_and_is_your_current_level_good_enough_part6/</guid><pubDate>Tue, 22 Nov 2011 20:35:00 GMT</pubDate></item><item><title>Which level are you?</title><description>&lt;p&gt;&lt;strong&gt;&lt;span style="font-size: 14px; color: #cd732a;"&gt;Level 3: Quality Assurance&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;What differentiates Level 3: Quality Assurance from the first two levels is that business partners now play a key role in developing the software solution. It&amp;rsquo;s no longer strictly IT&amp;rsquo;s ballgame.&lt;/p&gt;
&lt;p&gt;For this reason, while this level still uses all the best practices at the earlier levels, it also adds activities that now require business / end user involvement.  &lt;/p&gt;
&lt;p&gt;These activities include collecting user stories and creating early prototypes, to identify missed requirements and resolve critical defects early in the lifecycle when finding and fixing them is a relatively easy thing to do.&lt;/p&gt;
&lt;p&gt;Organizations at this level go beyond just defining the activities to be performed in each phase of software development (and the target results). There&amp;rsquo;s also a new focus on improving efficiency (e.g., via automation).&lt;/p&gt;
&lt;p&gt;To quantify the total cost of deploying software, a Level 3 organization also uses various new evaluative metrics. These turn a spotlight onto previously unseen roadblocks and suggest necessary rework &amp;ndash; pinpointing what must be done and prioritizing its importance.  &lt;/p&gt;
&lt;p&gt;At this level, it&amp;rsquo;s also important that critical dependencies are identified (i.e. entry / exit / handoff criteria) to keep the software development lifecycle as integrated and process-driven as possible, which, in turn, minimizes costs and increases efficiencies.  There is knowledge of external processes that support, govern and enable continuous improvement of all software development activities.&lt;/p&gt;
&lt;p&gt;In order to identify, classify and score / rate all processes that affect the software development lifecycle, organizations at Level 3 typically have a defined process model.  In addition to the model itself, they will have analyzed each process and will have a solid understanding of the relative importance and maturity of each one. Gaining insight on how mature each process is, and the impact it has on the delivery of software, will ensure that continuous improvement efforts are focused on the weakest links.  Optimization can only be achieved when the whole is taken into account.&lt;/p&gt;
&lt;p&gt;The following System Development Process Model is an example of a &lt;em&gt;Level 3 System Development Process Model:&lt;/em&gt;&lt;/p&gt;
&lt;p style="text-align: center;"&gt;&lt;img alt="" style="border:0px;  vertical-align: middle;" src="/images/blog_images/sqablog7.jpg" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Example of Level 3: Quality Assurance System Development Process Model&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Check back next week to learn about Level 4: Quality Management Optimization.&lt;/p&gt;
</description><link>http://www.sqassociates.com/RSSRetrieve.aspx?ID=12748&amp;A=Link&amp;ObjectID=295724&amp;ObjectType=56&amp;O=http%253a%252f%252fwww.sqassociates.com%252f_blog%252fBlog%252fpost%252fThe_four_levels_of_quality_maturity_%25e2%2580%2593_so_you_know_where_you_are_and_is_your_current_level_good_enough_part5%252f</link><guid isPermaLink="true">http://www.sqassociates.com/_blog/Blog/post/The_four_levels_of_quality_maturity_–_so_you_know_where_you_are_and_is_your_current_level_good_enough_part5/</guid><pubDate>Tue, 22 Nov 2011 20:33:00 GMT</pubDate></item><item><title>Which level are you?</title><description>&lt;p&gt;&lt;strong&gt;&lt;span style="font-size: 14px; color: #cd732a;"&gt;Level 2: Quality Control &lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;At Level 2: Quality Control, organizations are typically driven by a schedule, and are rarely  focused on building systems that are efficient and maintainable.&lt;/p&gt;
&lt;p&gt;For this reason, IT organizations at this level typically employ some kind of software development methodology to manage the project&amp;rsquo;s life cycle with greater control than you find at Level 1.&lt;/p&gt;
&lt;p&gt;Various software development models may be used (i.e. Waterfall, Incremental, Agile, SCRUM, RUP, V-Model, and Hybrid).  And regardless of which model is in place, the best practice activities performed will typically include the following&lt;sup&gt;&lt;span style="font-size: 10px;"&gt;1&lt;/span&gt;&lt;/sup&gt;:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Project Initiation / Business Case / ROI&lt;/li&gt;
    &lt;li&gt;Development of Business Requirements&lt;/li&gt;
    &lt;li&gt;System Requirements / System conceptualization&lt;/li&gt;
    &lt;li&gt;System Design&lt;/li&gt;
    &lt;li&gt;Architectural design / Detailed design&lt;/li&gt;
    &lt;li&gt;Unit Development and Testing&lt;/li&gt;
    &lt;li&gt;Software Integration and Testing (Functional)&lt;/li&gt;
    &lt;li&gt;System Integration and Testing (Performance and Regression)&lt;/li&gt;
    &lt;li&gt;Requirements Validation and Testing (User Acceptance)&lt;/li&gt;
    &lt;li&gt;Change Control / Site Testing and Acceptance&lt;/li&gt;
    &lt;li&gt;Implementation / Training (IT and Business) / Post Project Reviews&lt;/li&gt;
    &lt;li&gt;Maintenance&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The software development methodology should also provide guidelines, templates and tools &amp;mdash; customized for maturity &amp;mdash; that support the key themes.  Also helpful: mentors and metrics, both of which can help to ensure the defined framework will be implemented appropriately.  &lt;/p&gt;
&lt;p&gt;A company, organization or individual group will identify what model(s) work for them, what activities will or will not be included and in what sequence or overlap of events. A label (phase) will be added and specific activities that are accomplished as part of that phase will be identified.  There are usually multiple choices or &amp;ldquo;paths&amp;rdquo; that can be taken based on project size, scope, risk, culture, etc.  It is typical to have four or five choices.&lt;/p&gt;
&lt;p&gt;In addition to having a well-defined framework with multiple paths, the organization will need to focus on the processes described by the SDLC Framework. Within it, requirements, development, testing, defect lifecycle management and compliance (phase gates / approvals) are the usual front-runners.  &lt;/p&gt;
&lt;p&gt;Some quality assurance practices, such as walkthroughs, may be expected and conducted.  Project management is also well defined, although it may or may not be fully utilized.  (And although project plans and schedules may be developed, too little time is usually spent on maintaining them and improving estimation practices.)&lt;/p&gt;
&lt;p&gt;One of the keys to keeping the project on schedule is to employ workflow / pipeline / release management.  This, in conjunction with change and control management, can really help streamline the software development cycle.  &lt;/p&gt;
&lt;p&gt;It also makes the experience of implementing new best practices much more tolerable for organizations used to Level 1 (which is, by definition, ad hoc).&lt;/p&gt;
&lt;p&gt;Doesn&amp;rsquo;t sound like your organization? Read next week&amp;rsquo;s article to learn about Level 3: Quality Assurance.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: 10px;"&gt;&lt;sup&gt;&lt;span style="font-size: 9px;"&gt;1&amp;nbsp;&lt;/span&gt;&lt;/sup&gt;List created from SQA Benchmark Study: The Value Proposition of Planning and lecture notes: Software Engineering Best Practices.&lt;/span&gt;&lt;/p&gt;
</description><link>http://www.sqassociates.com/RSSRetrieve.aspx?ID=12748&amp;A=Link&amp;ObjectID=295714&amp;ObjectType=56&amp;O=http%253a%252f%252fwww.sqassociates.com%252f_blog%252fBlog%252fpost%252fThe_four_levels_of_quality_maturity_%25e2%2580%2593_so_you_know_where_you_are_and_is_your_current_level_good_enough_part4%252f</link><guid isPermaLink="true">http://www.sqassociates.com/_blog/Blog/post/The_four_levels_of_quality_maturity_–_so_you_know_where_you_are_and_is_your_current_level_good_enough_part4/</guid><pubDate>Tue, 22 Nov 2011 20:28:00 GMT</pubDate></item><item><title>Which level are you?</title><description>&lt;p&gt;&lt;strong&gt;&lt;span style="font-size: 14px; color: #cd732a;"&gt;PART III: LEVEL 1 HEROICS/ AD HOC BEST PRACTICES&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Level 1 Heroics / Ad hoc Best Practices:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Since Level 1 is typically ad hoc in approach, activities performed are usually driven by individual, heroic efforts &amp;mdash; not a governed, managed process that&amp;rsquo;s optimized over time for increasing excellence.&lt;/p&gt;
&lt;p&gt;There will often be an implicit (rather than formal) methodology that is culturally accepted and maintained in the local context. This approach, though limited in scale, does work well in small IT environments and start-up operations where there is a direct connection with a business partner or end user.&lt;/p&gt;
&lt;p&gt;Best practices pertinent to this level usually focus on how production is protected. And there are well-implemented change control and release management activities, as well as insight into technical specifics like application, network and data security.  &lt;/p&gt;
&lt;p&gt;In most organizations at this level, related domains such as performance testing, configuration management, release engineering and production readiness have also matured. This is intended to help ensure software is truly ready for the production environment on release.&lt;/p&gt;
&lt;p&gt;Organizations at this level commonly also rely on software engineers with a broad range of skills, since they are typically asked to play many different roles. Thus, for Level 1, there is a primary reliance on people, their skills and experience.&lt;/p&gt;
&lt;p&gt;Check back next week to read about Level 2: Quality Control.&lt;/p&gt;
</description><link>http://www.sqassociates.com/RSSRetrieve.aspx?ID=12748&amp;A=Link&amp;ObjectID=294942&amp;ObjectType=56&amp;O=http%253a%252f%252fwww.sqassociates.com%252f_blog%252fBlog%252fpost%252fThe_four_levels_of_quality_maturity_%25e2%2580%2593_so_you_know_where_you_are_and_is_your_current_level_good_enough_part3%252f</link><guid isPermaLink="true">http://www.sqassociates.com/_blog/Blog/post/The_four_levels_of_quality_maturity_–_so_you_know_where_you_are_and_is_your_current_level_good_enough_part3/</guid><pubDate>Tue, 22 Nov 2011 20:18:00 GMT</pubDate></item><item><title>How Best Practices Can Drive Improvement</title><description>&lt;p&gt;&lt;strong&gt;&lt;span style="font-size: 14px; color: #cd732a;"&gt;PART II: BEST PRACTICES OVERVIEW&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Over the last 10 years, SQA has worked with many organizations interested in improving the delivery of their software. Part of that work has involved creating best practices designed to enhance software development  processes such as requirements, testing, release and maintenance. &lt;/p&gt;
&lt;p&gt;In addition to our own insights, we&amp;rsquo;ve leveraged ideas from many external sources, such as popular frameworks and theoretical white papers. We&amp;rsquo;ve also confirmed our best practices work well by conducting two benchmark studies that yielded consistent results.&lt;/p&gt;
&lt;p&gt;Of course, really making our best practices work effectively for you will mean thinking carefully about the complete business context in which they&amp;rsquo;re going to be applied.  &lt;/p&gt;
&lt;p&gt;Many variables will need to be weighed and considered, such as:&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;Your current level of maturity&lt;/li&gt;
    &lt;li&gt;Your willingness and capacity to reach a higher level of maturity, despite  the time and resources (e.g. cost) it will take to mature&lt;/li&gt;
    &lt;li&gt;Your unique culture and special organizational drivers or themes&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;You see, no two organizations are going to have the same context.  Fortunately, our best practices are flexible enough to be tailored or adjusted for every context. Any given SQA best practice can thus evolve, inside your organization, to become an even better practice.  &lt;/p&gt;
&lt;p&gt;This is rather similar to the way certain well-regarded development methodologies, such as Agile, sometimes must still be modified slightly.  They may work well &amp;ldquo;out of the box&amp;rdquo; in one organization, yet when implemented in another organization will need some adjustment. &lt;/p&gt;
&lt;p&gt;A custom fit, in other words, is almost always best. The challenge faced by most organizations, then, is to sort through the range of available best practices to find a combination likely to yield optimum results. &lt;/p&gt;
&lt;p&gt;Ideally, the proper mix of best practices &amp;mdash; adjusted for context &amp;mdash; will then minimize software development process problems and unforeseen complications, drive down costs and drive up quality and customer and employee satisfaction.&lt;/p&gt;
</description><link>http://www.sqassociates.com/RSSRetrieve.aspx?ID=12748&amp;A=Link&amp;ObjectID=294939&amp;ObjectType=56&amp;O=http%253a%252f%252fwww.sqassociates.com%252f_blog%252fBlog%252fpost%252fThe_four_levels_of_quality_maturity_%25e2%2580%2593_so_you_know_where_you_are_and_is_your_current_level_good_enough_part2%252f</link><guid isPermaLink="true">http://www.sqassociates.com/_blog/Blog/post/The_four_levels_of_quality_maturity_–_so_you_know_where_you_are_and_is_your_current_level_good_enough_part2/</guid><pubDate>Tue, 22 Nov 2011 20:15:00 GMT</pubDate></item><item><title>How mature is your software development process? </title><description>&lt;p&gt;&lt;strong&gt;&lt;span style="font-size: 14px; color: #cd732a;"&gt;PART I: MATURITY LEVELS&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;One useful way to assess your software development process is to consider how mature it is &amp;mdash; that is, which of four general levels it falls into.  &lt;/p&gt;
&lt;p&gt;SQA has devised the following system based on our experiences at past customer engagements as compared with best practices:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Level 1: Heroics. This is unpredictable and essentially uncontrolled. &lt;/li&gt;
    &lt;li&gt;Level 2: Quality Control. Task-driven, with repeatable activities.&lt;/li&gt;
    &lt;li&gt;Level 3: Quality Assurance. Collaborative, integrated and implemented with the complete lifecycle in mind.&lt;/li&gt;
    &lt;li&gt;Level 4: Quality Management. Process-governed, measured and focused on continual optimization.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Each level includes all improvements from the lower levels.  &lt;/p&gt;
&lt;p&gt;Want a more specific look at these levels? Consider this chart:&lt;/p&gt;
&lt;p style="text-align: center;"&gt;&lt;img alt="" style="border:0px;  vertical-align: middle;" src="/images/blog_images/sqablog3.jpg" /&gt;&lt;/p&gt;
&lt;p&gt;As you can see, maturity improves as the various phases of the software development cycle become more integrated, and instead of being task-driven, the cycle is instead process-driven. Software is developed in an orchestrated, consistent way &amp;mdash; not via ad-hoc, individual efforts.&lt;/p&gt;
&lt;p&gt;Organizations at Level 4 (Quality Management), the column furthest to the right, typically create the best software. And that&amp;rsquo;s true whether you evaluate it in terms of schedule, cost, quality or customer and employee satisfaction.&lt;/p&gt;
&lt;p&gt;Unfortunately, few IT organizations today are beyond Level 2 (Quality Control).  &lt;/p&gt;
&lt;p&gt;And actually, even getting that far is more than many have managed. &lt;/p&gt;
&lt;p&gt;To achieve Level 2, previously mastered tasks have to be repeatable.  Common examples include freezing requirements, quality planning, document control, early lifecycle reviews and defect management. And templates, checklists, phase gates will also all need to be in place.  &lt;/p&gt;
&lt;p&gt;Now imagine your process is being audited, with those elements all considered as part of the audit.  &lt;/p&gt;
&lt;p&gt;Would you pass such an audit?&lt;/p&gt;
&lt;h3&gt;The Improvement Continuum&lt;/h3&gt;
&lt;p&gt;You can also think of maturity as an answer to this question: How predictable is your project delivery?&lt;/p&gt;
&lt;p style="text-align: center;"&gt;&lt;img alt="" style="border:0px;  vertical-align: middle;" src="/images/blog_images/sqablog3b.jpg" /&gt;&lt;/p&gt;
&lt;p&gt;Concepts of continuous improvement (e.g., Kaizen, Lean, Process Mapping, etc.) as applied to software development activities can really help &amp;mdash; reducing costs, firming up the production schedule, enhancing quality levels and increasing customer and employee satisfaction.  &lt;/p&gt;
&lt;p&gt;And toward making the software development lifecycle both faster and more predictable, best practices can play a critical role. They&amp;rsquo;re discussed in our next blog entry.&lt;/p&gt;
</description><link>http://www.sqassociates.com/RSSRetrieve.aspx?ID=12748&amp;A=Link&amp;ObjectID=294854&amp;ObjectType=56&amp;O=http%253a%252f%252fwww.sqassociates.com%252f_blog%252fBlog%252fpost%252fThe_four_levels_of_quality_maturity_%25e2%2580%2593_so_you_know_where_you_are_and_is_your_current_level_good_enough%252f</link><guid isPermaLink="true">http://www.sqassociates.com/_blog/Blog/post/The_four_levels_of_quality_maturity_–_so_you_know_where_you_are_and_is_your_current_level_good_enough/</guid><pubDate>Tue, 22 Nov 2011 20:16:00 GMT</pubDate></item><item><title>Most of today’s software earns a failing grade. Why?</title><description>&lt;p&gt;&lt;strong&gt;&lt;span style="font-size: 14px; color: #cd732a;"&gt;PART II: THE ANSWERS&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Success in software development is no longer a simple matter of meeting project delivery targets and maintaining the operational status quo. Today, IT is asked to play a much more collaborative role with the host organization &amp;mdash; creating enormous value by delivering software that can create a competitive advantage in a tough marketplace. &lt;/p&gt;
&lt;p&gt;Yet, IT budgets are also usually either flat or falling. This means IT is, quite simply, being asked to do more with less.&lt;/p&gt;
&lt;p&gt;How are IT groups accomplishing this?  One common but problematic approach: point solution strategies that focus on only one aspect of software development. If there is a perceived &amp;ldquo;bad&amp;rdquo; process in the development lifecycle, the idea might be to &amp;ldquo;fix&amp;rdquo; or even outsource it, leaving the rest of the lifecycle alone.  &lt;/p&gt;
&lt;p&gt;We&amp;rsquo;d say that 90% of our assessment/evaluation work falls under this heading &amp;mdash; it solely concerns a specific process such as testing or requirements. &lt;/p&gt;
&lt;p&gt;But the truth is that things are rarely this simple, and really improving the software will mean implementing positive change in a way that is both deeper and broader than that.&lt;/p&gt;
&lt;p&gt;Sure, you can improve a single process by uncovering and eliminating inefficiency. But the improvement you get will go only as far as the boundaries of &lt;em&gt;that process&lt;/em&gt; &amp;ndash; not the software development process as a &lt;em&gt;whole&lt;/em&gt;. &lt;/p&gt;
&lt;p&gt;Real optimization that leads to measurably superior software, faster development cycles and lower development costs, will require a more &lt;em&gt;holistic&lt;/em&gt; approach that incorporates the complete software development lifecycle. The goal should be to improve what goes in, and what comes out, of &lt;em&gt;each&lt;/em&gt; phase, not just &lt;em&gt;one&lt;/em&gt;.  &lt;/p&gt;
&lt;p&gt;Big-picture process governance is also needed to ensure that everyone involved is equally invested and accountable for the success&amp;mdash;or failure&amp;mdash;of project delivery.  From early lifecycle planning to ongoing execution, you&amp;rsquo;ll need to identify, define and utilize the best available tools, metrics and processes. The alternative is what we see all too often:&lt;em&gt; fragmented&lt;/em&gt; planning and execution processes that work well in a limited sense, but don&amp;rsquo;t ultimately lead to better software. &lt;/p&gt;
&lt;p&gt;Once planning and execution have been understood and tackled, the focus can then turn to excellence &amp;ndash; i.e., ongoing optimization of the software development lifecycle, to achieve better and better results over time.  &lt;/p&gt;
&lt;p&gt;One great way to pursue this lies in leveraging established best practices &amp;mdash; the methods, processes, activities, incentives or rewards that have repeatedly been proven to work well.  So it will be important to determine just what those best practices &lt;em&gt;are&lt;/em&gt;, in your particular context, always bearing in mind that a &amp;ldquo;best practice&amp;rdquo; for one organization may not really be the best for another.&lt;/p&gt;
&lt;p&gt;The key is to maintain a holistic perspective &amp;ndash; don&amp;rsquo;t miss the forest for the trees.  Establish the key organizational drivers for your project, and then evaluate the entire software development lifecycle as well as the processes you need to govern it, support it, maintain it and enable it. &lt;/p&gt;
&lt;p&gt;And don&amp;rsquo;t forget to take into account the cultural considerations unique to your organization, to help ensure that the organization as a whole is working on the weakest links (which are also the most critical for optimization).  When possible, link business, development and operations team members in new ways, to collaborate as effectively as possible, instead of working in separate little worlds of their own.&lt;/p&gt;
&lt;p&gt;If you succeed, you&amp;rsquo;ll have a top-down approach that also provides an end-to-end view of the software development lifecycle.
&lt;/p&gt;
</description><link>http://www.sqassociates.com/RSSRetrieve.aspx?ID=12748&amp;A=Link&amp;ObjectID=294830&amp;ObjectType=56&amp;O=http%253a%252f%252fwww.sqassociates.com%252f_blog%252fBlog%252fpost%252fCan_you_optimize_a_slice_of_the_software_development_lifecycle_without_reviewing_the_whole_part2%252f</link><guid isPermaLink="true">http://www.sqassociates.com/_blog/Blog/post/Can_you_optimize_a_slice_of_the_software_development_lifecycle_without_reviewing_the_whole_part2/</guid><pubDate>Tue, 22 Nov 2011 20:04:00 GMT</pubDate></item><item><title>Most of Today’s Software Earns a Failing Grade. Why?</title><description>&lt;p&gt;&lt;strong&gt;&lt;span style="font-size: 14px; color: #cd732a;"&gt;Part I: THE QUESTIONS&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Defining successful delivery of software is easy.  The act of creating it is not.  &lt;/p&gt;
&lt;p&gt;Successful software, in an abstract sense, is simply any software that satisfies the client&amp;rsquo;s business requirements.  More specifically, you might define successful delivery of software like this: software that&amp;rsquo;s released on time, under budget, feature-complete and as stable and bug-free as possible. &lt;/p&gt;
&lt;p&gt;Unfortunately, despite all the methodologies and tools commonly used to achieve these goals today, most of today&amp;rsquo;s software projects simply don&amp;rsquo;t measure up. According to several recent studies, only 32% of projects are considered successful as measured by these yardsticks. Worse, the trend is getting worse, not better, because that 32% is also a 3% drop since 1997. &lt;/p&gt;
&lt;p&gt;What does that say about the project manager, business analysts, developers, and testers? Would you have confidence in an IT partner that only succeeded 32% of the time? Last time we checked, 32% was a failing grade. &lt;/p&gt;
&lt;p&gt;Common-sense approaches intended to yield a better result &amp;ndash; &amp;ldquo;drive quality from the &lt;em&gt;start&lt;/em&gt; of the software development lifecycle, and minimize the number of builds and total project cost&amp;rdquo;  &amp;mdash; are certainly a good place to start. &lt;/p&gt;
&lt;p&gt;But as a practical matter, moving from that abstract concept to a specific implementation is much easier said than done.  &lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s say you take the above advice and try to drive quality from the start &amp;ndash; i.e., focus on the requirements phase. How exactly do you make that happen, and get it right? In our quarter-century of experience, as much as 40% of a project team&amp;rsquo;s time, even &lt;em&gt;today&lt;/em&gt;, is wasted on requirements definitions that &lt;em&gt;don&amp;rsquo;t lead anywhere useful. &lt;/em&gt;&lt;/p&gt;
&lt;p&gt;What we see instead bears out industry studies &amp;ndash; that well over half of the defects found in up-and-running production software ultimately stem from poor requirements definitions. &lt;/p&gt;
&lt;p&gt;So what&amp;rsquo;s the solution?  Small-team, rapid-development approaches such as Agile and SCRUM are gaining popularity, but are they really leading to better software delivery as we defined it at the beginning of this blog entry?  &lt;/p&gt;
&lt;p&gt;And if quality assurance best practices can help, why aren&amp;rsquo;t they seeing wider support and implementation?
&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Check back with us next week for Part II, in which we&amp;rsquo;ll move from these common problems to some of the best available solutions!&lt;/strong&gt;&lt;/p&gt;
</description><link>http://www.sqassociates.com/RSSRetrieve.aspx?ID=12748&amp;A=Link&amp;ObjectID=294822&amp;ObjectType=56&amp;O=http%253a%252f%252fwww.sqassociates.com%252f_blog%252fBlog%252fpost%252fCan_you_optimize_a_slice_of_the_software_development_lifecycle_without_reviewing_the_whole%252f</link><guid isPermaLink="true">http://www.sqassociates.com/_blog/Blog/post/Can_you_optimize_a_slice_of_the_software_development_lifecycle_without_reviewing_the_whole/</guid><pubDate>Tue, 22 Nov 2011 19:59:00 GMT</pubDate></item></channel></rss>
