Header image  

Computer Science and Systems Analysis

 
  Home ::   Teaching ::   Research  ::   Publications  ::   SEURAT  ::  
   
 
CSA 449 - Software System Project II
 

Instructor: Janet E. Burge, 205V Benton Hall, 9-0347, burgeje-at-muohio.edu
Office Hours: 3-4 Tuesday, 3-3:50 Wednesday, 2-3 Thursday

Prerequisite: CSA 448 Software Systems Project I
Required Text: None.
Additional References: See Course Documents on myMiami

Jump to the syllabus

Catalog Description: Student teams conduct major open-ended research/design projects. Elements of the design process are considered as well as real-world constraints, such as economic and societal factors, marketability, ergonomics, safety, aesthetics, and ethics.

The Capstone Experience:

The Capstone Experience, completed near the end of baccalaureate studies, integrates liberal learning with specialized knowledge. Each Capstone emphasizes sharing of ideas, synthesis, and critical, informed reflection as significant precursors to action, and each includes student initiative in defining and investigating problems or projects.

Thus, the objectives of this course are to utilize your knowledge, as a senior student to perform a major open-ended design project. The project is conducted in a professional manner that resembles a real business/industrial environment. Here, you are considered a design engineer working in a multidisciplinary team, and the faculty as the project director/manager and consultant.
The fundamental elements of the design process are integrated with the four goals of the Miami Plan (in bold, below) to help you achieve the capstone objectives. Specifically, you will be able to:

  • Understand context by defining and considering the boundary of the problem, by conducting research, and by considering realistic constraints, as appropriate to each project, which include technical and economical factors, social implications, environmental considerations, marketability safety considerations, reliability, aesthetics, and ethics.
  • Think critically by solving open-ended problems, by establishing objectives and criteria, by brainstorming ideas and alternatives, by synthesizing, creatively, the problem, by analyzing, testing, and evaluating ideas, and by developing proposals.
  • Engage with other learners by actively participating in and learning to function within a multidisciplinary team, by assuming, as necessary, different roles on the team, by communicating with one another and your customer and advisor, and by critically evaluating and reflecting on your performance as well as their team members.
  • Reflect and act on your proposed designs and results, and communicate these effectively with your customer and project manager, by addressing safety and other related issues, and learning to adjust to and evolve with the given stochastic environment of an open-ended business/industrial problem.

Course Learning Objectives. This course sequence is intended primarily for senior students majoring in either Computer Science or Systems Analysis in the CSA department. This capstone experience is intended to require you to work with a team of students to use your knowledge and skills as a senior student to design and create a large software system.

Thus, at the end of the course sequence CSA 448-449, students will be able to:

A) Perform all steps in the software development process within the context of a two semester project

1) Collect and analyze system requirements from an identified set of clients and users.

  • Define customer needs
  • Develop verifiable system requirements
  • Formulate a succinct definition of the problem
  • Define the problem boundaries
  • Evaluate concepts and technologies for use in the project

2) Design a software system using standard techniques

  • Brainstorm to generate alternatives
  • Synthesize and evaluate alternatives to select an optimal solution
  • Address multiple criteria (such as technical, environmental, economic and societal issues) in design
  • Follow a standard development process
  • Develop and test models using mathematical, scientific, and engineering principles and modeling techniques
    • Identify appropriate modeling tools and techniques for analysis and design
    • Perform the analysis of possible solutions
  • Propose and justify a final design solution

3) Implement this design producing a functioning software system that meets user requirements at a high level of quality

4) Validate and verify the resulting system

  • Use static methods of analysis of requirements and design.
  • Use black box and white box testing methods for unit, integration, system, and acceptance testing (as appropriate)
5) Deploy the implemented software system

6) Use standard notations and tools throughout the lifecycle, e.g. UML.

B) Demonstrate written and oral communication skills necessary to function as an engineer or computer scientist, communicating effectively with both technical and non-technical audiences

1) Interact with the client to determine appropriate criteria and constraints on the design, and the appropriate problem to solve to satisfy the client need

2) Document and present the results of the design process

  • Prepare and deliver various written technical reports as requested by your client
  • Prepare and deliver effective professional oral presentations

C) Understand and apply engineering ethics and professionalism, and demonstrate skills in project management.

1) Demonstrate an ability to plan, organize, attend, and execute meetings with the client

2) Plan and manage a design project, including time management

3) Identify ethical implications/considerations of the project.

D) Work in teams and take on different roles in the team.

1) Demonstrate an ability to function in a team environment

2) Document teamwork processes used, and demonstrate understanding how they helped the team progress during the project

