Wednesday, November 25, 2009
Agile CoP is a special kind of ‘social network’ that comes together because of a passion about Agile and its practices.
a)Peer- to peer help in problem solving
b) Developing and validating best practices
c) Upgrading and distributing knowledge in daily use
d) Fostering unexpected ideas and innovation
e)Connecting to external Agile world
Sunday, August 23, 2009
Limit WIP (work in progress) – assign explicit limits to how many items may be in progress at each workflow state.
Measure the lead time (average time to complete one item, sometimes called “cycle time”), optimize the process to make lead time as small and predictable as possible.
Queue limits are designed to avoid premature work. The limit should be large enough to keep the team busy (i.e. there is always something in it for the team to start work on), but small enough to avoid premature prioritisation (i.e. having things sitting in the queue for too long before they are begun).Ideally the queue should be FIFOWIPlimits are designed to reduce multi-tasking, maximise throughput, and enhance teamwork.Reducing multitasking is beneficial for two primary reasons. 1) 20% time is lost to context switching per ‘task’, so fewer tasks means less time lost (from Gerald Weinberg, Quality Software Management: Systems Thinking) 2) Performing tasks sequentially yields results sooner. ...........................................................................................Throughput is also maximised by decreasing WIPSimple examples of this effect are traffic jams, where traffic speed reduces as more traffic builds up, and CPU load, where application performance goes down as CPU load increases. Little’s Law for Queuing Theory:Total Cycle Time = Number of Things in Progress / Average Completion RateTherefore, to improve cycle time there are two options; reduce the number of things in process or improve the average completion rate. Of the two, reducing the number of things in progress is the easier, and once that is under control, then the more challenging changes to improve completion rate can be applied...........................................................................................WIP limit sizes can depend on type of work and size of team and should be adjusted to achieve maximum flow. One approach is to start small (e.g. a limit of 1) and increase as necessary. Another is to start larger (e.g. a limit of half the team size) and reduce until the sweetspot is achieved.
The consequences of using a kanban system are that the Product Backlog can be eliminated, because the immediate queue is the only work of interest, timeboxed iterations (i.e.Sprints) can be eliminated, because work is pulled as necessary, and estimation can be eliminated, because work is not planned into iterations.
. ...............................................................................................Flow & Cadence
Flow describes how the work in the system can delivery maximum valueIn lean enterprises, traditional organizational structures give way to new team-oriented organizations which are centred on the flow of value, not on functional expertise.Lean emphasises ‘One Piece Flow’ (means moving one piece at a time between stages in a workflow as opposed to moving batches of work between stages in a workflow)The ‘One Piece’ in a Kanban system for software development can be thought as the Minimal Marketable Feature (M Denne & H Cleland-Huang in Software by Numbers).A minimal marketable feature is a chunk of functionality that delivers a subset of the customer’s requirements, and that is capable of returning value to the customer when released as an independent entity.The consequence of applying the concept of Flow is that emphasis is placed on using larger, value-focussed MMFs, rather than smaller, more incremental Stories.
...........................Cadence is the approach to achieving commitment and reliability with a kanban systemA regular cadence, or ‘heartbeat,’ establishes the capability of a team to reliably deliver working software at a dependable velocity. An organization that delivers at a regular cadence has established its process capability and can easily measure its capacity.Throughput = WIP / Cycle TimeThroughput allows forecasting of future capability, without needing to specify what might be delivered. Cycle Time allows commitment by becoming an SLA with the business
Summary : They key points of Kanban, Flow and Cadence are:A Kanban System manages the workflow in a way which allows the Product Backlog, Timeboxed Iterations and Estimations to be eliminated. Flow is about effectively delivering maximum value by focussing on optimising the value stream of larger MMFs Cadence allows iteration input and output to be de-coupled and achieves commitment and reliability via measurement rather than planning
Thursday, July 23, 2009
Indeed we need agile beyond software products. I'm not sure exatly what it should look like. First of all maybe we should stop speaking about 'supporting functions' and not look upon IT- and business functions as two separate things. Although businesses can evolve without IT and could benefit from using agile/lean principles. While businesses is developed using IT, we need to assure IT is aligned with the business to achieve true 'business agility'.
We need better transparency between enterprise architecture and software product development. Enterprise architects and business analysts need to understand that the BIG design up-front and the huge requirement specification covering all details is not the solution. And 'agilistas' need to understand that there is more to achieve than the one and only product and that processes, tools and documentation are needed to some extent.
Communication rather than EA frameworks, processes and tools, so to speak, as stated in the manifesto. Although the latter is also important.
Monday, July 20, 2009
Agile is purely about effective communication and continuous improvement. Focus on the people and listen your customer. Agile is about giving the priority to the people involved in the process. People are responsible to make a project fail or succeed. The use of Agile Methodologies helps projects to see problems sooner.
Agile chooses to do things in small increments with minimal planning, rather than long-term planning. It splits the work into iterations which take short time frames typically lasting from one to four weeks. Iterations undergo a full software development cycle. This minimizes the overall risk and allows the project to adapt to changes more quickly. Documentation is produced as required by stakeholders. Multiple iterations may be required to release a product or new features.
Team composition in an agile project is usually cross-functional and self-organizing without consideration for any existing corporate hierarchy or the corporate roles of team members. Team members normally take responsibility for tasks that deliver the functionality of iteration. They decide for themselves how they will execute during iteration. There is a Scrummaster and the team members in a usual agile team.
Agile methods emphasize face-to-face communication over written documents (routine and formal daily face-to-face communication methods are common). Most agile teams are located in a single open office to facilitate such communication. Team size is typically small (5-9 people) to help make team communication and team collaboration easier. Larger development efforts may be delivered by multiple teams working toward a common goal or different parts of an effort. This may also require a coordination of priorities across teams.
Each agile team contains a customer representative. This person is appointed by stakeholders to act on their behalf and makes a personal commitment to being available for developers to answer mid-iteration problem-domain questions. At the end of iteration, stakeholders and the customer representative review progress and re-evaluate priorities with a view to optimizing the return on investment and ensuring alignment with customer needs and company goals.
An Agile culture is established when the 3 major groups come together within a company. Executive management endorses the Agile principles, working managers learn to coach instead of direct, and the project team understands and supports Agile principles and practices.
Scrum has become one of the most popular Agile packaged methods. The Scrummaster is at the heart of Scrum. This individual is not a manager but more of a process facilitator and guide. A Scrummaster:
• Helps the team develop practices that support Agile principles
• Acts as a guide in training the team on how to be Agile and use Scrum
• Removes impediments that prevent the team from delivering software
• Shields the team from corporate bureaucracy and activities that do not add value to software development
• Champions engineering excellence and processes that support the creation of shippable software
• Ensures the team has direct access to the customer
Traits required to work in agile teams
As agile teams work differently from normal teams and depend a lot on effective and efficient communication and fast execution, there is an increased need to use soft skills. Some of the traits and skills that can make the agile teams more meaningful and productive are:
· “just enough” planning
· A desire to finish things.
· A spirit of collaboration.
· The ability to ask for help, to seek out review.
· The ability to take initiative.
· Enjoy working in an intense environment.
· Adapting to new situations and frameworks easily
· Ability to develop and maintain collegial relationships across the team.
· Managing Diversity
· Value for:
o Individuals and interactions over processes and tools
o Working software over comprehensive documentation
o Customer collaboration over contract negotiation
o Responding to change over following a plan
3. Time Management/ Planning
5. Conflict Management
6. Dealing with Change/ Flexibility
7. Decision making
8. Teamwork/ Teambuilding
9. Handling stress
10. Problem Solving
Individual opinion about what’s important
Learning from peers
Reliance on individual abilities
Comfort knowing help is there
Panic when workload peaks
Focus on the organization
What’s in it for me?
Responsibility for the team
Stress on the "supervisor"
Simple, visible measurement
· Customer satisfaction by rapid, continuous delivery of useful software
· Working software is delivered frequently (weeks rather than months)
· Working software is the principal measure of progress
· Even late changes in requirements are welcomed
· Close, daily cooperation between business people and developers
· Face-to-face conversation is the best form of communication (Co-location)
· Projects are built around motivated individuals, who should be trusted
· Continuous attention to technical excellence and good design
· Self-organizing teams
· Regular adaptation to changing circumstances
· Reduced risk
Modules for sessions:
· Managing Self
· Managing Relationships
· Managing Work
Saturday, July 18, 2009
Oracle Application Testing Suite is a comprehensive test suite for Web application testing and monitoring. Oracle acquired “Empirix –e TEST suite” on June 6th 2008, and repackaged it as ‘Oracle Application Testing Suite’ (OATS), which is a part of Oracle Enterprise Manager.
Oracle has complementary products and a shared focus on lowering cost and delivering higher quality of service.
OATS products include:
i. e-Manager : Test Process Management Tool
ii. e-Tester : Automation and Regression Test Suite
iii. e-Load : Performance Test Tool
Oracle Load Testing for Web Applications allows you to easily and accurately test the performance and scalability of your Web applications and Web services. Oracle Load Testing for Web Applications not only stresses your application to simulate the impact of end-user workloads, but also enables rigorous validation that protocol-based legacy client server testing tools cannot provide. Its integrated scripting platform cuts scripting time in half, eliminating weeks from a project’s testing schedule. Oracle Load Testing for Web Applications is a component of Oracle Application Testing Suite, the centerpiece of the Oracle Enterprise Manager solution for comprehensive testing of packaged, Web and service oriented architecture–based applications.
e-Load for Load Testing, Performance Testing and Tuning for Web Applications
The following are the performance testing products:
i. Open Script : Scripting platform for creating automated extensible test scripts in Java
ii. e-Load : e-Load for Performance Testing and Monitoring
e-Load supports most of the performance counters (OS, Servers, Web Resource, Application, etc.,), for more details refer the document in Annexure – A link
e-Load: For performance and scalability testing, it is a performance testing tool that enables accurate testing of the response times and scalability of web applications and web services. Using e-Load we can simulate hundreds or thousands of concurrent users, executing real business transactions, to analyze how well web software applications will perform under load.
The realistic usage scenarios in Oracle Load Testing for Web Applications can handle even the most complex Web applications. By utilizing a unique virtual users capability that encompasses many parameters (including configurable browser types, connection speeds, and think times), testers can interact with the Web application just like real users will to understand exactly how the application will scale under peak load conditions.
Oracle Load Testing for Web Applications can also be used to test the performance of Web service interfaces by simulating thousands of concurrent clients accessing SOA-based applications. Easy to use and accurate, Oracle Load Testing for Web Applications maximizes your application performance by giving you the ability to tune your application under peak load conditions.
e-Load Key Features
v e-Load – A load and performance testing tool for validating the scalability of a customer’s Web applications. It is the industry’s first collaborative load testing solution that can be fully accessed through a Web browser interface, enabling distributed teams to collaborate in real-time to run and analyze load tests.
v e-Load can emulate hundreds of thousands of virtual users accessing a customer’s application simultaneously and can measure the effect of the load on application performance and it provides of performance monitoring.
v e-Load gathers the critical performance metrics to identify bottlenecks. It Simplifies accessibility with an intuitive Web based user interface. Allows distributed users to share testing results during test run/execution.
Sunday, June 21, 2009
Friday, June 19, 2009
Oracle has entered into an agreement to acquire the e-TEST suite products from Empirix, a provider of Voice and Web application testing and monitoring solutions. Empirix's e-TEST suite is a set of Web application testing solutions that help customers deploy higher quality applications more efficiently and at lower cost. The e-TEST suite products will be incorporated into Oracle Enterprise Manager and Oracle Real Application Testing, and the combination is expected to result in a comprehensive solution for testing packaged and custom-built applications.
OATS (Empirix) products include:
i. e-Manager : Test Process Management Tool
ii. e-Tester : Automation and Regression Test Suite
iii. e-Load : Performance Test Tool
e- Manager: For the monitoring of deployed Web applications, an easy-to-use, comprehensive tool that allows you to organize, document and manage the entire testing process.
e- Tester: For functional and regression testing. The e-tester functional testing tool for web applications allowed web testing professionals to quickly and easily script and execute test scripts for web applications.
e- Load: For performance and scalability testing, it is a performance testing tool that enables accurate testing of the response times and scalability of web applications and web services. e-Load can simulate hundreds or thousands of concurrent users, executing real business transactions, to analyze how well web software applications will perform under load.
e- Manager Features:
e-Manager Enterprise – A process management tool on which customers can build and organize their entire testing processes, it allows these customers to define testing requirements, specify and execute manual or automated tests to validate those requirements, and then manage the defects that those tests uncover. The test process is unified through a single platform which gives the customer a comprehensive way to manage quality as a process. Issue Resolution, Tracking, Monitoring and Report Management process.
e - Tester Features:
e- Tester – A functional and regression testing tool for automating manual functional testing processes, the product uses a novel point-and-click approach to building Web application test scripts, making test script development uniquely easy for testers of all abilities, if developers choose to write code to develop their test scripts. It includes an integrated extensibility module and provides a full-range of code-based validation capabilities.
e- Tester having the following automation features:
- Data Driven Testing
- Exception Handling
- Re-Usable Components
- Regular Expressions
- Check Points and Output value
e- Load Features:
e- Load – A load and performance testing tool for validating the scalability of a customer’s Web applications. It is the industry’s first collaborative load testing solution that can be fully accessed through a Web browser interface, enabling distributed teams to collaborate in real-time to run and analyze load tests. It can emulate hundreds of thousands of virtual users accessing a customer’s application simultaneously and can measure the effect of the load on application performance, allowing the customer to make critical decisions about architecture and infrastructure. It provides of performance monitoring.
ü Web /Web Service Applications
ü Oracle Fusion Applications
ü Oracle Flexi and JD Edwards Enterprise One
Cost Benefits comparing (HP vs OATS)
OATS (Empirix) POC Support
ü Empirix POC team provides the support to RFP’s in terms of (OATS).
ü Showcasing to prospective customer.
ü Supporting (Technical & Business) Teams.
ü Build competency / capacity in Test Management / Functional Automation / Performance Testing.
ü Empirix POC team provide the trainings
Monday, February 9, 2009
The Training Top 125 is based on quantitative and qualitative data. The quantitative date (conducted by an outside research and statistical company and directed by Training Magazine) accounts for 75% of the total score. Those measures include: annual revenue, number of employees, employee turnover/retention, training budget, budget as a percent of payroll, among other data provided. The qualitative data (25 percent of the total score) is measured by the editors of Training Magazine, a subjective look at the company's overall application, i.e. best practices, new training initiatives, leadership development, talent management, onboarding, and much more.
Let us join to congratulate this worlds great Learning organization Satyam!