© Monica Farrow & Andrew Ireland Software Design F28SD2 Future Horizons Monica Farrow & Andrew...

20
© Monica Farrow & Andrew Ireland Software Design F28SD2 Future Horizons Monica Farrow & Andrew Ireland School of Mathematical & Computer Sciences Heriot-Watt University Edinburgh

Transcript of © Monica Farrow & Andrew Ireland Software Design F28SD2 Future Horizons Monica Farrow & Andrew...

© Monica Farrow & Andrew IrelandSoftware Design F28SD2

Future Horizons

Monica Farrow & Andrew IrelandSchool of Mathematical & Computer Sciences

Heriot-Watt UniversityEdinburgh

© Monica Farrow & Andrew IrelandSoftware Design F28SD2

Weeks 11 & 12

• What remains to be covered?• How would you like us to focus the

revision?• Where does this module lead?

© Monica Farrow & Andrew IrelandSoftware Design F28SD2

Short-term Schedule• March 25th, 12.15: Open Session• March 26th, 15.15:

• Recap & Revision on Dynamic & Static

analysis (Andrew & CS stream)• Don’t come (Monica & IS stream)

• March 31st, 12.15: UML Revision (Monica)• April 1st, 12.15: Design Revision (Andrew)• April 2nd, 15.15: Coursework Feedback

© Monica Farrow & Andrew IrelandSoftware Design F28SD2

Longer-term Roadmap

Year 3

Year 4

Year 5

BSc

BSc Hon

MEng

© Monica Farrow & Andrew IrelandSoftware Design F28SD2

3rd Year Group Project - A complete system

Web Browser for external use

Server Program with

Functionality Code

DataRepository

e.g. Database

Response e.g. htmlfor display

ManagementPrograms

(application in e.g. java

or maybe also a web app)

Data Management(updates)

Customer e-mail

Manager Reports

Queries (e.g. SQL)

Data/Success?

Request with parametersmaybe from forms

Search Order

Queries (e.g. SQL)

Data/Success?

EtcBrowse

© Monica Farrow & Andrew IrelandSoftware Design F28SD2

3rd Year Group Project

Software DesignUML and testing

Database ManagementSystems

InteractionDesign

InternetCommunicationAnd mobility

Software Engineering

Group Project

VariousProgrammingmodules

© Monica Farrow & Andrew IrelandSoftware Design F28SD2

3rd year group project

• Groups of 6 or 7– Topic and group members pre-allocated

• Spread throughout the year– Synoptic with Software Engineering and

Professional Development

© Monica Farrow & Andrew IrelandSoftware Design F28SD2

What is Software Engineering?

• It is concerned with the practical problems of producing software

• It is an engineering discipline concerned with all aspects of software production from specification to maintenance– Choose the most appropriate tools– Work systematically– Organisational and financial constraints

From Sommerville Ch1

© Monica Farrow & Andrew IrelandSoftware Design F28SD2

Purpose of SE Module• This module supports your work in the

group project, the 4th year project, and beyond– Combines topics of project management with

software engineering– builds on your previous programming

experience– and provides you with further tools and

methodological approaches to support your work in your major group project.

• Useful for 4th year project (and beyond)

© Monica Farrow & Andrew IrelandSoftware Design F28SD2

Dependency/Precedence Relationships in Gantt chart

© Monica Farrow & Andrew IrelandSoftware Design F28SD2

Cost Estimate

Schwalbe IT Project management Ch 7

© Monica Farrow & Andrew IrelandSoftware Design F28SD2

The risk management process

Risk avoidanceand contingency

plans

Risk planning

Prioritised risklist

Risk analysis

List of potentialrisks

Riskidentification

Riskassessment

Riskmonitoring

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 5 Slide 27

© Monica Farrow & Andrew IrelandSoftware Design F28SD2

The requirements engineering process

Feasibilitystudy

Requirementselicitation and

analysisRequirementsspecification

Requirementsvalidation

Feasibilityreport

Systemmodels

User and systemrequirements

Requirementsdocument

© Monica Farrow & Andrew IrelandSoftware Design F28SD2

Waterfall process modelRequirements capture

System and software design

Implementation and unit testing Integration

and system testing

Operation and maintenance

You’ll find slightly differentversions elsewhere.

© Monica Farrow & Andrew IrelandSoftware Design F28SD2

Boehm’s spiral model

© Monica Farrow & Andrew IrelandSoftware Design F28SD2

SCRUM – an agile process

Other diagrams show 2-4 weeksRather than 30 days

© Monica Farrow & Andrew IrelandSoftware Design F28SD2

Year 3: CS, IS & SE

• Software Engineering Group Project– Software Engineering– Professional Development

• Computer Science & SE:– Formal Specification

• Information Systems:– Socio-Technical & Soft System

© Monica Farrow & Andrew IrelandSoftware Design F28SD2

Year 4: CS, IS & SE • Computer Science & SE:

– Automated Software Engineering– Distributed Systems Programming

• Information Systems:– Process Design & Improvement

• CS & IS:– Advanced Interaction Design– Information Systems Methodologies– Dissertation Project

© Monica Farrow & Andrew IrelandSoftware Design F28SD2

Year 5: SE

• Industrial Placement

• Design & Code Group Project

• Software Engineering Master Class

© Monica Farrow & Andrew IrelandSoftware Design F28SD2

Questions?