30
INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR

INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR

Embed Size (px)

Citation preview

Page 1: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR

INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETYSESSION 20 – HOW SOFTWARE IS MADE

SEAN J. TAYLOR

Page 2: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR

ADMINISTRATIVIA

• Assignment 4 solution is posted

• Group Project 1 is posted

• Site traffic and websites

• Office hours moved:Tuesday 3:30 – 5:30 (KMC 8-191)

• Office hours next week:Friday 3:30 – 5:30 (KMC 8-191)

Page 3: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR

LEARNING OBJECTIVES

• Explain why software engineering is difficult.

• Understand the process by which software product are created.

Page 4: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR

WHAT IS SOFTWARE?

Page 5: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR

INTERNAL SYSTEMS

• Accounting/billing

• Trading systems

• Human resources

• Customer relationship management

• Data mining

• Product/inventory management

• MANY MORE

Page 6: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR

BUILD OR BUY?

WHY BUY?

• Time to use

• External support

• No risk of project failure

• Upgrades

• Network effects

WHY BUILD?

• Customized, all requirements met

Page 7: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR

WHAT ARE THE COSTS?

Page 8: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR

SAAS:SOFTWARE AS A SERVICE

• software and associated data are centrally hosted on the cloud

• typically accessed by users using a thin client via a web browser

• $10B in sales in 2010

• accounting, customer relationship management (CRM)

• enterprise resource planning (ERP), invoicing

• human resource management (HRM), content management (CM)

Page 9: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR

ESSENTIAL DIFFICULTIES

1. Complexity

• Hard to manage large teams• Hard to understand system, side-effects

2. Conformity

• Software is expected to meet all users’ needs3. Changeability

• Pressure/ability to change4. Invisibility

• No way to see it all at once, visually

Page 10: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR

PAST BREAKTHROUGHS

• High-level languages

• Solve common problems and allow programmers to think less about how computer executes instructions

• (time-sharing)

• Unified programming environments

• Standardize how programmers work, make key decisions in advance

Page 11: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR

HOPES FOR SILVER• Even higher-level languages: more expressive

• Object-oriented programming: re-usability of components

• Artificial intelligence: teach computers to do what programmers do

• Expert systems: use “rules” to improve development

• “Automatic” programming: generate a program from a problem

• Graphical programming: a visual metaphor for the program

• Program verification: find bugs before users do

• Environments and tools: reduce errors and streamline workflow

Page 12: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR

METHODOLOGIES

Structure imposed on how software is developed.

1. Waterfall Model

2. Agile Methodology

3. Many more: RAD, TDD, Spiral

Page 13: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR

WATERFALL MODEL

Page 14: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR

“THE HARDEST SINGLE PART OF BUILDING A SOFTWARE SYSTEM IS DECIDING PRECISELY WHAT TO BUILD.” -- BROOKS

REQUIREMENTS

Page 15: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR
Page 16: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR

SYSTEM DESIGN

Page 17: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR

OUTPUT: SPECIFICATION

Page 18: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR

IMPLEMENTATION

Page 19: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR
Page 20: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR
Page 21: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR

VERSION CONTROL

Page 22: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR

VERSION CONTROL SYSTEMS

Page 23: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR
Page 24: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR
Page 25: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR

VERIFICATION

Page 26: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR
Page 27: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR

MAINTENANCE

1. Add new features

2. Fix bugs as they come up

3. Improve performance

4. Scale to more users/data

Page 28: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR

“AGILE” METHODOLOGY

Page 29: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR

“THE MYTHICAL MAN-MONTH”

Page 30: INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR

NEXT CLASS:MOBILE AND LOCATION

Work on G1