Advice to 1968 Software Engineers

Similar documents
Differentiation Applications 1: Related Rates

A Quick Overview of the. Framework for K 12 Science Education

Accreditation Information

Five Whys How To Do It Better

The steps of the engineering design process are to:

Assessment Primer: Writing Instructional Objectives

THE LIFE OF AN OBJECT IT SYSTEMS

Land Information New Zealand Topographic Strategy DRAFT (for discussion)

Subject description processes

UN Committee of Experts on Environmental Accounting New York, June Peter Cosier Wentworth Group of Concerned Scientists.

CAUSAL INFERENCE. Technical Track Session I. Phillippe Leite. The World Bank

Intelligent Pharma- Chemical and Oil & Gas Division Page 1 of 7. Global Business Centre Ave SE, Calgary, AB T2G 0K6, AB.

WRITING THE REPORT. Organizing the report. Title Page. Table of Contents

Purpose: Use this reference guide to effectively communicate the new process customers will use for creating a TWC ID. Mobile Manager Call History

SPECIMEN. Candidate Surname. Candidate Number

8 th Grade Math: Pre-Algebra

SPH3U1 Lesson 06 Kinematics

We can see from the graph above that the intersection is, i.e., [ ).

AP Physics Kinematic Wrap Up

MODULE 1. e x + c. [You can t separate a demominator, but you can divide a single denominator into each numerator term] a + b a(a + b)+1 = a + b

Admin. MDP Search Trees. Optimal Quantities. Reinforcement Learning

Chapter 1 Notes Using Geography Skills

Fall 2013 Physics 172 Recitation 3 Momentum and Springs

Physics 2010 Motion with Constant Acceleration Experiment 1

NUMBERS, MATHEMATICS AND EQUATIONS

Lesson Plan. Recode: They will do a graphic organizer to sequence the steps of scientific method.

This section is primarily focused on tools to aid us in finding roots/zeros/ -intercepts of polynomials. Essentially, our focus turns to solving.

MATCHING TECHNIQUES. Technical Track Session VI. Emanuela Galasso. The World Bank

CS 477/677 Analysis of Algorithms Fall 2007 Dr. George Bebis Course Project Due Date: 11/29/2007

Building Consensus The Art of Getting to Yes

Comprehensive Exam Guidelines Department of Chemical and Biomolecular Engineering, Ohio University

GENESIS Structural Optimization for ANSYS Mechanical

College of Engineering Writing & Communication Resource Center

Document for ENES5 meeting

Building research leadership consortia for Quantum Technology Research Hubs. Call type: Expression of Interest

MODULE FOUR. This module addresses functions. SC Academic Elementary Algebra Standards:

making triangle (ie same reference angle) ). This is a standard form that will allow us all to have the X= y=

Lecture 17: Free Energy of Multi-phase Solutions at Equilibrium

Public Key Cryptography. Tim van der Horst & Kent Seamons

ENSC Discrete Time Systems. Project Outline. Semester

Revision: August 19, E Main Suite D Pullman, WA (509) Voice and Fax

Lab 1 The Scientific Method

Bootstrap Method > # Purpose: understand how bootstrap method works > obs=c(11.96, 5.03, 67.40, 16.07, 31.50, 7.73, 11.10, 22.38) > n=length(obs) >

Millburn ASG Numeracy Developmental Milestones

Activity Guide Loops and Random Numbers

IB Sports, Exercise and Health Science Summer Assignment. Mrs. Christina Doyle Seneca Valley High School

Supplementary Course Notes Adding and Subtracting AC Voltages and Currents

Department: MATHEMATICS

Basics. Primary School learning about place value is often forgotten and can be reinforced at home.

Technical Bulletin. Generation Interconnection Procedures. Revisions to Cluster 4, Phase 1 Study Methodology

COMP 551 Applied Machine Learning Lecture 5: Generative models for linear classification

Unit 1: Introduction to Biology

How do scientists measure trees? What is DBH?

Experiment #3. Graphing with Excel

5 th Grade Goal Sheet

Purchase Order Workflow Processing

EDA Engineering Design & Analysis Ltd

Section 5.8 Notes Page Exponential Growth and Decay Models; Newton s Law

ArcWhatever: A Short Explanation of Some ESRI Products

