Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

intruduction to software engineering, Lecture notes of Computer Science

To provide an over view about the module and review some SE principles

Typology: Lecture notes

2018/2019

Uploaded on 10/21/2019

jianbin-wang
jianbin-wang 🇬🇧

1 document

1 / 33

Toggle sidebar

Related documents


Partial preview of the text

Download intruduction to software engineering and more Lecture notes Computer Science in PDF only on Docsity! Software Engineering I Week 1 – Introduction and review 30/09/2019 Dr Mohammed Bahja m.bahja@cs.bham.ac.uk https://www.cs.bham.ac.uk/~bahjam/ Lecture Objective To provide an over view about the module and review some SE principles. On successful completion of this module, the student should be able to: 1. Explain the importance of successful requirements definition in commercial software development, identifying the difficulties involved 2. Explain and apply appropriate techniques which help to define clear and unambiguous requirements 3. Explain the basic principles of project management, including the role of the project manager 4. Apply standard techniques in project management 5. Analyse the organisational issues surrounding the development and implementation of systems solutions 6. Identify appropriate interpersonal skills to manage and perform the systems development process more effectively Teaching topics Ø Introduction Ø Software engineering principles Ø Agile software development Ø Requirement engineering Ø Software testing Ø Project management Ø Project planning Ø Configuration management Text books Ø Ian Sommerville, Software Engineering Ø Paul Jorgensen, Software Testing What is Software Engineering? Ø 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. What is Software Engineering? Ø 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 … Why Software Engineering? Ø More and more, individuals and society rely on advanced software systems. We need to be able to produce reliable and trustworthy systems economically and quickly. Ø It is usually cheaper, in the long run, to use software engineering methods and techniques for professional software systems rather than just write programs as a personal programming project. Software crisis! Type of Type of Cost Started ¢ Terminated ¢ Systemname ¢ eo ¢ . Problems orin- ¢ Outcome system region Purchaser (expected) ce? Electronic = eee 1980s 1993 TAURUS trading Kingdom exchange | $008 *8eP, cost overrun. The project was never completed. £75m 2 Cancelled lator pein) (London) Integrated = as Wessex eae 1984 1990 RISP computer Gnadom Health Scope creep, cost overrun. The project was never completed. a Cancelled services (wessex) | Authority = Customer service, Patent and i ver monoket a ee ee raiaectatesenitenrntu te SS aunt Sen administration Office ee J ae " system Beset by delays and ballooning costs, and the software part of it was never finished. The i ‘government was also criticised for not demonstrating value for money. Although the contracts Discontinued, pont NHS Connecting [Electronic 4, Central were drafted to ensure that the contractors would be forced to bear a significant portion of the cost | £12bn rceg Putsome 2002 for Health care records i Gem | Government | ofthe project going wrong if it did go wrong, in realty this did not always happen. The NPfIT was | (£2.3bn) parts o described by Members of Parliament as one of the "worst and most expensive contracting continued fiascos" ever.!°) Military Expeditionary = — a ; ' Outsourced - rif ; r pain aaa Enrpiae ree Ane et cant capabilities ready on time; would have cost $1.1bn more just to gett0 1/4 ofthe | a nctuding ey System — States ac requirements Police case | 5 DKK 500m 7 12 a = i rk h with . 2007 20 ja:Polsag manage! Senmark | Police Did not work property, technical problems with contractor. (70m) | Outsourced | Cancelled ‘Advanced passenger UK Border our 2007 2014 e-Borders = United Aseries of delays. £412m | Outsourced —_Canelled information Agency Kingdom (e742m) programme Dental health Social Forsakringska 1 Outsourced, 2007 2010 cae $82 | service = Insurance Not fit for purpose, multiple delays, cost overrun. en roe Cancelled"! SAP ‘Sweden ($1.18bn)!“! | then insourced system Agency Outsourced, poe Se 2013, the project was judged to be obsolete (as much cheaper commercial off the shelf more than |e" Digital Media production, State By _ Coe - Judged ae insourced, 2008 2013 ati United alternatives by then existed) and was scrapped by BBC management. The BBC Director General | £98m Cancelled bh) media asset Liscdom | broadcaster | «514 it had been a huge waste of money!) (ea1.7m) | mer management" " ° ‘outsourced again The Si ote cme = in caminal United 2009 2013 ores inteligence om Police Force | Not ft for purpose”? £148m | Outsourced Scrapped logging Network Si letwor 9 (Surrey) (SIREN) @ Software Process Ø 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). Software Process Includes: Ø software specification Ø software development Ø software validation Ø software evolution General Process Models By changing the process models, we can affect Ø Development speed Ø Product quality Ø Project visibility Ø Administrative overhead Ø Risk exposure Ø Customer relations Ø … General Process Models Ø There is not any IDEAL model that works for every problem! Ø In practice each organisation develops its own via a hybridisation of multiple abstract processes Ø However... the process must be: reliable, predictable, and efficient. Ø Influencing Factors: Organisation style, People who are involved, Criticality of the system Waterfall model > Derived from military software development processes Requirements definition System and software design Implementation and unit testing Integration and system testing Operation and maintenance Waterfall model is appropriate for Ø Embedded systems The software has to interface with hardware systems Ø Critical systems need for extensive safety and security analysis of the specification and design. Safety-related problems in the specification and design are usually very expensive to correct at the implementation stage. Ø Large software systems part of broader engineering systems developed by several partners Waterfall model is NOT appropriate if Ø informal communication is possible Ø software requirements change quickly Incremental development > Defined to encompass flexibility and change anticipation Concurrent activities tee ge —_—> Initial Specification version Outline | ——» | Intermediate description Development versions ae Final Validation —> version Integration and configuration Ø Requirement specification Ø Software discovery and evaluation Ø Requirements refinement Ø Application system configuration Ø Component adaptation and integration Integration and configuration Pros Ø Reduced costs and risks as less software is developed. Ø Faster delivery and deployment of the system. Integration and configuration Cons Ø Requirement compromises are inevitable Ø Loss of control over evolution of reused system components
Docsity logo



Copyright © 2024 Ladybird Srl - Via Leonardo da Vinci 16, 10126, Torino, Italy - VAT 10816460017 - All rights reserved