User:Nguyenamy1712/sandbox

Agile (Scrum) is a project management method borrowed from software development in which cross-functional teams work with users/ consumers to develop and release minimum viable products in frequently in short cycles. Agile is adopted by forward-looking organizations who want to capture on-demand, fickle market trends and requirements in many fields outside software development. Agile requires a planning process that is open to adaptations and adjustments, as well as a management philosophy that encourages collaboration and self-organization among multidisciplinary team members.

Origin in software development
Agile as a project management methodology is rooted in agile software development, which is an approach to software development grounded in The Agile Manifesto. In the past, the planning of substantial IT projects encountered many difficulties due to unpredictable changes in users' requirements. Protecting well-planned, long-term projects against changes were impossible. Failure of traditional IT project projects, along with the wave of innovations and demand for speed in the age of the Internet, gave rise to more lightweight IT projects which reject the sequential process of software development and instead, delivers a series disposable prototypes that can be tested frequently by users and improved incrementally at multiple releases.

Agile project management practices
Taking The Agile Manifesto as the foundation, business scholars have attempted at conceptualizing agile as a generic approach to management. The Project Management Institute has conducted a systematic literature review of over 9,000 news articles and identify certain management practices that are relevant to agile methodology. Agile is adopted by blended teams of traditional and innovative organizations.

In the non-tech context, work practices based on the principles in the Manifesto include the following: Holding daily 5-10 minute standup meetings where the team checks in on progress and discusses challenges
 * Creating a list (or backlog) of prioritized work
 * Writing tickets that describe all the units of work necessary to accomplish the items in the backlog
 * Displaying public boards so the team — and stakeholders — can track progress
 * Planning out the work to be done in a sprint, or a set period of time (usually 2-4 weeks)
 * Doing retrospective meetings when the sprint is over to discuss what went well, what went wrong, and what could be improved

Agile adoption by other sectors
Agile has been adopted by many sectors besides software development in product development projects. The goal of having a cross-functional team developing and improving a product in phases is to launch minimum viable products that can test the market in a timely manner and that can be redeveloped iteratively without having to launch a new project. The top three sectors adopting agile are software development, financial services and professional services. Today’s financial institutions are facing huge changes in technology platforms, payments processing systems, financial systems, asset and risk management systems, from m-payments and the ability to view and trade stock options via mobile phones, to e-payment and trends towards an increase in digital and online banking. Leading financial firms saw customer satisfaction in their banking and investment tracking applications fall due to long time gathering and defining requirements before development and outdated features due to the legacy process of test and retest product prototypes. Meanwhile, consulting firms are proposing scrum projects and competing for clients' favour by delivering operational products within stingy timeframes using the agile methodology.

The state of agile and agile training
Companies operating in traditional sectors are slow to adopt iterative planning. However, phased planning in projects with innovative challenges is common among these companies due to the challenges in creating a complete and detailed project plan. Fortunately, many of these companies have been practicing minimal textual documentation, a favourable practice in agile. Big Four consulting firms such as Deloitte have been providing clients with sprint/ scrum workshops to train their employees about the agile mindset. Traditional but proactive organizations such as Unilever have been working with startups to integrate agile into their business model.

Process
Agile process is most commonly defined as a contrast to the waterfall process.


 * From specialist teams to co-blended and cross-functional teams: to ensure specialists team (i.e. developers and project managers) and business people from across all business units on the client side work well alongside one another.
 * More involved management and operational teams in ongoing training: all roles exchange and transfer knowledge about agile methodologies through continuous training, mentoring and coaching.
 * Working solutions as guiding measures to sustain development: teams aimed to deliver working solutions frequently within short timeframes and embracing change development instead of taking a long time to launch complete products
 * Assessing product-market fit by frequent user testing and iteration and adoption success through pilot projects.

Team structure

 * Scrum Master (“The Guardian”)project managers are responsible for removing blockers and shielding the teams from “outside” factors to ensure team is focused, productive and functional. Scrum Master must lead stand-up, retrospective and showcase to facilitate necessary information sharing among team members and stakeholders
 * Team (“The Deliverers”): capture business requirements and commit to designing, developing, testing and delivering working prototypes within the iterations. Deliverers must be knowledgeable about the technical aspects of the products regardless of their role in the team. They must also produce the documentation of the project.
 * Product Owner (“ The Decision Maker”): represents the business in the team, prioritizes the desired features and be the judge of the final prototype’s functionality

Principles for management and teamwork
The hallmark of agile methodology is the flexible working structure that embraces and internalizes changes to the initial prototype. Agile teams embrace principles of The Agile Manifesto and must share responsibilities in decision making to ensure all functional parts of the product are developed wholly at each release.
 * Satisfy the customer through early and continuous delivery of valuable software and welcome changing requirements, even late in development: agile projects embrace usability testing, internalize requirement changes through rapid releases of new prototypes. This means users are engaged in frequent usability testing and working relationships must be developed between project teams and the user of their products.
 * Business people and developers must work together daily throughout the project: in practice this means the project team must involve the various stakeholders (i.e. project management team, clients, users) in regular design showcases and convince them to sympathize with the process. Outcome-oriented stakeholders are often cynical of the team's incomplete deliverable at each release, so team members are responsible for explaining the time and budget constraints, as well as the logic of Agile.
 * The most efficient and effective method of conveying information to and within a development team is face-to-face conversation: teams are often co-located with client and contractors. Textual documentation of the progress is minimized and is replaced by an open-door policy, where stakeholders are invited to frequent showcases and informed of the progress through interactive presentations.
 * At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly: in agile projects, the senior manager (scrum master) is responsible for imparting agile mindset to team members and build an atmosphere conducive for sharing as project self-management is fundamental to agile teams. Team members must be involved in all stages of decision making regardless of their function in the team.

Planning
Due to the iterative and adaptable nature of agile projects, continuous sizing, planning and estimating are crucial to keep the project on the right track in the long term.

The size of an agile project should be assessed not by its scope but the technical complexity, the level of stakeholder and external vendors involvement, innovativeness, the risk associated with failures. Accurate project sizing helps project manager measures the right amount of the team’s efforts and time invested in the project.

Meanwhile, because it is impossible to predict what changes will be made to each working prototype at the end of each phase, estimating the time and budget required for the delivery of the next prototype should be done closer to the date of delivery. That being said, at the start of the project, managers should be able to capture the essential business requirements and the client's budget to time-box the project. This allows the team to provide essential product features and evaluate the cost of incremental innovations that will be added in later phases.