Professional Documents
Culture Documents
Final Zayredin Assignment
Final Zayredin Assignment
Final Zayredin Assignment
TECHNOLOGY
SECTION: B
1. Discuss the following points in detail.
Projects are temporary in nature and have a definite beginning and end date.
Projects are completed when the project goals are achieved or it is determined the project is no
longer viable.
A successful project is one that meets or exceeds the expectations of your stakeholders.
How Unique?
The product or service is different in some way from other product or services.
How Temporary?
Project Management is the application of knowledge, skills, tools and techniques to project
activities to meet project requirements.
Scope
Schedule
Quality
Resources
Customer Satisfaction
Risk
These all are so intertwined that a change in one will most often cause a change in at least one of
the others
A program consists of a group of related projects and Program management is the process of
managing multiple on going projects. An example would be that of designing, manufacturing
and providing support infrastructure for an automobile make.
Program management involves centrally managing and coordinating groups of related projects to
meet the objectives of the program.
In some cases Project Management is a subset of Program Management. The project manager
may report to the program manager in such cases. A portfolio consists of multiple programs.
A portfolio is a collection of projects, and operations that are grouped together to facilitate
effective management of that work to meet strategic business objectives. Organizations manage
their portfolios based on specific goals.
Senior managers or senior management teams typically take on the responsibility of portfolio
management for an organization.
Portfolio management encompasses managing the collections of programs and projects in the
portfolio. This includes weighing the value of each project, or potential project, against the
portfolio's strategic objectives.
Why do we need Project Management?
We need project management to manage projects effectively and drive them to success. Project
Management starts with the decision to start a project upon weighing its need and viability. Once
a project starts, it is crucial to watch the project progress at every step so as to ensure it delivers
what all is required, in the stipulated time, within the allocated budget. Other drivers influencing
the need of project management are −
Global competition
Improved performance
Many of the tools and techniques for managing projects are specific to project management.
However, effective project management requires that the project management team acquire the
following three dimensions of project management competencies −
Project Management Knowledge Competency − This refers to what the project management
team knows about project management.
Project Management Performance Competency − This refers to what the project management
team is able to do or accomplish while applying their project management knowledge.
Personal Competency − This refers to how the project management team behaves when
performing the project or activity.
Leadership − Developing a vision and strategy, and motivating people to achieve that vision and
strategy
●Software project management tasks
tasks
Software Project Management consists of many activities, that includes planning of the project,
deciding the scope of product, estimation of cost in different terms, scheduling of tasks, etc.
3. Scope Management
4. Estimation Management
6. Scheduling Management
8. Configuration Management
1. Project Planning: It is a set of multiple processes, or we can say that it a task that performed
before the construction of the product starts.
2. Scope Management: It describes the scope of the project. Scope management is important
because it clearly defines what would do and what would not. Scope Management create the
project to contain restricted and quantitative tasks, which may merely be documented and
successively avoids price and time overrun.
3. Estimation management: This is not only about cost estimation because whenever we start to
develop software, but we also figure out their size(line of code), efforts, time as well as cost.
Adjustment of resources.
6. Project Risk Management: Risk management consists of all the activities like identification,
analyzing and preparing the plan for predictable and unpredictable risk in the project.
The Experienced team leaves the project, and the new team joins it.
Changes in requirement.
Market competition.
From the planning to closure, communication plays a vital role. In all the phases, communication
must be clear and understood. Miscommunication can create a big blunder in the project.
Project Planning
Software project planning is task, which is performed before the production of software actually
starts. It is there for the software production but involves no concrete activity that has any
direction connection with software production; rather it is a set of multiple processes, which
facilitates software production. Project planning may include the following:
Scope Management
It defines the scope of project; this includes all the activities, process need to be done in order to
make a deliverable software product. Scope management is essential because it creates
boundaries of the project by clearly defining what would be done in the project and what would
not be done. This makes project to contain limited and quantifiable tasks, which can easily be
documented and in turn avoids cost and time overrun.
Divide the project into various smaller parts for ease of management.
Project Estimation
For an effective management accurate estimation of various measures is a must. With correct
estimation managers can manage and control the project more efficiently and effectively.
Software size may be estimated either in terms of KLOC (Kilo Line of Code) or by calculating
number of function points in the software. Lines of code depend upon coding practices and
Function points vary according to the user or software requirement.
Effort estimation
The managers estimate efforts in terms of personnel requirement and man-hour required to
produce the software. For effort estimation software size should be known. This can either be
derived by managers’ experience, organization’s historical data or software size can be converted
into efforts by using some standard formulae.
Time estimation
Once size and efforts are estimated, the time required to produce the software can be estimated.
Efforts required is segregated into sub categories as per the requirement specifications and
interdependency of various components of software. Software tasks are divided into smaller
tasks, activities or events by Work Breakthrough Structure (WBS). The tasks are scheduled on
day-to-day basis or in calendar months.
Cost estimation
This might be considered as the most difficult of all because it depends on more elements than
any of the previous ones. For estimating project cost, it is required to consider -
Size of software, Software quality, Hardware, Additional software or tools, licenses etc.
Project Scheduling
Project Scheduling in a project refers to roadmap of all activities to be done with specified order
and within time slot allotted to each activity. Project managers tend to define various tasks, and
project milestones and arrange them keeping various factors in mind. They look for tasks lie in
critical path in the schedule, which are necessary to complete in specific manner (because of task
interdependency) and strictly within the time allocated. Arrangement of tasks which lies out of
critical path are less likely to impact over all schedule of the project.
Calculate total time required for the project from start to finish
Resource management
All elements used to develop a software product may be assumed as resource for that project.
This may include human resource, productive tools and software libraries.
The resources are available in limited quantity and stay in the organization as a pool of assets.
The shortage of resources hampers the development of project and it can lag behind the schedule.
Allocating extra resources increases development cost in the end. It is therefore necessary to
estimate and allocate adequate resources for the project.
Resource management includes -
Defining proper organization project by creating a project team and allocating responsibilities to
each team member
Manage Resources by generating resource request when they are required and de-allocating them
when they are no more needed.
Risk management involves all activities pertaining to identification, analyzing and making
provision for predictable and non-predictable risks in the project. Risk may include the
following:
Experienced staff leaving the project and new staff coming in.
Identification - Make note of all possible risks, which may occur in the project.
Categorize - Categorize known risks into high, medium and low risk intensity as per their
possible impact on the project.
Manage - Analyze the probability of occurrence of risks at various phases. Make plan to avoid
or face risks. Attempt to minimize their side-effects.
Monitor - Closely monitor the potential risks and their early symptoms. Also monitor the effects
of steps taken to mitigate or avoid them.
In this phase, the tasks described in project plans are executed according to their schedules.
Project Communication Management
Effective communication plays vital role in the success of a project. It bridges gaps between
client and the organization, among the team members as well as other stake holders in the project
such as hardware suppliers.
Communication can be oral or written. Communication management process may have the
following steps:
Planning - This step includes the identifications of all the stakeholders in the project and the
mode of communication among them. It also considers if any additional communication facilities
are required.
Sharing - After determining various aspects of planning, manager focuses on sharing correct
information with the correct person on correct time. This keeps every one involved the project up
to date with project progress and its status.
Feedback - Project managers use various measures and feedback mechanism and create status
and performance reports. This mechanism ensures that input from various stakeholders is coming
to the project manager as their feedback.
Closure - At the end of each major event, end of a phase of SDLC or end of the project itself,
administrative closure is formally announced to update every stakeholder by sending email, by
distributing a hardcopy of document or by other mean of effective communication.
Configuration Management
IEEE defines it as “the process of identifying and defining the items in the system, controlling
the change of these items throughout their life cycle, recording and reporting the status of items
and change requests, and verifying the completeness and correctness of items”.
Generally, once the SRS is finalized there is less chance of requirement of changes from user. If
they occur, the changes are addressed only with prior approval of higher management, as there is
a possibility of cost and time overrun.
SPMP document is a well organized document that contains the project planning in detail.
It would have details about project objective, project estimates, project schedules, project
resources, project staffing, risk management plans, project monitoring, project control and other
miscellenous activities.
All the above activities are documented in SPMP document by project manager.
A WBS doesn't have a time component, predecessors or dependencies. So why bother creating a
WBS when you can create a project schedule instead? By developing a WBS, one can focus on
the deliverables and nothing but the deliverables. It allows an uncluttered focus on the work that
often gets lost in a project schedule whose focus is time and dependencies.
Project schedule
The project schedule is one of my favorite tools because it really gives a clear view of what's
happening when, as well as how long the project will take. It's the tool that communicates the
work that needs to be performed, the resources performing the work and the time frame in which
that work needs to be performed. It lists all of the tasks to complete the project and shows the
dependencies between each task. Its main purpose is to show the timeline, including start and
end dates for each task, and assign project team members to each task. This becomes an
invaluable checklist to help keep things on track.
Scheduling
The project schedule is the tool that communicates what work needs to be performed, which
resources of the organization will perform the work and the timeframes in which that work needs
to be performed. The project schedule should reflect all of the work associated with delivering
the project on time. Without a full and complete schedule, the project manager will be unable to
communicate the complete effort, in terms of cost and resources, necessary to deliver the project.
Manage Change
Manage and track change requests, bug reports, source code files, and other digital assets.
Report on Change
Changes happen in the development lifecycle. Trace them back to requirements and source code.
And compare historical data with baselines.
Control Change
Take control of change management. Create a process that works again and again.
Risk management means risk containment and mitigation. First, you’ve got to identify and plan.
Then be ready to act when a risk arises, drawing upon the experience and knowledge of the
entire team to minimize the impact to the project.
Software Risks
Software risk encompasses the probability of occurrence for uncertain events and their potential
for loss within an organization. Risk management has become an important component of
software development as organizations continue to implement more applications across a
multiple technology, multi-tiered environment. Typically, software risk is viewed as a
combination of robustness, performance efficiency, security and transactional risk propagated
throughout the system.
We need to differentiate risks, as potential issues, from the current problems of the project.
Different methods are required to address these two kinds of issues.
For example, staff storage, because we have not been able to select people with the right
technical skills is a current problem, but the threat of our technical persons being hired away by
the competition is a risk.
Risk Management
A software project can be concerned with a large variety of risks. In order to be adept to
systematically identify the significant risks which might affect a software project, it is essential
to classify risks into different classes. The project manager can then check which risks from each
class are relevant to the project.
There are three main classifications of risks which can affect a software project:
1. Project risks
2. Technical risks
3. Business risks
1. Project risks: Project risks concern differ forms of budgetary, schedule, personnel, resource, and
customer-related problems. A vital project risk is schedule slippage. Since the software is intangible, it is
very tough to monitor and control a software project. It is very tough to control something which cannot
be identified. For any manufacturing program, such as the manufacturing of cars, the plan executive can
recognize the product taking shape.
2. Technical risks: Technical risks concern potential method, implementation, interfacing, testing, and
maintenance issue. It also consists of an ambiguous specification, incomplete specification, changing
specification, technical uncertainty, and technical obsolescence. Most technical risks appear due to the
development team's insufficient knowledge about the project.
3. Business risks: This type of risks contain risks of building an excellent product that no one need,
losing budgetary or personnel commitments, etc.
Change control is the process through which all requests to change the approved
baseline of a project, programmer or portfolio are captured, evaluated and then
approved, rejected or deferred.
6. Discuss the following points in detail.
Software Quality Assurance
Software quality assurance (SQA) is a process which assures that all software engineering
processes, methods, activities and work items are monitored and comply against the defined
standards. These defined standards could be one or a combination of any like ISO 9000, CMMI
model, ISO15504, etc.
SQA incorporates all software development processes starting from defining requirements to
coding until release. Its prime goal is to ensure quality.
QA Activities
Major Software Quality Assurance Activities:
Make a plan how you will carry out the SQA through out the project. Think which set of
software engineering activities are the best for project. check level of SQA team skills.
SQA team should set checkpoints. Evaluate the performance of the project on the basis of
collected data on different check points.
Do not depend on single testing approach. When you have lot of testing approaches available use
them.
The changes for making the correction of an error sometimes re introduces more errors keep the
measure of impact of change on project. Reset the new change to change check the compatibility
of this fix with whole project.
In the working environment managing the good relation with other teams involved in the project
development is mandatory. Bad relation of SQA team with programmers team will impact
directly and badly on project. Don’t play politics.
Team Management
Team management refers to the various activities which bind a team together by bringing the
team members closer to achieve the set targets . For the team members, their team must be their
priority and everything else should take a back seat. They should be very focused on their goals.
1. Software Quality Assurance Standard, which are known as Quality Management Standards .
They focus on the organization’s infrastructure, SQA system, requirements leaving the choice of
tools and methods of testing to an organization. Their standard objective is “what” to achieve. It
assures that organizations achieve an acceptable quality of software.
2. Software Project Development Process standards which are known as Project Process
Standards.
Unit Testing: This software testing basic approach is followed by the programmer to test the
unit of the program. It helps developers to know whether the individual unit of the code is
working properly or not.
Integration testing: It focuses on the construction and design of the software. You need to see
that the integrated units are working without errors or not.
System testing: In this method, your software is compiled as a whole and then tested as a whole.
This testing strategy checks the functionality, security, portability, amongst others.
Regression Testing: is defined as a type of software testing to confirm that a recent program or
code change has not adversely affected existing features.
Regression Testing is nothing but a full or partial selection of already executed test cases which
are re-executed to ensure existing functionalities work fine.
This testing is done to make sure that new code changes should not have side effects on the
existing functionalities. It ensures that the old code still works once the latest code changes are
done.
White Box Testing is software testing technique in which internal structure, design and coding of
software are tested to verify flow of input-output and to improve design, usability and security.
In white box testing, code is visible to testers so it is also called Clear box testing, Open box
testing, Transparent box testing, Code-based testing and Glass box testing.
It is one of two parts of the Box Testing approach to software testing. Its counterpart, Blackbox
testing, involves testing from an external or end-user type perspective. On the other hand, White
box testing in software engineering is based on the inner workings of an application and revolves
around internal testing.
The term "WhiteBox" was used because of the see-through box concept. The clear box or
WhiteBox name symbolizes the ability to see through the software's outer shell (or "box") into its
inner workings. Likewise, the "black box" in " Black Box Testing " symbolizes not being able to
see the inner workings of the software so that only the end-user experience can be tested.
White box testing encompasses several testing types used to evaluate the usability of an
application, block of code or specific software package. There are listed below --
Unit Testing: It is often the first type of testing done on an application. Unit Testing is performed
on each unit or block of code as it is developed. Unit Testing is essentially done by the
programmer. As a software developer, you develop a few lines of code, a single function or an
object and test it to make sure it works before continuing Unit Testing helps identify a majority
of bugs, early in the software development lifecycle. Bugs identified in this stage are cheaper and
easy to fix.
Testing for Memory Leaks : Memory leaks are leading causes of slower running applications. A
QA specialist who is experienced at detecting memory leaks is essential in cases where you have
a slow running software application.
Black Box Testing is a software testing method in which the functionalities of software
applications are tested without having knowledge of internal code structure, implementation
details and internal paths. Black Box Testing mainly focuses on input and output of software
applications and it is entirely based on software requirements and specifications. It is also known
as Behavioral Testing.
There are many types of Black Box Testing but the following are the prominent ones -
Functional testing - This black box testing type is related to the functional requirements of a
system; it is done by software testers.
Non-functional testing - This type of black box testing is not related to testing of specific
functionality, but non-functional requirements such as performance, scalability, usability.
Regression testing - Regression Testing is done after code fixes, upgrades or any other system
maintenance to check the new code has not affected the existing code.
Static Testing is a type of software testing in which software application is tested without code
execution. Manual or automated reviews of code, requirement documents and document design
are done in order to find the errors. The main objective of static testing is to improve the quality
of software applications by finding errors in early stages of software development process.
Static testing involves manual or automated reviews of the documents. This review is done
during an initial phase of testing to catch Defect early in STLC. It examines work documents and
provides review comments. It is also called Non-execution testing or verification testing.
Under Dynamic Testing , a code is executed. It checks for functional behavior of software
system, memory/ cpu usage and overall performance of the system. Hence the name "Dynamic"
The main objective of this testing is to confirm that the software product works in conformance
with the business requirements. This testing is also called an Execution technique or validation
testing.
Dynamic testing executes the software and validates the output with the expected outcome.
Dynamic testing is performed at all levels of testing and it can be either black or white box
testing.
Control flow testing is a testing technique that comes under white box testing. The aim of this
technique is to determine the execution order of statements or instructions of the program
through a control structure. The control structure of a program is used to develop a test case for
the program. In this technique, a particular part of a large program is selected by the tester to set
the testing path. It is mostly used in unit testing. Test cases represented by the control graph of
the program.
. ...
One testing strategy, called basis path testing by McCabe who first proposed it, is to test each
linearly independent path through the program; in this case, the number of test cases will equal
the Cyclomatic complexity of the program.
Data flow testing is a family of test strategies based on selecting paths through the program's
control flow in order to explore sequences of events related to the status of variables or data
objects. Dataflow Testing focuses on the points at which variables receive values and the points
at which these values are used.
During testing phase where there is severe time pressure, Exploratory testing technique is
adopted that combines the experience of testers along with a structured approach to testing.
Exploratory testing often performed as a black box testing technique, the tester learns things that
together with experience and creativity generate new good tests to run.
Benefits:
The testers can use reasoning based approach on the results of previous results to guide their
future testing on the fly.
Drawbacks:
It is unlikely to be performed in exactly the same manner and to repeat specific details of the
earlier tests
Code and Fix programming paradigm (test plan, test case design
specification, etc.)
Programming paradigms are a way to classify programming languages based on their features.
Languages can be classified into multiple paradigms.
Some paradigms are concerned mainly with implications for the execution model of the
language, such as allowing
side effects, or whether the sequence of operations is defined by the execution model. Other
paradigms are concerned mainly with the way that code is organized, such as grouping a code
into units along with the state that is modified by the code. Yet others are concerned mainly with
the style of syntax and grammar.
Three of the most prominent plan-driven methodologies are the Personal Software Process
(PSP), Team Software Process (TSP), and Rational Unified Process (RUP).
A software development process is the process by which user needs are translated into a software
product. The process involves translating user needs into software requirements, transforming
the software requirements into design, implementing the design in code, testing the code, and
sometimes installing and checking out the software for operational use. Note: these activities
might overlap or be performed iteratively.
Personal Software Process (PSP), Team Software Process (TSP), and Rational Unified Process
(RUP), all of which use the incremental model, are described below.
Models
Incremental model
With the Incremental Model, the system is analysed, designed, developed, and tested in
increments which are clearly defined. In other words the project is broken down into a series of
builds. The core functionality is dealt with in the first increment and with the final increment the
complete project is released. It emphasises a building block approach which means that an
operational system is produced more quickly.
Complete requirements may be gathered up front or the project may begin with general
objectives which are refined with each iteration. The requirements are prioritised, the higher a
requirements 's priority the earlier it is to be included in an increment. Thus, new functionality
added should not be more important than that which exists in the current build
..
Iteration
Each iteration can be seen as a mini project with its own lifecycle (this could be waterfall, for
example). The end product of each iteration is an executable system which is integrated and
tested. An iteration usually lasts for a predefined, relatively short period of time (generally a
number of weeks.
Advantages
Accommodates changes
Disadvantages
Each new build has to be incorporated into the existing build without breaking it.
Clients have more opportunity to attempt to change requirements than with, for example, the
waterfall method.
Waterfall model
Successful software project rate has increased considerably since 70’s. This is explainable by
standard and accepted methods of process management in companies. Lifecycle model
development began in 70’s with suggested waterfall lifecycle model as a pioneer in software
development. This model was proposed by Winston W. Royce and was successfully employed in
the industry during these years.
Waterfall model has a linear structure characteristic. This linear structure defines the sequentially
of tasks where task should be completed before the next task can be started, thus following non-
iterative principle. Plan driven development mirrors the approach by waterfall model where steps
in the development are planned out from the beginning until the project completion. Waterfall
lifecycle model development is broken down into five steps:
Requirement analysis: development team meets project stakeholders to identify needs and
establish requirements to satisfy project goals. Requirement analysis initially is a feasibility
study that identifies functional and non-functional requirements with its constraints.
Documentation is generated.
Testing: software domain is tested for bugs. Different sets of tools are available for testers and
developers to detect and fix defects in the software.
Maintenance: stage where product is updated (patched), to meet changing needs and
environments. Fixing undetected bugs during testing stage and defects that might arise during
updates.
The meaning of Agile is swift or versatile." Agile process model " refers to a software
development approach based on iterative development. Agile methods break tasks into smaller
iterations, or parts do not directly involve long term planning. The project scope and
requirements are laid down at the beginning of the development process. Plans regarding the
number of iterations, the duration and the scope of each iteration are clearly defined in advance.
Each iteration is considered as a short time "frame" in the Agile process model, which typically
lasts from one to four weeks. The division of the entire project into smaller parts helps to
minimize the project risk and to reduce the overall project delivery time requirements. Each
iteration involves a team working through a full software development life cycle including
planning, requirements analysis, design, coding, and testing before a working product is
demonstrated to the client.
5. Deployment 6. Feedback
The Personal Software Process is a structured software development process that is intended to
help software engineers understand and improve their performance , by using a " disciplined ,
data -driven procedure" . The PSP was created by Watts Humphrey to apply the underlying
principles of the Software Engineering Institute ’ s Capability Maturity Model to the software
development practices of a single developer. It claims to give software engineers the process
skills necessary to work on a Team Software Process team . " Personal Software Process " and "
PSP " are registered service marks of the Carnegie Mellon University .
The Personal Software Process ( PSP ) is a structured software development process that is
designed to help software engineers better understand and improve their performance by
bringing discipline to the way they develop software and tracking their predicted and actual
development of the code. It clearly shows developers how to manage the quality of their
products, how to make a sound plan, and how to make commitments. It also offers them the data
to justify their plans. They can evaluate their work and suggest improvement direction by
analyzing and reviewing development time, defects, and size data. The PSP was created by
Watts Humphrey to apply the underlying principles of the Software Engineering Institute 's (SEI)
Capability Maturity Model (CMM) to the software development practices of a single developer.
It claims to give software engineers the process skills necessary to work on a team software
process (TSP) team.
Team Software Process (TSP)
In combination with the personal software process (PSP), the team software process ( TSP )
provides a defined operational process framework that is designed to help teams of managers and
engineers organize projects and produce software for products that range in size from small
projects of several thousand lines of code (KLOC) to very large projects greater than half a
million lines of code. The TSP is intended to improve the levels of quality and productivity of a
team's software development project, in order to help them better meet the cost and schedule
commitments of developing a software system. [1][2][3][4]
The initial version of the TSP was developed and piloted by Watts Humphrey in the late 1990s
[5] and the Technical Report [6] for TSP sponsored by the U.S. Department of Defense was
published in November 2000. The book by Watts Humphrey, [7] Introduction to the Team
Software Process , presents a view of the TSP intended for use in academic settings, that focuses
on the process of building a software production team, establishing team goals, distributing team
roles, and other teamwork-related activities.
Process improvement can be likened to trying to get into better shape; you might start by
researching a diet plan and finding a gym or trainer to help you nail down a workout routine. At
first, it's easy and exciting to make this change in your life as you start losing weight, feeling
better and noticing some real changes. Then, you slowly start slipping into your old ways; you
sleep in one morning or eat fast food for lunch a couple of times a week. Gradually, you fall back
into your old habits.
Process improvement can follow a similar pattern; you analyze your current processes and come
up with an idea that could potentially improve your organization in multiple ways. Your plan
gets approved, and the changes are implemented. Soon, you notice everything is falling back into
the old way of doing things.
Access the status of a software process
Measuring software development status has not kept pace with the evolution of software
development technologies, specifically programming languages and software development
methodologies. A meta-analysis revealed 1) the inability of current metrics to address software
status, 2) multiple problems with source lines of code (SLOC): lack of consensus on counting
rules, wide variations in code counts provided by code counting tools, wide variations due to
programming style and programming language, 3) lack of support from standards and reports,
and 4) limited applicability of current metrics to progress/status of each of the life cycle phases.
Given such a wide range of issues, it is time to seriously challenge how software status is
currently assessed and reported. There is a gap in current measurement mechanisms related to
assessing and reporting software status that needs to be filled.
SCRUM
Scrum is a framework utilizing an agile mindset for developing, delivering, and sustaining
complex products, [1] with an initial emphasis on software development , although it has been
used in other fields including research, sales, marketing and advanced technologies. [2] It is
designed for teams of ten or fewer members, who break their work into goals that can be
completed within time-boxed iterations, called sprints, no longer than one month and most
commonly two weeks. The Scrum Team assess progress in time-boxed daily meetings of 15
minutes or less, called daily scrums. At the end of the sprint, the team holds two further
meetings: the sprint review which demonstrates the work done to stakeholders to elicit feedback,
and sprint retrospective which enables the team to reflect and improve.
Scrum is a framework that helps teams work together. Much like a rugby team (where it gets its
name) training for the big game, scrum encourages teams to learn through experiences, self-
organize while working on a problem, and reflect on their wins and losses to continuously
improve.
While the scrum I’m talking about is most frequently used by software development teams, its
principles and lessons can be applied to all kinds of teamwork. This is one of the reasons scrum
is so popular. Often thought of as an agile project management framework, scrum describes a set
of meetings, tools, and roles that work in concert to help teams structure and manage their work.
Team Management
Team management refers to the various activities which bind a team together by bringing the team
members closer to achieve the set targets . For the team members, their team must be their priority and
everything else should take a back seat. They should be very focused on their goals.