23
Professional Software Professional Software Engineering: Fact or Engineering: Fact or Fiction Fiction -Steve McConnell and -Steve McConnell and Leonard Tripp Leonard Tripp Reprinted: IEEE Software, November/December 1999 Reprinted: IEEE Software, November/December 1999 Software Engineering: The Development Software Engineering: The Development Process, Vol 1, Process, Vol 1, Chapter 2 Chapter 2 Presented By: Andrew Diemer Presented By: Andrew Diemer Software Engineering II – EEL 6883 Software Engineering II – EEL 6883

Professional Software Engineering: Fact or Fiction -Steve McConnell and Leonard Tripp Reprinted: IEEE Software, November/December 1999 Software Engineering:

Embed Size (px)

Citation preview

Page 1: Professional Software Engineering: Fact or Fiction -Steve McConnell and Leonard Tripp Reprinted: IEEE Software, November/December 1999 Software Engineering:

Professional Software Professional Software Engineering: Fact or FictionEngineering: Fact or Fiction

-Steve McConnell and -Steve McConnell and Leonard TrippLeonard Tripp

Reprinted: IEEE Software, November/December 1999Reprinted: IEEE Software, November/December 1999

Software Engineering: The Development Process, Software Engineering: The Development Process, Vol 1,Vol 1,

Chapter 2Chapter 2

Presented By: Andrew DiemerPresented By: Andrew Diemer

Software Engineering II – EEL 6883Software Engineering II – EEL 6883

Page 2: Professional Software Engineering: Fact or Fiction -Steve McConnell and Leonard Tripp Reprinted: IEEE Software, November/December 1999 Software Engineering:

Aim of articleAim of article

Authors address two items:Authors address two items: What has been done in software engineeringWhat has been done in software engineering

What still needs to be done in software engineeringWhat still needs to be done in software engineering

Page 3: Professional Software Engineering: Fact or Fiction -Steve McConnell and Leonard Tripp Reprinted: IEEE Software, November/December 1999 Software Engineering:

Aim AnsweredAim Answered

Most common software Most common software development cycledevelopment cycle

Code and fix is the most commonCode and fix is the most common

General idea of what they want to buildGeneral idea of what they want to build

Use combinations of informal design, debugging, Use combinations of informal design, debugging, testing methodologies, etc. that suits their needstesting methodologies, etc. that suits their needs

Programmers write code, run it. If it does not work Programmers write code, run it. If it does not work fix it until it doesfix it until it does

It is a bad approach because it takes longer, it’s a It is a bad approach because it takes longer, it’s a lower quality of software and it costs more lower quality of software and it costs more

Page 4: Professional Software Engineering: Fact or Fiction -Steve McConnell and Leonard Tripp Reprinted: IEEE Software, November/December 1999 Software Engineering:

Aim Answered (Cont.)Aim Answered (Cont.) Benefits are that it is requires little or no managerial Benefits are that it is requires little or no managerial or technical trainingor technical training

So the gap between the average practice and best So the gap between the average practice and best practice of software engineering is wide.practice of software engineering is wide.

Page 5: Professional Software Engineering: Fact or Fiction -Steve McConnell and Leonard Tripp Reprinted: IEEE Software, November/December 1999 Software Engineering:

Aim Answered (Cont.)Aim Answered (Cont.)

Higher StandardsHigher Standards Focuses on recent developments that support a true Focuses on recent developments that support a true profession of software engineeringprofession of software engineering

Gary Ford and Norman wrote a report and found key Gary Ford and Norman wrote a report and found key elements that particular professions had in commonelements that particular professions had in common

Page 6: Professional Software Engineering: Fact or Fiction -Steve McConnell and Leonard Tripp Reprinted: IEEE Software, November/December 1999 Software Engineering:

ElementsElements The elements are:The elements are:

Initial professional educationInitial professional education– Undergraduate degree from a university.Undergraduate degree from a university.

AccreditationAccreditation– ABET (Accreditation Board of Engineering and ABET (Accreditation Board of Engineering and Technology)Technology)

Skills DevelopmentSkills Development– Specific trainingSpecific training

CertificatesCertificates– ExamsExams

Page 7: Professional Software Engineering: Fact or Fiction -Steve McConnell and Leonard Tripp Reprinted: IEEE Software, November/December 1999 Software Engineering:

Elements (Cont.)Elements (Cont.) LicensingLicensing

– similar to certificates but a little differentsimilar to certificates but a little different

