University of Alberta, School of Business
Department of Accounting, Operations and Information Systems
Management Information Systems 419:
Systems Development Using Advanced Software Tools
Course Syllabus Winter 2020
Instructor: Vincent M. Davis Office: BUS 1-31 Office Hours: Tues 11:00-12:00 (email first) Office Phone: 492-7985 Class (Lecture B1): Tues/Thurs 9:30 – 10:50 am Room: BUS 3-6 Lab (H1): Tues 17:00 – 18:50 pm Room: BUS B-18
e-mail: [email protected]: put MIS419 in subject area
Course Pre/Co-requisites
Co-requisites: CMPUT 115 & MIS 415. Pre-requisite: MIS 413 (or permission of the department).
Required Course Materials
Optional textbook: "Object-Oriented Software Engineering Using UML, Patterns and Java", by Bernd Bruegge and Allen H. Dutoit: 3
rdEdition, Pearson/Prentice Hall, 2010: ISBN: 0-13-606125-7
Other readings (usually from public websites) assigned by the instructor
Selected readings from "books24x7" e-books at http://library.books24x7.com/topics.asp
Course Description
This course focuses on the issues and challenges involved in designing, constructing and implementing industrial-strength systems in a business environment. Key topics include software engineering approaches and standards, object-
orientation, and management of the software development process. Four key focus areas are: Theory of Software Engineering, Management of the Software Process, Methodology for System Development and System Development Technology. This course provides MIS majors with an alternative to CMPUT201.
Through lectures, class-work, labs and assigned discussions and readings, students will make progress toward the following goals (goals identified and numbered by ACM's IS-model course template: 2002.9 Physical Design and Implementation in Emerging Environments):
100- to develop skill in analysis, design and development of application software using a programming environment
101- to identify differences between structured, event-driven and object-oriented application design and explain the implications of these approaches to the design and development process
103- to be able to develop program tests and system tests
104- to understand the different programming environments available for business application development 112- to develop a functional understanding of proactive, principled behavior and time mgt
113- to ensure attitudes necessary for successful team behavior including empathetic listening, consensus negotiation, conflict resolution, and synergistic solution finding, and to apply the concept of commitment and rigorous completion
114- to ensure goal setting and alignment of team activities with project obligations
115- to describe interactions with higher levels of management in selling project objectives and performing project management tasks 116- to describe and explain life cycle concepts, and apply them to the course project
118- to discuss and apply the concept of life-long learning
120- to present and explain the evolving leadership role of information mgt in organizations
Through a group assignment, students will apply theoretical, management, methodology and technology knowledge and gain a wider exposure to the following:
-Rational Unified Process (RUP) methodology,
-Unified Modeling Language (UML) and associated software tools for producing UML models,
-Visual Studio .NET development environment with C# .NET (pronounced see-sharp-dot-net) language, -Microsoft's Internet Information Server (IIS) and its implementation of ASP.NET and ADO.NET,
-MS SqlServer database (and reference to Oracle's object-oriented 11g database where warranted and where available) A balanced approach will be taken, relying on Theory, Management, Methodology and Technology.
Learning Objectives
This course incorporates the Learning Goals of the BCom Program, in particular Critical Thinking, Oral Communication, Teamwork, Quantitative Skills and Written Communication.
At the end of this course, you will have developed the following course specific skills or knowledge :
1. Recognize current systems-development theories and best practices that employ visual modeling, component re- use, iteration and object-orientation
(Assesses Critical Thinking, Quantitative Skills).
How will this be measured?
Deliverables produced during large term-project
Midterm and Final exams
2. Recognize current theories and standard practices for the estimation and management of systems development
projects that employ visual modeling, component re-use, iteration and object-orientation(Assesses Critical Thinking, Quantitative Skills)
. How will this be measured?
Project-management deliverables produced during large term-project
Midterm and Final exams
3. Gain experience in applying an iterative, object-oriented systems development methodology to a project
(Assesses Critical Thinking, Teamwork, Quantitative Skills, Written Communication).
How will this be measured?
Deliverables produced during large term-project
Midterm and Final exams
4. Gain experience in collaboratively building database-enabled web-site prototypes using object-oriented software construction tools and languages
(Assesses Critical Thinking, Teamwork, Quantitative Skills).
How will this be measured?
Deliverables and prototypes produced during large term-project
Midterm and Final exams
5. Gain experience in “soft consulting skills”, including workload management, listening skills, relating to clients and collaboratively interviewing clients to negotiate and document requirements
(Assesses Critical Thinking, Teamwork, Quantitative Skills, Oral Communication, Written Communication)
. How will this be measured?
Interview-oriented documents produced during large term-project
Midterm and Final exams
6. Recognize principles behind testing system designs and software
(Assesses Critical Thinking, Quantitative Skills). How will this be measured?
Testing-oriented deliverables produced during large term-project
Midterm and Final exams
7. Gain experience working within a large team to produce business models, system designs and software deliverables under deadlines
(Assesses Critical Thinking, Quantitative Skills, Teamwork).
How will this be measured?
Deliverables and prototypes produced during large term-project
8. Be comfortable presenting to an audience in a professional manner
(Assesses Oral Communication). How will this be measured?
Two presentations to clients during term-project
9. Be comfortable writing structured reports and business analysis documents
(Assesses Written Communication). How will this be measured?
Written business-analysis deliverables within large term-project
Format
The course is intended to be a ‘HANDS-ON’ intensive course. As such, in addition to lectures, significant time will need to be devoted by students to develop expertise in RUP methodology, UML, C# .NET in Visual Studio .NET and ASP.net tools, which serve to illustrate key concepts of systems development. Because there are many topics, as well as involved assignments, students are urged to avoid falling behind in their workload. Because the final exam is not cumulative, there will be no deferral of midterm credit to the final exam. If a satisfactory medical reason is given for exam absence, a make-up exam may be available.
Laboratory Sessions
During your registered lab session H1, an instructor will be available while you gain skills in IBM's Rational Unified Process (RUP) methodology, UML, C#.net, Visual Studio.net, ADO.net, ASP.net as well as simple database creation using SqlServer software. Please note that in addition to these registered hours the lab has been reserved for you to complete your assignments during the time periods shown in the Lab Time section below.
Group Project
(RUP, UML, C#.net, Visual Studio .net, ADO.net, ASP.net)The Group Project will be closely based upon Rational / IBM's Rational Unified Process (RUP) methodology. Each team will be required to study and understand the approach as well as the required deliverables (called artifacts) of RUP. As well, each team will be required to study and acquire skills in UML, C#.net, Visual Studio.net, ADO.net, ASP.net as well as simple database creation using SqlServer software. Further, each team will be required to apply the methods and activities of RUP to a business scenario and source documents delivered by the instructor, and then create and deliver the required artifacts.
The RUP methodology recognizes four separate phases: Inception, Elaboration, Construction and Transition. Although each phase has high degrees of overlap with the others and also contains many similar managerial-level activities, there are themes associated with each phase. The Inception phase concentrates most on Business Modeling and
Requirements gathering. The Elaboration phase concentrates most on Analysis and Design. The Construction phase concentrates most on Testing and Implementation, and the Transition Phase concentrates most on Deployment and Configuration/Change management.
Before each phase begins, the instructor will specify, in coordination with the RUP methodology, the scope of the
deliverables required as well as the grading scheme to be used. For example, when grading, each team may be credited with either zero, "significant" or "substantial" completion of each deliverable. Extra credit may be given to teams that create the best deliverable when compared to other teams. In order to manage the level of workload, the instructor may adjust the scope of deliverables required between one phase and the next. As well, for each phase, the instructor may require submission of all computer-code deliverables built to date (called an "iteration").
Remember: you and your fellow team-members are JOINTLY responsible for producing all the team- deliverables required. You must monitor your team-mates to ensure that all work is being done. The instructor will NOT intervene to investigate or police any perceived unfairness due to any team-
member's lack of attendance or diligence. However, please note that the instructor reserves the right to remove members from groups prior to the peer evaluation form being submitted if there is evidence that the group member is not contributing to the group. This will not take place without the student being given an opportunity to respond to concerns.
Students may be able, either through UofA websites, external websites or through their instructor, to acquire or borrow copies of Visual Studio and/or IBM/Rational software products based on the software installed in the UofA laboratories. They can then install this software onto their personal computers. This may help offset the limitation of doing all assignment-work only in the assigned labs. In past years, many students have enjoyed increased availability, flexibility and personal knowledge by installing software products as described above.
However, all such downloading is done at the student's own initiative and risk: no technical support is offered by the School of Business for products installed on personal computers. Also, all assignments produced by the student must be run-able and test-able on Lab B18's computers and must correctly connect to the School of Business's SqlServer and Oracle data.servers for data access: compatibility of student-produced programs with Lab B18 and the above data-server computers is the student's responsibility.
The due date and weight for each deliverable is shown in the grading scheme below.
Grading Scheme
Component Due Date Weight
INDIVIDUAL WORK
Midterm Exam
(no deferrals, all mtls wks 1-5 & Feb 11)9:30 am, February 13, 2020 20%
Final Exam
(all materials wks 7-14)2:00 pm, Thur, Apr 23, 2020
(estd)30%
SubTotal Individual Work 50%
GROUP WORK: Project: RUP / UML / ASP.net / C#.net:
Inception Phase + Iter#1: Final Deliverables February 7, 2020 (3:45 pm) 10%
Group Project Presentation #1 (20min) February 7, 2020 (3:45 pm) 5%
Elaboration Phase + Iter#2: Final Deliverables March 13, 2020 (6:00 pm) 10%
Construction Phase + Iter#3: Final Deliverables March 28, 2020 (12:00 noon) 10%
Transition Phase + Iter#4: Final Deliverables April 9, 2020 (11:59 pm) 10%
Group Project Presentation #2 (30min) April 9, 2020 (3:45 pm) 5%
SubTotal Group Work 50%
Total 100%
Approach used for converting Assignment Marks into Final Grades
After the above assignments and exams are marked, they will be weighted according to the above chart and the weighted scores will then be added together to produce a total “raw” achievement score (total weighting = 100%) for each student over the entire course. These “raw” scores will then be sorted (from high to low), producing an ordered list of the achievements of all the section’s students.
Then, this list of “raw” scores will be examined for natural “break points” that distinguish one or a group of students from another. By looking at these natural break points, as well as possibly considering students’ relative examination scores on major examinations, any special circumstances in the technical delivery of the course, as well as instructor-assessment of where each student fits in the “Description of Grade Distribution Levels” (see chart below), break points will ultimately be established and students’ achievements will be clustered into grade-levels. Instructor judgments in this area are based on a combination of absolute achievement and relative performance in a class.
Under no circumstances will any student with a higher “raw” total-achievement score be given a final grade that is lower than any student with a lower “raw” total-achievement score in the same section.
I will not strictly follow a simple “bell curve” distribution, because I will measure the success of the class according to the progress made towards achieving the course objectives. The letter grades will then be made available on BearTracks.
Peer Assessments
For group projects, peer assessment will be utilized to determine the relative contribution of each group member, and the contribution will be factored into the project grade, as follows: Students will rank the contribution of their project peers, the maximum being 100%, and an average contribution rating will be computed for each group member (the instructor will not be involved unless something obviously collusive or deceptive is brought to his attention). You must attain at least an average of 60% in order to receive the full group project mark; otherwise you will be penalized, as in the following chart:
Peer Evaluation Assessment Penalty
Peer Evaluation Assessment Penalty
60% to 100% No penalty assessment
50% to <60% 4 out of 20
40% to <50% 6 out of 20
30% to <40% 8 out of 20
20% to <30% 10 out of 20
10% to <20% 12 out of 20
0% to <10% No credit for project will be given
For example: suppose your project is worth 20% and your group receives 16 out of the total 20 marks (i.e. 80%); if your peer evaluation assessment contribution average was 52%, you will be penalized by 4 marks, and receive only 12/20 .
Assignment Penalties
All assignments and deliverables that are late without approved prior excuse will be penalized 25%
for the first day and 25% for each succeeding day to a maximum penalty of 100%. No assignment or deliverable will be accepted after 6:00 pm, Apr 14, 2020.
Academic Discipline: Plagiarism and Cheating
All individual assignments must be done individually. All individual or team work submitted by you must contain ONLY work done by you or your team (respectively), and must contain NO work, in whole or in part, done by anyone else. This applies to all work, including exams, assignments, specifications, program code, program deliverables and write-ups.
It is acceptable for students to ask questions of their colleagues in order to get general clarification, information or knowledge. It is unacceptable and illegal for students to take or receive copies, either tangible or verbal, of work already done by someone else, or to submit the words, ideas, images or data of another person as their own. It is also
unacceptable and illegal to give (or allow to be taken) copies of your work. Markers will check assignments and exams for possible plagiarism or cheating. Penalties for infractions include loss of marks, loss of grades, suspension and expulsion.
The "Don't Cheatsheet" is available on the University Governance website at:https://www.ualberta.ca/governance/index.html Help is available through:
Student Success Centre: https://www.ualberta.ca/current-students/academic-success-centre/index.html
& Centre for Writers: https://www.ualberta.ca/current-students/centre-for-writers/index.html
Office of Student Judicial Affaires:https://www.ualberta.ca/provost/dean-of-students/student-conduct-and-accountability/index.html
Description of Grade Distribution Levels used in MIS419.
The following is for your general guidance as to how the official University of Alberta grading scale is applied in this course.
The approximate percentage of students who get grades in each major grading category is subject to change depending on the overall quality of students in the class and the difficulty of course material.
I would be prepared to give a higher proportion of A grades (for example) to a class where the students demonstrated they had reached the standard I look for in assigning an A. The same would apply in the other categories.
No one fails without demonstrating a failure to grasp the material at the most basic level. The lowest person in the class will not automatically get an F or even a D. It will depend on the level of knowledge the student displays.
Grade General Descriptor
Grade Detailed Description A Excellent
Often represents top 35% of class (approximately)
A+ Outstanding grasp of concepts of course in addition to outstanding performance on examinations and papers. Outstanding written communication skills in both papers and examinations. Often represents the top 5 - 8% of class.
A Excellent grasp of concepts of course in addition to excellent performance on examinations and papers. Excellent written communication skills in both papers and examinations. Often represents the top 15% of class.
A- As in A above with some weaknesses in conceptual understanding or in written communications skills in papers and examinations.
B Good
Often represents next 45% of class (approximately)
B+ Very good grasp of concepts of course in addition to very good performance on examinations and papers. Very good written communication skills in both papers and examinations. Student may have outstanding abilities on one portion of the course, with weaknesses in some other areas.
B As in B+ above with more substantial weaknesses in one or more areas of the course.
B- As in B above with more marked weaknesses particularly in the area of communication of understanding.
C Satisfactory Often represents next 15%
(approximately)
C+ Satisfactory grasp of concepts of course in addition to satisfactory performance on examinations and papers. Acceptable communication skills in both papers and examinations. Student may have good abilities on one portion of the course, with major weaknesses in some other areas. Understanding may be good but the ability to communicate understanding lacking.
C As in C+ above with more substantial weaknesses in one or more areas of the course. Usually an inability to adequately display understanding of concepts.
C- As in C above with more marked weaknesses particularly in the area of communication of understanding.
D Poor
Often represents bottom 5%
(approximately)
D+ Minimally acceptable basic understanding of course concepts. Minimal ability to demonstrate understanding through examinations or papers. Could also include some major gaps in understanding.
D Minimal pass. Minimally acceptable understanding of course material and poor ability to communicate understanding.
F Failure Not necessarily anyone
F Failure to adequately grasp course material and/or failure to communicate a minimal level of understanding through examinations or papers.
Lab Priority Times (to be confirmed)
Mon Tue Wed Thu Fri
-- Prio: 0800-1045 (Lab B18)
Prio: 0800-1000 (Lab B18)
Prio: 0930-1100 (Lab B18)
Prio: 1000-1200 (Lab B18) -- Prio: 1400-1515
(Lab B18)
--
MIS419 Lab H1:
1700-1850 (Lab B18)
"Prio" time means: MIS419 students have priority access (non-MIS419 students must give up their seat) The above schedule is subject to change! Please see eClass announcements for possible updates!
MIS 419 Lab Schedule (subject to revision - check website frequently):
Week Date: Lab
# Topics include:
3 JAN 21 1
UML intro: Use Cases: Actors, Diagrams.
RUP intro: The methodology and the software product that displays it.
(Tues-Thurs Morning Lecture Topics: Catchup as required)
4 JAN 28 2
Visual Studio .Net: Projects, Applications and Solutions.
SQL-Server: DDL and DTS.
SQL-Server: Connections to web applications
C#.net language: introduction: object orientation: classes, etc (Tues-Thurs Morning Lecture Topics: Catchup as required)
5 FEB 04 3
Webforms: data-bound, datagrids, publishing web-forms
C#.net language: for windows-apps, control structures, namespaces, code-behind/beside, etc (Tues-Thurs Morning Lecture Topics: Catchup as required)
6 FEB 11 4
Webforms: intermediate techniques (eg validations) also: Oracle: Object DB (if available) (Tues-Thurs Morning Lecture Topics: Catchup as required)
7 FEB 18
Reading Week (No official lab sessions. Labs might be open for self-study).
8 FEB 25 5
Web-services: (creation, testing, access, etc)
(Tues-Thurs Morning Lecture Topics: Catchup as required)
9 MAR 03 6 RUP "elaboration" for Visual Studio: including Business Transaction Specification (Tues-Thurs Morning Lecture Topics: Catchup as required)
10 MAR 10 7
RUP "construction" for Visual Studio: including Business Transaction Specification (Tues-Thurs Morning Lecture Topics: Catchup as required)
11 MAR 17 8 RUP "construction" with Visual Studio: including Business Transaction Specification (Tues-Thurs Morning Lecture Topics: Catchup as required)
12 MAR 24 9
RUP "transition" with Visual Studio.
(Tues-Thurs Morning Lecture Topics: Catchup as required)
13 MAR 31 10 Installation, Documentation and Training techniques. Also, Team Project work (Tues-Thurs Morning Lecture Topics: Catchup as required)
14 APR 07 11
Team Project work
(Tues-Thurs Morning Lecture Topics: Catchup as required)
Schedule (Lecture B1)
Wk Date Topic Assigned Reading /Assignment /
Events Systems Development with Advanced Software Tools
1 Jan 07,09
Definition of System
Scope of software engineering
Software Lifecycle
Improving the software process
Capability Maturity Models, ISO
Lecture notes and documents, if any Ch. 1
Ch. 15
2 Jan 14,16
Team Organization Strategies
RUP Development Process
Gathering & Managing information
Lecture notes and documents, if any Ch. 3
Ch. 16 (pp 651-679)
Ch. 14 (pp 575-603 & 611-612)
3 Jan 21,23
GROUP PROJECT intro:
Requirements gathering
Business Event Analysis
Intro to Use Cases
RUP's Inception Phase: Business Modeling, Requirements
Lecture notes and documents, if any Ch. 4
Ch. 2 (pp 29-43)
RUP overview / RUP Inception Phase -Project Kick-off (Jan 23 in class)
4 Jan 28,30
Conceptual Data Modeling review
From Use Cases to Entity Classes
Testing in each phase
Testing concepts
Test Planning
Lecture notes and documents Ch. 2 (pp 43-59 & 66-71) Ch. 5 (pp 173-182 & 190-198) Ch. 11 (pp 437-451 & 476-486) RUP Inception Phase
-Meet Project client (Jan30@930 /1010)
5 Feb 04,06
Project Management: Planning and Estimating
Alternative Design Strategies
Design Approaches
Lecture notes and documents, if any Ch. 14 (pp 595-609)
Ch. 5 (pp 199-218) RUP Inception Phase
-Inception Phase Deliverables &
Iteration #1 Due (Feb 08, 03:45 pm)
-Present to client (Feb08@345/ 410/ 435)6 Feb 11,13
From Modules to Objects
Reusability, Portability,
Cohesion, Coupling
How Requirements drive Testing Feb 13: Midterm Exam
(80 mins)
incl. weeks 1-5 & Feb 11
Lecture notes and documents Ch. 6 (pp 223-238)
Ch. 11 (pp 451-455 & 471-476) RUP Elaboration Phase
-Meet Project client (Feb14@1000/ 1040) FRIDAY
7 Feb 17-21
Statutory Holiday (Monday) and Reading Week Break (no lectures)
RUP Elaboration Phase
8 Feb 25,27
Object Oriented Analysis Phase
Object-relational modeling
Analysis Classes
Project Mgt: Controlling/Leading
Transition to Design Phase
Lecture notes and documents, if any Ch. 2 (pp 59-65)
Ch. 5 (pp 182-190) Ch. 6 (pp 238-249)
Ch. 14 (pp 603-611 & 613-615) RUP Elaboration Phase
9 Mar 03,05
Design Phase
Rationale Management Concepts
Design Elements
Object Design: Patterns
Reuse
Lecture notes and documents, if any Ch. 12 (pp 493-520 & 526-532) Ch. 6 (pp 249-255)
Ch. 7 (pp 259-289) Ch. 8 (pp 307-340)
-Meet Project client (Mar 05@930 /1010)
RUP Elaboration Phase
10 Mar 10,12
Object Design: Interfaces
Designing the Human Interface
Physical DB design concepts
Lecture notes and documents, if any Ch. 9 (pp 349-382)
RUP Construction Phase
-Meet client if avail (Mar 12@930 /1010)
-Elaboration Phase Deliverables &
Iteration #2 Due (Mar 13, 6:00 pm)
11 Mar 17,19
Implementation Phase
Coding
Integration (and associated testing)
Ch. 10 (pp 393-431) Ch. 11 (pp 455-471)
Lecture notes and documents, if any RUP Construction Phase
-Meet client if avail (Mar 19@930 /1010)
12 Mar 24,26
Maintenance Phase
Configuration Management
Change Control
Ch. 12 (pp 520-526) Ch. 13
Lecture notes and documents, if any RUP Transition Phase
-Meet client if avail (Mar 26@930 /1010)
-Construction Phase Deliverables &
Iteration #3 Due (Mar 28, 12:00 noon)
13 Mar31, Apr 02
Term Project using RUP
Lecture notes and documents, if any RUP Transition Phase
-Peer assessment: Apr 02 week
14 Apr
07
Term Project using RUP
RUP Transition Phase
-Transition Phase Deliverables &
Iteration #4 Due (Apr 9, 11:59 pm)
Thurs-Present to client (Apr 9@330/355/420)
Apr 23 Thur
(est)
2:00 pm (Date-time to be confirmed) Final Exam (2 hrs)
Last updated by Vincent M. Davis, [email protected] ©2020 Faculty of Business, University of Alberta