Tag Archives: Agile

An Overview to Release & Deployment Management

5 Oct

Release Management may be summarized as :-
> Planning policy for implementation of new version or new features.
> Development of new version or feature or development follow up from third party if dependent on them.
> Testing new versions in an environment that simulates the live…

Twelve Principles of Agile Software

3 Oct

In my previous post on Agile Software Development, We focused more on software development and this post will give you a brief on twelve principles of Agile Software. However I will try to explain these principle in detail later on my next posts.
1.Our highest priority is to satisfy the customer…

Future of Agile Software Development

23 Sep

We’re using software every day of our lives. It play an important role in our life. Waterfall model have passed ways almost at most of place and agile comes to the picture.Software development industry grows fast right here, right now, and the foundation for a quantitative leap is building u…

Don’t do agile – Be Agile

16 Sep

I do believe that Scrum is hard to adopt  and  for most companies this is just beyond their comprehension. They are fundamentally misunderstanding agile and trying to do agile rather than be agile.
There are no trainings or certifications  or even processes that can provide you with that unde…

Scrum (Software Development)

13 Sep

In my last post about agile methodology discussed about agile and today came with scrum. So the first question that arises in our mind is what is this and why should I know this? Yes we will take that but before that let me tell you why should you know this. If you are a developer, manager or…

Blog Shifted

13 Sep

Dear Friends,

I got lot of support from you and I am very happy to let you know that Finally I have migrated from WordPress Hosting to own hosted Blog.

Yes, I believe WordPress is the best blogging platform available in market. So I have used wordpress again for my blog.

Here is a link for my New Blog :- http://mukundtechie.com

I request all my followers to visit my site and suggest me, What can be done to make it more interactive and pleasing to see posts.

All your feedback and suggestions are welcomed.

Thanks,

Mukund Chaudhary

New Blog : http://mukundtechie.com

 

Must have skill for Web Developer

6 Sep
It’s hard to know where web development will go in  next 5 years, but those who follow standards bodies or at least read tech blogs have a much better understanding of upcoming changes and growing trends.It’s not enough to follow the industry. Web developers must also understand their users and how they use the product. Analytics tools like StatCounter and Google Analytics and Clicky are my favorites for gathering basic metrics of user interactions.

 

1: One of the “Big Three” (.NET, Java, PHP)

