IT in the Real World A look at IT in a Fortune 500 company Ed Nelson.
-
Upload
dominique-louie -
Category
Documents
-
view
213 -
download
1
Transcript of IT in the Real World A look at IT in a Fortune 500 company Ed Nelson.
IT in the Real IT in the Real WorldWorld
A look at IT in a Fortune 500 A look at IT in a Fortune 500 companycompany
Ed NelsonEd Nelson
OutlineOutline
I.I. Description of the technical Description of the technical environmentenvironment
II.II. Descriptions of 3 problemsDescriptions of 3 problems
III.III. Solutions for the 3 problemsSolutions for the 3 problems
IV.IV. Tips on getting ahead in the IT Tips on getting ahead in the IT industryindustry
Part IPart I
The Technical EnvironmentThe Technical Environment
Goals of ITGoals of IT
Keep production software running Keep production software running 24/724/7
Add new code to production Add new code to production software when Business Analyst asks software when Business Analyst asks for changefor change
ApplicationsApplications
Web-based applicationsWeb-based applications End-user uses a browser to open a web End-user uses a browser to open a web
page page Like Black BoardLike Black Board
Client/Server applicationsClient/Server applications Part is installed on user’s PC (client)Part is installed on user’s PC (client) Part exists on larger computer (server)Part exists on larger computer (server)
Application DiagramsApplication DiagramsWeb Applications
Web Browser (Users PC)
Web Application Server
Database Server
Business Logic Server
N-Tier Client/Server App
App Client (Users PC)
Application Server
Database Server
Multiple computers are involved in Production environments.
Technical LandscapeTechnical Landscape
Three EnvironmentsThree Environments Development EnvironmentDevelopment Environment
Where programmers first make code workWhere programmers first make code work Test (QA) EnvironmentTest (QA) Environment
Code handed off for testingCode handed off for testing Tests simulate actual use conditionsTests simulate actual use conditions
Production EnvironmentProduction Environment Code becomes visible to end-usersCode becomes visible to end-users Code used to perform business functionsCode used to perform business functions
Quotes, claims, etcQuotes, claims, etc
My Three EnvironmentsMy Three Environments Minimize risk to Production EnvironmentMinimize risk to Production Environment
New or untried code starts in New or untried code starts in DevelopmentDevelopment code is tested by developers herecode is tested by developers here
Code moved to Test (QA) nextCode moved to Test (QA) next code is shown to be worthy code is shown to be worthy OROR code is sent back for more developmentcode is sent back for more development
Code will never fail in ProductionCode will never fail in Production
ComputersComputers
Hundreds of computersHundreds of computers Mixture of Operating SystemsMixture of Operating Systems Internal networkInternal network External (Internet) connectionsExternal (Internet) connections Multiple versions of software Multiple versions of software
multiple versions of OSmultiple versions of OS multiple versions of “off the shelf” multiple versions of “off the shelf”
productsproducts multiple development languagesmultiple development languages
PeoplePeople Team size varies from 100+ to under Team size varies from 100+ to under
1010 Teams vary in functionTeams vary in function
developers for each applicationdevelopers for each application test (QA) engineerstest (QA) engineers Build ManagersBuild Managers Release ManagersRelease Managers DBAsDBAs Operational SupportOperational Support
The Point is…The Point is…
Goal: Software runs 24/7Goal: Software runs 24/7
Goal: New functionality when neededGoal: New functionality when needed
Constraint: Quality must be highConstraint: Quality must be high
Constraint: Time (shorter is better)Constraint: Time (shorter is better)
Constraint: Money (good return on $$ Constraint: Money (good return on $$ spent)spent)
All this in a complicated environment…All this in a complicated environment…
Part IIPart II
Three ProblemsThree Problems
Problem 1: Problem 1: CommunicationCommunication
Miscommunication leads to wasted effortMiscommunication leads to wasted effort Under communication is miscommunicationUnder communication is miscommunication
Causes of miscommunicationCauses of miscommunication Most IT people are introverts Most IT people are introverts Each team develops its own jargonEach team develops its own jargon People in each team have their own, unique People in each team have their own, unique
understanding of the tech. environmentunderstanding of the tech. environment
Problem 2: Failure to Problem 2: Failure to PlanPlan
Inadequate planning for any changes that Inadequate planning for any changes that are made.are made.
Result: Result: Wasted effort Wasted effort
Effort expended at wrong timeEffort expended at wrong time
““Ripple effect” -- other projectsRipple effect” -- other projects
Inefficient use of people’s Inefficient use of people’s effortsefforts
Problem 3: Process Problem 3: Process BreakdownBreakdown
Process: The established ways in Process: The established ways in which the company does its work.which the company does its work.
Problem: People don’t always follow Problem: People don’t always follow the process.the process.
Result: Wasted time and effort fixing Result: Wasted time and effort fixing errors.errors.
Not a Problem: TechnicalNot a Problem: Technical
Technical issues largely non-existent.Technical issues largely non-existent.
Why?Why?
1.1. Fine institutions like this one Fine institutions like this one adequately prepare IT practitioners.adequately prepare IT practitioners.
2.2. Companies weed out workers who Companies weed out workers who don’t make the cut.don’t make the cut.
Part IIIPart III
SolutionsSolutions
Solution 1: Solution 1: CommunicationCommunication
Let’s analyze when Let’s analyze when miscommunication happensmiscommunication happens
Solutions to each might suggest Solutions to each might suggest themselvesthemselves
First, what does ideal First, what does ideal communication look like?communication look like?
The Ideal The Ideal
ReceiverSender
1. Sender sends his message.
2. Receiver acknowledges he got the message.
3. Sender asks Receiver to repeat the message.
4. Receiver accurately reflects Sender’s message.
Forms of Forms of MiscommunicationMiscommunication
Assume your message was receivedAssume your message was received Don’t state deadline for requestDon’t state deadline for request Assume listener will draw ‘right’ Assume listener will draw ‘right’
conclusionconclusion Not knowing WHO to talk toNot knowing WHO to talk to Assume “no news is good news”Assume “no news is good news” Use too many wordsUse too many words
Solution 1Solution 1
Make sure your message was receivedMake sure your message was received Make sure your message was Make sure your message was
understoodunderstood Use as few words as possibleUse as few words as possible Be clear as possibleBe clear as possible Include all important factsInclude all important facts
importance of your messageimportance of your message deadline for actiondeadline for action
Solution 2: PlanningSolution 2: Planning
Start making your plan earlyStart making your plan early Expect your plan to be improved as Expect your plan to be improved as
you goyou go Communicate to as many as possibleCommunicate to as many as possible
Over communicateOver communicate Ask “Who else needs to know?”Ask “Who else needs to know?”
Re-use successful plansRe-use successful plans
Solution 3: ProcessSolution 3: Process
Follow the process – alwaysFollow the process – always Enforce the processEnforce the process
Everyone must enforce the processEveryone must enforce the process Ask questions if you are unsure!Ask questions if you are unsure!
Ask managerAsk manager Ask Release ManagerAsk Release Manager
Process is used to minimize riskProcess is used to minimize risk
Part IV: TipsPart IV: Tips
Manage expectations placed on youManage expectations placed on you Manage your ManagerManage your Manager Communicate problems you findCommunicate problems you find When bringing a problem, offer a When bringing a problem, offer a
solutionsolution Be friendlyBe friendly Own your accomplishmentsOwn your accomplishments Help your team matesHelp your team mates
Questions?Questions?