Professional developmentProfessional development– continuing professional education while having a continuing professional education while having a professional careerprofessional career

Professional societiesProfessional societies– IEEE (Institute of Electrical Electronic Engineers)IEEE (Institute of Electrical Electronic Engineers)– ACM (Association for Computing Machinery)ACM (Association for Computing Machinery)

Code of EthicsCode of Ethics– what is right or good with respect to what society what is right or good with respect to what society thinksthinks

Page 8: Professional Software Engineering: Fact or Fiction -Steve McConnell and Leonard Tripp Reprinted: IEEE Software, November/December 1999 Software Engineering:

Initial Professional EducationInitial Professional Education Pick a university or community collegePick a university or community college

Have a particular trackHave a particular track

Until the date of this publication, Computer Until the date of this publication, Computer Science was the dominating form of educationScience was the dominating form of education

Currently Software Engineering has become Currently Software Engineering has become more dominatemore dominate

Page 9: Professional Software Engineering: Fact or Fiction -Steve McConnell and Leonard Tripp Reprinted: IEEE Software, November/December 1999 Software Engineering:

AccreditationAccreditation These are overseeing bodies (group of These are overseeing bodies (group of bodies) that ensure sufficient education is bodies) that ensure sufficient education is givengiven

This gives the person and company This gives the person and company assurance that the individual can perform their assurance that the individual can perform their discipline effectivelydiscipline effectively

In 1996, Rochester Institute of Technology In 1996, Rochester Institute of Technology initiated it’s first software engineering initiated it’s first software engineering undergraduate program in the USundergraduate program in the US

United Kingdom and six more in Australia of United Kingdom and six more in Australia of undergraduate programsundergraduate programs

Page 10: Professional Software Engineering: Fact or Fiction -Steve McConnell and Leonard Tripp Reprinted: IEEE Software, November/December 1999 Software Engineering:

Accreditation (Cont.)Accreditation (Cont.) UCF Engineering – ABET is the recognized UCF Engineering – ABET is the recognized accreditor for the universityaccreditor for the university

ABET consist of programs in applied science, ABET consist of programs in applied science, engineering, technology and computingengineering, technology and computing

ABET is a federation of 28 professional ABET is a federation of 28 professional societies that represent their particular fieldsocieties that represent their particular field

Active for over 70+ yearsActive for over 70+ years

Page 11: Professional Software Engineering: Fact or Fiction -Steve McConnell and Leonard Tripp Reprinted: IEEE Software, November/December 1999 Software Engineering:

Accreditation (Cont.)Accreditation (Cont.) Consists of 2700 programs at over 550 Consists of 2700 programs at over 550 collegescolleges

ABET provides workshops and other means ABET provides workshops and other means for leadershipfor leadership

ABET is recognized by the Council for Higher ABET is recognized by the Council for Higher EducationEducation

ABET started in 1932ABET started in 1932

Page 12: Professional Software Engineering: Fact or Fiction -Steve McConnell and Leonard Tripp Reprinted: IEEE Software, November/December 1999 Software Engineering:

Skill DevelopmentSkill Development Education is not enough to show full Education is not enough to show full development capabilitiesdevelopment capabilities

Germinal professionals need to practice Germinal professionals need to practice before taking primary responsibility for their before taking primary responsibility for their workwork

Physicals have three years of residencyPhysicals have three years of residency

Certified Public Accountants must work one Certified Public Accountants must work one full year for a board approved organization full year for a board approved organization before they can receive their licensebefore they can receive their license

Page 13: Professional Software Engineering: Fact or Fiction -Steve McConnell and Leonard Tripp Reprinted: IEEE Software, November/December 1999 Software Engineering:

Skill Development (Cont.)Skill Development (Cont.) Professional Engineers must work for four Professional Engineers must work for four years before taking their PEyears before taking their PE

Body of Knowledge affects university’s Body of Knowledge affects university’s curriculacurricula

Page 14: Professional Software Engineering: Fact or Fiction -Steve McConnell and Leonard Tripp Reprinted: IEEE Software, November/December 1999 Software Engineering:

CertificatesCertificates Goes with skill developmentGoes with skill development

Different fields take particular examsDifferent fields take particular exams

For the medical profession – board examsFor the medical profession – board exams

Accountants take the CPA examAccountants take the CPA exam

Engineers take the FE and the PEEngineers take the FE and the PE

Page 15: Professional Software Engineering: Fact or Fiction -Steve McConnell and Leonard Tripp Reprinted: IEEE Software, November/December 1999 Software Engineering:

