Software Engineering 2014 Curriculum Guidelines for Undergraduate Degree Programs in Software Engineering a volume of the Computing Curricula Series



Download 1.43 Mb.
Page9/35
Date09.01.2017
Size1.43 Mb.
#8545
1   ...   5   6   7   8   9   10   11   12   ...   35

Computing Essentials


Computing essentials includes the computer science foundations that support software product design and construction. This area also includes knowledge about the transformation of a design into an implementation as well as the techniques and tools used during this process.

Units and Topics


Reference

 

k,c,a

E,D

Hours

CMP

Computing essentials

 

 

152

CMP.cf

Computer science foundations

 

 

120

CMP.cf.1

Programming fundamentals (control and data, typing, recursion)

a

E

 

CMP.cf.2

Algorithms, data structures, and complexity

a

E

 

CMP.cf.3

Problem solving techniques

a

E

 

CMP.cf.4

Abstraction, use and support for (encapsulation, hierarchy, etc.)

a

E

 

CMP.cf.5

Computer organization

c

E

 

CMP.cf.6

Basic user human factors (I/O, error messages, and robustness)

c

E

 

CMP.cf.7

Basic developer human factors (comments, structure, and readability)

c

E

 

CMP.cf.8

Programming language basics

a

E

 

CMP.cf.9

Operating system basics

c

E

 

CMP.cf.10

Database fundamentals

c

E

 

CMP.cf.11

Network protocols

c

E

 

CMP.ct

Construction technologies

 

 

20

CMP.ct.1

API design and use

a

E

 

CMP.ct.2

Code reuse and libraries

a

E

 

CMP.ct.3

Object-oriented runtime issues (e.g., polymorphism and dynamic binding)

a

E

 

CMP.ct.4

Parameterization and generics

a

E

 

CMP.ct.5

Assertions, design by contract, and defensive programming

a

E

 

CMP.ct.6

Error handling, exception handling, and fault tolerance

a

E

 

CMP.ct.7

State-based and table-driven construction techniques

c

E

 

CMP.ct.8

Runtime configuration and internationalization

a

E

 

CMP.ct.9

Grammar-based input processing (parsing)

a

E

 

CMP.ct.10

Concurrency primitives (e.g., semaphores and monitors)

a

E

 

CMP.ct.11

Construction methods for distributed software (e.g., cloud and mobile computing)

a

E

 

CMP.ct.12

Constructing hardware/software systems

c

E

 

CMP.ct.13

Performance analysis and tuning

k

E

 

CMP.tl

Construction tools

 

 

12

CMP.tl.1

Development environments

a

E

 

CMP.tl.2

User interface frameworks and tools

c

E

 

CMP.tl.3

Unit testing tools

c

E

 

CMP.tl.4

Profiling and performance analysis tools

 

D

 


Download 1.43 Mb.

Share with your friends:
1   ...   5   6   7   8   9   10   11   12   ...   35




The database is protected by copyright ©ininet.org 2024
send message

    Main page