Software Information |
|
Software Process Improvement -A Successful Journey
Background: My organization aimed for ISO 9001 certification and then CMM level 2 and Level 3 assessment approximately one and half year back and knew that it would be grilled thoroughly by the ISO auditors and CMM assessors. For Software Process Improvement first we need to know your strengths and weaknesses so that the management can scope the improvement effort. Only with this knowledge can we customize an infrastructure for process improvement. We have had success with plans tailored according to the Software Engineering Institute's CMM model. This includes formation of Software Process Engineering Group, who know their roles, responsibilities, charters, and action plans, which helps you develop a charter and vision and to establish a clear match to organizational goals and objectives. They will be much more effective if they receive the right formal and informal training. One pivotal decision was "not to reinvent the wheel", but seriously consider Industry Best Practices. Later we saw that, Process improvement always pays dividends for those with the discipline to do it right. Process Improvement Project The Strategic Plan A clear vision is essential to the success of process improvement project. Senior management in our case had the vision that Process is Product and was committed to sponsor and support improvement efforts. We were responsible for mobilizing people and resources to try and make it happen, but process improvement was a new endeavor for my group and everyone was unsure how to get started and get organized My organization went for strategic planning using Total Quality Management's Plan-Do-Check-Act cycle. We developed a vision to use the best practices of software development teams and the eleven best practices were identified: * Develop iteratively (incremental development life cycle) * Use component-based architecture * Visually model the product using the Unified Modeling Language (UML) * Formal Risk Management * Agreement on Interfaces * Formal Inspections * Metric-based Scheduling and Management * Program-wide Visibility of Progress Vs Plan * Defect Tracking Against Quality Targets * Configuration Management * People-aware Management Accountability In the planning model we tried to analyze the current projects keeping the insight of ISO/CMM through rigorous reviews. Next, we conducted organizational Gap Analysis between its current state and the vision we were seeking. The ISO 9001 status feedback itself became the catalyst for develop tactical plans by providing the team leaders with the required control mechanism for project tracking and oversight. Our organization tried to Treat Software Process Improvement also like a development project! Senior management sponsored to recruit a corresponding project team (Software Quality Assurance team or the Software Process Engineering Group), selected a project leader, and established a repository to store process documentation and other process artifacts. We followed the plan as: Start by discovering and understanding current practice throughout the group. Find existing process documentation and talk to practitioners to understand how tasks are performed. Reconcile any differences between actual and espoused processes. Document and review the newly characterized process. Then iteratively and incrementally improve the process and ensure that the documentation is updated appropriately. Project Planning, Software Configuration Management, and Software Quality Assurance, project tracking, Software Tools usage were the key areas where our organization concentrated more for process improvement. We tried to customize Rational Unified Process for our working environment and automated tools in process was also taken up. We also ensured that the visibility of the project to upper management and the rest of the organization were comparable to that of other important projects. Culture and Resistance Process improvement affects more than just the processes used by practitioners to perform their work. Process change means culture change, replete with all the difficulties inherent in changing the perceptions, values, and normative behaviors of a community. Some of the forces that make such improvement efforts difficult are: ? Resistance to change (often due to a perceived threat of losing power, control, familiarity, or social status) ? The existing tolerance and readiness for change present within the current organizational climate ? Process change imposes a learning curve, which typically makes things appear to get worse before they get better. ? Improvement efforts consume time and resources, which many would prefer to spend on their particular development projects. In my organization we tried to solve the above problem by bringing our improvements from the Local Heroes itself (Involve Everyone!!). These people should be "all-stars in the family": respected members of the organization with proven track records as developers or managers. Emphasize the importance of having the "local hero" be part of the Software Process Engineering Group and try to hold out for the "real thing" if you can manage it (this is another one of those times when senior and middle management support may be needed). We documented our local technical procedures by choosing the se champions/local heroes to write that procedure by using SEI-CMM key practices. Software Quality Assurance team was the center of guidance and support for all the process improvement activities. The SQA was the primary authoritative body for conducting and organizing improvement efforts in the organization. The entire practitioner community was regularly informed of the status of improvement efforts. It is also desirable to solicit input and feedback on process improvement issues from the practitioner community. We chose one pilot project so that we could discuss and test how software process improvement really helps in current scenario. Benefits of Process Improvement The clearest textbook definitions of Return on Investment (ROI) is, as described by Lawrence Putnam "Investing to improve [productivity] involves foregoing the use of those funds for other purposes. In time the payback from the future stream of gains from operations returns the capital invested." The ROI may not always be in dollars, Quality and schedule issues as a return are nearly as important to the participants as are the cost issues. Our measurement set spanned the following eight categories of metrics: effort, process, productivity, progress, quality, schedule, stability, and staffing. We asked our research participants to indicate which metrics from our set they maintained and add to our list any additional metrics they used. We also solicited the starting and ending phase of the software lifecycle over which each metric was maintained. When we analyzed the participants' measurement data across maturity levels against the eight metric categories, each maturity level showed, on average, a consistent growth pattern. We also tried to relate any immeasurable benefits we experienced from their process improvement program. The benefit most frequently noted by the research participants concerned attitudinal changes. The morale and confidence of the developers improved significantly, and software development experienced increased attention and respect from organizations external to the software organization. Participants also attributed less overtime, less employee turnover, improved competitive advantage, and increased cooperation between functional groups as benefits that resulted from process improvement initiatives. Conclusion Software Process Improvement is crucial as any organization attempts to take on and deliver larger projects. The lack of well-defined software processes can be very costly. Support from all staff, especially top management, is a prerequisite for any serious SPI initiative. As a great philosopher once said, "It won't happen overnight, but it will happen". Many improvement efforts fail or falter during the initial phases of process improvement. My organization was successful at rapidly reaching ISO 9001/CMM because it made a point of applying lessons learned by others. But this cannot be the end for process improvement in any organization, our journey towards process improvement will always continue. References 1. Carnegie Mellon University/Software Engineering Institute, The Capability Maturity Model: Guidelines for Improving the Software Process, Addison-Wesley, Reading, Mass., 1995. 2. Roger S. Pressman, Software Engineering: A Practitioner's Approach, 4th ed., McGraw-Hill, 1996 3. Watts Humphrey, Managing the Software Process, Addison-Wesley, 1989 Name: Deepty B. Chauhan Qualifications: Bachelor's in Electronics Engineering, Post Graduate Diploma in Marketing Management. Total experience of Nine years in area of software quality and testing. Corporate responsibilities: Given the responsibility to lead a group in Software Quality Assurance and Software Verification and Validation. This includes software process improvement through implementing ISO 9001/CMM in organization, customizing Rational Unified Process to cater the needs of my organization, bringing quality in the product through software testing, automating software quality assurance activities. Email address: [email protected]
|
RELATED ARTICLES
Assertion in Java Assertion facility is added in J2SE 1.4. In order to support this facility J2SE 1.4 added the keyword assert to the language, and AssertionError class. An assertion checks a boolean-typed expression that must be true during program runtime execution. The assertion facility can be enabled or disable at runtime. Great Plains Dexterity Customization Options ? Overview For Developers Looks like Microsoft Great Plains becomes more and more popular, partly because of Microsoft muscles behind it. Now it is targeted to the whole spectrum of horizontal and vertical market clientele. Small companies use Small Business Manager (which is based on the same technology ? Great Plains Dexterity dictionary and runtime), Great Plains Standard on MSDE is for small to midsize clients, and then Great Plains serves the rest of the market up to big corporations. Choose your Java Wisely Java has come along a long way.� Many would agree with this.� I did not until the Java 1.5 "Tiger" hit me.� The tiger had several new features, and more importantly, it has new syntax.� Six major upgrades that the tiger presents are certainly the generics, enhanced for loop, autoboxing (unboxing), improvement on Typesafe enum, Static import and the metadata.��Of course there are many more, which can be found at java's official site.� Out of these six, at least four would be used in my daily "programming" life.� From java 1.1 to 1.4, it seemed more like new frills were simply added.� It felt like earning more brownie points when you downloaded the newer version.� But should I start using 1.5 immediately, maybe not. Know-how in Microsoft Publisher For those who still don't know, Microsoft Publisher helps computer users to easily create, customize and publish materials such as flyers, brochures, catalogs, newsletters and websites. It provides tools to create professional and compelling marketing materials that will help you take your business further. With professional page layout and text tools, you can build a strong visual identity for your product or company. Microsoft Great Plains Implementation for Large Corporation ? Overview for VP IT Microsoft Business Solutions Great Plains was historically designed to serve mid-market first and then with addition and acquisition of new modules ? Great Plains Dynamics architects planned to enter into corporate market. When Microsoft SQL Server took its place as relatively reliable and stable database platform, Great Plains gained scalability. Let's consider the questions, you need to be placed and answered for your IT department in ERP selection, implementation, modification and customization. S is for Spying, Surveillance -- and for Software as Well Words we choose to describe things and phenomena often show our attitude towards what we say. They imperceptibly reflect our opinions and judgments, prejudices and preferences, moral convictions and beliefs. Whether we like it or not, good deal of words we use are biased, or should I say "slanted", --positively or negatively. Two people will call the same thing differently, depending on their points of view. Industry Experts Answer the One Million-dollar Question - Why Genie Backup Manager? Many reasons made GBM a unanimous choice for experts, one of them is the fact that with the set of features it offers, it's definitely the easiest to use. .Net Charts and Graphs Interact with Businesses and Customers Bar charts, bar graphs, and any other chart or graph used in financial statements, inventory reports, sales reports, and a slew of other types of reports have typically been paper reports or online reports depicting various levels of complex information for tracking, investing, planning, and buying. However, until the .net graph, .net chart, .net map, and other .net charts came along, the relationship between management and the company, companies and their investors, and companies and their customers was missing. Microsoft Great Plains Partner Selection: Overview Microsoft Great Plains, Navision, Solomon and Axapta are Microsoft Business Solutions ERP applications, serving to the whole spectrum of vertical and horizontal markets. Assuming that you already have one of these systems installed and implemented we would like to give you - IT director, Database Administrator, Programmer, Software Developer, Controller your options in supporting/upgrading Microsoft Great Plains for your company Great Plains Sales Order Processing and Invoicing Modules ? Tips For Consultants We'll give you non formal view, based on our consulting practice. Device Driver Basics Most people understand that the "hardware" part of their computer is the real physical parts, like the keyboard, mouse, modem, hard drive and so on. They understand that the "software" is computer bits stored on the hard drive, CD-ROM, or other storage media. But most people are a little hazy about exactly what a "driver" is. Microsoft Great Plains on Ctree or Pervasive SQL ? What to Do ? Tips for IT Manager As you probably know, when Microsoft purchased Great Plains Software ? the whole strategy for Great Plains Dynamics/eEnterprise line was changed. Initial GPS strategy was to maintain DB platform independence ? via it's C-written engine Dexterity, based on the believe that C programming language is platform independent. So ? Great Plains was running on MS SQL Server, Ctree (Faircom ? if you remember 1995-96 Macintosh era), Pervasive SQL (Btrieve). Microsoft obviously had no plan to keep this multiplatform capability and Great Plains was optimized to MS SQL Server and with the introduction of MSDE ? the need to keep entry level Dynamics on Ctree/Btrieve disappeared. CRM 101: Customer Relationship Management for Beginners Customer Relationship Management, abbreviated "CRM," is the term for a business strategy that is designed to improve customer service. CRM is also designed to increase customer satisfaction and gain new customers, thus increasing a business' revenue. CRM is a term that can be applied to software and an entire business strategy. Partitioning, Formatting and Reinstalling in Windows 98 Formatting and reinstalling windows 98 is very easy if you have the right know-how. Microsoft Great Plains Customization Recovery & Upgrade for Large Corporation At the end of XX century, in the late 1990th Great Plains Software eEnterprise was recognized as one of the leader on the midsize to large corporate ERP market. Due to the nature of eEnterprise architecture - it is Great Plains Dexterity based application and Dexterity imposes some specific to the database access and table structure ? eEnterprise was subject to relatively inexpensive customization. During the recession time a lot of former Great Plains Software and then Microsoft Business Solutions partners either went out of business or merged with Auditing firms and their Great Plains clients saw this instability and simply stopped annual enhancement program payments and become so-called orphan clients. Today, in 2005 ? it is time to upgrade from eEnterprise 6.0 to Microsoft Great Plains Professional 8.0. If you have major customization for eEnterprise ? you need to understand your options before you find your new Microsoft Business Solutions VAR of record. In this small article we will describe you the main steps and options to upgrade Dexterity customization: CRM and Customer Life Cycle Customer Relationship Management or CRM is a combination of enterprise strategies, business processes and information technologies used to learn more about customers' needs and behaviors in order to develop stronger relationships with them. CRM software systems automate many customer-related business tasks. What To Do When Windows Wont Boot When Windows fails to boot it is normally caused by you installing a program or device and it has caused a conflict with one or more other programs. Twelve Things You Should Know to Save on Computer Software Do you want to get quality software at a reasonable price? Whether you work at home or just need good software for your personal computer, you are faced with an almost endless selection of computer software. Sorting through the options can sometimes be a major task. However, if you want to get good, quality software there are several things that you can do that will save you money and headaches. The Opera Alternative Security flaws have long plagued Internet Explorer (IE), the market-dominating web browser from Microsoft. IE won the early browser wars, not only because it was free and bundled with Windows, but because it had some features and capabilities that its only real competitor, Netscape, didn't have. But the behind-the-scenes programming that makes those features possible is the very coding that also leaves wide gaps in IE's defenses against viruses and malicious scripting. Among several browser alternatives for Windows users, the Opera browser stands out in functionality and integration, and is gaining a wider following as a safer surfing alternative to Internet Explorer. Free Preventive Maintenance Software While several preventive maintenance software manufacturers offer free trials for their products before charging a fee, some companies offer their products for free. Free preventive maintenance software is rare, and is sometimes less thorough than software that must be purchased, but it can be a good solution for a new or struggling business. |
home | site map |
© 2005 |