Lecture11object-orienteddesign_4up - Software Development...

Info icon This preview shows pages 1–3. Sign up to view the full content.

CMPT 126: Lecture 8 Object-Oriented Design Tamara Smyth, [email protected] School of Computing Science, Simon Fraser University November 13, 2007 1 Software Development Activities When the code for your programs starts getting big, with numerous .java files, you will have to start thinking about how to manage it all. Software development effort consists of four basic development activities 1. establishing the requirements: 2. creating a design 3. implementing the design 4. testing CMPT 126: Object-Oriented Design, Lecture 8 2 Establishing the requirements Software requirements : a clear expression of the programming problem specification of what a program must accomplish often using a document called functional specification . usually specified by a client , though often modified throughout the project in conjunction with the programmer often address user interface issues: output format, screen layouts, GUI components, etc. may apply constraints to your program (such as computer resources) CMPT 126: Object-Oriented Design, Lecture 8 3 Software Design A software design : indicates how a program will accomplish its requirements. may deal with how methods accomplish their tasks (in a low-level design) allows alternatives to be considered and explored (before all the effort goes into implementation). In an object orientated design, the following is specified: * the classes and objects needed in a program * the interaction of the objects and the relationships among the classes CMPT 126: Object-Oriented Design, Lecture 8 4
Image of page 1

Info icon This preview has intentionally blurred sections. Sign up to view the full version.

Implementation Implementation is the process of writing the source code that will solve the problem. More precisely: the act of translating the design into a programming language should be the “least creative” of all development activities important decisions are already established CMPT 126: Object-Oriented Design, Lecture 8 5 Testing Finding the bugs! Testing is the act of ensuring that a program solves the problem successfully, given all the established constraints. Among other things, it involves running the program several times under several different conditions, and then scrutinizing the results. CMPT 126: Object-Oriented Design, Lecture 8 6 Identifying Classes and Objects A fundamental part of object-oriented software design is determining the classes that will contribute to the program. These classes determine the objects that we will manage in the system. To identify potential classes, identify objects discussed in the program requirements. CMPT 126: Object-Oriented Design, Lecture 8 7 Look for Nouns in Problem Description Objects are generally nouns; the nouns in a problem description may indicate some of the classes and objects needed in a program.
Image of page 2
Image of page 3
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}

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