Download presentation
Presentation is loading. Please wait.
Published byBeatrice Shields Modified over 9 years ago
1
What is Software? Computer programs and associated documentation such as requirements, design models and user manuals Software products may be developed for a particular customer or may be developed for a general market Software products may be Generic - developed to be sold to a range of different customers e.g. PC software such as Excel or Word Customised - developed for a single customer according to their specification New software can be created by developing new programs, configuring generic software systems or reusing existing software
2
Software Today More and more systems are software controlled It has been said that modern aircrafts are simply computers with wings. E.g., the Boeing 777 has more than 4 million lines of code to control subsystems and aid pilots in flight management
3
Software costs Software costs often dominate computer 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.
4
What Is a Software Project? Projects are a balance of three dimensions, with the goal of producing a successful deliverable FEATURES TIME RESOURCES SOFTWARE DELIVERABLE
5
The Goal of Building Software A successful deliverable is characterized by being: on time on budget with good quality “We do three types of jobs here... Good, Fast and Cheap. You may choose any two!”
6
“Code-and-fix” Model
7
The Fate of Software Projects in Industry: Question Failing rate of Software project in Industry? Guess the range: a) 0-20% b) 20-40% c) 40-60% d) 60-80% e) 80-100%
8
The “Software Crisis” Refers to our inability to produce or maintain high-quality software at a reasonable price and on schedule. “Software crisis” coined by Friedrich Bauer at the 1 st NATO Software Engineering Conference (1968) Ill-defined term that usually includes Software projects are late and over-budget Software doesn’t meet user needs Software quality is low Software is hard to manage Software is hard maintain Software engineering isn’t “real” engineering Software improves much more slowly than hardware (we have no Moore’s Law)
9
Software Engineering Software engineering is concerned with theories, methods and tools for professional cost-effective software development. Chapter 1 Introduction9
10
Software engineering Software engineering is an engineering discipline that is concerned with all aspects of software production from the early stages of system specification through to maintaining the system after it has gone into use. Engineering discipline Using appropriate theories and methods to solve problems bearing in mind organizational and financial constraints. All aspects of software production Not just technical process of development. Also project management and the development of tools, methods etc. to support software production. Chapter 1 Introduction10
11
Importance of software engineering More and more, individuals and society rely on advanced software systems. We need to be able to produce reliable and trustworthy systems economically and quickly. It is usually cheaper, in the long run, to use software engineering methods and techniques for software systems rather than just write the programs as if it was a personal programming project. For most types of system, the majority of costs are the costs of changing the software after it has gone into use. Chapter 1 Introduction11
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.