Development Lifecyles for Web sites · Keynote 1 Development Lifecyles for Web sites Thomas J....
Transcript of Development Lifecyles for Web sites · Keynote 1 Development Lifecyles for Web sites Thomas J....
P R E S E N T A T I O N
International Conference On
Software Testing, Analysis & ReviewDEC 4-8, 2000 • COPENHAGEN, DENMARK
Presentation
Bio
Return to Main Menu FG1
Friday, Dec 8, 2000
Development Lifecyles
for Web sites
Thomas J. McCabe
Software Life Cycles for e-Software Life Cycles for e-commerce businessescommerce businesses
Thomas McCabeThomas McCabeMcCabe TechnologiesMcCabe Technologiesttomom@@mccabetechmccabetech.com.com5501 Twin 5501 Twin KnowlsKnowls Rd RdColumbia Columbia MdMd 21045 21045
301 596 4207301 596 4207
Web SwirlWeb Swirl
•• Swirl … a whirling confusion of rapidSwirl … a whirling confusion of rapidand steady mix of business andand steady mix of business andsoftware changessoftware changes
•• Speed, quality, and vision are the keysSpeed, quality, and vision are the keys•• Winner takes all, no 2Winner takes all, no 2ndnd place place
OutlineOutline
•• Web age continuous deliveryWeb age continuous delivery•• Leveraging technologiesLeveraging technologies•• Business IntelligenceBusiness Intelligence•• Management MetricsManagement Metrics•• McCabe metricsMcCabe metrics•• TestingTesting
The Requests SwirlThe Requests Swirl
SpeedSpeed
•• To marketTo market•• To new technologyTo new technology•• Of integrationOf integration•• Of outsourcingOf outsourcing•• To fix – of maintenanceTo fix – of maintenance•• To competitive advantageTo competitive advantage
•• EnablementEnablement with quality with quality
The Projects SwirlThe Projects Swirl
The Products SwirlThe Products Swirl
Process SwirlProcess Swirl
•• Different life cycles – pick the one thatDifferent life cycles – pick the one thatfitsfits!! Development and maintenance LC’sDevelopment and maintenance LC’s
•• Groupware assistedGroupware assisted•• Defined yet collaborativeDefined yet collaborative•• All records are cross All records are cross referencablereferencable•• All in one portalAll in one portal
Map the changeMap the change
Low Complexity of change High
High
Risk,Criticality
ofchange
Low
web contentchange
change to eCommercepurchasing rules
new eCommercebusiness engine
lifecycle - hours
lifecycle - days
lifecycle - months
volumevolume … unreal demand … unreal demandtimetime … e-speed required … e-speed requiredqualityquality … right first time! … right first time!
Fit the life cycleFit the life cycle
Low Complexity of change High
High
Risk,Criticality
ofchange
Low
simple request form,many sections
enhancements,tests, defects
charter, requirements, plans, releases, issues, designs, risks, reports, metrics,
standards, tests, configurations, etc.
lifecycle - hours
lifecycle - days
lifecycle - months
… add collaboration … add collaboration and process to matchand process to match risk and complexityrisk and complexity
Size the toolsSize the tools
- make requests
- evaluate versus business priority
- assign the work to a queue
Product Manager Project and Product Manager
implement in a lifecycle of hours
implement in a lifecycle of days
implement in a lifecycle of months
Request Manager
add process and collaboration as complexity and risk risesProcess Manager & Collaborator
Other Concurrent SwirlsOther Concurrent Swirls
Old Project managementOld Project management
•• Every project a new startEvery project a new start•• Different tools – non interfacedDifferent tools – non interfaced•• Project management by command andProject management by command and
controlcontrol•• Project management and software toolsProject management and software tools
don’t talkdon’t talk•• Standards have no consistentStandards have no consistent
applicationapplication•• Didn’t include software managementDidn’t include software management
Brave New WorldBrave New World
•• Collaborative vs. authoritarianCollaborative vs. authoritarian•• Not by command and controlNot by command and control•• Everybody Everybody see’s see’s itit•• Shared publicly – across companies andShared publicly – across companies and
organizationsorganizations•• One firewall, one style, one placeOne firewall, one style, one place•• Continuity from project to projectContinuity from project to project•• Emphasis on speed and simplicityEmphasis on speed and simplicity•• Uniformity of standards and metricsUniformity of standards and metrics
suggested modularsuggested modulararchitecturearchitecture
Collaborative Environment
request management
projectmanagement
process management
product management
initiates initiates
guides guides
supports
control of
collaborative environmentcollaborative environment
workflowworkflowdocument managementdocument managementdiscussion databasesdiscussion databasesOutlining documentsOutlining documents
integration with calendars / schedulesintegration with calendars / schedulesindex of projects, processes, products, systems, etc.index of projects, processes, products, systems, etc.
web, e-mail integrationweb, e-mail integrationpublication, reporting, metricspublication, reporting, metrics
every document is a part of a relational databaseevery document is a part of a relational databaseetc.etc.
escalate requeststo;-requirementsenhancements-defects, etc.
manage/dealwith requeststhroughworkflow
manage workqueue
capture andtrack requests
request/issuemanagement
request managementrequest management
product managementproduct management
test reportstest runsenhancements
defects-pre ship-post ship
test scriptsproceduresuse cases
build/release-plans-reports
inspectionstestobjectives
softwarebuilding tools
design objects
metrics-standard-defined
reviewstest planscode controlcapability
requirementsmeasureevaluatetestbuildspecify
general project phases
gene
ral p
roje
ct d
eliv
erab
les
define / manage requirements and changescreate and run testsmanage reviews and defectsmeasure all progress
-manage project deliverablescreate projects from external sources-integrate with ms project scheduling tool
-reports-evaluations-meetings-metrics-issues-risks
-project plans-phases / tasks-commitments-critical resources- estimates
-project statements-goals-scope-business case (go/no go)-roles/groups
projecttracking
projectplanning
project definitiongeneral project phases
gene
ral p
roje
ct d
eliv
erab
les
Project ManagementProject Management
define, plan and track projectsmanage project deliverables
-forms-examples-document control-workflow (review & approval)-change requests-links to standard(s) coverage for analysis
-SEI-CMM(SW, SA,people,cmmi)-ISO 9000-SPMN 16Point Plan-PMBOK-IEEE
process lifecycle,phases,tasks
templateprocedure/guideline
policystandards
Process ManagementProcess Management
define, maintain process assetsrelate processes to standardsmanage process deliverableschange and improve processesmanage people skills, training
Software ManagementSoftware Management- “Just Enough”- “Just Enough”
Low Complexity of change High
High
Criticalityof
change
Low
Add more process,controls, management,
collaboration, etc.until “just enough”
but no more !!!
Sample Metrics- View and CountSample Metrics- View and Countby:by:
•• ErrorsErrors!! By productBy product
!! By phaseBy phase"" By causeBy cause
"" By severityBy severity
•• RequirementsRequirements!! By TestsBy Tests
!! By runBy run!! By passBy pass!! By failBy fail
Relationship to McCabe MetricsRelationship to McCabe Metrics
•• Prior --McCabe and Assoc. --- the codePrior --McCabe and Assoc. --- the code•• Now – the managementNow – the management
Business Intelligence SwirlBusiness Intelligence Swirl
•• The web front door of our businessThe web front door of our business•• What are the customers requestingWhat are the customers requesting•• Affinity analysisAffinity analysis•• The operational profile as BIThe operational profile as BI•• Predicting the order pipeline from:Predicting the order pipeline from:
!! Requests management –relational crossRequests management –relational crossreferencingreferencing
!! Modeling the click history of ordersModeling the click history of orders
The Testing SwirlThe Testing Swirl
•• Catastrophe testingCatastrophe testing•• Security testingSecurity testing•• Integration testingIntegration testing•• Operational profilingOperational profiling•• Load testingLoad testing•• Acceptance testingAcceptance testing•• Regression testingRegression testing
ReferencesReferences
•• Aimware Aimware www.www.aimwareaimware.com.com•• eProject eProject www.www.eprojecteproject.com.com•• InovieInovie Software Software www.www.inovieinovie.com.com
•• Primavera Systems www.primavera.comPrimavera Systems www.primavera.com•• WebProjectWebProject www. www.wprojwproj.com.com•• NetmosphereNetmosphere www. www.netmospherenetmosphere.com.com
Software Life Cycles for e-Software Life Cycles for e-commerce businessescommerce businesses
Thomas McCabeThomas McCabeMcCabe TechnologiesMcCabe Technologiesttomom@@mccabetechmccabetech.com.com5501 Twin 5501 Twin KnowlsKnowls Rd RdColumbia Columbia MdMd 21045 21045
301 596 4207301 596 4207
Friday 8 December 2000
Keynote 1
Development Lifecyles for Web sites
Thomas J. McCabe Thomas J. McCabe, founder of McCabe & Associates in Columbia, Maryland, is internationally known for his development of software metrics and his leadership in developing methodology and automation that foster the continued improvement of quality in software development, testing and maintenance. In 1998 he sold his business to venture capitalists and made the transition from scientist to entrepreneur. In 1999 he was appointed to lead the Washington DC chapter of the Chief Executive Officers (CEO) Club, a group consisting of founders and entrepreneurs. Additionally he chairs a group of Mentors, this group consists of CEOs who have built, run and sold companies and are in pursuit of their next challenge. Tom also actively speaks across the country on software development as well as on entrepreneurship. His newly formed company is McCabe Technologies. Tom McCabe was the 1998 recipient of the fourth international Stevens Award and presented the Stevens Lecture on Software Development Methods on March 10th in Florence, Italy. He also testified before congress in the hearing entitled, “Year 2000: Biggest Problems and Proposed Solutions” in June of 1998. CNN Headline News aired a segment featuring Tom McCabe where he was interviewed on the Year 2000 in 1998. Tom McCabe’s landmark research appears in “Design Complexity Measurement and Testing” which was published in 1989 in Communications of the ACM. Other publications include “Software Complexity” with Arthur Watson, CrossTalk, 1994; “Combining Comprehension and Testing in Object-Oriented Development” with Arthur Watson, Object Magazine, 1994; “Testing an Object-Oriented Application” with Lori Dreyer, Albert Dunn, and Arthur Watson, The Journal of the Quality Assurance Institute, 1994; “An Engineering Approach of Software Maintenance” with Eldonna Williamson, CASE Outlook, 1992; Tips on Reengineering Redundant Software” with Eldonna Williamson, Datamation, 1992; and “Reverse Engineering, Reusability, Redundancy: The Connection”, American Programmer, 1990.