Software Engineering Goals Reliability Reliability An unreliable life critical

Software engineering goals reliability reliability an

This preview shows page 28 - 36 out of 44 pages.

Software Engineering Goals Reliability Reliability An unreliable life-critical system can be fatal Cost Effectiveness Cost Effectiveness Cost to develop and maintain should not exceed profit Understandability Understandability Future development is difficult if software is hard to understand Adaptability Adaptability System that is adaptive is easier to alter and expand Reusability Reusability Improves reliability, maintainability, and profitability
Image of page 28
Software Engineering Principles Abstraction Abstraction Extract the relevant properties while ignoring inessentials Encapsulation Encapsulation Hide and protect essential information through a controlled interface Modularity Modularity Dividing an object into smaller modules so that it is easier to understand and manipulate Hierarchy Ranking or ordering of objects based on some relationship between them
Image of page 29
Abstraction Extract the relevant object properties while ignoring inessentials Defines a view of the object Price? Oil change? Example - car Car dealer views a car from selling features standpoint Price, length of warranty, color, … Mechanic views a car from systems maintenance standpoint Size of the oil filter, type of spark plugs, …
Image of page 30
Encapsulation Steps Decompose an object into parts Hide and protect essential information Supply interface that allows information to be modified in a controlled and useful manner Internal representation can be changed without affecting other system parts Example - car radio Interface consists of controls and power and antenna connectors The details of how it works is hidden To install and use a radio Do not need to know anything about the radio’s electronics
Image of page 31
Modularity Dividing an object into smaller pieces or modules so that the object is easier to understand and manipulate Most complex systems are modular Example - Automobile can be decomposed into subsystems Cooling system Radiator Thermostat Water pump Ignition system Battery Starter Spark plugs
Image of page 32
Hierarchy Hierarchy Ranking or ordering of objects based on some relationship between them Help us understand complex systems Example - a company hierarchy helps employees understand the company and their positions within it For complex systems, a useful way of ordering similar abstractions is a taxonomy from least general to most general
Image of page 33
OOD and OOP OOD and OOP (Object-Oriented Design & Object-Oriented Programming) Object-oriented design and programming methodology supports good software engineering. Thinking about software in a way that models Thinking about software in a way that models the way we think about and interact with the the way we think about and interact with the real world real world
Image of page 34
OOD and OOP OOD and OOP (Object-Oriented Design & Object-Oriented Programming) What is Objects ?
Image of page 35
Image of page 36

You've reached the end of your free preview.

Want to read all 44 pages?

What students are saying

  • Left Quote Icon

    As a current student on this bumpy collegiate pathway, I stumbled upon Course Hero, where I can find study resources for nearly all my courses, get online help from tutors 24/7, and even share my old projects, papers, and lecture notes with other students.

    Student Picture

    Kiran Temple University Fox School of Business ‘17, Course Hero Intern

  • Left Quote Icon

    I cannot even describe how much Course Hero helped me this summer. It’s truly become something I can always rely on and help me. In the end, I was not only able to survive summer classes, but I was able to thrive thanks to Course Hero.

    Student Picture

    Dana University of Pennsylvania ‘17, Course Hero Intern

  • Left Quote Icon

    The ability to access any university’s resources through Course Hero proved invaluable in my case. I was behind on Tulane coursework and actually used UCLA’s materials to help me move forward and get everything together on time.

    Student Picture

    Jill Tulane University ‘16, Course Hero Intern

Stuck? We have tutors online 24/7 who can help you get unstuck.
A+ icon
Ask Expert Tutors You can ask You can ask You can ask (will expire )
Answers in as fast as 15 minutes