
INSS 520 - Software Structures
Distance Education Term III-(2001 - 2002)
Dates: 21 January - 12 May, 2002
Instructor: Dr. Edmund I. Deaton
Course Description: This course provides an in-depth look at software from a design and implementation perspective. Language semantics and syntax issues are explored. Specification and implementation of data structures are examined. Characteristics of non-procedural, heuristic and object oriented languages are discussed. Current developments in software engineering methodologies are reviewed as well as research into the improvement of those practices. Software project management concepts and software quality issues are also addressed. Students will be required to complete programming projects. CREDIT. Three (3) semester hours.
Prerequisites: All undergraduate prerequisite courses or permission of the instructor.
Recommended prerequisite: INSS 510.
Course
Objectives:
This course enables students to understand:
- The fundamental nature of programming languages and how they work
- Tradeoffs in programming language design and usage
- Virtual computer concepts
- Structured programming concepts
- Data and file structures
- Information hiding and software reusability
- Major attributes of several programming languages
- Principles of software engineering
Course
Materials:
Text: Concepts of Programming
Languages, Robert W. Sebesta, Addison-Wesley, 1999, 4th
Edition
Additional material will be provided by the instructor or available on line.
Grading
Information: The grades for
this course will be based on
|
Small Assignments (exercises) |
10 % |
|
Programming Assignments |
25 % |
|
Term Paper |
20 % |
|
Mid Term Exam |
15 % |
| Final Examination | 30 % |
|
A |
= |
90–100% |
|
B |
= |
80–89% |
|
C |
= |
70–79% |
|
F |
= |
0–69% |
Students are expected to respond to the question(s) submitted in the weekly conferences. Students should be prepared to spend a substantial amount of time preparing assignments and turning them in on the indicated dates. Grades on assignments or the project submitted after the due date may be lowered 10%.
ASSIGNMENTS: Programming assignments will involve writing and debugging programs. You are allowed to implement the programs in the programming language of your choice, i.e., the instructor will not mandate that a particular programming language be used by all course participants, although he will make recommendations regarding what his choice of language would be. Assignments that are submitted past the due date may incur significant late penalties. In addition, course participants will be expected to complete a paper on a particular language. That requirement will be explained further to the class during the first week of the course.
ATTENDANCE POLICY: This is a distance education course, but it is still, perhaps even more important for the students to participate actively in class discussions. This will be done using Web Tycho. The students will be assigned to "Study Groups", hopefully by physical location. Effective class discussions necessitate full class participation. In addition, it is necessary for course participants to be available on line frequently for the class discussions to benefit fully.
COURSE CONDUCT:
There
will be a paper required during the last half of the course on a programming
language, a paper that is to be prepared using group interaction. The purpose of the paper
is to lead class discussion on "another" programming language.
Thus, course participants
will need to become familiar with a programming language that they
currently are unfamiliar with, familiar enough to present the language to
their colleagues and lead a
discussion on that language. A list
of potential languages will be supplied
by the instructor at the beginning of the course.
There will be some home work assignments from the text.
The tentative schedule is attached.
Dr. Deaton received his Ph.D. in Mathematics from the University of Texas. He has been teaching and doing research in Computer Science since 1980. After many years at San Diego State University he retired in 1992. He was a visiting professor at Hope College, Holland, Michigan during 1993-1995. He spent two years at Oklahoma State University from 1980 to 1982 as a visiting professor and visited there again in 1992. He worked as a management consultant with a Southern California consulting firm for several years in the 1980's. He specialized in database design for governmental entities. He has been with the University of Maryland, European Division since 1995. He teaches in the graduate MIS program and also teaches undergraduate computer science courses. His academic specialty is data base design. His primary hobbies are hiking and Alpine climbing. Although based in Heidelberg, he calls Rota, Spain home and hopes to be assigned there for some time each year. During the time of this distance education course he will be in Aviano, Italy. E-mail: edeaton@faculty.ed.umuc.edu; Address and phone to be provided.
Course Schedule:
|
Week |
Session Dates |
Chapters |
Due Dates |
|
1 |
21 January-27 January | Welcome - Chapters 1 & 2 | |
|
2 |
28 January-3 February | Chapter 3 - Syntax and Semantics | |
|
3 |
4 February-10 February | Chapter 4 - Name, Bindings, Type Checking, and Scope | |
|
4 |
11 February-17 February | Chapter 5 - Data Types | |
|
5 |
18 February-24 February | Chapter 6 - Expressions | |
|
6 |
25 February-3 March | Chapter 7 - Control Structures | |
|
7 |
4 March-9 March | Chapter 8 - Subprograms | Assignment # 1 |
|
8 |
9 March - 22 March | Term Break | |
|
9 |
25 March-31 March | Chapter 9 - Implementing Subprograms | |
|
10 |
1 April-7 April | Chapter 10 - Abstract Data Types | |
|
11 |
8 April-14 April | Chapter 11 - Object-Oriented Programming | Assignment # 2 |
|
12 |
15 April-21 April | Chapters 12 - Concurrency | |
|
13 |
22 April- 28 April | Chapter 13 - Exception Handling | |
|
14 |
29 April-May 4 | Presentation of Term Projects | Term Projects, Assignment # 3 |
|
15 |
5 May-12 May | Final Exam - On-line |