SE423 SPI
CH-2 Introduction to SE
Standards
Kittitouch Suteeca
What is Standard ?
Outline
 What is Standard
 Scope of SE standard
 Why Use Standards ?
 Sources of Standards
 ISO Software Engineering Standards
Where are we?
Towards Software Engineering
Profession
What does it like?
1. Body of Knowledge (e.g. SWEBOK)
2. Standards
3. Best practices (i.e. techniques proven to
work)
4. Education
5. Code of Ethics
6. Certification mechanism
7. Licensing mechanism
Definition
 Standard:
 Mandatory requirements employed and
enforced to prescribe a disciplined uniform
approach to software development, that is,
mandatory conventions and practices are
in fact standards.
(ISO/IEC 24765, Systems and Software Engineering Vocabulary)
Nature of standard
input
process
output
Evaluation
What is “Software Engineering”?
Software engineering
standard
 Approximately 315 software engineering
standards,
 guides, handbooks, and technical reports
are maintained by approximately 46
professional, sector, national, and
international standards organizations.
Roles of Software Engineering
Standards
1. Specify techniques to develop software
faster, cheaper ,better, IEEE 982.1
(Measures for Reliable SW)
2. Provide consensus validity for “best
practices” that cannot be scientifically
validated, IEEE 1008 (Unit Testing)
3. Provide a systematic treatment of
“-ilities”, IEEE 730 (SW Quality Assurance)
Roles of Software Engineering
Standards (cont‟)
4. Provide uniformity in cases where
agreement is more important than small
improvements, IEEE P1320.1 (IDEF0)
5. Provide a framework for communication
between buyer and seller, IEEE/EIA 12207
(SW Life Cycle Processes)
6. Give precise names to concepts that
are fuzzy, complex, detailed and
multidimensional, IEEE 1028 (SW Reviews)
Outline
 What is Standard
 Scope of SE standard
 Why Use Standards ?
 Sources of Standards
 ISO Software Engineering Standards
Where are we?
Scope of SE Standard
Process
1.Acquisition
2.Requirements
definition
3.Design
4.Code and Test
5.Integration
6.Maintenance
and Operations
7.CM
8.Documentation
9.Project
Management
10.Quality
Assurance
11.V & V
Technique/Tool
1.CASE tools
2.Languages and
Notations
3.Metrics
4.Privacy
5.Process
Improvement
6.Reliability
7.Safety
8.Security
9.Software reuse
10.Vocabulary
Applicability
1. General
2. Defense
3. Financial
4. Medical
5. Nuclear
6. Process Control
7. Scientific
8. Shrink-wrap
9. Transportation
Software Engineering Standards
Organizational Goals
1. Improve and evaluate software
competence
2. Framework for two-party agreements
3. Evaluation of software products
4. Assurance of high integrity levels for
software products
Outline
 What is Standard
 Scope of SE standard
 Why Use Standards ?
 Sources of Standards
 ISO Software Engineering Standards
Where are we?
Why we need standard?
Why Use Standards?
1. Establish uniform requirements and
vocabulary for development and
documentation.
2. Define a common framework for
software life cycle processes.
3. Clarify the roles and interfaces of
participants.
4. Clarify the types and contents of
documentation.
Why Use Standards? (cont‟)
5. Identify the tasks, phases, baselines,
reviews, and documents needed.
6. Follow the lessons learned and proven
(best) practices of the industry
7. Avoid the pitfalls and problems of the
past.
8. Save time and $ by not reinventing the
wheel again.
Why Use Standards?
9. Select a supplier or a developer (e.g. ISO
9000)
10. Impose requirements in a contract.
11. Impose a trade barrier.
Outline
 What is Standard
 Scope of SE standard
 Why Use Standards ?
 Sources of Standards
 ISO Software Engineering Standards
Where are we?
Sources of Standards
1. Within an organization
 Documented from day-to-day activities
2. From consultants mandated to develop
them.
3. From manufacturers‟ user groups (e.g.
IBM)
4. From a group of companies working
together.
Sources of Standards (cont‟)
5. From professional groups (e.g. IEEE)
6. From government agencies (e.g. NASA,
Transport)
7. From Standards Organizations (e.g. ISO)
8. From Countries (e.g. Conseil
canadiendes normes)
Software Engineering
Standards: Importance
1. They consolidate existing technology
into a firm basis for introducing newer
technology.
2. They increase professional discipline
3. They protect the business
4. They protect the buyer
5. They improve the product
Outline
 What is Standard
 Scope of SE standard
 Why Use Standards ?
 Sources of Standards
 ISO Software Engineering Standards
Where are we?
ISO
Name of organization ISO comes from
„ISOS‟ a greek word
‘Equal’
International Software
Standards Developers
SC7 - Terms of Reference
Standardization of processes, methods and
supporting technologies for the
engineering and management of software
and systems throughout their life cycles .
Next class…
 Introduction to ISO/IEC 29110