Unless there is a radical change in the development world , most developers will need to know at least one of the Big Three development systems — .NET (VB.NET or C#), Java, or PHP — for the near future. It’s not enough to know the core languages, either. As projects encompass more and more disparate functionality, you’ll need to know the associated frameworks and libraries more deeply.

2: Web development

Web development is not going away anytime soon.  Companies have been demanding more and more who really know how to work with the underlying technology at a “hand code” level. So bone up on JavaScript, CSS, and HTML to succeed over the next five years.Web developers must be able to code. This is supposed to sound obvious. An effective web developer must be able to write syntactically valid HTML, CSS, and even JavaScript.

3: Soft skills

Soft Skill is must for  every developer.They are being brought into more and more non-development meetings and processes to provide feedback. For example, the CFO can’t change the accounting rules without working with IT to update the systems. Writing code is not the only thing that a developer should know, he/she should be able to present what ever they have written.

4: Agile methodologies

Many small companies are either adopting Agile or running proof-of-concept experiments with Agile. While Agile is not the ultimate panacea for project failure, it does indeed have a place on many projects. Developers with a proven track record of understanding and succeeding in Agile environments will be in increasingly high demand over the next few years. Few people thinks that it is only for project managers but they are not true. This is one of the important skill that every developer should learn.

5: Domain knowledge

Hand-in-hand with Agile methodologies, development teams are increasingly being viewed as partners in the definition of projects. This means that developers who understand the problem domain are able to contribute to the project in a highly visible, valuable way. As much as many developers resist the idea of having to know anything about the problem domain at all, it is undeniable that increasing numbers of organizations prefer (if not require) developers to at least understand the basics.

6: Testing

All web developers must be able to test their code in multiple browsers. It’s easy to test for our own personal browser of choice and ignore the rest, but the web is about diversity and the browser landscape is very diverse.

JavaScript testing also falls under this category. Developers must use tools to detect and debug scripting errors. Chrome, Safari, and Internet Explorer all come with built-in developer tools that allow you to step through JavaScript and execute code in an interactive console.
If you are going to write code, you must be prepared to make sure that it works.

Sprint Planning

2 Sep

Sprint Planning – Commitment driven

In My earlier post discussed about sprint in scrum.Today I will talk about sprint planning. Let start with how it starts:-

  1. Estimate each task in hour
  2. Decompose to tasks
  3. Pick Story 
  4. Can do more?
  5. Commit to story

 

Sprint Planning – Velocity driven

  1. Re-Evaluate and commit.
  2. Decompose task -> Estimate each task
  3. Pick Story-> According to velocity of team

 

scrum

 

 

 

 

 

 

 

 

 

 

 

***Image Credit: www.certiconglobal.com

 

Creating the sprint Backlog:

Backlog Item Task Owner Estimate (in hours)
Enables all user to place book in shopping cart Design Business Logic Bob 12
Design User Interface Bob 8
  Set up shopping cart module Mukund 10
  Implement front-end code   4
  Unit test etc   8

Scrum (Software Development)

30 Aug

In my last post about agile methodology discussed about agile and today came with scrum. So the first question that arises in our mind is what is this and why should I know this? Yes we will take that but before that let me tell you why should you know this. If you are a developer, manager or product owner then this is sure for you.

SCRUM.
Agile is a general philosophy regarding software development while Scrum is an implementation of that philosophy pertaining specifically to project management.For many developers agile is not a new thing just the modified and advance version of waterfall model.
Scrum is an iterative and incremental agile software development framework for managing software projects and product or application development. Its focus is on “a flexible product development strategy where a development team works as a unit to reach a common goal” as opposed to a “traditional, sequential approach”. Pair programming is recommended in this strategy.

Scrum is a process framework that has been used to manage complex product development since the early 1990s. Scrum is not a process or a technique for building products; rather, it is a framework within which you can employ various processes and techniques. Scrum makes clear the relative efficacy of your product management and development practices so that you can improve.

The Scrum Guide is written and provided by them Ken Schwaber and Jeff Sutherland developed Scrum.

Scrum_process.svg

**Image Source Wiki  Click Here to see larger image

Scrum Roles.
Scrum roles can be classified as below:-

  • Product Owner: The product owner is responsible for providing vision to all the team mates involved in development. He/She is also involved in maximizing the value of product.There should be only one product owner.
  • Scrum Master: Scrum Master ensures that every thing is understood and clear. He/She may decides if anything is feasible or not(by consulting their expert team). Scrum master is responsible for maintaining the sprint backlogs. Yes for sure we will discuss sprint. Keep reading..
  • Team : Scrum team is the members of team, who are actually going to deliver things. A Team is made up of 7 (+/- 2_ individuals with cross-functional skills who do the actual work (analyse, design, develop, test, technical communication, document, etc.). The Team in Scrum is self-organizing.

Sprint: A sprint is the basic unit of development in Scrum. The sprint is a “time-boxed” effort, ranging between one week to one month. Some professional even calls it as the Heart of Sprint.

Sprints contain and consist of the Sprint Planning, Daily Scrums, the development work, the Sprint Review, and the Sprint Retrospective.

During the Sprint:

  • No changes are made that would endanger the Sprint Goal;
  • Quality goals do not decrease; and,
  • Scope may be clarified and re-negotiated between the Product Owner and Development

Daily Scrum : The Daily Scrum is a 15-minute time-boxed event for the Development Team to synchronize activities and create a plan for the next 24 hours.
It includes:-

  • What we did since last meeting?
  • What we are going to do before next meet?
  • Is there any challenge that team is facing.

Burn Down Chart: Burn down chart is the daily progress chart of srpint. It shows what we have achieved over the time

Agile an approach to Software Development

24 Aug

What Is Agile?

Agile methodology is an alternative to traditional project management, typically used in software development. It helps teams respond to unpredictability through incremental, iterative work cadences, known as sprints. Agile methodologies are an alternative to waterfall, or traditional sequential development.

Martin_Fowler_(2008)

It promotes adaptive planning, evolutionary development and delivery, a time-boxed iterative approach, and encourages rapid and flexible response to change. It is a conceptual framework that promotes foreseen interactions throughout the development cycle.

Martin Fowler, widely recognized as one of the key founders of agile methods

Agile Manifesto:-

According to wiki, In February 2001, 17 software developers[6] met at the Snowbird, Utah, resort, to discuss lightweight development methods. They published the Manifesto for Agile Software Development to define the approach now known as agile software development.

images (2)

images

 

 

 

 

 

 

 

 

The Agile Manifesto is based on some of the principles as below:-

  • Customer satisfaction by rapid delivery of product (software).
  • Always welcome changing requirements, even late in development.
  • Working software is delivered frequently (weeks rather than months)
  • Working software is the principal measure of progress.
  • Regular,Close and daily interaction between developer,users and Managers.
  • Face-to-face conversation is the best form of communication.
  • Projects are built around motivated individuals.
  • Continuous attention to technical excellence and good design.
  • Self-organizing teams.

Why Agile?
Agile development methodology provides opportunities to assess the direction of a project throughout the development lifecycle. This is achieved through regular cadences of work, known as sprints or iterations, at the end of which teams must present a potentially shippable product increment.Agile methodology is described as “iterative” and “incremental.” In waterfall, development teams only have one chance to get each aspect of a project right. In an agile paradigm, every aspect of development — requirements, design, etc. — is continually revisited throughout the lifecycle.

download

This approach makes the team to work parallel, when they are gathering requirement and thus in turn it reduces the cost and time of the project. This approach give you right product, i.e exactly what you want.

Happy reading and look forward to your comments and feedback on this.