INF 43: Introduction to Software Engineering

Ace your homework & exams now with Quizwiz!

Software Engineering

"Multi-person construction of multi-version software." - Parnas

incrementality

releasing software

waterfall model

requirements -> design -> implementation -> verification -> maintenance

People

single most important factor in success of failure of a product

Informatics 43

- process of constructing software - phases of development other than programming - principles and qualities of enduring value

Invisibility

- reality of software not embedded in tangible space - hinders communication and understanding

Fundamental Principles

- rigor and formality - separation of concerns (modularity, divide and conquer, abstraction) - anticipation of change - generality -incrmentality (SAGIR)

Conformity

- software must conform to human systems (operating systems, hardware)

Business Perspective

- minimize cost - profits - time needed to create a product -"annual value" -"expensive", "price"

Three "Essential Ingredients" of Software Engineering

*People*, Processes, Tools

No Silver Bullet: Hopes for Silver

- Ada and other high level languages - object oriented programming - artificial intelligence - expert systems - automatic programming - graphical programming - program verification - environments and tools - workstations

Complexity

- Software entities are complex, no two parts alike, hard to understand - difficult of communication because of complexity

Changeability

- all successful software gets changed - software should survive beyond the life of the hardware it was written for

No Silver Bullet: Promising Attacks

- buy vs. build - requirements refinement - incremental development - great designers

Engineering Perspective

- internal quality **** - making it work within constraints of enviornment - cohesion, coupling, simplicity, generality

Essential Characteristics of Soft. Eng.

- large programs - mastering complexity - efficiency - able to evolve - cooperation between people - support users - balancing act

Software

-code - documentation, user manuals, - designs, specifications - test cases - plans and schedules

Design Perspective

-external quality, - quality of software from user perspective - physical appearence to user

Engineering

-skill and knowledge - application of scientific principles - trade-offs, cost/ benefit analysis

waterfall model

1. requirements, 2. design, 3. implementation, 4. verification, 5. maintenance

Essence of Programming

Complexity, Conformity, Changeability, Invisibility


Related study sets

STUDY GUIDE EXAM 1 (SLIGHTLY LESS incomp)

View Set

Chapter 3: Nursing Practice and the Law, NCLEX - Legal & Ethical, Nursing Jurisprudence: Legal and Ethical Considerations NCLEX Practice Quiz, Legal and Ethical Issues in Nursing, NCLEX Questions-Ethical and Legal Issues, NCLEX STYLE REVIEW QUESTIONS...

View Set

Autonomic Nervous System Chapter 12

View Set

Option Pricing: Unit 2 - Self Check

View Set