• Shuffle
    Toggle On
    Toggle Off
  • Alphabetize
    Toggle On
    Toggle Off
  • Front First
    Toggle On
    Toggle Off
  • Both Sides
    Toggle On
    Toggle Off
  • Read
    Toggle On
    Toggle Off
Reading...
Front

Card Range To Study

through

image

Play button

image

Play button

image

Progress

1/13

Click to flip

Use LEFT and RIGHT arrow keys to navigate between flashcards;

Use UP and DOWN arrow keys to flip the card;

H to show hint;

A reads text to speech;

13 Cards in this Set

  • Front
  • Back
Chapter 1
Introduction to Software Engineering
Common Causes of Software Failures
-Incomplete or changing requirements
-Lack of customer or user involvement
- lack of resources
-Unrealistic
-Lack of management support or management
- lack of Planning
-Team not properly trained
Software Engineering.
An engineering discipline that is concerned with all aspects of software production.
Difference Between Software engineering (SE) and computer science (CS).
CS is concerned with theory and fundamentals; SE is concerned with the practicalities of developing and delivering useful software.
Difference between software engineering (SE) and system engineering (sys E).
Sys E: Concerned with all aspects of systems development including hardware, software and process engineering.

SE: part of this process concerned with developing the software.
Software Process.
Set of Activities whose goal is the development or evaluation of software.

1: Specification, 2: Development, 3:Validation, 4: Evolution
Software Process models.
V-cycle
Waterfall
Spiral
Iterative development
Component-based software engineering
Software Engineering methods.
Model Descriptions: Object models such as UML
Rules: Constraints applied to system models
Recommendations: Advice on good design practice
Process Guidance: What activities to follow.
What is Case? Upper and Lower Case?
Case: Intended to provide automated support for software process activities.
Upper: Support early process (requirements & design)
Lower: (Programming,debugging and testing)
Attributes of a good software.
Maintainability: must evolve to meet changing needs.
Dependability:Must be trustworthy.
Efficiency: Not make wasteful use of system resources.
Acceptability: Must be accepted by the users for which
it was designed.
Key Challenges facing software engineering.
Heterogeneity: Cope with heterogeneous platforms and execution environments.
Delivery: Techniques that lead to faster delivery of software.
Trust: Techniques that show that software can be trusted by users.
Issues of Professional reponsibility
Confidentiality
Competence
Intellectual Property Rights
Computer Misuse
Lifelong Learning
Code of Ethics
1: Public Interest in mind.
2: Best interest of clients, employer and public interest.
3: Highest professional standard product.
4: Integrity and independence in judgement.
5: An ethical approach to management (leaders)
6: Advance the integrity and reputation of profession.
7: Fair and supportive to their colleagues.
8: Lifelong learning.