CESAR Science Case The differential rotation of the Sun and its Chromosphere. Introduction. Material that is necessary during the laboratory

NUROP CONGRESS PAPER CHINESE PINYIN TO CHINESE CHARACTER CONVERSION

Computational modeling techniques

This project has received funding from the European Union s Horizon 2020 research and innovation programme under grant agreement number

CHM112 Lab Graphing with Excel Grading Rubric

BASD HIGH SCHOOL FORMAL LAB REPORT

Determining Optimum Path in Synthesis of Organic Compounds using Branch and Bound Algorithm

Veterinarian or Veterinary Hospital with your dog's records on file:

[COLLEGE ALGEBRA EXAM I REVIEW TOPICS] ( u s e t h i s t o m a k e s u r e y o u a r e r e a d y )

English 10 Pacing Guide : Quarter 2

o o IMPORTANT REMINDERS Reports will be graded largely on their ability to clearly communicate results and important conclusions.

RN52-STK2 Starter Kit

Supplementary Course Notes Adding and Subtracting AC Voltages and Currents

Explore Pollination. Cups Scissors Computers or tablets with internet access Poster board & markers

SMART TESTING BOMBARDIER THOUGHTS

How topics involving numbers are taught within Budehaven Community School

Computational modeling techniques

CHAPTER 3 INEQUALITIES. Copyright -The Institute of Chartered Accountants of India

Relativity Integration Points Guide. July 3, 2018 Version

Weathering. Title: Chemical and Mechanical Weathering. Grade Level: Subject/Content: Earth and Space Science

History the Hood Way. Amy Shell-Gellasch Betty Mayfield Hood College. MD-DC-VA Section October 27, 2012

Thermodynamics and Equilibrium

Pipetting 101 Developed by BSU CityLab

If (IV) is (increased, decreased, changed), then (DV) will (increase, decrease, change) because (reason based on prior research).

CHE101WB GENERAL CHEMISTRY Lecture & Lab Syllabus Winter 2012

Web-based GIS Systems for Radionuclides Monitoring. Dr. Todd Pierce Locus Technologies

Do big losses in judgmental adjustments affect experts behaviour? Fotios Petropoulos, Robert Fildes and Paul Goodwin

ALE 21. Gibbs Free Energy. At what temperature does the spontaneity of a reaction change?

Kinetic Model Completeness

A Few Basic Facts About Isothermal Mass Transfer in a Binary Mixture

Principles of Carbonate Reservoirs

Please Stop Laughing at Me and Pay it Forward Final Writing Assignment

3. Classify the following Numbers (Counting (natural), Whole, Integers, Rational, Irrational)

Space Shuttle Ascent Mass vs. Time

Interdisciplinary Physics Example Cognate Plans

Note from Authors: transfer journey to collaboratively establish a common. ISPE_China_Nov. 15, Company Confidential 2015 Eli Lilly and Company 2

Ecology 302 Lecture III. Exponential Growth (Gotelli, Chapter 1; Ricklefs, Chapter 11, pp )

Getting Involved O. Responsibilities of a Member. People Are Depending On You. Participation Is Important. Think It Through

Lab 11 LRC Circuits, Damped Forced Harmonic Motion

The standards are taught in the following sequence.

I. Analytical Potential and Field of a Uniform Rod. V E d. The definition of electric potential difference is

Transcription:

Advice t 1968 Sftware Engineers Sftware Evlutin Prgram Understanding Security - Daniel, Brad, Dave, Gerge

Sftware Evlutin Sftware will have t g thrugh cntinual change in rder t adapt with its envirnment and previusly unknwn requirements, n system is ever finished (David) Failure t evlve will lead t system depreciatin ver time, and eventually t bslescence (Gerge) Machines must be able t cmmunicate with each ther in rder t dynamically adjust at runtime (failure f ne machine must nt cause whle system t crash) (Daniel) Organizatins will have huge investments in sftware systems. T maintain the value f these assets, they must be changed and updated ver time (Brad)