Syllabus: Note: topics, dates, and assignments are subject to change at instructors discretion. The TBD elements in the syllabus will be filled in after the start of the semester. Deliverables are due at the start of class as well as placed in the turnin folder for the assignment (or into svn as appropriate). Late assignments will be penalized 10% the first 24 hrs, 25% the next (reductions will be taken at the time of computing the final grades for the course). Assignments more than 48 hours late will not be graded.

CSA 448 Syllabus
Week
Date Topics Readings Assignments Due
1
1/14 Initial meeting  
1/17 Team Meetings  
2
1/21 Martin Luther King Day - no class
1/24 Team Meetings

Status Report

3
1/28    
  Team Meetings Status Report
Cleanup Activities
4
2/4 Release Planning Meeting
   


Status Report/Initial Time Estimages (for planning)

5
2/11 Design Review Requirements - release 1
  Dr. Burge on travel  

 

6
2/18 Presidents' Day - no class    
2/21 Team Meetings

Status Report

Design - release 1

7
2/25
2/29 Team Meetings Status Report
8
3/3  
3/6 Team Meetings Status Report
9
3/10    
3/13 Demonstrations

Release 1 - software (release site, tagged version in SVN), documentation (Programmer's guide, Javadoc)

10
3/17 Spring Break - no class
  Spring Break - no class
11
3/24  
3/27 Release 2 Planning Session

Release 2 Plans; Alumni conference planning

12
3/31   Team meetings: poster draft; single slide per group for "poster teaser" presentation; usability lab draft
  4/2     Final poster; presentation slide (due by 9 am!!!)
4/3 Team Meetings


Status Report

Alumni Conference usability dry fun

  4/4 Alumni Conference Poster sessions; Usability Lab
13
4/7 Requirements - final release (informal - e-mail)
4/10 Team Meetings Status Report
Design - final release (if required)
14
4/14 Dr. Burge on Travel  
  4/17 Dr Burge on Travel
Status Report (by e-mail)
15
4/21 ?  
4/24 Team Meetings

Status Report

Client Briefing Materials (description of your project, five pages MAX, assume your audience is unfamiliar with Eclipse, SEURAT, and Rationale)

16
4/28    
  Final Presentations for Client   Presentation
5/5 Start: Exam Week   Individual: Reflective Essay
  5/6 Final Demonstrations of SEURAT - 7:45 pm Final Release - software (release site, tagged version in SVN), documentation (Programmer's guide, Javadoc)

Grading: The final grade for CSA449 is based on the following:

 

Assignment Percentage
Cleanup Activities 10%

Design Review

2%

Release X (number of releases to be determined)

  • Test Plans (5)
  • Test Procedures (10)
  • Javadoc (10)
  • Software (comments, and functionality. Mostly functionality) (35)
  • User's guide (On-line help) (10)
  • Programmer's guide (15)
  • UML (10) OR alternative (to be negotiated with instructor!)
    • Use Case Descriptions (5)
    • Class Diagram (3) (for new classes + SEURAT classes involved) - Analysis Level
    • Sequence Diagram for One Use Case (chosen by instructor) (2) - Analysis Level
  • Testing Results (testing of other team) (5)
  • Presentation/Demonstration (Demo) (5)
50% (divided by number of releases)

Alumni Conference

  • Poster and poster teaser (5%)
  • Usability Lab (materials and conducting it) (5%)
10%

Presentation 2:

  • Client Briefing Materials (TBD) 5%
  • Presentation (presentation delivery, slides, questions) 10%
15%
Team Status Reports 5%
Participation 3%

Individual: Reflective Essay (Individual)


5%

Grading Policy: Numeric grades will be given for all assignments. Final grades to the class will be A, B, C, D, or F as appropriate with A range being 90-100, B range 80-89, C range 70-79, D range 60-69, anything less than 60 an F. Plus/minus grades will be reserved for borderline cases only. 

Group Projects: In your future careers as software professionals, you will need to be able to work with others. This means an often difficult balancing of personalities, abilities, schedules, and motivation levels. You are unlikely to have the ability to fire a co-worker (although you may want to) and are even less likely to get your supervisor's permission to break from the group to do your own, parallel, version of the project. That won't happen here either. It is important to know that group members will be assessing each other and that not all members of the group will necessarily receive the same grade for the project.

Groups:

  1. Hanna, Moler, Wagner
  2. Dees, Wright, Zorn
  3. Callahan, Prater, Smith, Wilder

Academic Honesty: All work assigned as individual work must be done as individual work. Violations will be handled in accordance with the Miami University Academic Honesty Policy.