Ied Reverse Engineering Project

0 views
Skip to first unread message

Jule Kue

unread,
Aug 5, 2024, 2:46:22 AM8/5/24
to ashawmeni
Becauseof that, we accept many kinds of projects from different fields & I am currently facing a huge issue where our client wants us to build an Accounting Software. So in this case our project manager gives us a sample Accounting Software & we are tasked to study the behavior & gather requirements ourselves in order for us to develop such software.

The issue is that I don't know accounting at all. I have to spend a lot of time learning & guessing how the given software works. I don't think I can even make the deadline at this rate. I don't know if this is the right way to do things.


Our past projects weren't successful at all & I'm beginning to doubt whether I'm a capable developer myself after spending more than 3 years in this particular company & experiencing such project failures.


While it's not uncommon at all to involve reverse engineering as part of the requirements gathering process, having it be the only step (or, one of the only two steps with the other being 'let the developers guess') is almost certainly doomed to failure.


Your responsibility in such a situation is to inform your manager of the risk to the project. If you do not believe the deadline can be reached, inform the manager. If you believe you will miss or misinterpret key features the client needs, inform the manager.


BTW: By simply creating copy-cat products and reinventing the wheel, you are not going to get any good products. You are trying to rewrite products that have been out there for many development cycles and are way ahead of you.


Today, we will learn about reverse engineering through a video that I'm about to show you. In the meantime, think about what reverse engineering might mean. The Khan Academy website shows the process of reverse engineering on a few different devices; we will watch the one about tap lights. This video is about six minutes long, and I expect you to pay close attention.


Slide 1: From the video you just saw, what is reverse engineering? And why is it important? (Listen to student explanations and ideas.) Reverse engineering is the process of taking apart an object. But why do engineers use this process?


Slide 2: Reverse engineering is a way to help us fully understand a device. We do this to learn how a product works. It is a way to study a device so we learn the details of its construction and operation. This is useful if we want to repair, duplicate or improve the product. Why might we want to improve a product? Improvements might be to reduce its cost or increase its efficiency or reliability or adjust its suitability for specific purposes. For example, within the Apple company, someone had the idea to make the fourth-generation iPod smaller (aka iPod Nano) in order to make the device better for people who like to run with it and prefer that it be smaller and lighter. As you can guess, we are going to embark on a reverse engineering project. As I will explain later in more detail, you will work in groups of one, two or three students to reverse engineer a device that you choose.


Slide 3: In the context of an engineering project, what is a proposal? Is it when a person proposes marriage to someone? (Wait for students to respond.) Well that's a different kind of proposal! In the context of research and engineering, a proposal is a description of the work someone intends to complete on a project. But why? Often, a proposal is for a project that is expensive and/or time-consuming, so the proposal seeks approval before the work begins. For example, in a company, a manager might be required to approve a proposal before the project can move forward.


Use the bullet points on this slide to guide you in preparing your proposal, which is due by [Day 2]. Make sure you answer these questions: What is your project? (Describe the device and its cost and source.) What does the device do? How are you going to take it apart? What tools do you need? How many parts do you think it contains? What kinds of parts do you think you will find inside? Also make a rough sketch of the overall device.


Slide 4: Depending on what you bring as your device to reverse engineer, how will you take it apart? Think about what tools might be needed, such as screwdrivers, pliers and wrenches. Maybe even a drill.


For safety, what do you need to do before using any tools? Safety glasses! Make sure you wear them to protect your eyes while using the tools or when near others who are using tools. Be aware of your surroundings as well!


Slide 5: Your group will also need to complete a team contract. What is this? A team contract describes each person's role within the team. Even though all team members are jointly responsible for every part of the project, a contract is a way to clearly communicate each person's contribution for special jobs. For example, maybe Jerry is best at reading over people's work as a final editor and Caitlyn is great at organizing. Look at the overall tasks and deliverables for the entire project. Then have all team members agree on mutual and specific responsibilities and sign a contract to make it official.


Slide 6: The next thing you'll need to create is a bill of materials (BoM). What is this? A BoM is a list of all the parts that compose a device. For example, the BoM for a remote-controlled car would include four wheels, two to four doors, a steering wheel, etc. Each of these parts would be listed along with details such as description, material, quantity, dimensions, function, its interaction with other parts, source and cost. So when an engineer makes a sketch, s/he identifies each part by a number or letter, which can be looked up on the BoM document where much more information is provided about each part.


Slide 7: Don't let this slide scare you! Yes, writing will be involved, but it is very purposeful writing that will make sense to you. In addition to the proposal and a BoM, I need to understand the device's purpose and procedure. What do you think I mean by purpose and procedure of the device? I mean: Why was this device invented (or innovated)? The purpose of a remote-controlled car is to keep a person busy and entertained. We could write-up a procedure that describes how to operate the device or how to assemble the device. What is another name for this besides a "procedure"? A manual. What is a manual? It is essentially a "how-to" document. Everyone appreciates a well-written manual. As you write the manual, your challenge is to determine how specific to be when describing how to put together your device. In the case of a remote-controlled car, it needs to be clear enough for a person who has no knowledge of RC cars to be able to put it together, because if a step is skipped, the device will not work for the customer. So the manual is an important deliverable for this project. Make sure everyone on your team contributes to, edits and agrees on the final manual. Some tips:


Slides 8 and 9: When writing-up a manual, what types of device and parts sketches are good to include? Draw parts orthographically and isometrically. Orthogonal sketches are engineering drawing that show the top, right and front views, and an isometric view is a 3D sketch of the part. (As necessary, draw examples on the classroom board for review.) It is also very useful to draw devices and parts in an "exploded view" because that helps a person understand how the parts are put together, such as where screws go. Remember to label each sketched part and tie the identifying labels to the bill of materials.


Slide 11: What are possible objects for the reverse engineering project? This slide shows some examples of devices and products to give you some ideas. Examples pictured include: fishing pole spinning reel, tape dispenser, water gun, bicycle, toy truck, toy rocket, mechanical pencil, remote-controlled car.


Slide 13: Show students the grading rubrics, both the written report and presentation parts. (Either show slide 13 or bring up the separate Word or PDF file versions; they are the same rubrics.) Review your expectations for project success.


Review: Verbally quiz students about the pre-requisite knowledge topics pertaining to the engineering design process, sketching, engineering notebook documentation, proposal writing, team contracts and bill of materials. Find out what they know and, as necessary, clarify and supplement their base knowledge.


Schedule Check-In: As the project is happening, observe and check-in with students to make sure everyone is engaged, making progress and aware of the timeline. Consider providing check-in deadlines for every major project component to help teams stay on task. For example, schedule the deadline for proposal approval for one week after the project is assigned, and then require the devices be brought to school a few days after the proposal approval deadline. Having continuous upcoming deadlines, even if not specific, helps keep students on track.


Grading Rubrics: Use the Reverse Engineering Grading Rubrics to evaluate students' learning and accomplishments for their reverse engineering project work and analysis, written reports and class presentations. For the class presentation, give teams a time limit to force them to briefly recap the key elements of their projects in order to share with everyone what they did and what they learned.


Peer Evaluation: To better understand individual contributions to the team projects, have students use the Peer Evaluation Form to evaluate their fellow peers. Incorporate this feedback into final grades.


When reviewing team proposals, do not accept devices that would be too complex or require too much time. For example, a team that reverse engineered a 1990s laptop was unable to finish in time. Optionally, provide a maximum numbers of parts proposed devices may have.

3a8082e126
Reply all
Reply to author
Forward
0 new messages