Prgram Understanding Multiple appraches: tp-dwn - use wn experience and try t cnfirm expectatins Bttm-up - iteratively abstract high-level understanding by reading cde, Opprtunistic - mix f bth strategies (Brad) Much mechnical and electrical engineering, diagrams must be used t shw sftware systems. Cde in backgrund, much like equatins (Daniel) There will be prgrams available fr yu t help analyse, dcument, and imprve previusly cnfusing cde. (Gerge) There will be a heavy emphasis n dcumentatin t aid with prgram understanding, ie: DON'T FORGET TO COMMENT YOUR CODE. (David)

Security Sftware engineers must spend 10% r mre f develpment time slely fcused n security t always stay ne step ahead f an attacks. (Daniel) Dependence n infrmatin technlgy makes sftware assurance a key element f business cntinuity, natinal security, and hmeland security (Brad) Peple will cntinually find and explit vulnerabilities in sftware systems as a lt f mney can be made in ding s. (David) One f the cmmnly used methds fr imprving sftware security is ethical hacking, where sftware engineers will purpsely try and find vulnerabilities s they can be fixed befre they are fund by malicius hackers. (Gerge)

Advice t Pineers Nichlas Guillemt, Vishwendra Gahlt, Richard McKenzie, Marcel Gmes

Nichlas Guillemt, Vishwendra Gahlt, Richard McKenzie, Marcel Gmes Sftware Evlutin Cde Written nw likely still used in 20 years Create a dcumentatin standard and prmte acrss industry Dcument fr future peple wrking n prject, nt just using it Keep Surce + Dcumentatin + Update

Sftware Engineering Educatin Practical Experience Case Studies f past failures & successes Encurage Industry Prfessinals teaching / guest lecturing mre ften Nichlas Guillemt, Vishwendra Gahlt, Richard McKenzie, Marcel Gmes

Nichlas Guillemt, Vishwendra Gahlt, Richard McKenzie, Marcel Gmes Open Surce Sftware Make Sftware public & allw cllabratin Wrking tgether fr betterment f industry Lwers entry barrier t industry Use pen surce license, alng with paid supprt, t still make mney but have mre accessible prduct

SENG 371 Dear Histry Justin, Adam, Geff, Sctt

Sftware Evlutin Sftware maintenance will grw t cnsume 40-60% f the sftware develpment cycle Strive t evlve sftware rather than create legacy systems with an finite life span. Sftware develpment will mve twards a decentralized system The days f mainframes are ver. Evlving systems must be cmpnentized.

Sftware Engineering Educatin Maintainability is extremely imprtant N prduct can be cnsidered cmpletely finished Antipatterns can be recgnized Lk fr cmmn slutins t prblems that dn't actually wrk Prmte cntinued learning Sftware changes quickly, current skills will be less applicable in 10 years. Axe the waterfall mdel N prject can perfectly fllw the waterfall mdel Yu will almst never define all requirements

Sftware Engineering Educatin (Cntinued) Reverse Engineering shuld be taught in schls Sftware engineers will ften have t wrk with undcumented legacy systems. Reverse engineering is a key cmpnent f prgram understanding. Reverse engineering cncepts shuld be taught t encurage the develpment f widely adpted and autmated RE tls.

Agile Develpment Static develpment methdlgies dn't wrk Requirements cannt all be knwn befre develpment begins Often requirements will change during develpment Clients like t see prttype sftware ver dcuments Initial system design may nt wrk. Instead develp in cycles Fcus n creating wrking sftware ver any dcumentatin. Wrk with the client instead f creating a cntract. Be pen t change instead f fllwing a plan.

Sftware Evlutin Ian Brwn Kai Fuglem Rb Hle Saleh Almuqbil Sftware effrts and csts will eventually be spent mstly in maintenance and evlutin phase Systems shuld be designed t be adaptable, maintainable and scalable. Systems will eventually require cnstant develpment and adjustment Start wrk early n making sftware evlutin mre cst and time effective

Sftware Architecture Ian Brwn Kai Fuglem Rb Hle Saleh Almuqbil Design fr expanding scale Scale f systems will grw expnentially Design systems with that in mind Imprtance f strng/stable architecture grws with the systems size Try t make designs functinally independent and able t wrk tgether Must find a way t encapsulate similar functinality r else maintainability f large systems becmes impssible

Interfaces Ian Brwn Kai Fuglem Rb Hle Saleh Almuqbil Develp standards early Investigate clear standards fr bth human cmputer interactin and cmputer-cmputer interactin Cnnectrs are imprtant Spend lts f time making cmputers wrk tgether Systems shuld abstract away functinality nt needed by the 'user'

