80 likes | 162 Views
Software Engineering. Introduction. House Keeping. Classes: Tuesdays & Thursdays 8:30 – 10:00 am Groups: We will work in a group of 3 Sessions will be highly interactive! Prior learning is recommended Quizzes will be unannounced 100 hours of unsupervised study is planned
E N D
Software Engineering Introduction
House Keeping • Classes: Tuesdays & Thursdays 8:30 – 10:00 am • Groups: We will work in a group of 3 • Sessions will be highly interactive! • Prior learning is recommended • Quizzes will be unannounced • 100 hours of unsupervised study is planned • Hands on training of UML (workshop)
Course Description • This course is about the overview of developing real-world software. Software systems are among the most complex artefacts that humans build. However their failure rate is also high and expensive. Software engineering tackles the size and complexity of real-world software development by adopting a disciplined approach to designing, developing and maintaining the software. • The course presents a broad overview of the main ideas of software engineering and introduces current software engineering techniques. The course has a strongly practical flavour, including a group project that emphasizes systems analysis. UML is used as standard notation for modelling and will be used extensively in this course.
Learning Outcomes • Models of the Software Development Process. • Structured Analysis and Object Modelling techniques in the Software Development Process. • The use of CASE tools as an aid to Object Modelling • Software testing, particularly module testing techniques
Practical Skills • Describe two or more development methodologies. • Estimate and plan a small to medium project. • Use a CASE tool. • Do Use Case and UML modelling for a simple system. • Select test cases for a software module.
Topics Covered • Design to Implementation • Validation and Verification • Black box testing • White box testing • Integration Testing strategies • Project Planning and Management • Function Point Analysis • COCOMO and other estimation method • Introduction and Overview • Waterfall model • Spiral model • Prototyping and incremental development • Requirements Analysis • Structured Methods • ER-Diagrams • DFD and ELH Diagrams • CASE tools and UML diagrams • Object Oriented Methods • Architecture and Systems Integration
Text Book • Roger S. Pressman, Software Engineering: A practitioner’s approach Seventh Edition, McGraw Hill Higher Education • Reference books: • Ian Sommerville, Software Engineering, Addison Wesley, • Shari Lawrence Pfleeger, Software Engineering Theory and Practice, Prentice Hall, • S. Bennett, J. Skelton, et al. (2001). Schaum's outline of UML, McGraw-Hil