Agile Software Development

in #utopian-io7 years ago

Today i,m going to discuss about the agile development. Why we develop software in Agile Driven Model???

What is Agile Development.

 Agile modeling (AM) is a methodology for modeling and documenting software systems based on best practices. It is a collection of values and principles, that can be applied on an (agile) software development project. 

You can Develop any Project by using Agile Driven Modeling.


Why We Need Agile Development Cycle

We use Agile development when the requirements of the software are not complete or when we has less information and we can change the development when we want.  By delivering working, tested, developable software on an incremental basis, agile development delivers increased value, visibility, and adaptability much earlier in the life cycle, significantly reducing project risk. 


In Water fall model once we start development then there is no way back to change any thing. it has to be made in the way we have decided.


Advantages Of Agile Development

 

  • High product quality. In Agile development, testing is integrated during the cycle, which means that there are regular checkups to see that the product is working during the development. ...
  • Higher customer satisfaction.  
  • You can deploy software quicker so your customer can get value sooner rather than later.
  • Increased project control.  
  • You waste less resources because you always work on up-to-date tasks. 
  • You can better adapt to change and respond faster 
  • Reduced risks. ...
  • Faster ROI.


Disadvantage Of Agile Development

 

  • Active user involvement and close collaboration are required throughout the development cycle. ...
  • Requirements emerge and evolve throughout the development. ...
  • Agile requirements are barely sufficient. ...
  • Testing is integrated throughout the lifecycle.
  • Frequent delivery


Sort:  

Thank you for this information. I will be following about it

thanks alot man. i,ll also share the development in plan driven enginnering

This post has received a 6.05 % upvote from @boomerang thanks to: @wajahatsardar

@boomerang distributes 100% of the SBD and up to 80% of the Curation Rewards to STEEM POWER Delegators. If you want to bid for votes or want to delegate SP please read the @boomerang whitepaper.

This post has received gratitude of 0.66 % from @appreciator thanks to: @wajahatsardar.

the disadvantage list is actually much longer.

essentially, `agile software dev' methodologies are apt to guide to focus on lack-foresight work and to result in low quality software in the long run---design-insufficient and occasional-solution-full products.

of course, that may be accused to bad practice of experienceless teams. are there experienced teams that really embrace `agile software dev'?

in real world, the primary `advantage' of `agile software dev' methodologies is convenient for `micro-management', which is mainly employed by a business expecting lowcost-running---hiring untalented coding monkeys to fill product managers' backlog lists. software developers' proactivity is suppressed much, as is inconsistent with true software development, which essentially is `craft'.

You can solve the problem of low software quality via your non functional requirements and setting quality requirements in your team.
When you combine your User Stories with your non functional requierements, the team assures that the software that is beeing build keeps its standarts of quality.

"in real world, the primary advantage' ofagile software dev' methodologies is convenient for `micro-management', which is mainly employed by a business expecting lowcost-running"

Absolutely not. In a agile environment you are avoiding micromanagement by letting the team manage itself. It is responsible for the endproduct and its quality.

Hello,
I feel like some of the principles are misinterpreted, at best.
For example, I always get a bad feeling when someone refers to agile methodology, there is no such thing: agility is an approach, not a methodology, and there are some frameworks that try to implement the principles, those can be call methodologies, and I am talking about SCRUM, XP, LESS...

Another thing I'm not comfortable with is the criteria of adoption: "when the requirements of the software are not complete or when we has less information and we can change the development when we want".
In 2018 it is no more a matter of when applying an agile approach to development, but which practices bring the best results for your team or your company.
There is no such thing as "complete requirements", or "stable requirements". Requirements are based on needs and context, which are recursively influenced, and even a small percentage of the total expected value WILL (yes, capital) change both the needs and the concept; so, let's move away from the illusion of stability, embrace change, and make it your priority.

Lastly, it looks from your post that an agile approach has a very determined set of advantages and disadvantages - and I will spare a severe comment about listing "active user close collaboration" as one of the latter - while there is no such thing as they both depend on the way you decide to implement the agile principles and which problems matter more.
I, for example, cannot think of any disadvantage in frequent delivery, or integrated testing.
What you should have mentioned, instead, is that adopting agile principles is hard, it requires constant change, it requires technical skills, it requires your company to change, not just your IT department, but your whole company, it requires maturity, and, most of all, it requires failure and embracing it as a mean to improve rather than playing the usual blame game.

Coin Marketplace

STEEM 0.19
TRX 0.14
JST 0.030
BTC 63196.13
ETH 3385.94
USDT 1.00
SBD 2.45