Software Engineering Body of Knowledge

Size: px
Start display at page:

Download "Software Engineering Body of Knowledge"

Transcription

1 Software Engineering Body of Knowledge Tutorial prepared for Conference: Ada Technology Update November 2000 Presented by James W. Moore, The MITRE Corporation Terry B. Bollinger,, The MITRE Corporation SWEBOK

2 Project managed by: Corporate Support by: 2

3 Presentation Objectives SWEBOK Project Status: Moore SWEBOK Overview: Moore Software Construction Knowledge Area: Bollinger 3

4 SWEBOK Project Status SWEBOK

5 Guide to the Software Engineering Body of Knowledge Initiated as a collaboration between IEEE CS, ACM and UQAM. International participation from industry, professional societies, standards bodies, academia, authors By the time the project is finished literally thousands of individuals will have touched it About to complete the middle of three phases Web site

6 Recognized Profession? P. Starr, The Social Transformation of American Medicine, BasicBooks, 1982: v Knowledge and competence validated by the community of peers v Consensually validated knowledge rests on rational, scientific grounds v Judgment and advice oriented toward a set of substantive values 6

7 Model of the Maturity of a Profession Ford and Gibbs: v Education v Accreditation v Skills development v Licensing/certification v Professional development G. Ford and N. E. Gibbs, A Mature Profession of Software Engineering, Software Engineering Institute, Carnegie Mellon University, Pittsburgh, Pennsylvania, Technical CMU/SEI-96- TR-004, January v Code of ethics v Professional society or societies 7

8 Professional Development Initial Professional Development Initial professional education Infrastructure Support for the Profession Accreditation Professional Society Influence Skills Development Certification One or both Full Professional Status Licensing Professional development Code of ethics Professional societies Adapted from Steve McConnell, After the Gold Rush, Microsoft Press, 1999, p

9 Professional Development Initial Professional Development Initial professional education Infrastructure Support for the Profession Accreditation Professional Society Influences Skills Development Certification One or both Full Professional Status Licensing Professional development Code of ethics Professional societies Adapted from Steve McConnell, After the Gold Rush, Microsoft Press, 1999, p

10 Key Interrelationships for a Core Body of Knowledge Development of Software Engineering Curricula Influences Consensus on a Core Body of Knowledge Influences Development of Certification / Licensing Criteria and Exams Influences Development of University Program Accreditation Criteria 10

