Presentation is loading. Please wait.

Presentation is loading. Please wait.

Slide 1 CS 310 Software Engineering Professor C. Shilepsky Spring 2008 Chapter 1 u define software engineering.

Similar presentations


Presentation on theme: "Slide 1 CS 310 Software Engineering Professor C. Shilepsky Spring 2008 Chapter 1 u define software engineering."— Presentation transcript:

1 Slide 1 CS 310 Software Engineering Professor C. Shilepsky Spring 2008 http://aurora.wells.edu/~ccs/310/cs310.htm Chapter 1 u define software engineering and explore its importance u professional and ethical responsibility

2 Slide 2 How This Course Differs From 132 and 330 Emphasis on planning and management how would you develop a network for Wells? Tools to manage complexity a wonderful collection of methods and models Technical documentation how would you document the Wells network? No coding

3 Slide 3 1.1.1 What is Software Generic products stand-alone systems which are produced by a development organization and sold on the open market to any customer Bespoke (customized) products systems which are commissioned by a specific customer and developed specially by a contractor Most money spent on generic products but most development effort is on bespoke systems Current emphasis on embedded or adapted COTS (commercial-off-the-shelf-software) web services (XML, SOAP)

4 Slide 4 The systematic, disciplined, and quantifiable approach to the development, operation, maintenance and retirement of software Not about programming rather everything that goes into developing large systems Engineering: making things work About managing complexity how do people build a system whose complexity exceeds the capacity of any one person to understand it 1.1.2 What is Software Engineering

5 Slide 5 Many systems are software controlled Economies of ALL developed nations depend on software Software expenditures are a significant fraction of the GNP Problem: software is consistently late, over budget, and buggy why? Why is Software Engineering Important?

6 Slide 6 CS, SE, and System Engineering Computer science: theories and models that underlie computers e.g. data structures, discrete math, analysis of algorithms... Software engineering: how to build a software system CS theory not enough e.g. flight-control software System engineering: how to build a complex system that may include software e.g. an airplane has hardware and software

7 Slide 7 1.1.5 Software Process Activities required to develop a software system specification (what are the requirements) development (design and code) validation (test) evolution Variation depending on the organization and the type of system being developed 1.1.6 software process model - later

8 Slide 8 1.1.8 Software Engineering Methods Approaches to development CS 132 methods: functional decomposition object-oriented programming Some are a bit like religion 1.1.9 Computer Aided Software Eng. (CASE) Tools to assist development E.g. the C++ development environment There is more

9 Slide 9 1.1.10 Software Product Attributes Maintainability: software should be able to evolve to meet changing requirements Dependability: software should not cause physical or economic damage in the event of failure Efficiency software should not waste system resources Usability software should have an appropriate user interface and documentation

10 Slide 10 1.1.11 Software Engineering Challenges Legacy systems it is difficult to maintain and update old systems Heterogeneity systems need to operate on different hardware in different environments Delivery it takes longer to build a good system than customers want to allow What else?

11 Slide 11 1.2 Professional and Ethical Responsibility What do these mean? confidentiality competence intellectual property rights computer misuse Have you ever run into a question with one of them? What would you deal with the following? disagreement with the scheduling practices of senior management release of a safety-critical system without finishing system testing developing military weapons systems or systems for chemical warfare

12 Slide 12 Miscellaneous Examples I will use (from Digicomp Research) u Air surveillance and control system radars gather information about planes in their area system integrates airplane plots and tracks to present an air picture to controllers who manage different spaces u MH54J helicopter avionics sensor information (altitude, speed, direction) and pilot flight plan and commands integrated to manage the helicopter Some text and figures in the slides are from Sommerville


Download ppt "Slide 1 CS 310 Software Engineering Professor C. Shilepsky Spring 2008 Chapter 1 u define software engineering."

Similar presentations


Ads by Google