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
Community
Ask the community for help and clear up your study doubts
Discover the best universities in your country according to Docsity users
Free resources
Download our free guides on studying techniques, anxiety management strategies, and thesis advice from Docsity tutors
Software engineering is about the development and application of processes and tools for managing the complexities inherent in creating high quality software systems. It introduces the fundamental software engineering concepts and terminology. This lecture includes: Introduction, Software, Engineering, Learning, Outcome, Requirements, Analysis, Architecture, Design, Implementation
Typology: Slides
1 / 46
2 Email: [email protected] Office 9085 2150 & 2151 Room No. : 105 , A Block LMS for course material Software Engineering - 2011
4 Books^ Somerville, Ian. Software Engineering, 8th Edition, Addison-Wesley, 2006 R.S. Pressman, Software Engineering: A Practitioner's Approach , 6th ed., McGraw-Hill Book Co., NY, 2005 Policies^ Attendance policy Mobile phone usage Assignment submission Quizzes Fines Plagiarism policy Important Rule – Don’t Cheat! (There will not be a 2 nd warning) Software Engineering - 2011
5 Students will be able to evaluate software engineeringtechniques and approaches. "It is important that students bring a certain ragamuffin barefoot irreverence totheir studies. They are here not to worship what is known, but to question it."
- Jacob Bronowski, The Ascent of Man Students will be able to exercise professional judgment inselecting an approach for a particular project based on anunderstanding of:^ How the present state of software practice came about What was tried in the past What worked and what did not work Why Software Engineering - 2011
Evolving Role of Software Software Process Models Software Configuration management Requirements Analysis Use-Case Fundamentals UML Notations Actor-Goal Lists Class Diagrams Sequence Diagrams Architecture Architectural Patterns Decision Tables User Interface Design Facts and Fallacies of Software Engineering Software Engineering IThis Semester Software Engineering IINext Semester
8 “Its not just oil – its liquid engineering
Caltex Advertisement Why did theyuse the term“ liquid engineering ” ??? Software Engineering - 2011
10 An Exercise: List all the ways in which^ Building a tinker-toy car for fun is different from designing a newautomobile Building a tree-house is different from the architecture of a high-rise office building So, how might software “engineering” be different fromwriting a 50-line Java applet? Software Engineering - 2011
1-
Product^ CS201 (Operating Systems) CS425 (Distributed Computing) ... Process^ ISE103 (Computer Programming) CS340/350 (Software Engineering I/II) CS860 (Object Oriented Analysis & Design) People
1-
Size: large Interactiveness: high Requirements: frequent new features Reliability: moderate Security: low (at least used to be) Portability: high Cost: high
1-
Size: moderate to large Interactiveness: low Requirements: stable Reliability: very high Security: low Portability: low Cost: high
1-
Size: Interactiveness: Requirements: Reliability: Security: Portability: Cost:
Why learn Software Engineering? 17 It is a means to an end, not an end in itself! “You lift weights so that you can knock over a defensive lineman, or carry your groceries orlift your grandchildren without being sore the next day. You do math exercises so that you canimprove your ability to think logically, so that you can be a better lawyer, doctor, architect,prison warden or parent. MATH IS MENTAL WEIGHT TRAINING. It is a means to an end, (formost people), not an end in itself.” “Made to Stick” Chip Heath and Dan Heath Similarly you are not necessarily learning software engineering to engineersoftwares. By the end of this course, you will be trained on how to carry outa project successfully, how to communicate with the stakeholders & how totransform this communication into powerful models which will lead to awinning product. Moreover you will also learn how to test these models &how to evaluate risks at every stage of the development process. Software Engineering - 2011
Software Engineering 19 What is Software?^ The programs, routines, and symbolic languages that control thefunctioning of the hardware and direct its operation. A set of instructions that cause a computer to perform one or moretasks. The set of instructions is often called a program or, if the setis particularly large and complex, a system. Programs are written in programming languages, especiallydesigned to facilitate the creation of software Packaged software such as word processors, spreadsheets, graphicsand drawing tools, email systems, and games are widely availableand used Software Engineering - 2011
Software costs often dominate computer systemcosts. The costs of software on a PC are oftengreater than the hardware cost. Software costs more to maintain than it does todevelop. For systems with a long life, maintenancecosts may be several times development costs. Software engineering is concerned with cost-effective software development.