Let us discover the answer to the above question over many blogs. In the blogs I will outline what is needed when a manufacturer manufactures a screw and compare it to software development, or selection process for custom or off-the-shelf software.
On the surface the two looks to be the same. Following are high level steps for both:
Manufacturing:
1. Problem Statement: What is the screw needed for?
2. Design and Engineer the screw: Specify material, dimensions, angles and more
3. Forecasting: Forecast the demand of the screw.
4. Costing: Calculate the cost of manufacturing the screw.
5. Manufacturing process: Identify if Grid, Putting-out, LEAN, Agile or other processes.
6. Manufacturing the screw: Setting up machines, supply chain, material movement and others.
7. Quality Control: stress test, regression testing, Six Sigma, GAMP, SQC or others
8. Delivery: JIT, On-Demand, Bulk or others
9. Engineering Changes
Software:
1. Problem Statement: What is the goal of the software?
2. Requirements: Specify functionality, security, scalability and more
3. Forecasting: Forecast the install base.
4. Costing: Estimate cost using Function Point Analysis, Manual or Automated estimation or some other estimation tools.
5. Software Development Methodology (Manufacturing process): Agile, Waterfall, Spiral or other methodologies.
6. Selection/Development of Software (Manufacturing the screw): Select applications/ languages, developers, databases, and installing/programming the software.
7. Quality Control: Black/White box technique, Unit testing, Statistical process or others
8. Delivery: Push/Pull, SaaS, Thick/Thin Client, n-tier delivery or others
9. Requirement Changes: This is same as engineering changes.
So let us see if this is true by using a Story:
Quest (Problem Statement):
Manufacturing:
In 1990, I was busy working with modifying equipment that we had imported from Italy. The issue was we were missing screws that would make two parts of this equipment work together, and hence our quest began!
Software:
In 2000, I was working to implement software that will help all the suppliers feed in data so that the company will know exactly how much inventory they needed per supplier. The issue was to find out if there was software that can connect all the suppliers, and hence our quest began!
Realization we need help:
Manufacturing:
What kind of screw and what dimension? We were laterally joining two machines with two very distinct functionalities. Considering many options to see what will work, left over screw pile from other jobs, go to the hardware store and get the screw and other options. After trying many things that lead to incorrect fits, we had to go back to the drawing board to see what we were trying to achieve. After much debate we got an engineer to design the screw that will solve our problem.
Software:
In 2000, there were many options available for us for supply chain integration. We had lot of in-house talent, developers and a legacy system that we just did tons of updates for Y2K. The management started considering many options of having the suppliers send us flat files that we can upload to legacy system, use middleware software that will integrate discrete supplier systems. Like in manufacturing after trying many things we had to go back to the drawing board to see what we were trying to achieve. Hence we had to get a business analyst to draw-up a business requirement to design the system that will solve our problem.
In the next Blog we will look in-depth on what is needed in engineering and in software requirements gathering.
References:
• Kalpakjian, Serope; Steven Schmid (2005). Manufacturing, Engineering & Technology. Prentice Hall, pp. 22-36, 951-988. ISBN 0-1314-8965-8.
• Pyzdek, T, “Quality Engineering Handbook”, 2003, ISBN 0824746147
• Good Automated Manufacturing Practice (GAMP)
• Function Point Analysis: Measurement Practices for Successful Software Projects (Addison-Wesley Information Technology Series) by David Garmus (Author), David Herron (Author)
• Software Engineering (6th Edition) (International Computer Science Series) by Ian Sommerville (Author)
Tags: Agile, compar, development, Function Point Analysis, GAMP, Manufacturing, SaaS, Screw manufacturing, Six Sigma, Software, Spiral, SQC, Waterfall