CIS490 Design in Software Engineering Course Syllabus for the Virtual Class
1. Opening Note
This section of CS490 is offered via "WebCt", an online conferencing system. The material covered will be the same as in the face to face sections of CS 490. A substantial time investment into the course, on the order of 5-7 hours a week or more, must be expected (this includes reading the required text, viewing lectures, participating in the electronic conference discussions, and doing the homework and projects).
Course notes can be viewed on my webpage: http://www.ccs.njit.edu/maura/. Discussions, weekly homework, and assignments will take place continuously in “WebCT. You will be expected to sign on-line at least two times a week.
It is my goal to give you as much information via this syllabus which I expect will remain unchanged. Should there be any need to make any modifications we will discuss so as a group and resolve.
2. Personnel
Instructor: Maura Ann Deek
Office: 3803 Guttenberg Information Technologies Center (GITC) Phone: 973-596-5764
Office Hours: online
E-mail: [email protected]
3. Course Overview
Title: Design in Software Engineering
Credits: 3
Prerequisite: Senior standing or departmental approval
Description: Focus is on the methodology for developing software systems. The course is of interdisciplinary nature that incorporates management, economics, marketing, software technology, engineering, E-commerce, human sciences and other disciplines in a unified framework of problem solving. The course tackles problems from a business prospective. Methods and techniques for functional requirements analysis and specifications, design, quality assurance, process technology are discussed. Students prepare a full documentation project, which includes its functional specifications and preliminary design. This project serves as a generic foundation for the final software product. Students who take CIS491 are supposed to use this documentation as a basis for the implementation phase.
CIS490 Instructor: Maura Ann Deek
Goals: The goals of this course is:
• To become familiar with the basic concepts of software engineering and the software development life cycle.
• To understand the theoretical and practical issues of software engineering
principles, technology, and management important for developing large software systems.
• To be able to engage in the various phases of the software process, particularly applying the methodological techniques for software specification, design, implementation, testing, verification, and documentation.
• To be able to plan the different phases of a software development project,
including the estimation of the level of effort required, and to track the progress of the project.
• To understand the important issues of working in teams on the different phases of software development project, from establishing software requirements, through specifying software design, to performing software construction.
4. Topics
1. Software Development Environment 2. Project Management Part 1
3. Project Management Part 2 4. Requirements Engineering 5. Process Modeling Part 1 6. Process Modeling Part 2 7. Logic Modeling
8. Data Modeling 9. Architectural Design 10. Software Design Quality 11. HCI and Interface Design 12. Object Oriented Analysis Part 1 13. Object oriented Analysis Part 2
5. Textbooks
Modern Systems Analysis and Design by Jeffrey A. Hoffer, Joey F. George and Joseph S. Valacich, Fourth Edition, Addison Wesley
ISBN: 0-13-145461-7
6. Assignments Viewing:
Reading:
It is required that you read the textbook chapters in the above book after you view the corresponding lecture. Reading assignments will be posted on a weekly basis (also included below).
Homework:
Homework is of two kinds:
a) Weekly participation. Conference comments about what you learned from each week's lesson (the lecture and the reading assignment).
b) Software engineering project. Project milestones will be posted on the system (to be submitted electronically).
7. Examinations
There will be a midterm and final exam given on the Newark campus. Exact date and time will be assigned through the Office of Distance Learning and will be
communicated electronically in the course conference once available.
8. Grading
Midterm 25 %
Final 30 %
Class participation: 20%
Software Engineering project: 25 %
9. Late policies
Due to the nature of this course, no late Interaction Homework will be accepted (unless you have a good reason, such as documented illness). For projects there will be late penalties for late submissions
10. Academic Integrity
The work you do and submit is expected to be the result of your effort ONLY. You may discuss the high level (general) approach to solving of a problem. However, cooperation should not result in one or more students having possession of a copy of all or part of a project completed by another student (or group). The penalty for violating the University's code may include failure in the course and probation.
CIS490 Instructor: Maura Ann Deek
12. Computing Needs
The following software packages may be used/utilized in this course:
• Microsoft Visio (Standard, professional or enterprise edition)
• Microsoft Project for windows (automate Gannt/Pert Chart generation)
• Microsoft Word - document preparation
• Microsoft Excel – Spread sheet
• Microsoft PowerPoint - presentation software
• Windows 98 or Windows /Me/XP - operating systems
• Adobe Acrobat Reader 4.0/5.0 - used to read .PDF documents (available on the WWW)
13. Lecture Details
The course will cover 1 lecture per week (topics can be found in text described above) in the following order
CIS490: Guided Design in Software Engineering
Date Topic Readings
(3rd Edition) 4 th edition 1-Introduction to Course 1st Week 2-Software Development Environment Chapter 1 and 2 (Skim chapter 19) 1. The Systems Development Environment. 2ND Week Project Management (Part 1)
Chapter 3 and 4 3- Managing the Information Systems Project. 4. Identifying and Selecting Systems Development Projects. 3RD Week Project Management (Part 2)
Chapter 5 and 6 5. Initiating and Planning Development Projects. 4th Week Requirements Engineering Chapter 7 6. Determining System Requirements. 5th Week Process Modeling
(Part1)
Chapter 8 7. Structuring System Process Requirements. 6th Week Process Modeling
(Part2) Chapter 8 7. Structuring System Process Requirements. 7th week
Logic Modeling Chapter 9 8. Structuring System Logic
8 Week Data Modeling Chapter 10 and 12 9. Structuring System Data Requirements. 10. Designing Databases. Architectural Design 9th Week Software Design Quality
Chapter 15 13. Finalizing Design Specifications. 14. Designing Distributed and Internet Systems. 10th Week HCI and Interface
Design
Chapter 13 and 14 11. Designing Forms and Reports.
12. Designing Interfaces and Dialogues. 11th / 12th week Object Oriented
Analysis
Chapter 20 Appendix 3. Object-Oriented Analysis