Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 5 years ago.
Improve this question
I have been reading software development methodologies. I came across a line which says that agile methods include Rational Unified Process, Scrum, Crystal Clear, Extreme Programming, Adaptive Software Development, Feature Driven Development, and Dynamic Systems Development Method (DSDM). What I wonder is whether RUP should be in the list.
Rational Unified Process is an Iterative and Incremental process, though by default the average cycle time to deliver working software is still quite long. I personally count RUP as borderline agile, close to long-iterative or short-water-fall.
Its more recent brother, OpenUp, is supposedly a more agile version, concentrating on the core aspects of RUP and doing away with many of the less desirable parts.
If you're looking to be "very agile", the Unified Process is probably not going to give you the most flexibility in the end.
Related
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 2 years ago.
Improve this question
I am new to programming and I try to research as much as possible in this field. And once I came across to this expression: "Extreme and pair programming". Pair programming is an easy term, and I found quite clear documentation about this. But extreme programming... I found some articles about it, but explanation wasn't so well. All I understood that extreme programming is an Agile development framework. But why I must use that, what is difference between this and another types of programming styles?
Can anyone explain me what is extreme programming language very clearly?
Extreme programming (often called XP) is an agile framework that was developed by Kent Beck in the 1990's.
There aren't too many people that use the whole XP framework these days, but a lot of the engineering practices it popularised are very common.
Examples include:
Pair programming
Test driven development
Continuous integration
Frequent releases
Constant refactoring
XP favours an approach of writing the minimum amount of code to solve the problem at hand. Things like optimisation and forward planning are generally a low priority. This is the 'extreme' part of extreme programming.
The idea is that you write code to solve the current requirement. If you then find you need the code to be faster, or scaleable, etc. then you refactor it.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 5 years ago.
Improve this question
Does anyone have any good documents talking about agile eligibility criterias of a project ? maybe a checklist to identify opportunities and risks before the beginning of the project.
Thanks :)
The short answer is this: If your project is all of the following:
Short (no longer than a month, as a rule of thumb)
Simple (everything there will be to know about the project is presently known)
Straight Forward (After delivery, there will be no future development / maintenance)
Then you may consider not doing agile!
In all other cases, you will be well served by developing your project in an agile manner.
From small start ups to large multinational companies (Microsoft, for example) more and more companies are implementing agile mindsets and methodologies.
From small clients to middle-sized financial institutes to gigantic ones (United States Department of Defense, for example), more and more are accepting, encouraging or even demanding a flexible and incremental delivery and an open visible development project.
The important thing to understand, though is that perceptions of what agile is and isn't are often wrong. not planning, for example, or not documenting are, despite popular belief not agile.
What I would suggest, is to first make sure you understand what agile really is. Here are a few good resources:
The agile manifesto (Important note: while the things on the left are more important, we still value the things on the right).
Scrum.org's Scrum Guide
Lyssa Adkins' Blog
If you pardon my own shameless plug, you can read my blog, too.
Here are they:
http://pm.versionone.com/AgileChecklist.html
http://standard-data-systems.net/Project_Checklist/Agile%20Audit.pdf
Also, you can google it for: agile project checklists.
Good luck.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 5 years ago.
Improve this question
Does anyone happen to know if Joint Application Development is categorized under Agile methodology or are they two separate development processes? It appears that SCRUM is a type of agile but JAD is related to RAD and is outside of agile.
Any information on differences are appreciated.
Agile is not a methodology in itself. It is a set of guidelines (the manifesto), a mindset, a way of approaching software development. SCRUM is one manifestation of that as a concrete methodology.
JAD (it appears from Wikipedia) is related to requirements gathering in DSDM. DSDM is typically classed as an agile methodology so I guess your answer is there.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 5 years ago.
Improve this question
In agile manifesto and in many answers here, I found this :
Individuals and interactions over
processes and tools.
So, what exactly does it mean?
In my opinion, processes and tools are important part of software development. For example, what is the point of installing continuous integration if people are going to ignore the result for weeks?
Even the best tools and processes add little value in the hands of inept people.
Focus on building and training a good team vs. buying into the lastest tool/process and hoping it'll solve all your problems.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 6 years ago.
Improve this question
I am taking a software development class right now and we are discussing agile methodologies. What are the most common agile methods? I need to look into several and discuss their strengths and weaknesses. Seems more useful to look into the most prominent methods.
Observations:
Scrum seems pretty popular (that is what my team used on two of my coops).
Extreme also seems to get quite a bit of buzz but I am not sure if that many people actually use it.
What does your company use and how do you like it? Does anyone use:
Agile Modeling
Agile unified process
DSDM
Essential Unified Process
Feature Driven Development
Open unified processes
Rational Unified Process
Are there other methodologies that I should investigate?
I've used SCRUM in personal projects with friends and schoolmates and my current employer uses a custom agile process that's very similar to SCRUM but with fewer meetings.
We have used Test Driven Development and Scrum.
I've been on some very successful teams which used Scrum very effectively. It really does help to keep everybody focused and constantly moving forward, and it discourages regressions.