Recommendations

While distinctions between computer engineering (CE) and the other disciplines are relatively easy to appreciate—especially because of the role that hardware plays in CE programs—the differences between information systems, information technology, software engineering, and computer science are much more difficult to understand and define, especially when we reference the changes occurring in the field. I believe there should be three flavors: computer engineering, computer science, and information systems.e

CS programs should focus less on alternative programming languages and more on architectures, integration, and interoperability; less on algorithms and discrete structures and more on software engineering best practices. SOA and EDA should be owned by CS curricula as should Web 2.0 and 3.0, SaaS, thin client architecture, digital security, open source software, interoperable architectures, roaming connectivity, near-real-time processing, and rich converged media, among other related areas. Programming? Who programs? And where does—and more importantly, will—programming occur? Programming will ultimately evolve to component assembly and components will be generated by relatively few professionals located in the U.S., Bangalore, Moscow, and Shanghai working for IBM, Oracle, SAP, Microsoft, Tata, Infosys, and Google. Put another way, is “programming” the core competency of computer science?

Of course there will be programming jobs for our students. But the number of those jobs will decline, become more specialized, and distributed across the globe. A simple metric: how many Fortune 1000 companies still hire programmers? In the 1980s and 1990s, companies like CIGNA— where I was CTO—had hundreds of programmers on staff. Today, Fortune 1000 companies have far fewer programmers than they did because of the rise of packaged applications and the labor-rate-driven sourcing options they

e. The focus here is on the relationship between computer science and information systems; CE will likely remain primarily hardware focused and in engineering colleges within the nation’s universities.

acm Joint task force knowledge and skills areas and practitioner areas.

ACM Task Force Areas computing Knowledge and Skills

˲ Programming Fundamentals

˲ Integrative Programming

˲ Algorithms and Complexity

˲ Computer Architecture and organization

˲ operating systems Principles and Design ˲ net Centric Principles and Design ˲ Platform Technologies

˲ Theory of Programming Languages ˲ human-Computer Interactions ˲ graphics and visualization

˲ Intelligent systems (AI)

˲ Information Management (Database) Theory

˲ Information Management (Database) Practice

˲ scientific Computing (numerical Methods) ˲ Legal/Professional/ethics/society ˲ Information systems Development ˲ Analysis of Technical Requirements

˲ engineering Foundations for software

˲ engineering economics for software

˲ software Modeling and Analysis ˲ software Design

˲ software verification and validation ˲ software evolution (Maintenance) ˲ software Process

˲ software Quality

˲ Computer systems engineering ˲ Digital Logic

˲ Distributed systems

˲ security: Issues and Principles

˲ security: Implementation and Management

˲ systems Administration

˲ systems Integration

˲ Digital Media Development

˲ Technical support

non-computing Knowledge and Skills

˲ organizational Theory

˲ Management of Information systems organization

˲ Decision Theory

˲ organizational Behavior

˲ organizational Change Management ˲ e-business

˲ general systems Theory

˲ Risk Management (Project, safety Risk) ˲ Project Management

˲ Analysis of Business Requirements

˲ embedded systems

˲ Circuits and systems

Practitioner Areas

Business Strategy Knowledge and Skills

˲ Collaboration

˲ Customization and Personalization

˲ supply Chain Management

˲ Business and Technology

Convergence strategy

˲ Competitor Intelligence

˲ Business Process Management

Business applications Knowledge and Skills

˲ Business Application optimization ˲ Core Business

Applications Management

˲ Business Analytics

enterprise architecture Knowledge and Skills

˲ Applications Architectures

˲ Data Architectures

˲ security Architectures

˲ Business scenario Development ˲ enterprise Technology

Architecture Modeling

˲ enterprise Architecture

technology infrastructure Knowledge and Skills

˲ Messaging/Workflow/Calendaring ˲ Automation

˲ Database/Content/

Knowledge Management

technology Support

Knowledge and Skills

˲ Desktop/Laptop/PDA/Thin

Client support

˲ Data Center operations

˲ server Farm Design and Maintenance ˲ network Design and support

˲ security and Privacy

˲ Procurement and

Asset Management

˲ Asset Disposal

technology acquisition Knowledge and Skills

˲ Business Technology Acquisition strategy

˲ RFP and sLA Development

organization and management
Knowledge and Skills
˲ Reporting Relationships
˲ Centralization and Decentralization
˲ governance

References:

Archives