courses/catalog/undergraduate/ugrad2002Home
courses/catalog/undergraduate/ugrad2002
Enter either a:
  • Person's name (faculty, staff, or student)
  • Department name
  • Word to find on a web page

    More Search Options
  •  
    K-State Undergraduate Catalog 2002-2004
    About the Catalog
    About the University
    Calendar
    Glossary and Abbreviations
    Admission
    Academic Advising
    Enrollment
    Tuition and Fees
    Degrees
    Grades
    All-University Regulations
    Student Financial Assistance
    Services for Students
    Auxiliary Services and Facilities
    International Programs
    Secondary Majors
    Agriculture
    Architecture, Planning, and Design
    Arts and Sciences
    Business Administration
    Education
    Engineering
    dObjectives and Design Basis
    dGeneral Requirements
    dUniversity General Education
    dDegree Programs
    dProgram Options
    dInterdisciplinary Studies
    dDual Degrees
    dSupport Services
    dResearch Centers
    dExtension and Outreach
    dGeneral Engineering
    dArchitectural Engineering/ Construction Science and Management
    dBiological and Agricultural Engineering
    dChemical Engineering
    dCivil Engineering
    dComputing and Information Sciences
    dElectrical and Computer Engineering
    dIndustrial and Manufacturing Systems Engineering
    dMechanical and Nuclear Engineering
    Human Ecology
    Technology and Aviation
    Veterinary Medicine
    Graduate School
    Intercollegiate Athletics
    K-State Research and Extension
    Outreach
    University Faculty
     

    Computing and Information Sciences

    Virgil E. Wallentine, Head

    Professors Gustafson, Hankley, Mizuno, Schmidt, Unger, and Wallentine; Associate Professors Banerjee, Bleyberg, Dwyer, Hatcliff, Howell, Sigh, and Stoughton; Assistant Professor Andresen, DeLoach, Hsu, and Neilsen; Instructors Forgie and Shea; Emeriti: Professor van Swaay, Associate Professor Calhoun; Instructor Campbell.

    E-mail: office@cis.ksu.edu
    www.cis.ksu.edu

    The creation and use of the best possible hardware and software is, broadly speaking, the field of computer science.

    Two curricula, computer science and information systems, are offered by the Department of Computing and Information Sciences. Many other fields require a minor emphasis in computer science, and students working toward a dual degree (one in computer science and one in some other field) are common.

    The department maintains state-of-the-art computing and networking laboratories. Large-computer facilities are provided by Computing and Network Services. Some students choose to own or share microcomputers because of the convenience and learning efficiency of personal interactive computing.

    Students must earn a grade of C or better for each course they wish to use to satisfy requirements for their major. Students may enroll in CIS courses only if they have earned a grade of C or better for each prerequisite to those courses.

    Computer science curriculum
    The B.S. in computer science is accredited by the Computer Science Accreditation Commission of the Computing Sciences Accreditation Board, a specialized accrediting body recognized by the Council on Post-secondary Accreditation and the U.S. Department of Education.

    The computer science curriculum emphasizes a broad foundation of computer organization, programming languages, software engineering, distributed computing systems, data systems, algorithms, data structures, programming systems and environments, and mathematics, together with electives that focus on some aspect or application of computers. The computer science curriculum is recommended for students planning graduate studies in computing.

    Technical electives consist of a set of computer science courses that permit students to concentrate on an area of technical expertise. The most common technical areas are: software engineering, which involves management and development of large software systems; operating systems, which consists of the supervisory software that controls the operation of a computer; theoretical computer science; computer systems architecture, which involves design of centralized and distributed computer systems; programming languages and their compilers; data systems; and knowledge engineering (artificial intelligence).

    A person seeking a bachelor of science degree in computer science must fulfill the following requirements:

    Bachelor of science in computer science
    120 hours requred for graduation
    Accredited by the Computing Accreditation Commission of ABET, 111 Market Place, Suite 1050, Baltimore, MD 21202-4012. 410-347-7700.

    Freshman year

    Fall semester
    CIS 015Undergraduate Seminar
    CIS 200Fundamentals of Software Design and Implementation4
    MATH 220Analytic Geometry and Calculus I4
    ENGL 100Expository Writing I3
    SPCH 105Public Speaking IA2
    or
    SPCH 106Public Speaking I3
    13-14
     
    Spring semester
    CIS 300Data and Program Structures3
    CIS 301Logical Foundations of Programming3
    MATH 221Analytic Geometry and Calculus II4
    Humanities/social science elective (first of five)3
    ECON 110Principles of Macroeconomics3
    16
     
    Sophomore year
    Fall semester
    CIS 501Software Architecture and Design3
    EECE 241Introduction to Computer Engineering3
    MATH 551Applied Matrix Theory3
    ENGL 200Expository Writing II3
    Natural science elective with laboratory (first of four)4
    16
     
    Spring semester
    CIS 450Computer Architecture and Organization3
    CIS 505Programming Languages3
    MATH 510Discrete Mathematics3
    Natural science elective with laboratory
    (second of four)4
    Humanities/social science elective (second of five)3
    16
     
    Junior year
    Fall semester
    CIS 520Operating Systems I3
    CIS 575Introduction to Algorithm Analysis3
    MATH 655Elementary Numerical Analysis3
    or
    CIS 580Numerical Computing3
    Humanities/social science elective (third of five)3
    Natural science elective with laboratory (third of four)3
    15
     
    Spring semester
    CIS 560Database System Concepts3
    ENGL 516Written Communications for the Sciences3
    Technical elective (first of three)3
    Humanities/social science elective (fourth of five)3
    Free elective3
    15
     
    Senior year
    Fall semester
    CIS 540Software Engineering Project I3
    CIS 570Introduction to Formal Language Theory3
    Technical elective (second of three)3
    Humanities/social science elective (fifth of five)3
    Natural science elective (fourth of four)3
    15
     
    Spring semester
    CIS 541Software Engineering Project II3
    CIS/
    PHILO 492Computers and Society3
    Technical elective (third of three)3
    STAT 410Probabilistic Systems Modeling3
    Free elective2-1
    14-13
     
    All students new to the CIS department must complete CIS 015.

    Natural science courses must meet the CSAB accreditation guidelines.

    Humanities/social science electives must satisfy the College of Engineering requirements (including UGE requirements) and must include 6 hours selected from the following departments: English (literature only), history, modern languages (except English or the student's native language), and philosophy (except 110, 220, and 510).

    A free elective is any 100 or higher course, excluding courses listed as a prerequisite to a required course.

    Required courses may not be taken under the A/Pass/F option.

    Information systems curriculum
    The information systems curriculum emphasizes the use of computers to solve problems arising in the operations of business and commerce. The curriculum closely follows programs designed by the Association for Computing Machinery and the Data Processing Management Association.

    Five specializations are available, each designed to develop additional skills supportive of needs of the industry. These specializations are information systems analyst/designer (analyzes information needs, designs, and maintains information systems, manages system projects), database manager (designs, uses, maintains, and manages database systems), management information systems specialist (defines organization requirements, acts as a management-technical communication channel, evaluates information systems, manages analyst/programmers), application programmer (designs detail logic, codes, verifies, documents programs and systems), and communications analyst (designs and implements distributed information systems, specifies and designs interface to the communication system.)

    A person seeking a bachelor of science degree in information systems must fulfill the following requirements:

    Required courses may not be taken under the A/Pass/F option.

    Bachelor of science in information systems
    120 hours required for graduation

    Freshman year

    Fall semester
    CIS 015Undergraduate Seminar
    CIS 200Fundamentals of Software Design and Implementation4
    MATH 205General Calculus and Linear Algebra3
    ENGL 100Expository Writing I3
    SPCH 105Public Speaking IA2
    or
    SPCH 106Public Speaking I3
    Humanities/social science elective (first of six)3
    15-16
     
    Spring semester
    CIS 301Logical Foundations of Programming3
    CIS 300Data and Program Structures3
    MATH 312Finite Applications of Mathematics3
    Humanities/social science elective (second of six)3
    ECON 110Principles of Macroeconomics3
    15
     
    Sophomore year
    Fall semester
    CIS 501Software Architecture and Design3
    EECE 241Introduction to Computer Engineering3
    ENGL 200Expository Writing II3
    Natural science elective with laboratory (first of four)4
    Humanities/social science elective (third of six)3
    16
     
    Spring semester
    CIS 450Computer Architecture and Organization3
    CIS 505Programming Languages3
    STAT 320Elements of Statistics3
    Technical elective3
    Natural science elective with laboratory (second of four)4
    16
     
    Junior year
    Fall semester
    CIS 362Introduction to Business Programming3
    CIS 520Operating Systems I3
    ENGL 516Written Communications for the Sciences3
    Natural science elective (third of four)3
    Free elective3
    15
     
    Spring semester
    CIS 462Information Systems in Organizations3
    CIS 560Database Systems Concepts3
    Technical elective3
    Humanities/social science elective (fourth of six)3
    Free elective3
    15
     
    Senior year
    Fall semester
    CIS 525Telecommunications and Data Communications Systems3
    CIS 540Software Engineering Project I3
    Technical elective3
    Natural science elective (fourth of four)3
    Humanities/social science elective (fifth of six)3
    15
     
    Spring semester
    CIS 541Software Engineering Project II3
    Humanities/social science elective (sixth of six)3
    Technical elective3
    Free electives4-3
    16-15
     
    All students new to the CIS department must complete CIS 015.

    A free elective is any 100- or higher-level course, excluding courses listed as a prerequisite to a required course.

    Required courses may not be taken under the A/Pass/F option.

    Humanities/social science electives must satisfy the College of Engineering requirements and must include 9 hours from at least two of the following departments: English (literature only), history, modern languages (except English or the student's native language), and philosophy (except 110, 220, and 510).

    Minor in computer science

    CIS 2004
    CIS 3003
    CIS 5013
    Any two 500- or 600-level CIS courses6
    16
     
    Equipment fee
    The engineering equipment fee is in addition to the normal university fees. Students enrolling in any CIS course are assessed $14 per credit hour plus a $1 per credit hour university technology fee. (Fees are subject to change.)

    Computer science courses
    Undergraduate credit
    CIS 015. Undergraduate Seminar. (0) I, II. Presentation of professional problems and practices by students, faculty, and industry professionals associated with computing and information sciences. Required of all undergraduate students new to the department. One hour lecture a month.

    CIS 101. Introduction to Information Technology. (1) I, II, S. Introduction to microcomputer hardware components and operating system software; Windows as a graphical user interface and disk/file management tool; Internet, including World Wide Web and home pages, e-mail, telnet, and ftp. One hour lecture, tow hours scheduled laboratory, and two hours unscheduled open laboratory each week. Course meets in one contiguous block of four weeks.

    CIS 102. Introduction to Microcomputer Spreadsheet Applications. (1) I, II, S. Designing, building, and modifying spreadsheets. Addressing techniques and formatting. Use of formulas and functions. Spreadsheets as management and decision tools. Charting of data. One hour lecture, two hours scheduled laboratory, and two hours unscheduled open laboratory each week. Course meets in one contiguous block of four weeks. Pr.: CIS 101.

    CIS 103. Introduction to Microcomputer Database Applications. (1) I. II, S. Design, create, modify and maintain relational databases. Create relationships. Add and modify data. Search and query database. Design and create screen forms and reports. One hour lecture, two hours scheduled laboratory, and two hours unscheduled open lab. each week. Course meets in one contiguous block of four weeks. Pr.: CIS 101.

    CIS 104. Introduction to Microcomputer Word Processing Applications. (1) I. II, S. Basic features of word processing. Create and edit a document. View, format, and customize document. Revise, update and rearrange text. Add graphics. Support features. Merge documents. One hour lec., two hours scheduled lab, and two hours scheduled open lab each week. Course meets in one contiguous block of four weeks. Pr.: CIS 101.

    CIS 112. Advanced Personal Computing. (3) Advanced features of application software for personal computers, including batch files, configuration and maintenance of hardware and software, macros for application software, and sharing of data and programs. Individualized problems. Two hours lec. and four hours lab a week. Pr.: B or better in CIS 101 or permission of instructor.

    CIS 190. Undergraduate Seminar in Computing and Information Sciences. (1) I. Topics of special interest in computing and information sciences.

    CIS 200. Fundamentals of Software Design and Implementation. (4) I, II. Introduction to elementary software architectures and object-based program design. Library reuse, especially for implementing graphical user interfaces. Principles and applications of programming's fundamenteal elements: state, control, data structures, methods, objects, and packages. Programming projects. Four hours lec., one hour lab per week. Pr.: MATH 100.

    CIS 208. C Language Laboratory. (1) I, II. Fundamentals of programming in C; applications. Three hours lab a week. Pr.: CIS 200.

    CIS 209. C/C++ Programming for Engineers. (3) I, II, S. Application of computers to engineering problems. Abstraction and problem solving; algorithms; control structures; input/output; functions; arrays and array processing. Two hours lec., two hours lab each week. Pr .: MATH 220.

    CIS 300. Data and Program Structures. (3) I, II. A study of common data and program structures together with associated algorithms. Topics include interfaces, design patterns, arrays, stacks, queues, lists, trees, hash tables, recursion, binary search, and tree traversals. Experience with both use and implementation of these structures and algorithms using a modern programming language. Discussion of tradeoffs involving performance and software maintainability. Pr.: CIS 200.

    CIS 301. Logical Foundations of Programming. (3) I, II. Logical formalisms used to model and reason about computer systems. Propositional and predicate logic: syntax, semantics, and proof theory; soundness and completeness issues. Mathematical induction and inductive definitions. Program verification: invariants and program logics. Verification of reactive systems: description languages, specification logics, and model checking tools. Pr.: CIS 200.

    CIS 362. Introduction to Business Programming. (3) I. An introduction to basic business programming techniques including file manipulation operations and sorting. The COBOL language will be used as an implementation tool. Pr.: CIS 200.

    CIS 397. Honors Seminar in Computer Science. (1-3).

    University General Education courseCIS 411. Global Information System. (3) Structure of large computer networks; information available via networks; data bases, news groups, list servers, and hyper media. Handling of text, numeric, sound, and visual information. Application such as catalogs, distributed group- work, and remote teaching. Issues of ethics, economics, and utility in use of networks; future technologies. Pr.: CIS 101 (understanding of use of personal computers and software.)

    CIS 450. Computer Architecture and Organization. (3) I, II. Introduction to modern computer architectures: register transfer abstraction, addressing modes, basic operations (data transfer, arithmetic/logic, and control operations). Understanding relationships of higher-level language constructs to corresponding assembly instruction sequences generated by compilers. Relationships studied include storage classes to memory organization and function invocations to activation records. Introduction to interrupts and low-level I/O operations. Pr.: EECE 241 and CIS 300.

    CIS 462. Information Systems in Organizations. (3) II. Role of information systems in organizations, representation of systems structures, decision processes, system evaluation, information system applications including file structures, and using a high level language in a system study. Pr: CIS 362.

    CIS 490. Special Topics in Computer Science. (2-4) Current topics in computer science. Pr.: Prerequisite varies with the announced topic.

    CIS 492. Computers and Society. (1-3) A study of the impact of computers and associated technologies on society, including such topics as ethics of computer use, computer fraud, protection of privacy; legal, moral, and public policy-making responsibility of computer professionals. Pr.: Junior standing and conc. enrollment in PHILO 492; CIS 520.

    CIS 499. Honors Research/Thesis. (2-4) Individual research problem selected with approval of faculty advisor. Open to students in the College of Engineering honors program and to seniors in the College of Arts and Sciences honors program. A report/thesis is presented orally and in writing during the last semester.

    Undergraduate and graduate credit in minor field
    CIS 501. Software Architecture and Design. (3) I, II. Principles and patterns for design and structure of software, development of object-oriented models, examples of software architecture. Pr.: CIS 300.

    CIS 505. Programming Languages. (3) I, II. History, processors, programming environments; types, scopes and extent, abstraction mechanisms, exceptions and concurrency; functional and object-oriented languages; formal syntax and semantics; structure of compilers for block-structured languages. Pr.: CIS 300. CIS 301.

    CIS 520. Operating Systems I. (3) I, II. Basic operating systems concepts and services: interrupt processing, process, concurrency, deadlock, resource scheduling and system structure; resource management: real and virtual storage, input/output systems, disk scheduling and file systems; design and construction of concurrent programs. Pr.: CIS 450 or EECE 431; and CIS 501.

    CIS 521. Real-Time Programming Laboratory. (3) I. Project-oriented introduction to asynchronous processes and related system software; device drivers, event-driven operations, hierarchical and time-sliced process scheduling, spooling operations, interjob and intermachine communications. Project will be built on a single-use environment. Conc.: CIS 520.

    CIS 522. Introduction to Data Structures. (1) II. Introduction to basic data structures such as stacks, queues, lists, and priority queues, and algorithmic techniques for sorting, searching, and hashing. Emphasis on modularity and reuse. Introduction to the concept of object-oriented design and interface specifications. Not available to students with credit for CIS 300. Three hours rec. a week. Course meets in one contiguous block of five weeks. Pr.: C or C++ programming.

    CIS 523. Introduction to Concurrent Programming. (1) II. Introduction to concurrent programming techniques based on message passing primitives (send/receive) and shared memory (semaphore-based P/V operations and Monitor based wait/signal operations). Not available to students with credit for CIS 520. Three hours rec. a week. Course meets in one contiguous block of five weeks. Pr.: C or C++ programming and CIS 300 or 522.

    CIS 525. Telecommunications and Data Communications Systems. (3) Basic concepts including OSI 7 layer model, data transmission methods, medium access, link control, connections management; network applications including electronic mail, file transfer, distributed computing, window systems; network management including OSI and Internet management frameworks. Pr.: CIS 300.

    CIS 540. Software Engineering Project I. (3) I. Current practices of software development, requirements, design, prototyping, measures, and evaluation. Specification, design, and prototyping of a software system. Pr.: CIS 501.

    CIS 541. Software Engineering Project II. (3) II. Final implementation, integration, and testing of a software system. Introduction to configuration management, project management, and software maintenance. Pr.: CIS 540 (which must be taken in the preceding semester).

    CIS 560. Database System Concepts. (3) I, II. Concepts, approaches, and techniques in database management. Representation of information as data, data storage techniques, foundations of logical data models, data retrieval, database design, transaction management, integrity and security. Pr.: CIS 501; CIS 301 or MATH 510.

    CIS 570. Introduction to Formal Language Theory. (3) I. Formal languages, automata, regular expressions, grammars, introduction to computability theory. Reading and writing informal mathematical proofs pertaining to these topics. Pr.: MATH 510 and CIS 505.

    CIS 575. Introduction to Algorithm Analysis. (3) I. An introduction to mathematical analysis of time- and space-complexity of algorithms, including worst-case, average-case, and amortized complexity. An examination of various algorithmic designs, such as greedy algorithms, divide-and-conquer algorithms, and dynamic programming algorithms. Techniques for proving correctness of algorithms. Pr.: CIS 300, CIS 301, and MATH 510.

    CIS 580. Numerical Computing. (3) I. Introduction to numerical algorithms fundamental to scientific computer work, including elementary discussion of error, roots of equations, interpolation, systems of equations, quadrature, and introduction to methods for solution of ordinary differential equations. Pr.: CIS 300 and MATH 221 and 551.

    CIS 591. Computer Science Applications. (3) I, II, S. Programming, program libraries, and design of algorithms. for students with minimal background in computer science. Not for credit by CIS majors. Pr.: Graduate standing in student's own area and knowledge of at least one procedural programming language.

    Undergraduate and graduate credit
    CIS 604. Set Theory and Logic for CS. (3) Informal and axiomatic set theory, propositional and predicate logic, proof techniques. Pr.: Graduate standing.

    CIS 621. Real-Time Programming Fundamentals. (1) I. Relationship between C/C++ constructs and corresponding assembly code generated by compilers. Introduction to special techniques used to implement micro-controllers, such as initialization of programmable CPU modules/peripheral devices, techniques to link assembly and C/C++ codes, producing ROM-able code, and EPROM burning/Flash programming. Three hours rec. a week. Course meets in one contiguous block of five weeks. Pr.: C or C++ programming; CIS 523; either CIS 300 or 522.

    CIS 622. Real-Time Operating Systems. (1) I. Basic real-time operating systems concepts and services; interrupt processing; process and thread models; real-time software architectures and development environments. Detailed study of the design and implementation of real-time applications using real-time operating systems. Three hours recitation per week. Course meets in one contiguous block of five weeks. Pr.: CIS 621.

    CIS 625. Parallel Programming. (3) I. Basic concepts of concurrent and distributed programming; parallel computing architectures; real-time programming; parallel simulation; fault-tolerant programming; partitioning, mapping, and granularity of parallel programming such as communication systems; grid, N-body stimulation, and matrix problems; and embedded systems control. Pr.: Pr.: CIS 501 and 520.

    CIS 635. Introduction to Computer-Based Knowledge Systems. (3) I. Introduction to the applications of artificial intelligence concepts to solving knowledge-dependent tasks. Review of knowledge-representation ideas. Survey of expert system design. Introduction to existing knowledge-based tools available on personal computers. Development of an intelligent system. Pr.: CIS 300.

    CIS 636. Interactive Computer Graphics. (3) I, II. Devices and software for graphics display and user interaction, development of software for direct graphic manipulation applications. Pr.: CIS 300.

    CIS 638. Multimedia Systems. (3) II. Introduction to computer graphics devices, user interaction; history and scope; multimedia structure, encoding methods and standards, mark-up and scripting languages, software tools, and applications; readings in current literature; class presentation; multimedia project. Pr.: CIS 300, senior standing.

    CIS 640. Software Testing Techniques. (3) II, in alternate years. Survey of software testing methodologies; evaluation of software testing strategies; experience in a variety of software testing practices. Pr.: CIS 501.

    CIS 644. Object Oriented Design and Development. (3) Object models, concepts of classes and objects, dynamic models, comparison of design methods, relationship to object-oriented languages, tools for design and program construction, design and prototype project. Three hours rec. a week. Pr.: CIS 300.

    CIS 645. Software Development Environments. (3) On sufficient demand. Survey of current development environment. Pr.: CIS 501.

    CIS 690. Implementation Projects. (3) I, II, S. The department will suggest various design or implementation projects for individuals or groups in areas such as translators, interpreters, microprogramming, minicomputer operating systems, graphics, numerical software, etc. Pr.: Junior standing.

    CIS 697. Seminar in Computer Science. (1-3) Pr.: Junior standing.

    CIS 705. Programming Language Design. (3) Fundamental design principles: abstraction, parameterization, qualification. Lamda-calculus as a metalanguage for design and analysis. The role of data typing, predicate calculus-base typing. Intuitionistic Type Theory. Pr.: CIS 505.

    CIS 706. Translator Design I. (3) I. Compilers and interpreters, including description of languages, finite state scanners, LL (1) parsing, symbol tables, syntax directed semantics, simple code generation. Constructing a simple compiler. Pr.: CIS 501 and 505.

    CIS 710. Computer Simulation Experiments. (3) On sufficient demand. Principles of digital computer simulations; discrete simulation method, statistics of simulations; implementations. Pr.: CIS 300.

    CIS 720. Advanced Operating Systems. (3) Process synchronization and communication, distributed programming primitives, transactions and concurrency control, distributed scheduling, distributed storage, deadlock, security. Pr.: CIS 520.

    CIS 721. Real Time Systems. (3) The design of hard real-time embedded systems, including language and operating system support, scheduling, schedulability analysis, fault-tolerance, and design tools. Pr.: CIS 520 or both CIS 622 and EECE 633.

    CIS 722. Operating System Practices. (3) II. Structure and functions of modern operating systems. Emphasis on reading and modifying the source code of a working operating system. This includes memory management, input/output, process management, file systems, and network interconnection software construction. Pr.: CIS 520.

    CIS 725. Advanced Computer Networks. (3) Network algorithms; routing and congestion control; protocol engineering; protocol decomposition, specification and verification, synthesis; protocols for high speed networks; parallel implementations, light-weight protocols. Pr.: CIS 520 and 525.

    CIS 726. Advanced World Wide Web Technologies. (3) II. An advanced course on the technologies that make up the World Wide Web. WWW site designs and analysis, WWW software architecture, server-side technologies, dynamic executable scheduling, digital libraries, WWW security. Pr.: CIS 520, CIS 525.

    CIS 730. Principles of Artificial Intelligence. (3) II. Introduction to the fundamental concepts and techniques of AI: problem solving, search and planning, knowledge representation and qualitative reasoning, expert systems, natural language processing and cognitive modeling, computer vision, and machine learning. Pr.: CIS 501.

    CIS 732. Machine Learning and Pattern Recognition. (3). I. Theory and methodology of inductive learning, including decision trees, artificial neural networks, probabilistic and instance-based learning, and inductive and boosting; genetic algorithms and genetic programming; and applications to data mining. Pr.: CIS 501 or 575.

    CIS 736. Computer Graphics. (3) Topics in computer representation and display of images and graphic interaction. Pr.: CIS 636 or EECE 636.

    CIS 740. Software Engineering. (3) Software life cycle, requirements, specifications, design, validation, measures, and maintenance. Pr.: CIS 540.

    CIS 746. Software Measurement. (3) Measurement theory; development, validation and use of software measures; software measures in the software life cycle, including cost estimation, design measures, software complexity and software reliability. Pr.: CIS 540.

    CIS 748. Software Management. (3) Topics related to the management of software, including organization, project planning, process models, life cycle models, TQM, software quality assurance, cost estimation, configuration management. Three hours rec. a week. Pr.: CIS 740.

    CIS 750. Advanced Computer Architecture Experiments. (3) On sufficient demand. Characteristics of various computers including those with execution support of multiprocessing, multiprogramming, microprogrammable, high-level language, stack processing, and communication architectures. Two hours lec. and three hours lab a week. Pr.: CIS 450.

    CIS 761. Data Base Management Systems. (3) Data models and languages, hierarchical, network, relational systems; implementation and operational requirements; programming projects using data base management systems. Pr.: CIS 560, 604.

    CIS 762. Office Automation. (3) Characteristics of information work; modeling systems for characterizing aspects of office environment; form-based systems; office automation and description languages; ergonomics; local area networks and tools used in the automation of offices. Pr.: CIS 525, 560.

    CIS 764. Database Design. (3) On sufficient demand. Conceptual, logical, physical, and user interface design for database management systems. Three hours rec. a week. Pr.: CIS 501.

    CIS 770. Formal Language Theory. (3) Regular languages, finite automata, context-free languages, pushdown automata, context-sensitive languages, linear bounded automata, recursively enumerable languages, Turing machines. Pr.: CIS 570.

    CIS 771. Software Specification. (3) Formal logic for specification of software components; algebraic vs. model-based specifications; common abstract types; verification of properties of specifications; introduction to specification of concurrent systems. Pr.: CIS 604.

    CIS 775. Analysis of Algorithms. (3) I. Study and application of techniques and procedures used in the analysis of algorithms including the worst and average cases of both time and space. Study of the P and NP classes. Pr.: CIS 575.

    CIS 798. Topics in Computer Science. (Var.) I, II, S. Pr.: Prerequisite varies with the announced topic.

    Topics within Engineering:
    dObjectives and Design Basis dSupport Services dCivil Engineering
    dGeneral Requirements dResearch Centers dComputing and Information Sciences
    dUniversity General Education dExtension and Outreach dElectrical and Computer Engineering
    dDegree Programs dGeneral Engineering dIndustrial and Manufacturing Systems Engineering
    dProgram Options dArchitectural Engineering/ Construction Science and Management dMechanical and Nuclear Engineering
    dInterdisciplinary Studies dBiological and Agricultural Engineering   
    dDual Degrees dChemical Engineering   
    start of standard bottom bar

    Kansas State University
    June 5, 2003