Posted on 07/27/2003 9:24:31 AM PDT by BushCountry
Below is a typical Associate Level Degree program in Information Systems. Quite frankly, I think programs like these programs are a disservice to communities they serve. I also firmly believe that improper education and training of America's IT personal has hurt the economy and has made a major contribution to the decline in IT jobs. Yes, I know the bubble burst, but companies are not pushing forward aggressively when it comes to IT. So many companies got burnt by poorly trained IT personal and their empty promises that they are running scared. I value and respect the input of the people on this site, so I ask, "If you could develop/design a perfect Information System AA degree program what would it contain?"
My thoughts are presented in italics. Please feel free to rename courses, add/subtract ideas, and give me your two cents worth.
Introduction to computers and computing. This course should be designed with a few thoughts in mind; How to keep my computers/network secure. How to maintain/optimize the units where the operator is the bottleneck. Company-wide hardware purchasing decisions and cost benefit analysis of upgrades. Basically, I am saying that these programs should skip 90% of what they teach about the internal operation of the computer (no text book is up-to-date and the information for the most part is laughable).
Computer programming and problem solving. This course should be based on html, html help, java script, and SQL.
Basic spreadsheet design and development. Every spreadsheet should be designed and developed toward decisions that an IT personal makes daily. For instance how to calculate company-wide hardware/software purchases, IT labor costs and benefits, and cost benefit analysis of upgrades.
An introduction to graphic design software. Is this really necessary? If necessary, this course should use software that produces flowcharts, network cabling diagrams, and how to optimize graphics for the web/databases.
Operating systems concepts; database concepts and applications. Every computer should be a multi-boot operating system machine with connectivity issues discussed. The connectivity issues; Security, Internet, LAN, WAN, and Terminal Services. Database concepts and applications should relate to the current technologies for data warehousing, access times and bandwidth requirements, and backup procedures.
Database programming; installation and maintenance of computer hardware. The database design projects should include a fictional company employee database (should allow the employee to change information as required, e.g. address info, health insurance, and dependents), computer / software / network inventory, knowledge base of common networking troubleshooting and connectivity issues relating to this fictional company, and company policy/handbook.
Computer training and support techniques. Cost benefit analysts can not be stressed enough. Network and computer security, privacy and computer use policy issues, and remote administration/repair of PCs.
Systems analysis and design. Internal structured cabling, network communications technologies, supporting remote users, firewalls, routers, gateways, and designing a secure system.
Design and implementation of a systems project. One design project of a new 500 workforce fictional company. The layout of the three building complex, server software scheme and department level breakdown should be completed by the instructor. Students should be required to make the purchasing decisions for the purchase of Network Servers, Switches/Routers, Structure Cabling and Racks, Personal Computers, and networking/pc software.
Electives (Degree - 2 courses) - Students are required to take a 3-credit-hour humanities/fine arts course and a 3-credit-hour social/behavioral science course. For once, I am at a loss for words. These courses are suppose to make the IT professional a well-rounded individual. I would like to find a more practical use for these 6 credit hours. Any suggestions?
English (Degree - 2 courses) - These courses emphasize the writing process and professional communication skills. First course should be technical writing, practical proposals and grants. Second course should be creating effective web documents, e.g. HTML Help and Employee Computer Use Handbooks.
Math (Degree - 1 course) - Survey of topics including sets, logic, probability, statistics, matrices, mathematical systems, geometry, topology, mathematics of finance, and modeling. Math course topics should relate to Total Cost of Ownership (TCO) and cost benefit analysts of everything from increase network bandwidth to speeding up PC by adding memory. In other words, practical math for the network and system administrators.
<html> <head> <title>WHY JAVASCRIPT SUCKS MONKEY TURDS</title> <center><t1>WHY JAVASCRIPT SUCKS MONKEY TURDS</t1></center> <pre> <script> function test() { var A=document.forms[0].A.value; var B=document.forms[0].B.value; var C=document.forms[0].C.value; var D=document.forms[0].D.value; C=(B*A + A)*B; D=(B*A + +A)*B; document.forms[0].A.value=A; document.forms[0].B.value=B; document.forms[0].C.value=C; document.forms[0].D.value=D; return; } </script> </pre> </head> <body> <form> A <input type="text" name="A" value="123"><br><br> B <input type="text" name="B" value="0.046"> <br><br> C=(B*A+A)*B <input type="button" value="calculate" onclick="test()"><br><br> C: <input type="text" name="C" size="100" > <br><br> SLIGHTLY MORE CORRECT RESULT <input type="text" name="D" size="100"> </form> </body> </html>
If I was your customer, there would be a requirements traceability matrix and an acceptance test plan. You wouldn't get paid until the requirements were satisfied 100% per the contract. There are plenty of people in India willing to write crappy code at lower rates.
There are plenty of people in India willing to write crappy code at lower rates.
Now think about that. Just recently theres all this talk of people angry and puzzled by alot of this sort of work going to india. Because there is alot of it--alot of demand for crappy code. How can you blame us for trying to deliver that?
I suspect the quantity of crappy code that is being produced by U.S. programmers has lowered the expectation of U.S. based businesses. They expect poor quality and are happy to pay reduced rates for equivalently crappy code from India.
The first important step with a customer is getting a good requirements document. Once they sign off on it, you proceed to requirements analysis and prelim design. You often catch impossible or contradictory requirements at this step. I've seen projects melt down into disaster because the project manager agreed to contradictory requirements. Good systems and software takes much more than a programmer hacking away.
We go ahead and do it as best we can, and as more clarifications come in, without any more money, everything gets more rushed and sucks more. And even if more money comes in, as time goes on, the necessity of using what has already been worked on forces things to get even stranger.
I am telling you, this all depends on where you are in the food chain and how professional your customers are. Some customers who are lazy slobs about things need consultants that are lazy slobs also. They just get along better.
I eventually decided the only way to avoid this mess was to find a job where we did things right (i.e. move up the foodchain). Havent managed to find one of those yet.
The answer depends on how you structured your contract. If it is a fixed firm price, the answer is NO. If it is a time & materials, you work the original requirements first. If the customer still has money in the budget and wants to spend it on the clarifications, then do it. If it is a cost plus fixed fee, then work the requirements first, then review the remaining budget e.g. total budget-fixed fee-bills to date. Thats what you have left to offer. Identify the "clarifications", estimate the time and money required for each "clarification" and prioritize the additional work with the customer. Make sure the requirements and acceptance criteria are well understood and documented in a supplemental contract.
Here's another horror story for you. A work group on my floor was enroute to a customer site to do final delivery. For the entire period of the contract, the customer had been using SunOS4 and all the software was developed and tested on SunOS4. They arrived at the customer site to discover that all the machines had been "updated" to Solaris a.k.a SunOS5. They had not put a configuration control elements into their contract. The customer had not violated the contract by doing this upgrade, but the software was perfectly useless. It cost a major wad of cash to port and killed all the profit in the project.
Justice prevailed. I had the same people for my customer, but a different set of projects. My contract locked down the OS release, OS patches, specific machines, IP addresses, database release and schema, and C compiler release. In short, I locked down EVERYTHING they could possibly touch that would impact the delivery. It was contractually locked down until they signed the acceptance document or terminated for convenience. The customer hated being locked down, but they fully understood why it was being such a horse's backside about the config management. We delivered a feature complete product that met every item in the requirements traceability matrix and every item in the acceptance test plan. The customer signed off the project.
My predecessor on this project had blown $178,000 of the customer's money and delivered 5 sheets of blueline notes of indicipherable chickenscratch. The customer had issued a "termination for default". My predecessor was escorted out of the office with his belongings in a box. My company was at risk of losing the ability to do ANY work with local governments across the U.S. Doing the job right cost the company almost $700,000. The people who did the initial requirements and project estimates were genuine screwups. My predecessor moved on to be a principal in a new company that has since folded.
I: Covers IPv4 and IPv6 protocols, addressing and subnetting; Overview on switching and routing technologies; basic firewall principles and NAT translation. Network topologies and the principles of the data network stack (OSI and IP network reference models)
II : Basic overview of various LAN/WAN technologies; basic cisco switch/router configuration (industry standard tech); basic firewall implementation technologies (Checkpoint, rule contruction and syntax)
What you fail to consider is that there do exist students entering 2 year degree programs who have virtually no computer skills. Maybe they can send an e-mail and do some things on the Internet. They don't really know what happens but they know where to click. And many who may know some basic skills but not others. I'd say the vast majority don't know the difference between an operating system and an application. A good many don't know how to save e-mails, basic word processing. Very few have worked at all with spreadsheets, databases, etc. The difference between memory and disk storage, absolutely no idea. That's the reality of many of the students walking in the doors in my college. You really think I should start with network security when the students don't know how to properly create, save a Word document and be able to find it again later?
Granted those going into IT should know these things, and most do. For those students it's an easy A or they can place out of it. But you have to remember that that course is nearly always a campus-wide pre-req. And many of the students do need to know the very basics of how to use a computer.
You brought up an excellent point, before students are allow to enter the perfect I/T program they would have to meet basic computer aptitude requirements. Of course students will be allowed to take non-degreed courses to reach these requirements and students would be allowed to test out.
I have taught several computer courses and the biggest stumbling block to achieving true classroom success has been the acceptance of students with virtually no computer skills. The last career institute I taught had students that were fiftyish with no computer experience and were actually afraid of computers.
Imagine a fast track computer program that teaches Electronics (DC, AC & Digital), CompTIA's HW, SW & Networking, Novell CNA, and MCSE programs in less than 13 months to students that never touched a mouse before. The students that never touched a computer were a hinderance and drag on the class.
if you get a headache and smoke starts coming out of your ears, the oven is OK. If smoke comes out of your nose and you don't get a headache, change the magnetron.
Disclaimer: Opinions posted on Free Republic are those of the individual posters and do not necessarily represent the opinion of Free Republic or its management. All materials posted herein are protected by copyright law and the exemption for fair use of copyrighted works.