11 Window of Opportunity? ACM / IEEE-CS Code of Ethics Texas Board of Professional Engineers Computer Science Curriculum 2001 Rochester Institute of Technology (and others) are offering undergraduate degrees in Software Engineering CSAB & ABET are cooperating on accreditation Possible software liability issues: Y2K, etc. Increased interest in the establishment of a profession (After the Gold Rush was #752 on Amazon.com) Continuing focus on organizational engineering capability (ISO 9000, CMM) 11

12 Project Objectives Promote a consistent view of software engineering worldwide Clarify the place of, and set the boundary of, software engineering with respect to other disciplines Characterize the contents of the Software Engineering Body of Knowledge Provide a topical access to the Software Engineering Body of Knowledge Provide a foundation for curriculum development and individual certification and licensing material 12

13 Intended Audience Public and private organizations Practicing software engineers Makers of public policy Professional societies Software engineering students Educators and trainers 13

14 What is Software Engineering? IEEE : (1) The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software; that is, the application of engineering to software. (2) The study of approaches as in (1). 14

15 Categories of Knowledge in the SWEBOK Specialized Generally Accepted Advanced and Research Focus of the SWEBOK Guide 15

16 Software Engineer s Knowledge Application domain knowledge Advanced SE Knowledge C.S. Specialized SE Knowledge SWEBOK Knowledge of a Software Engineer Maths

17 Two Underlying Principles of the Project Transparency: the development process is itself published and fully documented Consensus-building: the development process is designed to build, over time, consensus in industry, among professional societies and standards-setting bodies and in academia 17

18 Project Team Editorial team Industrial Advisory Board Knowledge Area Specialists Reviewers 18

19 Editorial Team Alain Abran Université du Québec à Montréal Computer Science Dept. C.P. 8888, Succ. Centre-Ville Montréal, Québec H3C 3P8 Canada Tel.: (514) ext Fax: (514) Pierre Bourque Université du Québec à Montréal Computer Science Dept. C.P. 8888, Succ. Centre-Ville Montréal, Québec H3C 3P8 Canada Tel.: (514) ext Fax: (514) Executive Editors Guide Editors James W. Moore The MITRE Corporation 1820 Dolley Madison Blvd. McLean, Virginia USA Tel: Fax: Robert Dupuis Université du Québec à Montréal Computer Science Dept. C.P. 8888, Succ. Centre-Ville Montréal, Québec H3C 3P8 Canada Tel.: (514) ext Fax: (514)

20 Industrial Advisory Board Mario R. Barbacci, SEI, representing the IEEE Computer Society Carl Chang, University of Illinois at Chicago, Editor Emeritus, IEEE Software, representing Computing Curricula 2001 François Coallier, speaking as ISO/IEC JTC 1 / SC7 Chairman Morven Gentleman, National Research Council of Canada Paula Hawthorn, representing the ACM Philippe Kruchten, Rational Software Corp. Laure Le Bars, SAP Labs (Canada) Dan Nash, Raytheon Systems Company Bryan Pflug, The Boeing Company Larry Reeker, National Institute of and Technology Dolores Wallace, National Institute of and Technology 20

21 A Three-Phase Approach for Developing the Guide Straw Man Version Stone Man Version Experimentation and Trial Usage Iron Man Version (Sub-phase 1) Iron Man Version (Sub-phase 2) Rewriting

22 Stone Man Review Process Transparency and consensus-building v All intermediate versions of documents are published and archived on v All comments are made public as well as the identity of the reviewers v Detailed comment disposition reports are produced v Roughly 5000 comments from 200 reviewers in 25 countries 22

23 Stone Man Deliverables Consensus on a list of Knowledge Areas Consensus on a list of topics and relevant reference materials for each Knowledge Area Consensus on a list of Related Disciplines Available free on the web 23

24 Baseline List of Knowledge Areas Requirements Design Construction Testing Maintenance Configuration Management Quality Engineering Tools & Methods Engineering Process Engineering Management Related Disciplines Computer Science (CC2001) Mathematics (CC2001) Project Management (PMBOK) Computer Engineering Cognitive Sciences and and Human Factors Systems Engineering Management and and Management Science 24

25 Knowledge Area Description Classification of Topics Matrix of Topics & References References Topic Descriptions Classification by Vincenti s Taxonomy Classification by Bloom s Taxonomy Not implemented in Stoneman References to Related Disciplines 25

26 Knowledge Area Specialists Requirements: Pete Sawyer and Gerald Kotonya, UK Design: Guy Tremblay, Canada Construction: Terry Bollinger, USA; Philippe Gabrini, Louis Martin, Canada Testing: Antonia Bertolino, Italy Maintenance: Tom Pigoski, USA Configuration Management: John Scott and David Nisse, USA Quality: Dolores Wallace and Larry Reeker, USA Tools and Methods: Dave Carrington, Australia Process: Khaled El Emam, Canada Management: Stephen MacDonald and Andrew Gray, New-Zealand 26

27 Overview of the SWEBOK SWEBOK

28 Guide to the Software Engineering Body of Knowledge Software Requirements v 0.7 Software Design v 0.7 Software Construction v 0.7 Software Testing v 0.7 Software Maintenance v 0.7 Requirements Engineering Process Software Design Basic Concepts Linguistic Construction Methods Basic Concepts and Definitions Maintenance Activities Requirements Elicitation Requirements Analysis Software Requirements specifications Software Architecture Software Design Quality Analysis and Evaluation Software Design Notations Reduction in Complexity Anticipation of Diversity Structuring for Validation Use of External Formal Construction Methods Reduction in Complexity Anticipation of Diversity Test Levels Test Techniques Test Related Measures Maintenance Process Organization Aspect of Maintenance Problems of Software Maintenance Maintenance Cost and Maintenance Cost Estimation Requirements Validation Requirements Management Software Design Strategies and Methods Structuring for Validation Use of External Visual Construction Methods Management the Test Process Maintenance Measurements Techniques for Maintenance Reduction in Complexity Anticipation of Diversity Structuring for Validation Use of External 28

29 Guide to the Software Engineering Body of Knowledge Software Engineering Management v 0.7 Software Engineering Process v 0.6 Software Quality v 0.6 Software Configuration Management v 0.7* Software Engineering Tools and Methods v 0.7 Measurement Organizational Management and Coordination Initiation and Scope Definition Planning Enactment Review and Evaluation Project Close Out Post-Closure Activities Basic Concepts and Definitions Themes Terminology Process infrastructure Process Measurement Methodology in Process Measurement Process Measurement Paradigms Process Definition Types of Process Definitions Life Cycle Models Life Cycle Process Models Notations for Process Definitions Process Definition Methods Automation Qualitative Process Analysis Process Implementation and Change Paradigms for Process Implementation and Change Guidelines for Process Implementation and Change Evaluating Process Implementation and Change Software Quality Concepts Defining SQA and V&V Planning for SQA and V&V Activities and Techniques for SQA and V&V Measurement Applied to SQA and V&V Management of the SCM Process Software Configuration Identification Software Configuration Control Software Configuration Status Accounting Software Configuration Auditing Software Release Management and Delivery Software Tools Software Requirements Tools Software Design Tools Software Construction Tools Software Testing Tools Software Maintenance Tools Software Engineering Process Tools Software Quality Analysis Tools Software Configuration Management Tools Software Engineering Management Tools Infrastructure Support Tools Miscellaneous Software Development Methods Heuristic Methods Formal Methods Prototyping Methods Miscellaneous 29

30 Requirements Requirements engineering process v v Connection to life cycle Contractual issues and project organization Requirements elicitation v v Stakeholder identification Relationships established between the development team and the customer Requirements analysis v v v Detect and to resolve conflicts Discover the boundaries of the system and how it must interact with its environment Elaborate user and system requirements to software requirements Requirements validation v v Check for omissions, conflicts and ambiguities Ensure that requirements follow prescribed quality standards Requirements management: change management and maintaining requirements in a state that accurately mirrors the software to be, or that has been, built. 30

31 Design Design transforms requirements, stated in the problem domain, to produce a description of a solution--system components and interfaces--refined to a level of detail suitable for construction. Design quality and metrics: quality attributes, quality assurance, metrics. Software architecture v v Structures and viewpoints, architectural descriptions, patterns and object-oriented frameworks Architectural styles Design notations Design strategies and methods: general strategies, data-structurecentered design, function-oriented design and object-oriented design. 31

32 Construction More to Come! 32

33 Testing Software testing consists of the dynamic verification of the behavior of a program on a finite set of test cases, suitably selected from the usually infinite domain of executions, against the specified expected behavior. Test levels: Test phases for large systems Testing for specific properties Test techniques and corresponding measures v Specification-based v Code-based v Fault-based v Usage-based v Specialized Organizing and controlling the test process Automating the test process 33

34 Maintenance Modification of a software product after delivery to correct faults, to improve performance or other attributes, or to adapt the product to a modified environment. Maintenance activities and roles v Formal types of maintenance and common activities v Process is critical to the success. Standard maintenance processes Organizing for maintenance (may be different than for development) Software evolution Cost: life cycle costs as well as costs for individual evolution and maintenance tasks Maintenance measurements Tools and techniques 34

35 Configuration Management System: Collection of components organized to accomplish specified functions. CM is the discipline of identifying the configuration of systems at discrete times to control changes and maintain integrity and traceability. Concepts are universal, but implemented differently for HW and SW. Primary activities v v v v v v Management of the CM process Configuration identification Configuration control Configuration status accounting Configuration auditing Software release management and delivery 35

36 Quality Includes software product quality and processes for software quality assurance and software verification and validation activities Although different terminology is currently used, there is some consensus about the attributes that define software quality and dependability over a range of products. These definitions provide the base knowledge from which individual quality products are planned, built, analyzed, measured, and improved. The definitions are discussed in the defining quality products sub-area. Software quality assurance is a process designed to assure a quality product; it is a planned and systematic pattern of all actions necessary to provide adequate confidence that the product conforms to specified technical requirements. Software verification and validation is an process to provide an objective assessment of software products and processes throughout the software life cycle, that is, the verification an validation process provides management with visibility into the quality of the product. These two processes form the backbone of the software quality analysis: definition of quality analysis, process plans, activities and techniques for quality analysis, and measurement in software quality analysis. 36

37 Engineering Tools & Methods Development methods v Impose structure to make activity systematic v Provide notation, vocabulary, procedures, and guidelines for checking v Approaches: informal, mathematically-based, prototype-based Software tools v Intended to assist the software engineering process v Often designed to support particular methods, v Development and maintenance, supporting activities and management tools v Integrated tool sets v Tool assessment 37

38 Engineering Process Process definition: types of process definitions, life cycle models, life cycle process models, notations for process definitions, process definition methods, and automation Process evaluation: approaches for the qualitative and quantitative analysis of software processes, including measurement v Analytic: qualitative evaluation, root-cause analysis, process simulation, orthogonal defect classification, experimental and observational studies, and personal software process v Benchmarking: identifying an excellent organization in a field and documenting its practices and tools, including process assessment models and methods Process implementation and change: paradigms, infrastructure, and critical success factors for successful process implementation and change v Process implementation and change v Infrastructure v Guidelines for process implementation and evaluation 38

39 Engineering Management Process and measurement are inseparable. v Management without measurement suggests a lack of rigor v Measurement without management suggests a lack of purpose or context. Measurement v Measurement program goals v Measurement selection v Data collection and model development v Implementation. Management process v In the large v Development and implementation of standards v Project staffing v Team development v Life cycle activities 39

40 Software Construction in the SWEBOK SWEBOK

41 Software Construction (SWC) at a Glance 16 pages in Stoneman version (0.7) 17 references, 5 standards Three authors: v Terry Bollinger (MITRE) v Philippe Gabrini (UQÀM) v Louis Martin (UQÀM) 41

42 Terry Bollinger Works at The MITRE Corporation, a non-profit company that does U.S. government research and development work in advanced technologies Assistant Editor for IEEE Software Co-author of IEEE Software issue on Linux Author of influential articles on reuse and process IEEE Millennium Medal winner Extensive experience in the trenches in industry Likes to annoy Capability Maturity Model advocates 42

43 Philippe Gabrini Université du Quebec à Montréal (University of Quebec at Montreal) Directeur, Département d'informatique (Director, Information Processing Dept.) Long-time member of the Canadian Computer Science Accreditation Council Broad, long-term experience in software engineering accreditation issues 43

44 Louis Martin Université du Quebec à Montréal (University of Quebec at Montreal) Professor of Business Information Processing (colleague of Philippe) Extensive background in applied software construction topics Helped in particular with selection and development of reference materials 44

45 Definition Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References Construction: The creation of usable software via a suite of skills that include: v coding v self-validation v self-testing Not just a mechanistic translation of good design into working software! Construction burrows deeply into some of the most difficult issues of SWE 45

46 Versus Design Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References Design: Emphasis on dividing complex problems into smaller chunks Construction: Emphasis on finding final, executable solutions Design produces a framework, while Construction produces an working result v Both are exercises in problem solving v Both use similar methods 46

47 Use of Tools Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References Software construction tools are: v Software-based v Construction-oriented v Examples: ½ compilers ½ version control systems ½ design tools ½ documentation tools Good tools bridge the gap between v Fast & efficient (but dumb!) computers and v Creative (but sloppy & forgetful!) humans 47

48 Self-Evaluation Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References Integrated self-evaluation: Open loop coding is not software construction Construction uses explicit self-checks : v Continuous checks v Periodic checks v Checks of interim results v Checks of the process itself Examples: design reviews, module compilations, unit tests, self-reviews 48

49 Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References create shared languages of powerful & low-cost baseline capabilities v De facto standards (e.g., Windows) v Explicit standards (e.g., XML) affect construction powerfully: v Bad choices fritter away time & resources v Good standards choices: ½ simplify construction ½ increase marketability ½ reduce maintenance costs The best standards enable innovation 49

50 SWC Spectrum Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References Manual construction: People control the overall process. Requires skills of: v insightful problem break-down v disciplined self-review and validation v anticipation of future changes Automated construction: A tool or environment controls key aspects of the overall construction process v overall process complexity is reduced v allows broader participation in process v less flexible ( domain specific ) 50

51 Manual Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References Usually procedural (order-dependent) Very large number of descriptive options Emphasis on finding new problem solutions Process is defined by user (versus by tools) Expensive, risky, and often doable only by highly skilled people More likely to be defined by a standard 51

52 Automated Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References Often non-procedural (e.g., descriptive) Limited number of construction options Emphasis on reusing existing problem solutions Process is defined mostly by tools used Low-cost, safe, usable by many people Often custom to application area 52

53 Styles Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References Styles are ways of communicating that track closely to innate human capabilities Not all styles of communication are equally accessible to all people Styles also vary greatly in how easily they can be explained to computers Construction relies on three main styles: v Linguistic v Formal v Visual 53

54 Linguistic Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References Linguistic construction uses computer languages whose form resembles natural languages such as French or English v Usually conveyed as text (characters) v Can also be conveyed via audio or tactile Pros: v Nearly universal as a way to communicate to people v Efficient representations Cons v Imprecise syntax (from computer s view) 54

55 Formal Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References Formal construction uses the precision and rigor of a formal (mathematical or logical) style Pros v Great for conveying exact intent accurately v Encourages completeness of thoughts v Can provide powerful generalizations Cons v Not readily accessible to all people! v Can encourage overly narrow viewpoints 55

56 Visual Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References Visual construction relies on powerful spatial abilities found in nearly all people v Primarily visual (eyes) v Tactile can be a stand-in Pros v Highly parallel, remarkable bandwidth v Powerful for structuring complex data v Easy for people to understand and use Cons v Harder for computers to understand 56

57 Principles Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References Principles of organization are broad strategies that people use to apply their (finite) time and abilities to the resolution of complex problems. The four main strategies are: v Reduction of complexity v Anticipation of diversity v Structuring for Validation v Use of External 57

58 Reduction Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References Reduction of complexity deals with constraining the scale of a problem to limits that can be handled safely Three main strategies exist for reducing complexity: v Removal of Complexity v Automation of Complexity v Localization of Complexity 58

59 Reduction by Removal Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References Reduction by removal lowers total complexity by eliminating needless noise in the features or structure of software. Examples: v Axing unnecessary feature requirements v Simplifying complex call structures v Factoring out repeated operations or data 59

60 Reduction by Automation Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References Reduction by Automation eliminates complexity by solving it once and automating the solution Examples: v Compilers v Operating systems v Visual programming languages 60

61 Reduction by Localization Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References Localization of complexity factors out complexity and keeps it within well-defined, easy-to-maintain boundaries Localization is a powerful technique and one of the indicators of good design: v Modularity (all forms) v Object-oriented design v Coupling and cohesion criteria 61

62 Anticipation Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References Anticipation of diversity deals with the problem of changes over time. Change always happens. Failure to anticipate change is a hallmark of bad design Anticipating future diversity: v Requires an ability to estimate the future v Is an implicit goal of many quality standards 62

63 Anticipation by Generalization Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References Anticipation by generalization uses isolated cases to help find a broader, more powerful solutions that bridge across them Generalization is a distinctly mathematical concept, and is often expressed in mathematical terms Good design in general also requires generalization (e.g., for portability) 63

64 Anticipation by Experiment Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References Anticipation by experiment recognizes that even the best developers cannot anticipate all the implications of a complex system Various forms of experimentation are used to identify unexpected behaviors Testing (all forms) is experimentation Prototyping is also experimentation 64

65 Anticipation by Localization Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References Anticipation by localization is a special case of localization of complexity (since changeability is a type of complexity) Locality of change indicates how well software was constructed: v Poor change locality: Common changes result in the code being touched in many different locations v Good change locality: Common changes result in the code being touched only once 65

66 Validation Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References Structuring for validation means building code in a way that specifically recognizes the need to assure its overall correctness. Structuring for validation amounts to instrumenting designs in anticipation of the need for testing and simulation 66

67 Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References Use of external standards simplifies construction by relying on the proven concepts and capabilities implied by external standards Use of standards must balance between: v Advantages of accessing capabilities and technologies implied by those standards v Risk of failure of any specific standard Best strategy: Build in some hedging 67

68 Taxonomy Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References (3 Styles) X (4 Principles) = 12 Impact Areas Taxonomy classifies effects, since any one technique (e.g., modularity) can have multiple impacts Overall power of a technique can be judged by how many areas it affects Power of a language can be estimated by how many techniques it includes 68

69 References Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References 1. [BEN00] Bentley, Jon, Programming Pearls (Second Edition). Addison- Wesley, (Chapters 2,3,4,11,13,14) 2. [BOO94] Booch, Grady, and Bryan, Doug, Software Engineering with Ada (Third edition). Benjamin/Cummings, (Parts II, IV, V) 3. [HOR99] Horrocks, Ian, Constructing the User Interface with Statecharts. Addison- Wesley, (Parts II, IV) 69

70 References Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References 4. [KER99] Kernighan, Brian W., and Pike, Rob, The Practice of Programming. Addison-Wesley, (Ch. 1,2,3,5,6,9) 5. [MAG93] Maguire, Steve, Writing Solid Code. Microsoft Press, [McCO93] McConnell, Steve, Code Complete. Microsoft Press, [MEY97] Meyer, Bertrand, Object- Oriented Software Construction (Second Edition). Prentice-Hall,1997.(Ch. 6,10,11) 70

71 References Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References 8. [SET96] Sethi, Ravi, Programming Languages Concepts & Constructs (Second Edition). Addison-Wesley, (Parts II, III, IV, V) 9. [WAR99] Warren, Nigel, and Bishop, Philip, Java in Practice Design Styles and Idioms for Effective Java. Addison- Wesley, (Chapters 1, 2, 3, 4, 5, 10) 71

72 References Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References Further Readings 10. [BAR98] Barker, Thomas T., Writing Software Documentation A Task- Oriented Approach. Allyn & Bacon, [FOW99] Fowler, Martin, Refactoring Improving the Design of Existing Code. Addison-Wesley, [GLA95] Glass, Robert L., Software Creativity. Prentice-Hall,

73 References Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References 13. [HEN97] Henricson, Mats, and Nyquist, Erik, Industrial Strength C++. Prentice- Hall, [HOR99] Horrocks, Ian, Constructing the User Interface with Statecharts. Addison- Wesley, [HUM97] Humphrey, Watts S., Introduction to the Personal Software Process. Addison-Wesley,

74 References Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References 16. [HUN00] Hunt, Andrew, and Thomas, David, The Pragmatic Programmer. Addison-Wesley, [MAZ96] Mazza, C., et al., Software Engineering Guides. Prentice-Hall, (Part IV) 74

75 References Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References Relevant to SWC a. IEEE Std (Reaff 1991), IEEE Standard for Software Test Documentation (ANSI) b. IEEE Std (Reaff 1993), IEEE Standard for Software Unit Testing (ANSI) c. IEEE Std (Reaff 1993), IEEE Standard for Software Reviews and Audits (ANSI) 75

76 References Definition Versus Design Use of Tools Self-Evaluation SWC Spectrum Manual Automated Styles Linguistic Formal Visual Principles Reduction Anticipation Validation Taxonomy References d. IEEE Std (Reaff 1993), IEEE Standard for Software User Documentation (ANSI) e. IEEE Std , IEEE Standard for Software Maintenance (ANSI) 76

77 swebok.org SWEBOK

CHAPTER 1 INTRODUCTION TO THE GUIDE

CHAPTER 1 INTRODUCTION TO THE GUIDE CHAPTER 1 INTRODUCTION TO THE GUIDE In spite of the millions of software professionals worldwide and the ubiquitous presence of software in our society, software engineering has not yet reached the status

More information

Software Engineering Principles: Do They Meet Engineering Criteria?

Software Engineering Principles: Do They Meet Engineering Criteria? J. Software Engineering & Applications, 2010, 3, 972-982 doi:10.4236/jsea.2010.310114 Published Online October 2010 (http://www.scirp.org/journal/jsea) Software Engineering Principles: Do They Meet Engineering

More information

SPICE: IS A CAPABILITY MATURITY MODEL APPLICABLE IN THE CONSTRUCTION INDUSTRY? Spice: A mature model

SPICE: IS A CAPABILITY MATURITY MODEL APPLICABLE IN THE CONSTRUCTION INDUSTRY? Spice: A mature model SPICE: IS A CAPABILITY MATURITY MODEL APPLICABLE IN THE CONSTRUCTION INDUSTRY? Spice: A mature model M. SARSHAR, M. FINNEMORE, R.HAIGH, J.GOULDING Department of Surveying, University of Salford, Salford,

More information

Metrology, Measurement and Metrics in Software Engineering

Metrology, Measurement and Metrics in Software Engineering Metrology, and Metrics in Engineering Alain Abran Asma Sellami Witold Suryn École de Technologie Supérieure École de Technologie Supérieure École de Technologie Supérieure aabran@ele.etsmtl.ca asma.sellami.1@ens.etsmtl.ca

More information

SWEN 256 Software Process & Project Management

SWEN 256 Software Process & Project Management SWEN 256 Software Process & Project Management What is quality? A definition of quality should emphasize three important points: 1. Software requirements are the foundation from which quality is measured.

More information

Code Complete 2: A Decade of Advances in Software Construction Construx Software Builders, Inc. All Rights Reserved.

Code Complete 2: A Decade of Advances in Software Construction Construx Software Builders, Inc. All Rights Reserved. Code Complete 2: A Decade of Advances in Software Construction www.construx.com 2004 Construx Software Builders, Inc. All Rights Reserved. Construx Delivering Software Project Success Introduction History

More information

SOFTWARE ENGINEERING ONTOLOGY: A DEVELOPMENT METHODOLOGY

SOFTWARE ENGINEERING ONTOLOGY: A DEVELOPMENT METHODOLOGY SOFTWARE ENGINEERING ONTOLOGY: A DEVELOPMENT METHODOLOGY Olavo Mendes DECOM/CCHLA/UFPB Federal University at Paraiba Brazil PhD Student Cognitive Informatics Quebec University at Montreal - UQAM olavomendes@hotmail.com

More information

Design for value DfV

Design for value DfV Design for value DfV Dan A. Seni, P. Eng., Ph.D. School of Management Université du Québec à Montréal Canada seni.dan@uqam.ca Publication: Dan A. Seni, (2005). Function Models : A General Framework for

More information

Software Maintenance Cycles with the RUP

Software Maintenance Cycles with the RUP Software Maintenance Cycles with the RUP by Philippe Kruchten Rational Fellow Rational Software Canada The Rational Unified Process (RUP ) has no concept of a "maintenance phase." Some people claim that

More information

Code Complete 2: Realities of Modern Software Construction

Code Complete 2: Realities of Modern Software Construction Code Complete 2: Realities of Modern Software Construction www.construx.com 2004-2005 2005 Construx Software Builders, Inc. All Rights Reserved. Construx Delivering Software Project Success R Really,Really

More information

Analysis of Software Engineering from An Engineering Perspective

Analysis of Software Engineering from An Engineering Perspective Analysis of Software Engineering from An Engineering Perspective Alain Abran and Kenza Meridji Walter G. Vincenti, in his book "What engineers know and how they know it", has proposed a taxonomy of engineering

More information

UML and Patterns.book Page 52 Thursday, September 16, :48 PM

UML and Patterns.book Page 52 Thursday, September 16, :48 PM UML and Patterns.book Page 52 Thursday, September 16, 2004 9:48 PM UML and Patterns.book Page 53 Thursday, September 16, 2004 9:48 PM Chapter 5 5 EVOLUTIONARY REQUIREMENTS Ours is a world where people

More information

IS 525 Chapter 2. Methodology Dr. Nesrine Zemirli

IS 525 Chapter 2. Methodology Dr. Nesrine Zemirli IS 525 Chapter 2 Methodology Dr. Nesrine Zemirli Assistant Professor. IS Department CCIS / King Saud University E-mail: Web: http://fac.ksu.edu.sa/nzemirli/home Chapter Topics Fundamental concepts and

More information

Software Verification and Validation. Prof. Lionel Briand Ph.D., IEEE Fellow

Software Verification and Validation. Prof. Lionel Briand Ph.D., IEEE Fellow Software Verification and Validation Prof. Lionel Briand Ph.D., IEEE Fellow 1 Lionel s background Worked in industry, academia, and industry-oriented research institutions France, USA, Germany, Canada,

More information

CHAPTER 1: INTRODUCTION TO SOFTWARE ENGINEERING DESIGN

CHAPTER 1: INTRODUCTION TO SOFTWARE ENGINEERING DESIGN CHAPTER 1: INTRODUCTION TO SOFTWARE ENGINEERING DESIGN SESSION II: OVERVIEW OF SOFTWARE ENGINEERING DESIGN Software Engineering Design: Theory and Practice by Carlos E. Otero Slides copyright 2012 by Carlos

More information

STUDY ON FIREWALL APPROACH FOR THE REGRESSION TESTING OF OBJECT-ORIENTED SOFTWARE

STUDY ON FIREWALL APPROACH FOR THE REGRESSION TESTING OF OBJECT-ORIENTED SOFTWARE STUDY ON FIREWALL APPROACH FOR THE REGRESSION TESTING OF OBJECT-ORIENTED SOFTWARE TAWDE SANTOSH SAHEBRAO DEPT. OF COMPUTER SCIENCE CMJ UNIVERSITY, SHILLONG, MEGHALAYA ABSTRACT Adherence to a defined process

More information

Leveraging 21st Century SE Concepts, Principles, and Practices to Achieve User, Healthcare Services, and Medical Device Development Success

Leveraging 21st Century SE Concepts, Principles, and Practices to Achieve User, Healthcare Services, and Medical Device Development Success Leveraging 21st Century SE Concepts, Principles, and Practices to Achieve User, Healthcare Services, and Medical Device Development Success Charles Wasson, ESEP Wasson Strategics, LLC Professional Training

More information

A FRAMEWORK FOR PERFORMING V&V WITHIN REUSE-BASED SOFTWARE ENGINEERING

A FRAMEWORK FOR PERFORMING V&V WITHIN REUSE-BASED SOFTWARE ENGINEERING A FRAMEWORK FOR PERFORMING V&V WITHIN REUSE-BASED SOFTWARE ENGINEERING Edward A. Addy eaddy@wvu.edu NASA/WVU Software Research Laboratory ABSTRACT Verification and validation (V&V) is performed during

More information

Managing the Innovation Process. Development Stage: Technical Problem Solving, Product Design & Engineering

Managing the Innovation Process. Development Stage: Technical Problem Solving, Product Design & Engineering Managing the Innovation Process Development Stage: Technical Problem Solving, Product Design & Engineering Managing the Innovation Process The Big Picture Source: Lercher 2016, 2017 Source: Lercher 2016,

More information

Software-Intensive Systems Producibility

Software-Intensive Systems Producibility Pittsburgh, PA 15213-3890 Software-Intensive Systems Producibility Grady Campbell Sponsored by the U.S. Department of Defense 2006 by Carnegie Mellon University SSTC 2006. - page 1 Producibility

More information

Accreditation Requirements Mapping

Accreditation Requirements Mapping Accreditation Requirements Mapping APPENDIX D Certain design project management topics are difficult to address in curricula based heavily in mathematics, science, and technology. These topics are normally

More information

By the end of this chapter, you should: Understand what is meant by engineering design. Understand the phases of the engineering design process.

By the end of this chapter, you should: Understand what is meant by engineering design. Understand the phases of the engineering design process. By the end of this chapter, you should: Understand what is meant by engineering design. Understand the phases of the engineering design process. Be familiar with the attributes of successful engineers.

More information

Separation of Concerns in Software Engineering Education

Separation of Concerns in Software Engineering Education Separation of Concerns in Software Engineering Education Naji Habra Institut d Informatique University of Namur Rue Grandgagnage, 21 B-5000 Namur +32 81 72 4995 nha@info.fundp.ac.be ABSTRACT Separation

More information

Resource Review. In press 2018, the Journal of the Medical Library Association

Resource Review. In press 2018, the Journal of the Medical Library Association 1 Resource Review. In press 2018, the Journal of the Medical Library Association Cabell's Scholarly Analytics, Cabell Publishing, Inc., Beaumont, Texas, http://cabells.com/, institutional licensing only,

More information

Information and Communication Technology

Information and Communication Technology Information and Communication Technology Academic Standards Statement We've arranged a civilization in which most crucial elements profoundly depend on science and technology. Carl Sagan Members of Australian

More information

Towards an MDA-based development methodology 1

Towards an MDA-based development methodology 1 Towards an MDA-based development methodology 1 Anastasius Gavras 1, Mariano Belaunde 2, Luís Ferreira Pires 3, João Paulo A. Almeida 3 1 Eurescom GmbH, 2 France Télécom R&D, 3 University of Twente 1 gavras@eurescom.de,

More information

Years 9 and 10 standard elaborations Australian Curriculum: Digital Technologies

Years 9 and 10 standard elaborations Australian Curriculum: Digital Technologies Purpose The standard elaborations (SEs) provide additional clarity when using the Australian Curriculum achievement standard to make judgments on a five-point scale. They can be used as a tool for: making

More information

UNIT IV SOFTWARE PROCESSES & TESTING SOFTWARE PROCESS - DEFINITION AND IMPLEMENTATION

UNIT IV SOFTWARE PROCESSES & TESTING SOFTWARE PROCESS - DEFINITION AND IMPLEMENTATION UNIT IV SOFTWARE PROCESSES & TESTING Software Process - Definition and implementation; internal Auditing and Assessments; Software testing - Concepts, Tools, Reviews, Inspections & Walkthroughs; P-CMM.

More information

IECI Chapter Japan Series Vol. 5 No. 2, 2003 ISSN

IECI Chapter Japan Series Vol. 5 No. 2, 2003 ISSN IECI Chapter Japan Series Vol. 5 No. 2, 2003 ISSN 1344-7491 Proceedings of the IECI Japan Workshop 2003 IJW-2003 April 20 th, 2003 Chofu Bunka-Kaikan Tazukuri Tokyo, Japan Organized by Indonesian Society

More information

Software Quality Engineering: Testing, Quality Assurance, and Quantifiable Improvement

Software Quality Engineering: Testing, Quality Assurance, and Quantifiable Improvement Software Quality Engineering Slide (Ch.13) 1 Software Quality Engineering: Testing, Quality Assurance, and Quantifiable Improvement Jeff Tian, tian@engr.smu.edu www.engr.smu.edu/ tian/sqebook Chapter 13.

More information

Dix, Alan; Finlay, Janet; Abowd, Gregory; & Beale, Russell. Human- Graduate Software Engineering Education. Technical Report CMU-CS-93-

Dix, Alan; Finlay, Janet; Abowd, Gregory; & Beale, Russell. Human- Graduate Software Engineering Education. Technical Report CMU-CS-93- References [ACM92] ACM SIGCHI/ACM Special Interest Group on Computer-Human Interaction.. Curricula for Human-Computer Interaction. New York, N.Y.: Association for Computing Machinery, 1992. [CMU94] [Dix93]

More information

Grundlagen des Software Engineering Fundamentals of Software Engineering

Grundlagen des Software Engineering Fundamentals of Software Engineering Software Engineering Research Group: Processes and Measurement Fachbereich Informatik TU Kaiserslautern Grundlagen des Software Engineering Fundamentals of Software Engineering Winter Term 2011/12 Prof.

More information

Fall 2014 SEI Research Review Aligning Acquisition Strategy and Software Architecture

Fall 2014 SEI Research Review Aligning Acquisition Strategy and Software Architecture Fall 2014 SEI Research Review Aligning Acquisition Strategy and Software Architecture Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 Brownsword, Place, Albert, Carney October

More information

Distilling Scenarios from Patterns for Software Architecture Evaluation A Position Paper

Distilling Scenarios from Patterns for Software Architecture Evaluation A Position Paper Distilling Scenarios from Patterns for Software Architecture Evaluation A Position Paper Liming Zhu, Muhammad Ali Babar, Ross Jeffery National ICT Australia Ltd. and University of New South Wales, Australia

More information

TOWARDS CUSTOMIZED SMART GOVERNMENT QUALITY MODEL

TOWARDS CUSTOMIZED SMART GOVERNMENT QUALITY MODEL TOWARDS CUSTOMIZED SMART GOVERNMENT QUALITY MODEL Fahad Salmeen Al-Obthani 1 and Ali Abdulbaqi Ameen 2 1, 2 Lincoln University College, Wisma Lincoln, No. 12-18, Jalan SS 6/12, Petaling Jaya, Darul Ehsan,

More information

Proposed Curriculum Master of Science in Systems Engineering for The MITRE Corporation

Proposed Curriculum Master of Science in Systems Engineering for The MITRE Corporation Proposed Curriculum Master of Science in Systems Engineering for The MITRE Corporation Core Requirements: (9 Credits) SYS 501 Concepts of Systems Engineering SYS 510 Systems Architecture and Design SYS

More information

SoSECIE Webinar. Welcome to the 2019 System of Systems Engineering Collaborators Information Exchange (SoSECIE)

SoSECIE Webinar. Welcome to the 2019 System of Systems Engineering Collaborators Information Exchange (SoSECIE) SoSECIE Webinar Welcome to the 2019 System of Systems Engineering Collaborators Information Exchange (SoSECIE) We will start at 11AM Eastern Time Skype Meeting +1 (703) 983-2020, 46013573# You can download

More information

Part 3: Guidance for reporting

Part 3: Guidance for reporting INTERNATIONAL STANDARD ISO/IEC 29155-3 First edition 2015-11-15 Systems and software engineering Information technology project performance benchmarking framework Part 3: Guidance for reporting Ingénierie

More information

The last decade saw an increase in the

The last decade saw an increase in the The last decade saw an increase in the phenomenon of globalization and concurrently the pervasiveness of computing in our society. Products based on the information and communication technologies (ICTs)

More information

Introduction to adoption of lean canvas in software test architecture design

Introduction to adoption of lean canvas in software test architecture design Introduction to adoption of lean canvas in software test architecture design Padmaraj Nidagundi 1, Margarita Lukjanska 2 1 Riga Technical University, Kaļķu iela 1, Riga, Latvia. 2 Politecnico di Milano,

More information

The Impact of Conducting ATAM Evaluations on Army Programs

The Impact of Conducting ATAM Evaluations on Army Programs The Impact of Conducting ATAM Evaluations on Army Programs Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 Robert L. Nord, John Bergey, Stephen Blanchette, Jr., Mark Klein

More information

Design and Technology Subject Outline Stage 1 and Stage 2

Design and Technology Subject Outline Stage 1 and Stage 2 Design and Technology 2019 Subject Outline Stage 1 and Stage 2 Published by the SACE Board of South Australia, 60 Greenhill Road, Wayville, South Australia 5034 Copyright SACE Board of South Australia

More information

Course Introduction and Overview of Software Engineering. Richard N. Taylor Informatics 211 Fall 2007

Course Introduction and Overview of Software Engineering. Richard N. Taylor Informatics 211 Fall 2007 Course Introduction and Overview of Software Engineering Richard N. Taylor Informatics 211 Fall 2007 Software Engineering A discipline that deals with the building of software systems which are so large

More information

Object-oriented Analysis and Design

Object-oriented Analysis and Design Object-oriented Analysis and Design Stages in a Software Project Requirements Writing Understanding the Client s environment and needs. Analysis Identifying the concepts (classes) in the problem domain

More information

Software Measurement & Lessons from the Masters: Benefits for Industry

Software Measurement & Lessons from the Masters: Benefits for Industry Software Measurement & Lessons from the Masters: Benefits for Industry Alain Abran École de Technologie Supérieure Université du Québec alain.abran@etsmtl.ca 1 Masters from the Past Egyptian Pyramids 2

More information

INTERNATIONAL CONFERENCE ON ENGINEERING DESIGN ICED 03 STOCKHOLM, AUGUST 19-21, 2003

INTERNATIONAL CONFERENCE ON ENGINEERING DESIGN ICED 03 STOCKHOLM, AUGUST 19-21, 2003 INTERNATIONAL CONFERENCE ON ENGINEERING DESIGN ICED 03 STOCKHOLM, AUGUST 19-21, 2003 A KNOWLEDGE MANAGEMENT SYSTEM FOR INDUSTRIAL DESIGN RESEARCH PROCESSES Christian FRANK, Mickaël GARDONI Abstract Knowledge

More information

A SYSTEMIC APPROACH TO KNOWLEDGE SOCIETY FORESIGHT. THE ROMANIAN CASE

A SYSTEMIC APPROACH TO KNOWLEDGE SOCIETY FORESIGHT. THE ROMANIAN CASE A SYSTEMIC APPROACH TO KNOWLEDGE SOCIETY FORESIGHT. THE ROMANIAN CASE Expert 1A Dan GROSU Executive Agency for Higher Education and Research Funding Abstract The paper presents issues related to a systemic

More information

Selecting, Developing and Designing the Visual Content for the Polymer Series

Selecting, Developing and Designing the Visual Content for the Polymer Series Selecting, Developing and Designing the Visual Content for the Polymer Series A Review of the Process October 2014 This document provides a summary of the activities undertaken by the Bank of Canada to

More information

Scientific Certification

Scientific Certification Scientific Certification John Rushby Computer Science Laboratory SRI International Menlo Park, California, USA John Rushby, SR I Scientific Certification: 1 Does The Current Approach Work? Fuel emergency

More information

Evaluation Plan for a Cardiological Multi- Media Workstation (I4C Project)

Evaluation Plan for a Cardiological Multi- Media Workstation (I4C Project) Medical Informatics Europe '97 751 C. Pappas et al. (Eds.) IOS Press, 1997 Evaluation Plan for a Cardiological Multi- Media Workstation (I4C Project) J.W. van der Hofstede a, A.B.W.M. Quaka, A.M. van Ginnekenb,

More information

CSE 435: Software Engineering

CSE 435: Software Engineering CSE 435: Software Engineering Dr. James Daly 3501 Engineering Building Office: 3501 EB, by appointment dalyjame at msu dot edu TAs: Vincent Ragusa and Mohammad Roohitavaf Helproom Tuesday: 2-4 pm, Wednesday

More information

Socio-cognitive Engineering

Socio-cognitive Engineering Socio-cognitive Engineering Mike Sharples Educational Technology Research Group University of Birmingham m.sharples@bham.ac.uk ABSTRACT Socio-cognitive engineering is a framework for the human-centred

More information

Strategic Considerations when Introducing Model Based Systems Engineering

Strategic Considerations when Introducing Model Based Systems Engineering Copyright 2015 by Christoph Bräuchle, Manfred Broy, Dominik Rüchardt. Permission granted to INCOSE to publish and use Strategic Considerations when Introducing Model Based Systems Engineering Christoph

More information

About Software Engineering.

About Software Engineering. About Software Engineering pierre-alain.muller@uha.fr What is Software Engineering? Software Engineering Software development Engineering Let s s have a look at ICSE International Conference on Software

More information

Canadian Technology Accreditation Criteria (CTAC) PROGRAM GENERAL LEARNING OUTCOMES (PGLO) Common to all Technologist Disciplines

Canadian Technology Accreditation Criteria (CTAC) PROGRAM GENERAL LEARNING OUTCOMES (PGLO) Common to all Technologist Disciplines Canadian Technology Accreditation Criteria (CTAC) PROGRAM GENERAL LEARNING OUTCOMES (PGLO) Common to all Technologist Disciplines Preamble Eight Program General Learning Outcomes (PGLOs) are included in

More information

ISO INTERNATIONAL STANDARD

ISO INTERNATIONAL STANDARD INTERNATIONAL STANDARD ISO 17894 First edition 2005-03-15 Ships and marine technology Computer applications General principles for the development and use of programmable electronic systems in marine applications

More information

CYBER-INFRASTRUCTURE SUPPORT FOR ENGINEERING DESIGN

CYBER-INFRASTRUCTURE SUPPORT FOR ENGINEERING DESIGN CYBER-INFRASTRUCTURE SUPPORT FOR ENGINEERING DESIGN Perspectives from NSF ED2030 Workshop + + Jami J. Shah Mechanical & Aerospace Engineering, Arizona State University, Tempe 1 Industry representation

More information

ISO/IEC SQuaRE. The second generation of standards for software product quality

ISO/IEC SQuaRE. The second generation of standards for software product quality ISO/IEC SQuaRE. The second generation of standards for software product quality Witold Suryn 1, Alain Abran 2, Alain April 3 Department of Electrical Engineering, École de Technologie Supérieure, 1100

More information

General Education Rubrics

General Education Rubrics General Education Rubrics Rubrics represent guides for course designers/instructors, students, and evaluators. Course designers and instructors can use the rubrics as a basis for creating activities for

More information

Applied Safety Science and Engineering Techniques (ASSET TM )

Applied Safety Science and Engineering Techniques (ASSET TM ) Applied Safety Science and Engineering Techniques (ASSET TM ) The Evolution of Hazard Based Safety Engineering into the Framework of a Safety Management Process Applied Safety Science and Engineering Techniques

More information

Translational scientist competency profile

Translational scientist competency profile C-COMEND Competency profile for Translational Scientists C-COMEND is a two-year European training project supported by the Erasmus plus programme, which started on November 1st 2015. The overall objective

More information

Course Outline Department of Computing Science Faculty of Science

Course Outline Department of Computing Science Faculty of Science Course Outline Department of Computing Science Faculty of Science COMP 2920 3 Software Architecture & Design (3,1,0) Fall, 2015 Instructor: Phone/Voice Mail: Office: E-Mail: Office Hours: Calendar /Course

More information

Towards a multi-view point safety contract Alejandra Ruiz 1, Tim Kelly 2, Huascar Espinoza 1

Towards a multi-view point safety contract Alejandra Ruiz 1, Tim Kelly 2, Huascar Espinoza 1 Author manuscript, published in "SAFECOMP 2013 - Workshop SASSUR (Next Generation of System Assurance Approaches for Safety-Critical Systems) of the 32nd International Conference on Computer Safety, Reliability

More information

The secret behind mechatronics

The secret behind mechatronics The secret behind mechatronics Why companies will want to be part of the revolution In the 18th century, steam and mechanization powered the first Industrial Revolution. At the turn of the 20th century,

More information

The Computer Software Compliance Problem

The Computer Software Compliance Problem Paper ID #10829 The Computer Software Compliance Problem Prof. Peter j Knoke, University of Alaska, Fairbanks Associate Professor of Software Engineering in the University of Alaska Fairbanks Computer

More information

Competencies in Manufacturing Engineering Technology programs from employer s point of view.

Competencies in Manufacturing Engineering Technology programs from employer s point of view. Session 3548 Competencies in Manufacturing Engineering Technology programs from employer s point of view. Bob Lahidji, Ph.D., CMfgE Eastern Michigan University Ypsilanti, MI. 48197 734-487-2040 bob.lahidji@emich.edu

More information

UNIT-III LIFE-CYCLE PHASES

UNIT-III LIFE-CYCLE PHASES INTRODUCTION: UNIT-III LIFE-CYCLE PHASES - If there is a well defined separation between research and development activities and production activities then the software is said to be in successful development

More information

ISO INTERNATIONAL STANDARD

ISO INTERNATIONAL STANDARD INTERNATIONAL STANDARD ISO 15223-1 First edition 2007-04-15 Medical devices Symbols to be used with medical device labels, labelling and information to be supplied Part 1: General requirements Dispositifs

More information

Gerald G. Boyd, Tom D. Anderson, David W. Geiser

Gerald G. Boyd, Tom D. Anderson, David W. Geiser THE ENVIRONMENTAL MANAGEMENT PROGRAM USES PERFORMANCE MEASURES FOR SCIENCE AND TECHNOLOGY TO: FOCUS INVESTMENTS ON ACHIEVING CLEANUP GOALS; IMPROVE THE MANAGEMENT OF SCIENCE AND TECHNOLOGY; AND, EVALUATE

More information

Baccalaureate Program of Sustainable System Engineering Objectives and Curriculum Development

Baccalaureate Program of Sustainable System Engineering Objectives and Curriculum Development Paper ID #14204 Baccalaureate Program of Sustainable System Engineering Objectives and Curriculum Development Dr. Runing Zhang, Metropolitan State University of Denver Mr. Aaron Brown, Metropolitan State

More information

Solutions to selected exercises

Solutions to selected exercises 1 Software Engineering 8 th edition Solutions to selected exercises These solutions are made available for instructional purposes only. They may only be distributed to students and it is a condition of

More information

Supporting medical technology development with the analytic hierarchy process Hummel, Janna Marchien

Supporting medical technology development with the analytic hierarchy process Hummel, Janna Marchien University of Groningen Supporting medical technology development with the analytic hierarchy process Hummel, Janna Marchien IMPORTANT NOTE: You are advised to consult the publisher's version (publisher's

More information

A Discipline for Software Engineering

A Discipline for Software Engineering A Discipline for Software Engineering (Humphrey, (Humphrey, 1995) 1995) Introduction AU INSY 560, Singapore 1997, Dan Turk Humphrey Preface - slide 1 Outline Software Development: Craft or Discipline?

More information

Background T

Background T Background» At the 2013 ISSC, the SAE International G-48 System Safety Committee accepted an action to investigate the utility of the Safety Case approach vis-à-vis ANSI/GEIA-STD- 0010-2009.» The Safety

More information

A Knowledge-Centric Approach for Complex Systems. Chris R. Powell 1/29/2015

A Knowledge-Centric Approach for Complex Systems. Chris R. Powell 1/29/2015 A Knowledge-Centric Approach for Complex Systems Chris R. Powell 1/29/2015 Dr. Chris R. Powell, MBA 31 years experience in systems, hardware, and software engineering 17 years in commercial development

More information

Improving Software Sustainability Through Data-Driven Technical Debt Management

Improving Software Sustainability Through Data-Driven Technical Debt Management Improving Software Sustainability Through Data-Driven Technical Debt Management Ipek Ozkaya October 7, 2015 Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 Copyright 2015

More information

SR&ED for the Software Sector Northwestern Ontario Innovation Centre

SR&ED for the Software Sector Northwestern Ontario Innovation Centre SR&ED for the Software Sector Northwestern Ontario Innovation Centre Quantifying and qualifying R&D for a tax credit submission Justin Frape, Senior Manager BDO Canada LLP January 16 th, 2013 AGENDA Today

More information

Creativity & Innovation in SPI: an exploratory paper on its measurement

Creativity & Innovation in SPI: an exploratory paper on its measurement IWSM2001 Montréal, 28-29 Août 2001 CANADA Creativity & Innovation in SPI: an exploratory paper on its measurement Luigi BUGLIONE Alain ABRAN École de Technologie Supérieure & Université du Québec à Montréal

More information

How can value be measured and assessed?

How can value be measured and assessed? Dávid Dankó, PhD, MSc Corvinus University of Budapest Institute of Management david.danko at uni-corvinus.hu How can value be measured and assessed? ISPOR 5 th Asia-Pacific Conference, Taipei, 2 September

More information

Systems Engineering Overview. Axel Claudio Alex Gonzalez

Systems Engineering Overview. Axel Claudio Alex Gonzalez Systems Engineering Overview Axel Claudio Alex Gonzalez Objectives Provide additional insights into Systems and into Systems Engineering Walkthrough the different phases of the product lifecycle Discuss

More information

WIPO Development Agenda

WIPO Development Agenda WIPO Development Agenda 2 The WIPO Development Agenda aims to ensure that development considerations form an integral part of WIPO s work. As such, it is a cross-cutting issue which touches upon all sectors

More information

Óbuda University Donát Bánki Faculty of Mechanical and Safety Engineering. TRAINING PROGRAM Mechatronic Engineering MSc. Budapest, 01 September 2017.

Óbuda University Donát Bánki Faculty of Mechanical and Safety Engineering. TRAINING PROGRAM Mechatronic Engineering MSc. Budapest, 01 September 2017. Óbuda University Donát Bánki Faculty of Mechanical and Safety Engineering TRAINING PROGRAM Mechatronic Engineering MSc Budapest, 01 September 2017. MECHATRONIC ENGINEERING DEGREE PROGRAM CURRICULUM 1.

More information

Canadian Technology Accreditation Criteria (CTAC) ELECTROMECHANICAL ENGINEERING TECHNOLOGY - TECHNICIAN Technology Accreditation Canada (TAC)

Canadian Technology Accreditation Criteria (CTAC) ELECTROMECHANICAL ENGINEERING TECHNOLOGY - TECHNICIAN Technology Accreditation Canada (TAC) Canadian Technology Accreditation Criteria (CTAC) ELECTROMECHANICAL ENGINEERING TECHNOLOGY - TECHNICIAN Technology Accreditation Canada (TAC) Preamble These CTAC are applicable to programs having titles

More information

Software as a Medical Device (SaMD)

Software as a Medical Device (SaMD) Software as a Medical Device () Working Group Status Application of Clinical Evaluation Working Group Chair: Bakul Patel Center for Devices and Radiological Health US Food and Drug Administration NWIE

More information

Required Course Numbers. Test Content Categories. Computer Science 8 12 Curriculum Crosswalk Page 2 of 14

Required Course Numbers. Test Content Categories. Computer Science 8 12 Curriculum Crosswalk Page 2 of 14 TExES Computer Science 8 12 Curriculum Crosswalk Test Content Categories Domain I Technology Applications Core Competency 001: The computer science teacher knows technology terminology and concepts; the

More information

Evolving a Software Requirements Ontology

Evolving a Software Requirements Ontology Evolving a Software Requirements Ontology Ricardo de Almeida Falbo 1, Julio Cesar Nardi 2 1 Computer Science Department, Federal University of Espírito Santo Brazil 2 Federal Center of Technological Education

More information

ISO INTERNATIONAL STANDARD. Nomenclature Specification for a nomenclature system for medical devices for the purpose of regulatory data exchange

ISO INTERNATIONAL STANDARD. Nomenclature Specification for a nomenclature system for medical devices for the purpose of regulatory data exchange INTERNATIONAL STANDARD ISO 15225 First edition 2000-09-15 Nomenclature Specification for a nomenclature system for medical devices for the purpose of regulatory data exchange Nomenclature Spécifications

More information

Thinking. Design. Principles of. Thinking Like a Designer From Idea to Business

Thinking. Design. Principles of. Thinking Like a Designer From Idea to Business Spring 2018 Design Principles of Thinking Thinking Like a Designer From Idea to Business Dan Harel, Adjunct Professor, Industrial Design, Rochester Institute of Technology, 2018 For education purposes

More information

Australian/New Zealand Standard

Australian/New Zealand Standard Australian/New Zealand Standard Quality management and quality assurance Vocabulary This Joint Australian/New Zealand Standard was prepared by Joint Technical Committee QR/7, Quality Terminology. It was

More information

SAFETY CASE PATTERNS REUSING SUCCESSFUL ARGUMENTS. Tim Kelly, John McDermid

SAFETY CASE PATTERNS REUSING SUCCESSFUL ARGUMENTS. Tim Kelly, John McDermid SAFETY CASE PATTERNS REUSING SUCCESSFUL ARGUMENTS Tim Kelly, John McDermid Rolls-Royce Systems and Software Engineering University Technology Centre Department of Computer Science University of York Heslington

More information

GOALS TO ASPECTS: DISCOVERING ASPECTS ORIENTED REQUIREMENTS

GOALS TO ASPECTS: DISCOVERING ASPECTS ORIENTED REQUIREMENTS GOALS TO ASPECTS: DISCOVERING ASPECTS ORIENTED REQUIREMENTS 1 A. SOUJANYA, 2 SIDDHARTHA GHOSH 1 M.Tech Student, Department of CSE, Keshav Memorial Institute of Technology(KMIT), Narayanaguda, Himayathnagar,

More information

FEE Comments on EFRAG Draft Comment Letter on ESMA Consultation Paper Considerations of materiality in financial reporting

FEE Comments on EFRAG Draft Comment Letter on ESMA Consultation Paper Considerations of materiality in financial reporting Ms Françoise Flores EFRAG Chairman Square de Meeûs 35 B-1000 BRUXELLES E-mail: commentletter@efrag.org 13 March 2012 Ref.: FRP/PRJ/SKU/SRO Dear Ms Flores, Re: FEE Comments on EFRAG Draft Comment Letter

More information

Report to Congress regarding the Terrorism Information Awareness Program

Report to Congress regarding the Terrorism Information Awareness Program Report to Congress regarding the Terrorism Information Awareness Program In response to Consolidated Appropriations Resolution, 2003, Pub. L. No. 108-7, Division M, 111(b) Executive Summary May 20, 2003

More information

Open Architecture Summit 2017 Industry Panel: Getting Everyone On Board

Open Architecture Summit 2017 Industry Panel: Getting Everyone On Board Open Architecture Summit 2017 Industry Panel: Getting Everyone On Board Dr. Steven A. Davidson Director, Product Family Development and Open Systems Architecture Raytheon Space and Airborne Systems October

More information

Introduction to Engineering ENGR 1100 An Introduction

Introduction to Engineering ENGR 1100 An Introduction Introduction to Engineering ENGR 1100 An Introduction What is Engineering? The Accreditation Board for Engineering and Technology (ABET) defines engineering: the profession in which a knowledge of the

More information

Introductions. Characterizing Knowledge Management Tools

Introductions. Characterizing Knowledge Management Tools Characterizing Knowledge Management Tools Half-day Tutorial Developed by Kurt W. Conrad, Brian (Bo) Newman, and Dr. Art Murray Presented by Kurt W. Conrad conrad@sagebrushgroup.com Based on A ramework

More information

PRINCIPLES AND CRITERIA FOR THE EVALUATION OF SCIENTIFIC ORGANISATIONS IN THE REPUBLIC OF CROATIA

PRINCIPLES AND CRITERIA FOR THE EVALUATION OF SCIENTIFIC ORGANISATIONS IN THE REPUBLIC OF CROATIA ashe Agency for Science and Higher Education PRINCIPLES AND CRITERIA FOR THE EVALUATION OF SCIENTIFIC ORGANISATIONS IN THE REPUBLIC OF CROATIA February 2013 Donje Svetice 38/5 10 000 Zagreb, Croatia T

More information

ENGAGE MSU STUDENTS IN RESEARCH OF MODEL-BASED SYSTEMS ENGINEERING WITH APPLICATION TO NASA SOUNDING ROCKET MISSION

ENGAGE MSU STUDENTS IN RESEARCH OF MODEL-BASED SYSTEMS ENGINEERING WITH APPLICATION TO NASA SOUNDING ROCKET MISSION 2017 HAWAII UNIVERSITY INTERNATIONAL CONFERENCES SCIENCE, TECHNOLOGY & ENGINEERING, ARTS, MATHEMATICS & EDUCATION JUNE 8-10, 2017 HAWAII PRINCE HOTEL WAIKIKI, HONOLULU, HAWAII ENGAGE MSU STUDENTS IN RESEARCH

More information

Strategy for a Digital Preservation Program. Library and Archives Canada

Strategy for a Digital Preservation Program. Library and Archives Canada Strategy for a Digital Preservation Program Library and Archives Canada November 2017 Table of Contents 1. Introduction... 3 2. Definition and scope... 3 3. Vision for digital preservation... 4 3.1 Phase

More information

Future Trends of Software Technology and Applications: Software Architecture

Future Trends of Software Technology and Applications: Software Architecture Pittsburgh, PA 15213-3890 Future Trends of Software Technology and Applications: Software Architecture Paul Clements Software Engineering Institute Carnegie Mellon University Sponsored by the U.S. Department

More information