Presentation is loading. Please wait.

Presentation is loading. Please wait.

Software Engineering What is Software Engineering? Clearly: developing software But what software? Obvious: PCs, phones … but not all computers have keyboards.

Similar presentations


Presentation on theme: "Software Engineering What is Software Engineering? Clearly: developing software But what software? Obvious: PCs, phones … but not all computers have keyboards."— Presentation transcript:

1 Software Engineering What is Software Engineering? Clearly: developing software But what software? Obvious: PCs, phones … but not all computers have keyboards & displays

2 Software Systems

3

4

5 How big are these systems? SW in consumer appliances doubles every 18 months TV:1,000,000 lines of code DVDRW:2,500,000 lines of code Most consumer devices, washing-machines and so on have a few K of software. F/A-22 (Raptor) fighter: 1.7 million lines of code Avionics for Boeing 787 Dreamliner: 6.5 million lines

6 Embedded Systems Note many of these have no keyboard, display Known as embedded systems

7 Embedded Systems Note many of these have no keyboard, display Known as embedded systems Low-end automobiles: 20 to 30 microprocessors High end: 100 million lines of code Going to 200-300 million Next generation air bags: predict who injured and where

8 How these systems work Alice: programming Defined methods: Each object has methods Properties: color, opacity, vehicle “Real” programming Same concepts: sequence, if, repetition Generally pure text: graphics.draw_rectangle(1, 1, 200, 400); But programming isn’t the whole story!

9 Software Engineering Software Engineering: the application of sound engineering principles and techniques to gather and analyze the requirements for, design/architect, develop, test, and maintain software systems.

10 Software Engineering Software Engineering: the application of sound engineering principles and techniques to gather and analyze the requirements for, design/architect, develop, test, and maintain software systems. Just one part of a project!

11 Software Engineering Software Engineering: the application of sound engineering principles and techniques to gather and analyze the requirements for, design/architect, develop, test, and maintain software systems.

12 Software Engineering Software Engineering: the application of sound engineering principles and techniques to gather and analyze the requirements for, design/architect, develop, test, and maintain software systems.

13 Software Engineering Software Engineering: the application of sound engineering principles and techniques to gather and analyze the requirements for, design/architect, develop, test, and maintain software systems.

14 Software Engineering Software Engineering: the application of sound engineering principles and techniques to gather and analyze the requirements for, design/architect, develop, test, and maintain software systems.

15 Software Engineering Software Engineering: the application of sound engineering principles and techniques to gather and analyze the requirements for, design/architect, develop, test, and maintain software systems.

16 Software Engineering Software Engineering: the application of sound engineering principles and techniques to gather and analyze the requirements for, design/architect, develop, test, and maintain software systems.

17 Software Engineering: the application of sound engineering principles and techniques to gather and analyze the requirements for, design/architect, develop, test, and maintain software systems. Software Engineering

18 CS vs. SE Computer Science Applying scientific method to study of computation & computers Developing new domains, new technologies Software Engineering Applying best practices to solve real problems Often: safety critical areas, large teams

19 Why large teams? Most software systems are extremely complex Often: over 100,000,000 lines of code Thousands of person-years! Must have a solid design, architecture and plan before programming starts

20 Job Prospects Bureau of Labor Statistics 2008-2018 Employment Projections for STEM: SE: 19% 1 SE for every other engineer Total pie: > million jobs

21 Skills needed Solid math skills More importantly: creative problem-solving Requirements: what does the customer need? Design: satisfying the need Development: infinite ways to implement any design – want one that is clear, maintainable Testing: finding errors Other great things Flexible – many telecommute; set hours (within limits) New technologies, languages Learn lots about different areas

22 SE @ UWP Focus on creating safe, reliable, & usable systems built by large teams on time and within budget Emphases: Engineering management, user interfaces Industrial Engineering Embedded systems: real-time, control Electrical or Mechanical Engineering

23 What UWP SE grads are doing Many industries, both within WI and around the world: Mission critical avionics systems for military, Boeing 777 and 787, and Airbus 340 and 380 aircraft Automated warehouse control systems Virtual reality systems for large construction equipment

24 What UWP SE grads are doing Intelligent farm equipment auto-piloted tractors implements that dynamically adjust to the field Medical devices pacemakers, implantable defibrillator bionic limbs Satellite tracking and control software Medical information systems

25 Review SE: systems development in the whole Tasks: requirements, design, test, implement Implementation less than 30% of total effort Areas @ UWP: Embedded systems, Controls, Management Wide variety of careers available Solving real problems for real people!


Download ppt "Software Engineering What is Software Engineering? Clearly: developing software But what software? Obvious: PCs, phones … but not all computers have keyboards."

Similar presentations


Ads by Google