Ch2 introduction to standard

  • 1.
    SE423 SPI CH-2 Introductionto SE Standards Kittitouch Suteeca
  • 2.
  • 3.
    Outline  What isStandard  Scope of SE standard  Why Use Standards ?  Sources of Standards  ISO Software Engineering Standards Where are we?
  • 4.
    Towards Software Engineering Profession Whatdoes it like? 1. Body of Knowledge (e.g. SWEBOK) 2. Standards 3. Best practices (i.e. techniques proven to work) 4. Education 5. Code of Ethics 6. Certification mechanism 7. Licensing mechanism
  • 5.
    Definition  Standard:  Mandatoryrequirements employed and enforced to prescribe a disciplined uniform approach to software development, that is, mandatory conventions and practices are in fact standards. (ISO/IEC 24765, Systems and Software Engineering Vocabulary)
  • 6.
  • 7.
    What is “SoftwareEngineering”?
  • 8.
    Software engineering standard  Approximately315 software engineering standards,  guides, handbooks, and technical reports are maintained by approximately 46 professional, sector, national, and international standards organizations.
  • 9.
    Roles of SoftwareEngineering Standards 1. Specify techniques to develop software faster, cheaper ,better, IEEE 982.1 (Measures for Reliable SW) 2. Provide consensus validity for “best practices” that cannot be scientifically validated, IEEE 1008 (Unit Testing) 3. Provide a systematic treatment of “-ilities”, IEEE 730 (SW Quality Assurance)
  • 10.
    Roles of SoftwareEngineering Standards (cont‟) 4. Provide uniformity in cases where agreement is more important than small improvements, IEEE P1320.1 (IDEF0) 5. Provide a framework for communication between buyer and seller, IEEE/EIA 12207 (SW Life Cycle Processes) 6. Give precise names to concepts that are fuzzy, complex, detailed and multidimensional, IEEE 1028 (SW Reviews)
  • 12.
    Outline  What isStandard  Scope of SE standard  Why Use Standards ?  Sources of Standards  ISO Software Engineering Standards Where are we?
  • 13.
    Scope of SEStandard Process 1.Acquisition 2.Requirements definition 3.Design 4.Code and Test 5.Integration 6.Maintenance and Operations 7.CM 8.Documentation 9.Project Management 10.Quality Assurance 11.V & V Technique/Tool 1.CASE tools 2.Languages and Notations 3.Metrics 4.Privacy 5.Process Improvement 6.Reliability 7.Safety 8.Security 9.Software reuse 10.Vocabulary Applicability 1. General 2. Defense 3. Financial 4. Medical 5. Nuclear 6. Process Control 7. Scientific 8. Shrink-wrap 9. Transportation
  • 14.
    Software Engineering Standards OrganizationalGoals 1. Improve and evaluate software competence 2. Framework for two-party agreements 3. Evaluation of software products 4. Assurance of high integrity levels for software products
  • 15.
    Outline  What isStandard  Scope of SE standard  Why Use Standards ?  Sources of Standards  ISO Software Engineering Standards Where are we?
  • 16.
    Why we needstandard?
  • 17.
    Why Use Standards? 1.Establish uniform requirements and vocabulary for development and documentation. 2. Define a common framework for software life cycle processes. 3. Clarify the roles and interfaces of participants. 4. Clarify the types and contents of documentation.
  • 18.
    Why Use Standards?(cont‟) 5. Identify the tasks, phases, baselines, reviews, and documents needed. 6. Follow the lessons learned and proven (best) practices of the industry 7. Avoid the pitfalls and problems of the past. 8. Save time and $ by not reinventing the wheel again.
  • 19.
    Why Use Standards? 9.Select a supplier or a developer (e.g. ISO 9000) 10. Impose requirements in a contract. 11. Impose a trade barrier.
  • 20.
    Outline  What isStandard  Scope of SE standard  Why Use Standards ?  Sources of Standards  ISO Software Engineering Standards Where are we?
  • 21.
    Sources of Standards 1.Within an organization  Documented from day-to-day activities 2. From consultants mandated to develop them. 3. From manufacturers‟ user groups (e.g. IBM) 4. From a group of companies working together.
  • 22.
    Sources of Standards(cont‟) 5. From professional groups (e.g. IEEE) 6. From government agencies (e.g. NASA, Transport) 7. From Standards Organizations (e.g. ISO) 8. From Countries (e.g. Conseil canadiendes normes)
  • 23.
    Software Engineering Standards: Importance 1.They consolidate existing technology into a firm basis for introducing newer technology. 2. They increase professional discipline 3. They protect the business 4. They protect the buyer 5. They improve the product
  • 24.
    Outline  What isStandard  Scope of SE standard  Why Use Standards ?  Sources of Standards  ISO Software Engineering Standards Where are we?
  • 25.
    ISO Name of organizationISO comes from „ISOS‟ a greek word ‘Equal’
  • 26.
  • 27.
    SC7 - Termsof Reference Standardization of processes, methods and supporting technologies for the engineering and management of software and systems throughout their life cycles .
  • 30.