introduction/overview, process model. what is software engineering? why we need software...

Post on 23-Dec-2015

214 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Introduction to Software

DevelopmentIntroduction/overview, Process model

What is Software Engineering?

Why we need Software Engineering?Software Process Models

Objective

In order to answer this question we need to examine the characteristics of software:

first of all software is developed or engineered, it is not manufactured, secondly software does not wear out.

1. What is software?2. What is software engineering?

3. What is Well-Engineered Software?4. Diff. Between Software Development and

Software Management5. What is a software process?6. What is a software process model?7. What are the costs of software engineering?8. What are software engineering methods?9. What is CASE (Computer-Aided Software

Engineering)10. What are the key challenges facing software

engineering?

FAQs about software engineering

Computer programs and associated documentation

Types:◦ Software products may be developed for a

particular customer (Bespoke) or may be developed for a general market (generic)

◦ System software, compilers, editors.◦ Real time software, software that

monitor/control real world event.◦ Embedded software read only memory,

keypad of microwave oven◦ Personal computer software.◦ Web based software.

What is software?

Software engineering is concerned with theories, methods and tools for professional software development.

Software engineering is not just concerned with the technical processes of software development but also with activities such as software project management and with the development of tools, methods and theories to support software production.

Software Engineering is the art and science of building significant software systems that are:◦ On Time◦ On Budget◦ With acceptable performance◦ With correct operation

What is software engineering?

Provides following features:

· Reliable· User-friendly· Cost-effective· Efficient· Maintainable

Well-Engineered Software

Diff. Between Software Development and Software Management

Management

Construction

Up Coming Lectures

What is a software process?What is a software process model?

Cost of complete software development and maintenance. Software costs often dominate system costs. The costs of

software on a PC are often greater than the hardware cost Software costs more to maintain than it does to develop. For systems with a long life, maintenance costs may be several

times development costs Roughly 60% of costs are development costs, 40% are testing

costs. For custom software. Costs vary depending on the type of system being developed and

the requirements of system attributes such as performance and system reliability

Distribution of costs depends on the development model that is used

Software Engineering costs

Software systems which are intended to provide automated support for software process activities.

CASE systems are often used for method support

Upper-CASE◦ Tools to support the early process activities of

requirements and designs Lower-CASE

◦ Tools to support later activities such as programming, debugging and testing

What is CASE (Computer-Aided Software Engineering)

Coping with legacy systems ( old, valuable systems must be maintained and updated)

Heterogeneity, systems are required to operate as distributed across networks that include a different type of hardware and software

Delivery, there is increasing pressure for faster delivery of software

What are the key challenges facing software engineering?

top related