Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 ICS 122: Software Specification and Quality Engineering Spring 2002Lecturers: H. Muccini and D. J. Richardson Lecture 13: Summary The three aspects:

Similar presentations


Presentation on theme: "1 ICS 122: Software Specification and Quality Engineering Spring 2002Lecturers: H. Muccini and D. J. Richardson Lecture 13: Summary The three aspects:"— Presentation transcript:

1 1 ICS 122: Software Specification and Quality Engineering Spring 2002Lecturers: H. Muccini and D. J. Richardson Lecture 13: Summary The three aspects: - quality - specification - engineering

2 2 Software Quality Elements Formal and Semi-formal Spec Quality Engineering Management 1 2 34

3 3 1. Quality

4 4 Quality Support Quality Organization Quality Software + Quality Product Quality attributes What is Software Quality? Goal: Customer Satisfaction

5 5 Distinguishing Qualities Security and Integrity Expandability (user needs)  Flexibility(new env)  Portability Manageability, Maintainability, Survivability Usability and Learnability What is Correctness? Why do we care about qualities?  Associated Costs Why can’t we have it all?  Trade-offs

6 6 In practical contexts Sometimes quality is not a primary concept in developing software systems, but In some contexts, it becomes essential:  Medical Instruments  Satellite systems  Air traffic controller  Systems with millions of LOC

7 7 Software Quality Attributes Functional: what the software does  integrity  reliability  survivability  usability Performance: how well it does it  correctness  efficiency  safety  interoperability Change: modifying the software  maintainability  expandability  flexibility  portability  reusability Management: planning, controlling, testing, installation  verifiability  manageability Operational Maintenance

8 8 Software Quality process Customer needs Product requirements Support requirement Software product Software support Requirements capture process Software Development Process Software Support Process Inaccurate Req. Support Process defects Development Process Defects Not only development

9 9 Quality System and Total Quality Management Quality policy Quality organization Cultural and Technical Program Procedure and Standards Methods and Tools Review and evaluate

10 10 Quality Principles Error prevention Error detection Establish and eliminate the causes Audit work Categories of Software defects

11 11 Quality models and metrics Different models  McCall FCM Model and metrics  Boehm Model Different metrics Different types of metrics Different methods and Tools

12 12 Quality Standards ISO 9000 CMM PSP TSP … Their complexity, cost, advantages and applicability

13 13 2. Formal and Semi-Formal Specification Formal vs Semi-Formal?

14 14 Formal Specification What are formal specifications  Mathematical  Precise  Abstraction Use of Formal specifications  Why  Why not  Who When use formal specifications  Requirements  Software Architectures  Design  Testing  Formal specification and Software Process

15 15 Types of Formal Specifications Behavioral and Structural Model-Oriented and Property-Oriented Visual and Executable

16 16 Semi-formal specifications and UML Goals/advantages of Uml Diagrams and Views  Each diagram focus on a particular aspect or the system  system decomposition in viewpoints UML Semantics  Several weaknesses  Do you remember this example? Obj1Obj2 m1 m2

17 17 3. Software Engineering

18 18 Activities and Software Processes The Software Process Activities Software Processes:  Traditional  Formal  The V-model  Reuse-based  RUP  Architecture-based

19 19 Requirements User, System and Software Requirements Non-functional Requirements and Software Quality Activities:  Feasibility, elicitation,  Specification  Analysis and validation Actual Trend

20 20 Software Architectures Different aspects  Components and connectors  Structural and Behavioral ADL  Different languages for different purposes  UML as an ADL Analysis  SA management is expensive and time consuming  maximize the benefits  Analyze SA as much as possible

21 21 General Comments Why use these Methods  Prove it.. Why don’t people use these Methods?  Costly  Too hard  Too much time.. Do all companies care about quality?  NO! Should all software development focus on quality?  Maybe..maybe Not! How do we prove reliability without testing for years? Reuse and OTS – are the ots products good?


Download ppt "1 ICS 122: Software Specification and Quality Engineering Spring 2002Lecturers: H. Muccini and D. J. Richardson Lecture 13: Summary The three aspects:"

Similar presentations


Ads by Google