View
4
Download
0
Category
Preview:
Citation preview
1
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
SOFTWARE GLOBAL TRENDS
Haitham S. Hamza, Ph.D.R&D Department Manager
Yasser Eldakroury, Ph.D.Appraisal and Accreditation Department Manager
Cairo October 17th, 2017
Acknowledgment: some figures and text presented in this presentation are copyright of IEEE Software and other sources.
2
AGENDA
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
Trends in Software Processes and Methods
Trends in Software Development Technologies
Trends Related to Emerging Technologies
3
AGENDA
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
Trends in Software Processes and Methods
Trends in Software Development Technologies
Trends Related to Emerging Technologies
4
DevOps
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
DevOps, CI, and CDs
Collaboration and trust
Accelerate time to resolution
Better manage unplanned work
Adoption of Agile
Rapid IT service delivery
System-oriented approach
Operations & development team collaboration
5
DevOps
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
Code Build Integrate Test Release Deploy Operate
Agile Development
Continuous Integration
DevOps
DevOps & SW LIFE CYCLE
Continuous Delivery/Deployment
6
DevOps
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
CALMS FRAMEWORK FOR DevOps
Culture
Automation
LeanMeasurement
Sharing
Cross-functional collaboration and embrace change
Eliminates repetitive manual work
Eliminating low-value activities
Measure required metrics and use data for improvement
Developers and operators work with each other in each phase of the application’s lifecycle
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
NEXT GENERATION CMMI
CMMI VERSION 2.0 (1/2)
An attempt to keep CMMI relevant and in tune with changing industry landscape
Practice Areas instead of Process Areas
Four Constellations: Development, Services, People and Acquisition are derived from a single model
Moving away from "maturity levels" to “performance Levels“: Suits strategic management and Enterprise performance bench-marking
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
NEXT GENERATION CMMI
CMMI VERSION 2.0 (2/2)
Appraisal method: SCAMPI-A would be more light and less disruptive
Absence of Generic Practices:Simplicity
Functions are implemented in the specific practices
Security, DevOps, Agile/Scrum methods can be pluggable and add-on practices
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
DMM
DMM
The Data Management Maturity (DMM)SM Model is intended as a comprehensive reference model for state-of-the-practice process improvement.
The DMM defines the fundamental business processes of data management and specific capabilities that constitute a gradated path to maturity.
Source: CMMI Institute website: http://cmmiinstitute.com/
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
ESSENCE 1.1
ESSENCE 1.1 (1/2)
OMG (1989) is an open membership, not-for-profit computer industry standards consortium.
Driven Architecture® (MDA®)
UML® (Unified Modeling Language™)
CORBA® (Common Object Request Broker Architecture)
TOGAF
Essence defines a kernel and a language for the creation, use, and improvement of software engineering methods.
Enable agile method building by the composition of practices, so that methods can be quickly assembled by a project team to match their needs, experiences, and aspirations; allowing the method to start small and grow as needed.
Source: OMG: http://www.omg.org/
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
ESSENCE 1.1
ESSENCE 1.1 (1/2)
ESSENCE Scope
12
AGENDA
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
Trends in Software Processes and Methods
Trends in Software Development Technologies
Trends Related to Emerging Technologies
13
Requirements Engineering
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
Requirements Engineering
CrowdRE: Performing requirements engineering with the crowd of stakeholders (participatory effort supported by automation).
CrowdRE emphasizes one group whose role is often trivialized: users.
Motivating Crowd Members
Eliciting Feedback
Analyzing Feedback
Monitoring Context and Usage Data
Source: © 2017 IEEE The Crowd in Requirements Engineering The Landscape and Challenges
Architecture
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
Architecture
Architecture not about technology, it’s
about how you manage technology
IT deals with complex systems
Architecture answers questions
for key stakeholders
Client
Business Managers
IT ManagersTechnical Staff
Subcontractor
General Contractor
Strategic Architecture is a summary formal description of the enterprise,
providing an organizing framework for operational and change activity, and an executive-level, long-term view for direction setting.
15
Strategic/ Enterprise Architecture
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
Strategic/Enterprise Architecture
For an architecture to be Strategic, it needs to be aligned with
the mission, vision and goals of the enterprise.
Benefits of the Strategic Enterprise Architecture
Operational efficiency
Process effectiveness
Opportunity creation
Automation efficiency
Enterprise Architecture Framework
Value Stream
Architectures
16
ServerlessArchitecture
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
Applications that significantly depend on third-party services (knows as
Backend as a Service or "BaaS") or on custom code that's run in ephemeral
containers (Function as a Service or "FaaS")
Serverless Architecture
Code
Runtime
Operating System
Hardware
Code
Runtime
Operating System
Hardware
Code
Runtime
Operating System
Hardware
Code
Runtime
Operating System
Hardware
Physical Server Virtual Machine Containers Serverless
Cloud
Deployment evolution from server to serverless
17
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
Ecommerce appUI-driven applications
3-tier client-oriented system
Server-side logic
Store ServerDatabase
Client
Purchase Database
Product Database
Client
Authentication service
API gateway
Purchase function
Search function
ServerlessArchitecture
Serverless Architecture Use Case
18
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
• Easy to learn
• Reduce time to market
• Easy to scale
• Lower cost
ServerlessArchitecture
Benefits
• Vendor lock-in
• Communication overhead
• Hard to test locally
ServerlessArchitecture Drawbacks
Famous BaaS provider Identity and authentication as a service (Auth0, AWS Cognito) Logging as a service (Loggly, Logsense, Amazon Service) Analytics as a service (Amazon Kinesis, Keen IO)
Famous FaaS Provior Auth0 Webtask AWS Lambda Google Cloud Functions Azure Functions
Serverless Architecture ProvidersServerless
Architecture
19
Cross Platform Mobile Development
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
It is based on Write code Once, run on multiple platforms
Cross Platform Mobile Development
Cross platform mobile development
toolsHtml5, CSS3, JS, .Net,…etc
More Flexibility Less Effort Better Integration Customizable
20
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
Smartphone Market Share
Android 81.7
iOS 17.9
Blackberry 0
Windows 0.3
others 0.1
Android 52.4
iOS 39.2
Blackberry 4.7
Windows 2.6
others 1.1
Android 86.1
iOS 13.7
Blackberry 0
others 0.2
0
20
40
60
80
100
120
2013 2016 2017
OS Market Share 2013-2017
Android iOS Blackberry Windows Others
%
2013
2016
2017
Cross Platform Mobile Development
21
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
Most widely used tools in 2017
Cross Platform Mobile Development
Cross Platform Mobile Development Tools
22
Software Testing Trends
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
Testing Trends2017
Big Data Testing
IoT Testing
Cloud Testing Performance testing becomes performance
engineering
Development & QA will
merger
Agile & DevOps
the rulers
Open Source tools
Mobile Testing
Speed & Quality hand by hand
Software Testing Trends
24
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
Web App Security Testing
Web App Security Testing
There is a dramatic rise in vulnerabilities that inevitably put web app users at risk.
Several security-testing frameworks exist, but testers are not aware of them and/or their capabilities.
25
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
Web App Security Testing
Web App Security
Source: © 2017 IEEE Web App Security A Comparison and Categorization of Testing Frameworks
26
AGENDA
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
Trends in Software Processes and Methods
Trends in Software Development Technologies
Trends Related to Emerging Technologies
27
Internet of Things
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
IoT PLATFORM COMPONENT
IoT Platform
Device Management
Communication Management
Storage Management
User Communication
IoTPlatform
City Pulse Architecture
28
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
Devices
Connectivity
IoT Platform
IoTApplication
Open source
Proprietary
Internet of Things
IoT Platforms
29
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
298
417
583
792
1043
1331
1644
2015 2016 2017 2018 2019 2020 2021
IoT Platform Market Size (m$) Forecast 2015 - 2021
IoT FORECAST 2015-2021
CAGR: compound annual growth rate
Internet of Things
30
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
IoT: Software PerspectiveInternet of
Things
Source: © 2017 IEEE A Roadmap to the Programmable World Software Challenges in the IoT Era
31
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
IoT: Software PerspectiveInternet of
Things
multidevice programming;
the reactive, always-on nature of the system;
heterogeneity and diversity;
the distributed, highly dynamic, and potentially migratory nature of software; and
the general need to write software in a fault-tolerant and defensive manner.
Source: © 2017 IEEE A Roadmap to the Programmable World Software Challenges in the IoT Era
32
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
IoT: Software PerspectiveInternet of
ThingsPeter D. and James G. eight assumptions programmers mak when writing software for distributed systems and applications for the first time: The network is reliable Latency is zero Bandwidth is infinite The network is secure Topology doesn’t change There is one administrator Transport cost is zero
Source: © 2017 IEEE A Roadmap to the Programmable World Software Challenges in the IoT Era
33
BlockchainTechnology
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
Blockchain Technology
It is shifting the internet of information into
internet of VALUE
Digital wallet on mobile
phones, computers or
smart cards.
Decentralized network of
nodes/machines sharing
the same ledger
Local BankInternational BankCrypto-currencyTangible and intangible
(digital) assets and
services
34
BlockchainTechnology
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
2009SATOSHI
NAKAMO PAPER
AND PUBLIC
BLOCKCHAIN
NETWORKS
Blockchain Evolution
2014SMART
CONTRACTS &
DECENTERLIZED
AUTONMOUS
ORGANIZATIONS
2017INITIAL COIN
OFFERING,
INTERLEDGER
PROTOCOL AND
DIGITAL TRADE
CHAIN
2016PROGRESSIVE
ADOPTION OF
BLOCKCHAIN IN
INTERNET OF
THINGS
35
BlockchainTechnology
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
Blockchain Survey 20,000 Employees
36
BlockchainTechnology
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
Blockchain Key Verticles Assesments
37
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
Gamification Gamification Gamification refers to applying game-related
elements to nongame contexts,1 has generated a high level of interest.
Source: © 2017 IEEE Gamification
38
2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
Gamification Gamification
Source: © 2017 IEEE Gamification
39
Software Engineering Competence Center
Smart Village - Building 121
Cairo/Alexandria Desert Road
Giza, Egypt, 12577
(+202) 16248
secc-services@secc.org.eg
www.secc.org.eg2017YOUR CAPABILITY
COUNTS
SYMPOSIUM
THANK YOU
Recommended