Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
Emerging Trends of Software Engineering
1. Emerging Trends of Software Engineering
/Development
(after Pendamic and for SusDev30)
2. Introduction :
2
The insane 2020, which significantly impacted all spheres of life, including software
development, finally ended with pain. Looking ahead, it’s hard to say what
surprises are waiting for us. But we can analyse some significant software
development trends that have shaped the industry in 2020 and are continuing to
influence it in 2021. But still ……
“One of the things that I think we have learned is that we should all be very careful
about making predictions about the future.” Bill Clinton, 42nd President of the USA
For example:
“I think there is a world market for maybe five computers.” Thomas
Watson, chairman of IBM, 1943
“There is no reason anyone would want a computer in their home.” Ken
Olson, President, Chairman of Digital Equipment Corp., 1977
“640K ought to be enough for anybody.” Bill
Gates, chairman of Microsoft, 1981 etc.
3.
4. 4
Current Trend
Software Intensive Systems (SIS) have become the
foundation of virtually every modern technology.
Software content in virtually every product and service will
continue to grow—in some cases dramatically - IoT
Software must be demonstrably safe, secure, and reliable
Requirements will emerge as systems evolve
“Interoperability” and “Networkability” will become dominant as
“mash-ups” become the norm
A “smart world - SusDev30” demands better, more reliable software
and so on.
5. 5
A Harsh Reality is :
The challenges facing software engineers will
get no easier as we move into the second
decade of the 21st century
New process models, methods, languages,
and tools will emerge,
But …
There is no silver bullet!
6. 6
The global COVID-19 pandemic and SusDev30 has become an inflection point for many
businesses.
Due to COVID-19 Unprecedented strict regulations imposing social distancing and
lockdown hit both small and large enterprises: they were forced to quickly reorganize
working processes and develop new approaches, with many struggling to stay afloat.
Once businesses faced these never-before-seen challenges & importance of SusDev30,
they quickly realized that they needed to move toward a primarily digital world, where
digital solutions will largely determine the way of life.
Today, we witness the acceleration of IT priorities and technology roadmaps across
enterprises. Like :-
A Primarily Digital World
Cloud-Computing
Low Code, No Code Technology Development
Artificial Intelligence & IoT
Big Data & Neuralink
Contactless services
Cloud migration
DevOps activities
7. Accelerated Strategies Group, Inc., noted that 63.3% of
business respondents noted digital transformation as a
priority for their company. Their primary focus now is on:
1. Contactless services (60.1%)
2. Cloud migration (52.25%)
3. DevOps activities (51.75%).
Digital solutions will determine the creation of sustainable
and adaptable businesses.
Hence, Software Engineers/Developers and IT
specialists will play a critical role in building the post-
pandemic world and prepration of SusDev30.
7
8. DevOps :
DevOps is a set of practices that combines software
Development ( Dev) and IT Operations ( Ops ).
It aims to shorten the Systems Development Life Cycle(SDLC)
and provide continuous delivery with high software quality.
DevOps is complementary with Agile software development;
Several DevOps aspects came from the Agile methodology.
9. What is Agile Technology
Agile Methodology is a people-focused, results-focused approach to software
development that respects our rapidly changing world.
It’s centered around adaptive planning, self-organization, and short delivery times.
It’s flexible, fast, and aims for continuous improvements in quality, using tools
like Scrum and eXtreme Programming.
How It Works:
It works by first admitting that the old “waterfall” method of software development
leaves a lot to be desired. The process of “Plan, Design, Build, Test, Deliver,”
works okay for making cars or buildings but not as well for creating software
systems.
But in a business environment where hardware, demand, and competition
are all swiftly-changing variables, agile works by walking the fine line
between too much process and not enough.
10. Agile Methodology Overview
10
It abandons the risk of spending months or years on a process that ultimately fails
because of some small mistake in an early phase.
It relies instead on trusting employees and teams to work directly with customers
to understand the goals and provide solutions in a fast and incremental way.
Faster, smaller : Traditional software development relied on phases like
outlining the requirements, planning, design, building, testing, and delivery.
Agile methodology, by contrast, looks to deploy the first increment in a couple
weeks and the entire piece of software in a couple months.
Communication. Agile teams within the business work together daily at every
stage of the project through face-to-face meetings.
This collaboration and communication ensure the process stays on track even as
conditions change.
11. Feedback. Rather than waiting until the delivery phase to gauge success, teams
leveraging Agile methodology track the success and speed of the development
process regularly. Velocity is measured after the delivery of each increment.
Trust. Agile teams and employees are self-organizing. Rather than following a
manifesto of rules from management intended to produce the desired result, they
understand the goals and create their own path to reach them.
Adjust. Participants tune and adjust the process continually, following the KIS
(Keep It Simple) principle.
Examples of Agile Methodology
The most popular and common examples are
Scrum, eXtreme Programming (XP), Feature Driven Development (FDD), Dynamic
Systems Development Method (DSDM), Adaptive Software Development (ASD),
Crystal, Lean Software Development (LSD).
Teams generally pick one or two methods.
The most widely used methodologies are Scrum and XP, which dovetail nicely.
11
12. Scrum is a hands-on system consisting of simple interlocking steps and
components:
1. A product owner makes a prioritized wish list known as a
product backlog.
2. The scrum team takes one small piece of the top of the wish
list called a sprint backlog and plans to implement it.
3. The team completes their sprint backlog task in a sprint (a 2-4
week period).
4. They assess progress in a meeting called a daily scrum.
5. The ScrumMaster keeps the team focus on the goal. At the
sprint’s end, the work is ready to ship or show.
6. The team closes the sprint with a review, then starts a new
sprint.
12
13. eXtreme Programming(XP).
Often used with scrum, XP is an example of how Agile can Improve customer
satisfaction. Rather than deliver everything the customer could ever want far in the future,
It gives them what they need now, fast. XP is centred on frequent releases and short
development cycles.
It uses code review, pair programming, unit testing, and frequent communication with the
customer.
Benefits of Agile Methodology
The benefits of Agile are tied directly to its faster, lighter, more engaged mindset. The
process, in a nutshell, delivers what the customer wants, when the customer wants it.
There’s much less wasted time spent developing in the wrong direction, and the entire
system is quicker to respond to changes.
Faster. Speed is one of the biggest benefits of Agile Methodology. A faster software
development life cycle means less time between paying and getting paid.
13
14. Increased customer satisfaction. With Agile, customers don’t wait for months or years,
only to get exactly what they didn’t want.
Instead, they get iterations of something very close to what they want, very fast. The
system adjusts quickly to refine the successful customer solution, adapting as it goes to
changes in the overall environment.
Values employees. Employees whose ideas are valued are vastly more productive
than those who are ordered to follow a set of rules. The Agile Methodology respects
employees by giving them the goal, then trusting them to reach it.
Eliminates rework. By involving the customer at more than just the phases of
requirements and delivery, the project remains on-task and in-tune with customer needs at
every step. This means less backtracking and less “out on a limb” time between the time
we do the work and the time the customer suggests revisions.
Best Practices
The list of best practices is long and involved, with dozens of tools to pick and choose.
Set priorities. A product backlog is a list of prioritized tasks maintained by a product
owner.
14
15. Maintain small release cycles. The product should be released in increments every 2-4
weeks, with stakeholders giving feedback before proceeding.
Use pair programming. Two programmers work side-by-side at a single computer. This
technique actually results in an identical degree of productivity to separate programming
but delivers higher quality.
Refactor. Rework code regularly to achieve the same result with greater efficiency and
clarity.
Use test-driven development. Code the unit test first to keep the project on task
throughout. Test-driven development as an Agile best practice also produces greater
employee engagement, since it transforms testing from a boring grind to a coding
challenge.
Agile Methodology Tools
ActiveCollab. An affordable tool for small businesses, ActiveCollab is easy to use.
Agilo for Scrum. Stakeholders get updated automatically on the project’s progress with
Agilo for Scrum. Features sprint reports and burn down charts for better data mining.
15
16. Atlassian Jira + Agile. This powerful project management tool facilitates development by
incorporating Scrum, Kanban, and customizable workflows.
Pivotal Tracker. This methodology tool is geared specifically for mobile projects. A little
jargon-heavy, it’s user-friendly after a brief orientation period.
Prefix. This free tool provides an instant feedback loop to catch and fix bugs before they
can deploy.
Retrace. For a more robust solution complete with monitoring, errors, logs, and more,
Stackify’s Retrace provides app performance insights from integration to QA to production,
at the code level.
16
17. The Growth of the IT Sector
Though the IT industry was in a better position than other industries when the pandemic hit, it
wasn’t able to avoid spending cutbacks, delayed projects and staffing reduction. Global IT
spending declined by 5.4% in 2020. (Gartner). In 2021, worldwide IT spending is expected
to grow by 4%, but it will still not exceed the numbers before the pandemic.
According to IDC, the industry’s global revenue in 2020 was $4.8 trillion, substantially less than
its initial estimate of $5.2 trillion.
In 2021, IDC expects a growth of 4.2%, meaning the IT industry can reach $5 trillion
The enterprise software development segment will grow by 7.2% in 2021, which will be the
most substantial rebound compared with other segments such as devices, data center systems,
and IT and communication services. (TechRepublic)
The IT sector is currently recovering and will return to the growth trend line in 2021. It is forecast
to restore and exceed its pre-pandemic position by 2024, with an estimated 5% CAGR.
17
18. Remote Work
The future of software development in the context of remote work seems promising. In the
spring of 2020.
IT companies worldwide had to quickly establish new patterns of team management,
communication, and collaboration, so that employees could perform their duties without
coming into a physical office. ( for some this was a scary task ).
Take a look at the research results that show how working from home has influenced
software team productivity.
59% of respondents said their software teams increased their productivity while
working remotely.For 42.6% of respondents, it has become easier to meet task
deadlines. 64% of respondents plan to work remotely 3+ days per week.
And therefore forecast is - trend of doing business through online meetings, digital
collaboration tools and cloud applications will go on through 2021.
18
19. Cloud Services Gain Momentum
In order to facilitate remote work, companies had to implement appropriate
infrastructure and support employees in creating a work environment in their home
offices.
As a result, the demand for cloud services and tools has grown.
According to Gartner, unlike global IT spending, which went down in 2020, cloud
spending has grown by 6.3%.
Total revenue is close to $258 billion, which is $15 billion up from the previous
year. Over the next few years, the cloud computing market is expected to
double.
As a Result : 74% of business respondents expect their cloud spending
to increase in 2021. (Statista)
19
20. SaaS(Software as a Service) solutions, taking the largest part of the public cloud
market, are predicted to generate $120 billion, which is $15 billion more than in
2020. InformationAge),
laaS ( Infrastructure as a Service) solutions will grow from $50 billion in 2020 to
$64 billion in 2021.
In 2021, the Platform as a service (PaaS) market is forecast to exceed $55 billion,
from an estimated $43.8 billion in 2020. (Statista)
The apparent trend is that software development companies will more actively
use SaaS, IaaS and Paas solutions to build apps, manage teams & communicate.
Cloud solutions provide flexibility and improve productivity.
20
21. E-Commerce Software Solutions on Demand
Despite the global economic decline in 2020,
The e-Commerce market has been growing at a rapid pace (An acceleration
due to pandemic).
Statista estimates that online sales account for 14% of total world retail sales
and that the number will reach 22% in 2023.
Numerous retail software solutions and mobile e-Commerce applications help
improve customer experience, automate business processes, and provide
safe delivery and payment options. That’s why a growing demand for e-
Commerce software solutions is predicted in 2021 and further.
$6.2 billion is the value of the global e-Commerce software market in 2019. It is
expected to grow at a CAGR of 16.3% from 2020 to 2027. (grandviewresearch.com)
21
22. JavaScript Dominates but Python Is Catching Up
In 2020, JavaScript continues to dominate the list of the most used
programming languages among developers worldwide.
According Statista, almost 68% of software engineers stated that they used
JavaScript.
Python is rushing to the top of that list, with 44% of respondents stating that
they used it for their code. Python has in fact already overtaken Java (at
40.2%).
It seems Python’s growing popularity will continue well into 2021 and beyond,
as it is the favourite language of developers creating apps with AI- and ML-
based features.
Artificial intelligence and machine-learning technologies stand proudly among
the top tech trends for 2021.
22
23. Containers and Microservices*
Another trend to look out for in the software development world is the
rising adoption of containers and microservices powered
by Kubernetes. (An Open Source Container for Cloud & Web Services)
54% of businesses used the container technology system Kubernetes, it
was either run in production, used for developing and testing, or simply
experimented with. (Statista)
23
Kubernetes is a good tool for managing containers and building microservices
architecture. The reason for its increasing adoption is that there are more and more
projects that require scalability, security and 24/7 availability. Containerization and
cloud-based microservices architecture are a perfect fit for such projects.
The global cloud microservices market size was estimated to be $744 million in 2020. It
is projected to reach $1.5 billion by 2026, growing at a CAGR of 12.7% during this
period.(MarketWatch)
*Microservices (or microservices architecture) are a cloud native architectural approach in which a single application is
composed of many loosely coupled and independently deployable smaller components, or services.
24. Low-Code No-Code Technology Development
Software engineering is moving toward simplification, with a new approach to
creating new apps known as low-code development.
Low-code platforms enable practically anyone to develop software without traditional
coding but via graphical user interfaces and configuration.
Such programming environments have great potential because they allow people to
implement their ideas into digital solutions with limited or no specific development
skills.
As a result : ~50% of developers used low-code products in 2020.
The number was 37% in 2019.
24
25. 80% of respondents believe that the low-code approach can free up
developers so that they could work on higher-level projects.
72% of low-code developers create applications two times quicker
than those using traditional development.
The global value of the low-code development platform market is
projected to be $46.4 billion by 2026, growing at a CAGR of 25%
during this period.
It brings a range of benefits such as:
1. Manual work reduction
2. Time & money savings for creating digital solutions
3. Lower barrier for entry into software development.
25
26. Continuous Integration, Delivery, Deployment(CI/CD)
To ensure software quality(SQA) from start to finish and to deliver applications faster
companies increasingly opt for the practice of Continuous Integration, Delivery
and Deployment (CI/CD) in software development.
That’s why the adoption of CI/CD tools is forecast to grow.
The “DevTestOps Landscape Survey 2019” by mabl discovered that
53% of software testers uses continuous integration tools,
38% use continuous delivery tools,
29% use continuous deployment tools.
The continuous integration tools market is forecast to grow from $402.8 million
in 2017 to $1.1 billion by 2023. (Markets and Markets)
26
27. The continuous delivery market was valued at $2.06 billion in
2019 and is expected to grow at a CAGR of 19.75% over
2020–2025.
The market size for continuous deployment tools is growing at
a CAGR of 18.7% and is expected to reach $1.14 billion by
2023.
The CI/CD practice makes testing more effective and simplifies
bug fixing.
This all results in the accelerated deployment of high-quality
products.
27
28. Outsourcing
The demand for Software Development Outsourcing is experiencing significant growth.
It’s challenging for companies across industries to find talented IT specialists who
could develop high-quality custom software projects with in budget.
That’s why companies opt for outsourcing.
The global market for outsourced services has recorded significant rise from
$45.6 billion in to $92.5 billion (Statista)
Large businesses have increased the budget they spend on IT outsourcing
Medium-sized companies have also raised this budget from 4.7% to 6.5%,
according to MarketWatch.
28
29. These figures indicate that software outsourcing will increase in the coming
years.
Moreover, a range of practical benefits such as
Speedup development,
Cost efficiency,
Better quality,
Reduced risks and
Freed company resources support the outsourcing market’s
growth.
The value is projected to reach $410.2 billion by 2027.
29
30. Summary
The IT market of Software Development/Engineering like other
industries, will significantly depend on how the pandemic goes in
2021
&
How SusDev30 proceeds.
In spite of certain fluctuations, the general trend points to
industry growth and increase in revenue.
30
31. “The time to relax is when you don't have time for it.”
– Sydney J. Harris
“It's a good idea always to do something relaxing prior
to making an important decision in your life.”
– Paulo Coelho
“Its not stress that kills us, it is our reaction to it.”
– Hans Selye
31