Concept explainers
Soft Skills
44. Your company’s software is a market leader but is proving difficult to maintain because it was written in C without using object-oriented concepts. Customers have identified problems with the software that must be fixed immediately and have pointed out features in competitors’ products that they want you to support. The best solution will require a complete OOP redesign and subsequent implementation but will take three years. Write a memo to company management outlining your recommendation for the course of action the company should pursue.
Want to see the full answer?
Check out a sample textbook solutionChapter 11 Solutions
Starting Out with C++: Early Objects (9th Edition)
Additional Engineering Textbook Solutions
Objects First with Java: A Practical Introduction Using BlueJ (6th Edition)
Java How To Program (Early Objects)
Starting Out With Visual Basic (7th Edition)
Starting Out with Python (3rd Edition)
Artificial Intelligence: A Modern Approach
Starting Out with Java: Early Objects (6th Edition)
- What are some of the challenges you've encountered in testing object-oriented software?arrow_forwardPart 3 After you submit our technical assessment, the next step in the interview is a skype call. with senior software engineering from the company, inthis interview, they will ask you the following questions, make sure to prepare and draft all answers to be well prepared. 1. Clarify the following programming paradigms: Object oriented programming, Event driven programming, and Procedural programming. 2. Show the interviewers how you can distinguish between the three programming paradigms in terms of code. 3. Finally, review a source code example for every programming paradigm and list 3 characteristics of your findings for every programming paradigm.arrow_forwardOnly number 2 questionarrow_forward
- Does using an open-source language have any advantages or disadvantages over using a proprietary programming language? To put it another way, try to envision how your company's software development requirements would be handled if you were the language creator, the programmer, and the company that utilizes the language.arrow_forwardFacts: Software design is the process of defining software methods, functions, objects, and the overall structure and interaction of your code so that the resulting functionality will satisfy your user's requirements. There are many different ways of designing software, almost all of which involve coming up with an initial design and refining it as necessary. Different developers prefer different amounts of design upfront or during the implementation phase. Generally, the overall design should be well thought out and reviewed before coding starts. Refer to our section on Design reviews to learn how to review your design. It is easier to try out different designs upfront and discover problems early in the development cycle than to make a major design change after much of the code has been written. Your software design should include a description of the overall architecture. This should include the hardware, databases, and third-party frameworks your software will use or interact with.…arrow_forwardOne of the advantages of writing a program that is subdivided into methods is that such a structure provides the opportunity for different programmers to write separate methods, thus dividing the work. With this concept in mind, answer the following questions: Would you prefer to write a large program by yourself or work in a team in which each programmer produces one or more modules? Why? What challenges would you foresee in working with a large development team? What methods might you employ to overcome or manage these challenges?arrow_forward
- Explain the benefits and drawbacks of using C++ and Visual Studio in a coding project. Explain the benefits and drawbacks of using Java and Eclipse Describe the advantages of being able to code in multiple coding languages and compilers. Note: Consider the module resources to answer this questionarrow_forward1a. How is a Python application compiled? What is needed to go from creating source code to a running program? 1b. What is an Integrated Development Environment (IDE)? What Python IDE’s are available?arrow_forwardWhat are some of the disadvantages of employing a technique that is object-oriented?arrow_forward
- The topic of whether programmers have an obligation to create code that can be maintained regardless of the choice made by the company in which they work is brought up by this.arrow_forwardThis raises the question of whether or not programmers have a moral or ethical duty to write code that can be maintained even if the corporation that employs them decides not to.arrow_forwardThe software industry interchangeably uses the terms "cohesion" and "coupling."arrow_forward
- Database System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- C How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education