Software Engineering Discussion
Software EngineeringPart 1: Explain the KISS PrincipleExplain the KISS principle.Give an example of an actual situation where the KISS principle was ignored and the resulting consequences. Give an example of a real situation when the KISS principle was followed and the consequences.Software EngineeringPart 2: Respond to two peersPeer 1 MeganKISS is one of the most widely understood acronyms. In the context of Software Engineering it stands for Keep It Simple and Stupid. As a design principle it is going to favor an approach that is simple, straightforward, and easy to understand design. For Object Oriented Programming, this is referring to creating “Stupid Objects.” Stupid objects are defined as ones that don’t ask questions when processing a request and only knows how to do one thing. The book goes on to explain how this approach is best followed. One of the examples provided talks about a computing program where the user selects check boxes for what arithmetic it wants the program to perform. The first approach which would not be following the KISS principles creates an object that uses a series of cases to run the arithmetic. With this approach too many questions are asked . Instead following th KISS principle subclasses would be created that run each check box and therefore only knows how to do one 1 thing.Peer 2 ShephenEver since I had joined the military in 2004, I have heard of the KISS principle. While it was used in different context, it holds much of the same principle. KISS stands for keep it simple and stupid. In the military, we used the term to make it easy to accomplish missions and not to get over taken by your own thought process. It favors a much more of a straightforward and simple design type. In reference to software engineering, it speaks of objects that are simple; such as using a series of conditional statements. This principle is something for software engineers and developers to get out of a traditional way of over complicating processes.KISS is successfully in many different areas of object-oriented software engineering/development. One case could be a refined code for an entire class. Instead of having 20 lines of code, a developer or team could refine the code to just a few lines of code that performs the same function. The important notice to caution for using the KISS principle is that the developers should never compromise the functionality of the final design to keeping it simple. The final design of the product should still follow the business requirements that were established prior.