This document discusses managing projects in new technologies and the impact on management and planning. It provides a brief history of technology from 1960 to the present day. It then covers various topics related to managing technologies including roles and responsibilities, project lifecycles, planning constraints, solution modeling, risk profiles, dependencies, and architecture types. The document discusses concepts like cloud computing, NoSQL databases, analytics, mobile applications, and emerging trends like the internet of things, big data, gamification, and social media.
3. P K Mallik
A Brief History of Technology
1960-1980
• Mainframe via
terminals
• Limited
Connectivity
• Proprietary
Systems
1980 – 1990
• UNIX makes
computers
affordable
• Personal
computing is
born
• Local Area
Networks
1990 – 2000
• GUI and OOAD
• Internet is born
• RDBMS’s take
off
• Web servers
2000-2005
• Internet takes
off
• Commercialisat
ion of
Information
• ERP and CRM
become
standard
• Middleware
2005-2010
• Mobile
Technologies
• Open Source
• BI/DW
• WiFi
• 3G
2010 – Till Date
• Cloud
• Social Media
• Big Data
• Gamification
• Internet of
Things
• Keyboard??
Character based UI
Limited Access
Multi Line screens
Gaming
Cost Reduction
Office Productivity
Multimedia
Email
Search
HTML
Portals
Collaboration
Touch
Sharing
GPS
Games Consoles
Social Networks
Gesture Control
Automation
Privacy
4. P K Mallik
Managing Technologies
• Roles and Responsibilities
• Project life cycle
• Planning constraints
• Solution Modelling
• Risk profile
• Dependencies
5. P K Mallik
Roles and Responsibilities
SA TABA Dev Test
RequirementsDesignBuild
Scope definition
Business Needs
Process flow
Architecture
Non functional
High level
Design
Technology sel
Feasibility
Benchmarking
Verification
Clarifications
Elaboration
Proof of
Concept
Prototypes
Functional
Prototypes
Acceptance
Criteria
Test
Scenarios
Test Plans
Technical
Design
High level
Design
Coding Standards
Non functional requirements
Change
Controls
Impact Analysis
Reviews
Coding and Testing
Coding and
Testing
Low level
design
Testing
Test Cases
Functional
and Non-
Functional
Testing &
Automation
1980 to 20001980 to 1995
1995 to 2005
6. P K Mallik
Project Lifecycle
Management
Requirements
Design
Build
Test
M1 M2 M3 M4 M5 M6 M7 M8 M10
7. P K Mallik
Planning Constraints
• Gap between required and available skill levels
• Start up lag = training time
• Productivity discount in first 3 weeks
• Lead time for operationalising environments
• Basic technology
• Development Platform
• Toolsets
• Network
• Security
• Sanity Check for Milestones
• Inverse Plan (do you end up in the past?)
• Planning for Failure
9. P K Mallik
F5
Agile Modelling
F1
F2
F3
F4
P1 P2 P3 P4 P5 P6 P7
Businesses/Products/Services
10. P K Mallik
Risks
• Technical
• How new is the technology
• How good is our expertise
• Approach:
• do early PoC for high risk items
• do not buffer
• External
• What are the interfaces
• Who is responsible (client/3rd
Party)
• Approach:
• create facades
• apply pressure on other parties
• add testing of 3rd party components
in plan
Risk
Dependency Capability Obsolescence
Decouple
Plan for stubs
Plan to
create data
Plan for
failure
Plan for
training
Hire temps
Change
technology
Assign
responsibility
Plan as late
as possible
Change
technology
Monitor
regularly
11. P K Mallik
Removing Dependencies
• Technology
• Component sequencing – use stubs
• Managing variations – use inheritance
• Base components – use templates
• Resourcing
• Capability – provide training
• Skill fragmentation – develop multiple skills
• Expertise – short time hire/support
13. P K Mallik
Structured Data
Content
Distribution
Mining
Performance
Applications
Products
Tools
Interfaces
Mapping
Architecture Overview
Enterprise
Architecture
Business
Organization Structure
Business Needs
Operations and Locations
O/S
Middleware
Instrumentation
Integration
Failover
Scaling
Patterns
Distribution
Infrastructure
Benchmarks
Disaster Recovery
Business
Analyst
SolutionArchitectInformation
Architect
Technical
Architect
InfrastructureExpert
14. P K Mallik
Architecture Types
• Types
• 3 Tier
• SOA
• Event Driven
• High Throughput
• Management implications of each
15. P K Mallik
Layers and Tiers
• Layers are the logical groupings of the software
components that make up the application or service.
• They help to differentiate between the different kinds of
tasks performed by the components
• Tiers represent the physical separation of the presentation,
business, services, and data functionality of your design
across separate computers and systems.
• Common tiered design patterns are two-tier, three-tier, and n-
tier
• Having 3 directories does not make an application 3 Tier
16. P K Mallik
Three Tier
• Default type and most commonly use
• Applies the Model View Controller Pattern
• Model
• Encapsulates Application State
• Responds to Queries
• Exposes Functionality
• Notifies Changes
• View
• Renders models
• Requests for updates
• Sends user actions to controller
• Allows selection by controller
• Controller
• Defines application behaviour
• Maps user action to model updates
• Selects view for response
• Separate for each functionality
17. P K Mallik
3 Tier Modelling
Data Layer
Business Layer
Db Server OLAP Db
Content
Server
User Interface Layer
Web Client App 3rd Party
CRM Content Workflow
Interface
BPM
Member Registration
18. P K Mallik
Management Implications
• Tends to create dependencies between layers (as each
layer has a separate skill)
• Try to assign the task to the dominant skill requirement
• Skill requirements are not uniform and this leads to a lot of
idle time
• Reduce the number of specialists – schedule expert requirements
in advance
• Ambiguity as to which requirements are met by which
layer leading to skill mismatch
• Have an early architecture session to finalise which layers are
responsible for what to determine skill requirements
• Pilot a small piece of development to ensure the approach is
feasible and efficient
19. P K Mallik
Service Orientation
• Provide a set of services rather than interfaces to external
applications
• Ability to monitor and manage the resource usage by services
• Ability to allocate system resources based upon simple rules
• Service has a contract – key elements of that contract. Same
service can have multiple contracts
• Who can call
• For that caller, what it need to pass
• For that caller – what will be response
• When caller can expect response
• What will be communication channel
• Operates on a publish-subscribe model
• May be aligned with commercial models which require specific
usage data to be maintained
20. P K Mallik
Management Implications
• Identifying service structure
• Large number of service management
components
• No process flow
• No front end – Need for extensive test
stubs
• Performance and scalability Vs flexibility
Application
Services
Management
Commercials
Application Services
Management
Commercials
Application Services
Management
Commercials
EnterpriseBus
21. P K Mallik
Component 1
Event Driven
• Used where the system is part of a partially or fully
automated operation or a real time loop
• Operates on a throw—catch model
• Usually built in a single tier with interfaces with other
systems for Human Machine Interface (such as mobile
alerts, emails)
• Decouples application and component interfaces
• Internal interfaces through components raising and
processing events
• Typical example would be system monitoring and
management
• Standard approach for communicating with
Asynchronous processes
Event
Raise
Input
Component 2
Catch
Event
Handler
Thread
Main
Thread
Async
Event
Generator
22. P K Mallik
Management Implications
• Part of a larger system
• Design as black box components
• Should use white-box testing
• Testing as large part of effort
• Should be decoupled at design stage
• Should be planned as a separate unit
23. P K Mallik
Cloud Computing
• Hosted environment provided by vendors for
• Web Sites
• Databases
• File Services
• Images and Videos
• Removes need for administrating site and
managing scaling
• Different architectural components may be
deployed on different clouds
• Provides elasticity in capacity building and
management
• Commercials depend upon nature of site and
type (public/private) of usage (Rate Controls)
• Private clouds help reduce capital budgets with
shared services
• Typical Usages
• Mobile Applications
• Customer Services
• Business Intelligence
24. P K Mallik
Cloud Migration
Ownership
Management
Client
Provider
Provider
Client
SAAS IAAS
PAAS Non Cloud
Port
Re-Architect
25. P K Mallik
Management Implications
• Main pattern – Multi Tenanted Apartment
• Planning and Scheduling is similar to web applications
• Test plans must cater to possible variations
• Single test suite for all clients
• Need to support multiple versions – in code version
control, additional testing
• Deployment management is critical – need integrated
tools
26. P K Mallik
High Throughput
• Used in high volume mission critical systems
• Relies on high volume in-memory processes
• Single tier or two tier architecture depending upon degree
of human intervention
• None or minimal disk IO to maximise performance. Uses
buffered storage on separate servers
• Typical uses
• Bank Transactions
• Telecom Logs
• High Frequency Trading
• Fraud detection
Application
Input
Queue Interfaces
27. P K Mallik
Management Implications
• Requires very robust and stable system
• Functionality is typically less than 20% of cost
• Needs hardware capable of extrapolating to production
environment
• Software licenses can be very expensive
• Testing effort can be over 60% of total effort
• System Maintainability is critical to deployment
• Short Maintenance windows
• System should be capable of ‘live-patching’
• Multiple versions may run concurrently
• Devops is key to project success
29. P K Mallik
No SQL Databases
• No SQL databases support
unstructured data by replacing
RDBMS concept of row with
‘Document’(Mostly JSON)
• Schema is not enforced by
database, consuming
applications are expected to
deal with structure
• Data is mostly distributed
across some kind of network
file system
• Every piece of data has
(Minimum 3)
Conceptual View of
NO SQL
Node1 Node 2 Node n
30. P K Mallik
Virtual Dataset
Node1 Node 2 Node n
Master Controller
Node
Map Reduce Architecture
• Map-Reduce architecture is
built for handling terabyte –
petabyte data load using
cluster of cheap commodity
nodes
• Algorithms are expressed as
two functions. Map function
travels over network where
data resides and applies on
data
• Final results are combined
back using reduce function
• Our own IP – Data Extraction
Platform (DEP) is built using
Map-Reduce which provides
grid scale capability to
handle massive data loads
31. P K Mallik
Analytics
• Operates on large volumes of data
• Use of a number of sophisticated algorithms for
• Predictive Analytics
• Classification
• Segmentation
• Risk Profiling
• Sentiment Analysis
• Algorithms based on Fractals and Game Theory
• Used in conjunction with, but not to be confused for Big
Data
32. P K Mallik
Mobile Applications
• Applications of this type can be developed as thin client or rich
client applications.
• Rich client mobile applications can support disconnected or
occasionally connected scenarios.
• Web or thin client applications support connected scenarios only
35. P K Mallik
Big Data
• “Every day, we create 2.5 quintillion bytes of data — so
much that 90% of the data in the world today has been
created in the last two years alone. This data comes from
everywhere: sensors used to gather climate information,
posts to social media sites, digital pictures and videos,
purchase transaction records, and cell phone GPS signals
to name a few.
• This data is “big data.”
36. P K Mallik
What is Big Data?
• Big Data is the amount of data that is beyond the storage
and the processing capabilities of a single physical
machine
• It spans three dimensions:
• Volume
• Velocity
• Variety
37. P K Mallik
Gamification
• the use of game design principles and mechanics in non-
game contexts
• making technology more inviting by encouraging users to
engage in desired behaviors
• The integration of Game Dynamics into your site, service,
or community.
38. P K Mallik
Social Media
Consumer generated media It is media that is designed to be shared,
sharing means that it is easy to comment on, that it is easy to send, there
are no costs associated with viewing the media and last but not least it is
always available
Social media enables people to share information with friends and
colleges using the Internet
Social Networking is the use of communities to engage with others:
Facebook, MySpace, LinkedIn, Twitter. Social Networking sites often
include social media tools to facilitate the interaction and conversation
41. P K Mallik
Changing Face of Computing
• Social Media Vs Portals
• Push instead of Pull
• Engagement Vs Throughput
• Vanishing Keyboard
42. P K Mallik
Social Vs Portals
• Interaction to Collaboration
• Transaction to Knowledge
• Status to Events
• User Single View to 360 degree view
• User desktop
• Community driven App space
43. P K Mallik
Push instead of pull
• AI driven notifications
• Most suitable device
44. P K Mallik
Engagement Vs Throughput
• Stickiness to Gamification
• Peripheral or secondary use
• Reveal more information
• Usage analysis
• Cross Sell/Upsell to Lifetime Value
• From selling process to participating in buying journey
45. P K Mallik
Vanishing Keyboards
• Touch increasingly becoming default
• Voice gaining popularity
• Thought control