HOWARD UNIVERSITY

DEPARTMENT OF SYSTEMS AND COMPUTER SCIENCE

SENIOR PROJECT I FALL 1999

INSTRUCTOR: RONALD J. LEACH

OFFICE: 2120B, LKD Hall

CONTACT INFORMATION: (202) 806-6650, FAX 806-4531, [email protected]

OFFICE HOURS: By appointment

This project-oriented course is intended for seniors majoring in the Department of Systems and Computer Science. The course will meet at most once a week, in the weeks indicated by the schedule. The actual meeting time will be determined at the second class meeting.

GOALS OF THE COURSE:

  1. Prepare students to be software engineers, capable of meeting the certification requirements that are likely to be in place for software engineers during the next few years. (Texas is initiating such certification now.)
  2. Teach students to apply engineering discipline to the entire development process.
  3. Participate in formal reviews and "Fagin inspections."
  4. Complete a small, but realistic, team software project.
  5. Produce all necessary documentation and formal presentations.
  6. Develop a set of criteria for comparison of technology alternatives and use these criteria to provide an assessment of several projects.
  7. Develop an understanding of some ethics and social issues in software development.

METHOD OF INSTRUCTION:

The class will be run as an informal seminar, with considerable interaction and class presentations.

BRIEF Description of projects

The projects in this course may be suggested by the instructor or by students. The projects must have high technical content and result in a deliverable evaluatable software project. Group projects are acceptable if the roles of the group members have been approved by the instructor in writing.

I believe that every student receiving a degree in Computer Science must master at least the following technical skills:

Things that are nice to have skills in include:

Your project should include as many of the essential (and many of the nice) skills as possible. If your senior project does not include these skills, you must provide acceptable written justification that you have mastered these skills; otherwise the project proposal will not be accepted.

An essential part of the learning in this course is taking a very general problem statement given above and turning it into a set of explicit requirements. Students are explicitly encouraged to develop their systems in the modern style; that is, reusing existing components and software packages. The year-long project will emphasize requirements analysis, design, and testing, with coding being only a small part of the project effort.

Here are two suggested projects:

  1. Provide analysis, design, and support for the Morland-Spingarn archives project; this involves database, the Internet, web pages, …
  2. Change an existing senior project for stock and bond analysis that used Internet data sources, and was written in Visual BASIC on a single machine, to a client-server system.

 

COURSE REQUIREMENTS:

Students are expected to:

There will be no examinations.

GRADING:

10 % Preliminary Presentation (oral) This group presentation includes detailed requirements and preliminary design.

10 % Preliminary Presentation (written) This group project includes detailed requirements and preliminary design.

10 % Participating in inspection and evaluation of other student's preliminary presentations.

10 % Final Presentation (oral) This group presentation includes brief software overview, detailed requirements, design, , test plan, and brief description of expected results of test cases.

40 % Final project documentation (written). This group project includes detailed requirements, design, test plan and expected test results of test cases.

10 % Writing a short (3-5 pages, singles spaced, 1 inch margins, 12 point font) paper on ethical considerations in component-based software development.

10% Participation in a software engineering experiment designed to compare efficiency of several different approaches to software development.

TENTATIVE COURSE SCHEDULE:

Week of August 23

First meeting

Week of August 30

Second meeting

Week of September 13

Third meeting -preliminary project descriptions due (brief 10 minute oral presentation of proposed project)

Week of September 20

Feedback by instructor on preliminary project descriptions

Week of September 27

Fourth meeting - presentations of project descriptions. Final written, detailed project descriptions due.

Week of October 4

Paper on the ethics of component-based development due.

Week of October 11

Preliminary requirements (written) turned in to instructor in his office by 4 PM.

Week of October 18

Fifth meeting. Preliminary oral presentations of project requirements with inspections

Week of October 25

Sixth meeting. Preliminary oral presentations with inspections, continued.

Week of November 2

Seventh meeting. Final requirements documents and presentation due. Participation in software engineering experiment

Week of November 14

Participation in software engineering experiment -tentative

Week of November 23

Eight meeting. Initial designs due.

Friday, December 4

Written project report turned in to instructor in his office by 4 PM.

Week of December 7

Ninth meeting Final group presentations given.

Note: Please examine the student handbook for information about plagiarism. Any student needing assistance under the Americans with Disabilities Act should contact the instructor.