

























Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
To provide an over view about the module and review some SE principles
Typology: Lecture notes
1 / 33
This page cannot be seen from the preview
Don't miss anything!


























Week 1 – Introduction and review 30/09/ Dr Mohammed Bahja [email protected] https://www.cs.bham.ac.uk/~bahjam/
Ø Show the need for professional discipline and effective management throughout the software development process Ø Show the importance of teamwork and good interpersonal skills in successful software development Ø Give an appreciation of the importance of requirements engineering as the first phase of the software development process
On successful completion of this module, the student should be able to:
Ø Ian Sommerville, Software Engineering Ø Paul Jorgensen, Software Testing
Ø final mark = 1.5 hour final exam (80%) + continuous assessment (20%) Continuous assessment: Ø Assignment 0 (formative 0%) : Out Week 2 deadline Week 4 Software engineering principles Agile software development Ø Assignment 2 (Summative 10%): Out Week 4 deadline week 7 Requirements engendering Ø Assignment 3 (Summative 10%): Out Week 7 deadline week 10 Software testing Software project management
Ø Engineering discipline that is concerned with all aspects of software production. What is the difference between software engineering and computer science? Ø Computer science focuses on theory and fundamentals. Ø Software engineering is concerned with the practicalities of developing and delivering useful software.
Ø Engineering discipline that is concerned with all aspects of software production. What are the aspects of software production? software requirement software design software testing software maintenance software configuration management software engineering management software engineering processes, tools and methods software quality …
Ø Avoids software crisis! (over budget, late, doesn’t meet customer’s needs, functional, performance, quality, …) Ø The answer to the software crisis was software engineering, i.e., theories, techniques, tools together with methodologies, management, and organisation.
Ø Programming is a personal (or pair) activity. Ø Software engineering is a team activity.
Ø Systematic approach which is a sequence of activities to produce a software product. Ø Simplified representation of a software process is called software process model or software development life cycle (SDLC).
Includes: Ø software specification Ø software development Ø software validation Ø software evolution
Ø Code-and-fix Ø Spiral Ø Rapid prototyping Ø Unified Process (UP) Ø Agile —> XP Ø …
By changing the process models, we can affect Ø Development speed Ø Product quality Ø Project visibility Ø Administrative overhead Ø Risk exposure Ø Customer relations Ø …