Certificates (Cont.)Certificates (Cont.) This verifies with the public that “hey I am This verifies with the public that “hey I am fully qualified” in my particular fieldfully qualified” in my particular field

Australia, British Computer Society offer Australia, British Computer Society offer certifications in I.T.certifications in I.T.

Companies themselves offer certificatesCompanies themselves offer certificates MicrosoftMicrosoft

– MCSE (Microsoft Certified Systems Engineer)MCSE (Microsoft Certified Systems Engineer) CiscoCisco

– CCNA (Cisco Certified Network Associate)CCNA (Cisco Certified Network Associate)

Page 16: Professional Software Engineering: Fact or Fiction -Steve McConnell and Leonard Tripp Reprinted: IEEE Software, November/December 1999 Software Engineering:

LicensingLicensing Strong bond between you and the client Strong bond between you and the client

Speed is the leader in license promoting of Speed is the leader in license promoting of professional engineersprofessional engineers

The specialty of Speed is in the area of The specialty of Speed is in the area of software engineeringsoftware engineering

Page 17: Professional Software Engineering: Fact or Fiction -Steve McConnell and Leonard Tripp Reprinted: IEEE Software, November/December 1999 Software Engineering:

Professional DevelopmentProfessional Development Continuing of education really enhances a Continuing of education really enhances a persons understanding of their particular skill persons understanding of their particular skill after they begin their practiceafter they begin their practice

Swift change in technology demands the Swift change in technology demands the strongest requirementsstrongest requirements

Example would be drug improvements for Example would be drug improvements for the medical fieldthe medical field

Learning the standards of practiceLearning the standards of practice

Page 18: Professional Software Engineering: Fact or Fiction -Steve McConnell and Leonard Tripp Reprinted: IEEE Software, November/December 1999 Software Engineering:

Professional Development Professional Development (Cont.)(Cont.)

For over 20 years IEEE have been For over 20 years IEEE have been developing standards of practicedeveloping standards of practice

ISO – International Standards OrganizationISO – International Standards Organization

Page 19: Professional Software Engineering: Fact or Fiction -Steve McConnell and Leonard Tripp Reprinted: IEEE Software, November/December 1999 Software Engineering:

Professional SocietiesProfessional Societies Being apart of a professional society almost Being apart of a professional society almost expects that you put your professional expects that you put your professional standards before your own interestsstandards before your own interests

They define a particular knowledgeThey define a particular knowledge

Professional societies functions include:Professional societies functions include: certification criteriacertification criteria manage the functions of those certified programsmanage the functions of those certified programs standards of accreditationstandards of accreditation code of ethics along with the disciplining of those code of ethics along with the disciplining of those violate those codesviolate those codes

Page 20: Professional Software Engineering: Fact or Fiction -Steve McConnell and Leonard Tripp Reprinted: IEEE Software, November/December 1999 Software Engineering:

Code of EthicsCode of Ethics What is good or right according to societyWhat is good or right according to society

These ensure that the professionals act These ensure that the professionals act responsibly responsibly

It states two thingsIt states two things What they doWhat they do What they should doWhat they should do

ViolatorsViolators lose license of practicelose license of practice removed from their particular societyremoved from their particular society

Page 21: Professional Software Engineering: Fact or Fiction -Steve McConnell and Leonard Tripp Reprinted: IEEE Software, November/December 1999 Software Engineering:

Code of Ethics (Cont.)Code of Ethics (Cont.) IEEE is involved in this processIEEE is involved in this process

IEEE has adopted a software engineering IEEE has adopted a software engineering code of ethicscode of ethics

Page 22: Professional Software Engineering: Fact or Fiction -Steve McConnell and Leonard Tripp Reprinted: IEEE Software, November/December 1999 Software Engineering:

ThoughtsThoughts I agree with this articleI agree with this article

I wish at the beginning they would have I wish at the beginning they would have elaborated more on what has been doneelaborated more on what has been done

I like the way they presented what needs to I like the way they presented what needs to happen nowhappen now

It was a simple and straight forward paperIt was a simple and straight forward paper

Page 23: Professional Software Engineering: Fact or Fiction -Steve McConnell and Leonard Tripp Reprinted: IEEE Software, November/December 1999 Software Engineering:

CitedCited

"ABET." January 28, 2007. ABET. 28 "ABET." January 28, 2007. ABET. 28 Jan 2007 <http://www.abet.org/>. Jan 2007 <http://www.abet.org/>.