Sftware Evlutin Aim t create systems that are easy t maintain and evlve Up t 90% f the sftware develpment is nw being used fr maintenance nw-a-days (in the future!). Make use f existing libraries when pssible Less in-huse surce cde t manage/maintain and saves yu frm reinventing the already existing wheel. Try t fllw the DRY and SOLID Principles in OO Design/Implementatin This will greatly increase the maintainability f yur applicatin/system Mikk, Allen, Curtis and Paul

Sftware Architecture A cherent architecture is key t any sftware system (design, design design) Withut it yu may incur additinal maintenance r refactring csts Make use f existing design patterns and watch fr the develpment f anti-patterns Design patterns prvide a framewrk t launch frm and are ften mre maintainable Be cnsistent in yur design at each level/layer f an applicatin and prefer cmpsitin t inheritance. Mikk, Allen, Curtis and Paul

Cntinuus Learning It is imprtant t remain up-t-date n emerging technlgies and cncepts Research is always being dne t slve existing prblems in sftware and develpment systems/methds f cnquering prblems Yu are nly wrth as much as yu knw The mre yu knw the better! S learn ALL OF IT! I knw yu guys are at the beginning f the 'internet' (arpanet), but when it ges public, adpt it and share yur knwledge with the wrld. It'll be like 1982, if histry repeats itself Mikk, Allen, Curtis and Paul

Slide 3 1 arpanet the precursr f the internet was built in 1968 Curtis St. Pierre, 1 Why yu n fix it then Paul Hunter, 2 I n knw what yu want Curtis St. Pierre, 1 idunn eitherr maybe n cursing? haha Mikk Sanchez,

What Advice Wuld We Give? T the 1968 NATO cnference in Garmisch Germany

Sftware Evlutin Standards Agile develpment methdlgies Reverse Engineering

Sftware Architecture Mdularity f sftware cmpnents Levels f abstractin Separatin f cncerns

Cpyright Hw d yu cpyright sftware? Can yu cpyright an API? Hw d yu patent a sftware user interface? Hw can sftware cmpanies prtect their assets?

Sftware Educatin K - 12 Educatin needs t be implemented Undergraduate Educatin effectiveness needs imprvement Undergraduate Educatin needs t fcus n industry needs Jeremy, Wes, Anita

Sftware Architecture Allws early analysis f a system Crucial design decisins are made early n Gives stakehlders an idea f what they will see Reduces verall csts Jeremy, Wes, Anita

Sftware Tls Invest in a gd interface. Sftware tls will have mre users in the future and the key t adptin is an interface that is easy t use. Fcus n simplicity, flexibility and extensibility. A successful tl des its jb well and can easily be integrated int cmmnly used platfrms and envirnments. Extensive evaluatin Jeremy, Wes, Anita

SENG 371 Dear Histry Justin, Adam, Geff, Sctt

Sftware Evlutin Sftware maintenance will grw t cnsume 40-60% f the sftware develpment cycle Strive t evlve sftware rather than create legacy systems with an finite life span. Sftware develpment will mve twards a decentralized system The days f mainframes are ver. Evlving systems must be cmpnentized.

Sftware Engineering Educatin Maintainability is extremely imprtant N prduct can be cnsidered cmpletely finished Antipatterns can be recgnized Lk fr cmmn slutins t prblems that dn't actually wrk Prmte cntinued learning Sftware changes quickly, current skills will be less applicable in 10 years. Axe the waterfall mdel N prject can perfectly fllw the waterfall mdel Yu will almst never define all requirements

Sftware Engineering Educatin (Cntinued) Reverse Engineering shuld be taught in schls Sftware engineers will ften have t wrk with undcumented legacy systems. Reverse engineering is a key cmpnent f prgram understanding. Reverse engineering cncepts shuld be taught t encurage the develpment f widely adpted and autmated RE tls.

Agile Develpment Static develpment methdlgies dn't wrk Requirements cannt all be knwn befre develpment begins Often requirements will change during develpment Clients like t see prttype sftware ver dcuments Initial system design may nt wrk. Instead develp in cycles Fcus n creating wrking sftware ver any dcumentatin.