Session T1C A Cross-Disciplinary Software Engineering Project Implemented as a Web Service
|
|
- Chester Ramsey
- 8 years ago
- Views:
Transcription
1 A Cross-Disciplinary Software Engineering Project Implemented as a Web Service Pearl Brazier Department of Computer Science, University of Texas-Pan American Edinburg, TX brazier@utpa.edu María Cristina Villalobos, Monty B. Taylor, Kanadpriya Basu, and Treena Sircar Department of Mathematics, University of Texas-Pan American mcvilla@utpa.edu, taylor@utpa.edu, kanad.basu@rediffmail.com treena_sircar@yahoo.com, Abstract - Semantic Web Services and Grids have come of age and are ripe for supporting specific scientific application areas. This paper describes an undergraduate course in Software Engineering at the University of Texas- Pan American that demonstrates a cooperative crossdisciplinary approach, integrating a problem from mathematics with the processes from software engineering. The mathematics discipline has the task of scheduling the faculty teaching workload each semester and modeled the problem as a linear program. The software engineering class developed the user interface to automate the task of gathering information, such as, instructor course or time preferences for classes, and the classes offered during a semester. These parameters are then written into the modeling language format required by the optimization solver. The software automatically invokes the Web optimization solver program, captures the results and displays the results for further user processing. The entire process is implemented as a Web Service. Index Terms - Cross-Disciplinary, Optimization, Software Engineering Project, Web Service INTRODUCTION Semantic Web Services and Grid Services have come of age and are ripe for supporting scientific application areas. Software Engineering has also matured and is recognized as an area that can exist as a separate discipline or as a major component of a computer science program. The undergraduate bachelor degree plan in Computer Science at the University of Texas-Pan American (UTPA) requires a course in Software Engineering. This course requires students to work on a semester-long project on a real-life application, which is driven by a client. For the Spring 2006 semester, the project involved the Departments of Computer Science and Mathematics at UTPA. Each year, academic departments have the task of assigning faculty their course load for the semester. The Department of Mathematics modeled the assignment of faculty teaching workload as a linear program [1] and used the GAMS modeling language, along with solvers available in the NEOS server, to model and solve the optimization problem [2,3]. However, gathering instructor and course data and writing these parameters manually to create the GAMS file is time-consuming and prone to error. The use of services provided on the Web has become more commonplace, but requires some level of technical expertise and hands-on intervention in combining tasks to accomplish an overall goal. By combining the skills of the Software Engineering class to supply a user interface and overall processing control with the expertise of the mathematicians who provided the modeling of the solution, the required technical management skill level for the client is reduced. The software automates the process of gathering faculty teaching preferences, solving the linear program, and presenting results in a suitable format. This application from mathematics presents a project that has sufficient complexity to motivate the necessity of applying traditional software engineering life cycle principles. In this paper, we first provide a brief background on the pedagogy of the software engineering course, and then discuss the course overview. Next, we discuss the cross-disciplinary approach taken by the two academic departments involved in the project, followed by the project development and implementation, results, and conclusions. BACKGROUND The University of Texas-Pan American is a regional Minority Serving Institution with a traditional ACM program in Computer Science. The program has the requirement of a three credit-hour semester course in Software Engineering that covers the theoretical Software Engineering concepts and also includes a group experience in applying those concepts. The course was designed to give students experience in a traditional Life Cycle Model, using a significant group term project. The project can also be implemented using the more recent agile Extreme Programming Model [4]. One of the documented difficulties in developing a software product is the ability to gather good requirements T1C-7
2 specifications from a client. Therefore to give students a realistic experience in software development, it is ideal to incorporate a real world client into the process, which may present some difficulties. For example, it may not be possible to have a complete, polished working product in the limited timeframe of a semester. This situation leaves one with delivering an unfinished product at the end of the course, with a commitment to finish it outside the confines of the course, or with the expectation that the client will participate in the project simply as a contribution to the educational experience of future software engineers. Finding clients to agree to participate under these limitations is difficult. However, finding a client from within the university has the advantage that the client understands the problems and challenges of scheduling and managing limited resources in the educational environment. Using a client within the university also provides the opportunity to introduce a cross-disciplinary experience into the course. This collaboration supports a computer science goal of searching for new areas to apply new technologies in computing, such as Web services [5]. COURSE OVERVIEW In the required Software Engineering course, the concentration for the project is on the development of a full set of requirements using the uniform modeling language (UML), System and Object Design documents, a Test Plan with corresponding Test Cases for the System Integration, and a sampling of test cases for the Object Design [6]. The emphasis is on the elicitation and analysis of requirements and the design phase, leaving some of the implementation details undone. This philosophy for the course allows selecting a project with sufficient complexity to motivate the necessity for the use of a formal process model while having realistic expectations for the amount of work that can be completed in a 15 week course. Students are expected to implement at least a prototype for the user interface and the system design, but may have stubs remaining for some of the functionality. Developing the test plan and test cases for the system design and using those test cases as data for the stubs enables the student to experience all the various aspects of the full life cycle process. A Software Project Management plan is required to reinforce the concept that Software Engineering incorporates both Product and Process [7]. Pedagogically, the course aims to have students understand that the process is as important as the product that is produced. As part of the plan, students are required to select a life-cycle process model they will use, the organizational structure of their team, the schedule, the work packages that will be created, and the deliverables for the project and the client. Students are divided into teams of three to five students and are required to at least partially complete all phases of the life cycle model. All teams work on the same project, creating independent solutions, which are presented to the entire class and the client at the end of the course. CROSS-DISCIPLINARY APPROACH For this academic year, the Department of Mathematics was involved in the project that was chosen for the software engineering class. The Mathematics department developed an optimization model to assign faculty teaching workload schedules per semester. Models are a vital component of both applied mathematics and software engineering. Mathematical modeling involves the development, study, and mathematical formulation of a problem/system. In computer science the UML has become an acceptable standard for modeling requirements and design of projects. I. Problem and Project The Department of Mathematics at UTPA is a large department consisting of about 50 faculty members, graduate teaching assistants, and part time faculty. Each semester, a faculty member, called the Director of Scheduling, administers a form to each faculty member to determine his/her preferences for courses and time periods. Then the director manually assigns a faculty member s teaching workload and tries to satisfy the faculty, as a whole, by assigning faculty their preferred course and/or assigning a course that satisfies their time preference for teaching. Some of the major problems with these forms are the following: some faculty submit incomplete forms, fail to submit the forms by the required deadline, or identify unrealistic or conflicting preferences. In addition, faculty teaching workload schedules may change prior to the beginning of the semester, and thus the Director of Scheduling returns to the task of reassigning classes. To reduce the amount of time spent by the Director of Scheduling in creating the teaching workload schedules for more than 50 instructors, the problem was modeled as an optimization problem. Faculty and graduate students in the Department of Mathematics modeled the problem as a linear program with binary variables. The problem is written in the GAMS modeling language and solved numerically through the NEOS server. In creating the GAMS file, information associated with the linear program such as faculty names, course names, and preferences requires user interaction and time. As a result, we can automate many of these processes and minimize the amount of input errors and the director s time for writing information into the GAMS file. This type of problem becomes a good candidate for a software engineering class project. More specifically, the project assigned to the software engineering class involves creating a Web interface where mathematics faculty enter their preferences and priorities for courses and times eliminating the use of forms. The second phase of the project involves: reading faculty preferences and writing the information into the GAMS file, calling the linear programming solver, and writing the output in table format to view the teaching workload schedule assigned to each faculty member. II. Mathematics Discipline The Director of Scheduling assigns an instructor s teaching workload manually and tries to satisfy the faculty, as a whole, T1C-8
3 by assigning faculty their preferred course and/or assigning a course that satisfies their time preference. Initially, the director considers the teaching workload for tenure-track faculty, followed by the tenured faculty, lecturers, graduate teaching assistants, and finally any part time instructors. The task of assigning classes through a trial-and-error method can be quite time consuming, especially for a large department and when changes are required. Therefore, the math department modeled the task of assigning faculty teaching workload schedules as a constrained optimization problem, more specifically as a linear program. The variables are binary and determine if an instructor will teach a particular class. The constraints model the workload of faculty members and the number of graduate courses a faculty member is allowed to teach in a semester, for example. The workload constraint (1) describes the minimum and maximum hours a faculty member is allowed to teach in a semester and is modeled as 6 F C _ T C, T 12, where the sum is taken over all courses C and their respective time periods T for a given faculty member F. The objective function for the linear program describes faculty course and time preferences. Thus the goal is to maximize the number of faculty course and time preferences subject to constraints imposed by a faculty member s teaching workload, for example. The linear program is written in the GAMS modeling language, which facilitates writing programs with many constraints and variables. The GAMS file contains parameters, such as faculty names, their preferences, and course and time periods that may change from one semester/year to another. The constraints and the objective function model may vary little from one semester to the next. The GAMS file is uploaded to the NEOS server at Argonne National Laboratory, which contains various software packages for solving optimization problems. Upon user selection of a solver from NEOS, a solution to the linear program is returned. The final results produce the semester teaching workload schedule for all instructors in the Department of Mathematics. III. Computer Science Software Engineering Class (1) The process from creating the preference form for a given semester to extracting the NEOS results requires user interaction and can be quite time consuming. Using a web interface allows automation of the teaching workload assignment process from: creating forms, soliciting faculty preferences, creating parameters for the GAMS file, to capturing results and presenting them in a readable format for mathematics administrators. Therefore, one of the outcomes of the software engineering class project was the creation of a user interface that allows the mathematics Director of Scheduling to develop a form for faculty to indicate their course and time preferences. Current forms vary little from previous semesters, and an academic department differs from other departments in terms of some constraints, if any. The software engineering class was challenged to design the application, considering code reusability. For the students, the temptation was to see the form as a hard-coded application, but care was taken to differentiate between the framework, data, and parameters used to create an instance of a more generalized form that is specialized for a given semester. For example, when a new faculty member or course is added or deleted or an additional informational question is needed, the software should support the use of this type of data to modify the form and should not require reprogramming of the user interface. This application can also be used to introduce the concept of workflows. A workflow is the automation of a set of interacting tasks that are used to solve a problem. Also, the application requires an implementation for simultaneous multi-users as faculty complete the forms to submit their preferences each semester. Therefore, this application can be modeled and implemented as a workflow that involves multiusers to accomplish the scheduling task using existing human and web resources. The complete workflow process is automated requiring no user interaction to create the GAMS file, to submit it to the NEOS server, or to capture the results. DEVELOPMENT AND IMPLEMENTATION The groups involved in the project consisted of students from the software engineering class, who played the role of developers, two mathematics faculty members--the Director of Scheduling and the faculty member associated with the linear program--who were the clients, and the Software Engineering instructor, who played the role of the CEO of the fictitious Software Development Company. The class met with the clients who described the faculty teaching workload problem, the difficulties associated with the manual process of assigning faculty their teaching workload schedules, and the strong user interaction with the GAMS file. To be more specific, inputting the parameters manually into the GAMS file is quite time consuming and also increases the probability of making errors since the parameters are replicated in various parts of the GAMS file. Using document templates and software engineering concepts available with the text [6], the students created formal software engineering documents. First, the Software Project Management Plan was developed. Then using information gathered from the clients, the teams wrote the Requirements Analysis Document. Functional and nonfunctional requirements were identified. Then the functional requirements were analyzed and presented as Scenarios, Use Cases and Use Case diagrams, using UML constructs. The dynamic models were constructed using State Change and Sequence diagrams. A high level object model was also included. These documents were reviewed by the CEO and revised. A formal technical review involving all the teams was held for the requirements document. Next, as part of the design phase, the System Design Document, the Object Design Document, and the Test Plan for the System Design with Test Cases were developed. The students were encouraged to design the test cases that could be T1C-9
4 used as data for the stubs of undeveloped subsystems during the implementation phases. This activity allowed for parallel development of the various subsystems. The implementation phase included the development of the web based user interface illustrated in Figure 1 below, a database, and the integration of pre-existing internet software to solve the linear program. The user interface is accessed by the Director of Scheduling and instructors. The Director of Scheduling identifies the instructors who will teach, the courses, the course time periods, and the number of course sections offered in a given semester. The faculty log in to the Web interface and provide their preferences. After all faculty have completed their preferences, the Director of Scheduling selects the option to create and upload the GAMS file to the NEOS server and waits for the results. After the results are returned, the software formats the results into a report easily read by the Director. I. GAMS file and Parameters FIGURE 1 WEB-BASED USER INTERFACE The GAMS template file contains hard-coded information, such as the objective function model and the constraints. However, information such as instructors names and preferences, courses offered in a semester, and course time periods are parameters to insert into the instance of the GAMS file for a given semester. Therefore, the GAMS template file for the linear program is parsed to find the places to insert faculty preferences and course and time period offerings. Table I shows the appropriate locations where the parameters (in boldface) are automatically inserted/written into the GAMS file from the information gathered from the faculty preference section of the web interface software and from the Director of Scheduling. The information gathered from the Web interface is stored in a database that is accessed by the software component that creates the GAMS file, and this information is used to fill in the parameters that are placed between the slashes / / as shown in the sample file. TABLE I PARTIAL GAMS FILE SETS A Instructors / L1*L16, F1*F16, GTA1*GTA8 / T Time Periods / M1*M8, M10*M12, T1*T8, M2T1,M2T2, M3T2, M3T3, M4T2, M4T3, M5T3, M5T4 / Course CourseName / EA, IA, PT, C1, C2,, NPDE / ct(course,t) Course and Time combs / EA.(M1,M2,M3,M4,M5,M6,M7,T1,T2,T3,T4,T5,T8,M11) IA.(M1,M2,M3,M4,M5,M6,T1,T2,T3,T4,T5,T6,T8,M11) PrefF(A,Course) / F1.(RA,DE,C3,MEE,C1), F2.(DE,C3,LA), F3.(C1,C2,CA), F4.(LA,C2,DE,C3,C1), F5.(DE,C2,C1), F6.(RA,DE,C3,LA), II. Reporting Results The third component of the project involves uploading the GAMS file to the NEOS server and reporting results. In this phase, students must develop code to upload the file to the NEOS server and select the specified linear programming solver, as described by the clients. The NEOS server returns the output, which is partially shown in Table II; from left to right the first three columns indicate the instructors names, courses, and time periods for a course. The information in Table II, under the column labeled LEVEL containing entry 1.000, describes the classes assigned to a faculty member; for example in Table II, the NEOS output indicates that faculty member F1 has been assigned courses DE and DS, which are taught at time periods M4 and M2, respectively. The dots in the LEVEL column indicate classes not assigned to an instructor. Since an instructor will have more classes not assigned to him/her than those assigned, the NEOS output is actually quite lengthy. Therefore the NEOS output is captured by the software and parsed in order to present it to the clients in a more understandable format --showing only classes assigned to an instructor -- as shown in Table III. TABLE II PARTIAL NEOS RESULTS FILE G e n e r a l A l g e b r a i c M o d e l i n g S y s t e m E x e c u t i o n VAR F LOWER LEVEL UPPER F1. EA. M F1. EA. M F1.C1.M3T2... F1.C1.M4T3... F1. DE. M F1. DS. M F1. RA. M12... TABLE III PARTIAL FORMATTED OUTPUT Instructor F1 teaches DE at time period M4 Instructor F1 teaches DS at time period M2 Instructor F2 teaches LA at time period M3 Instructor F2 teaches A1 at time period T8 T1C-10
5 RESULTS Working prototypes were developed by each team in the Software Engineering class and were demonstrated to the class, the instructor, and the clients. The clients were impressed and delighted at the progress made by the students and with the prototypes that were developed. The Department of Mathematics plans to use the product developed by the Software Engineering class to solicit faculty preferences and to create the Spring 2007 schedule. The students felt the project was of the proper size and complexity to show the need for a formal software engineering development process. Furthermore, the students found interacting with a real world client both helpful and were enlightened to the difficulties encountered with getting complete and unambiguous requirements. They also gained an appreciation of the fact that clients often change the requirements during the development phase of the project. Additionally, as part of their senior projects, several students plan to expand the working prototypes to a fully functioning software service and will need to work with documents that were not necessarily created by them. This will further give them experience similar to what they will experience in the real world. Other senior projects will extend the product s capabilities for use by other academic departments on campus. Consequently, this will require the further automatic modification of the GAMS template file to allow the respective department s Director of Scheduling to identify the constraints that are unique to its department and to automate the development of the objective function. Another area where the product can be enhanced and extended is in scheduling classroom assignments, which are currently assigned via a commercial application. In the planning phase of the project, these last two ideas were identified by the students and the CEO as lying outside the scope of the software engineering project. CONCLUSIONS Using an application from a client within the University provides a rich cross-disciplinary project for a one-semester Software Engineering course. Students experienced a heavyweight model of the software process and experienced working with a client, without the risk of promising a finished product to an outside client in the limited time allocated. In addition, the students were challenged to access applications available over the Internet from within a workflow model of a program. By concentrating on five aspects of the project, the software project management plan, the requirements and design phases, product testing, and the development of a working prototype, students were able to experience all the phases of a traditional Software Life Cycle Model. The problem presented sufficient complexity to demonstrate the need to employ a formal process model. ACKNOWLEDGMENT The authors wish to thank the University of Texas-Pan American Spring 2006 CSCI 3340 Software Engineering class for their participation in the course and for the screen shots of the user interface for ClassMate. REFERENCES [1] Basu, K., and Sircar, T., and Villalobos, M.C., Modeling a Scheduling Problem for a Faculty Teaching Load, HESTEC Conference, University of Texas-Pan American, September 2005; INFORMS Annual Meeting, November 2005, San Francisco, CA (Paper in Progress) [2] GAMS Home Page, (April 2006) [3] Dolan, E.D., Fourer, R., Moré, J., and Munson, T.S., Optimization on the NEOS Server, SIAM News, Vol. 35, 2002, pp. 5, 8-9. [4] Collins, C., and Miller, R., XP Distilled, (April 2006) [5] WC3 Architecture Domain, (April 2006) [6] Bruegge, B, and Dutoit A., Modeling with UML, Object-Oriented Software Engineering Using UML, Patterns, and Java, 2nd Edition,, Prentice Hall, 2004, pp [7] Brazier, P., Process and Product in a Software Engineering Course: Simulating the Real World, ASEE/IEEE th Annual Conference on Frontiers in Education (FIE) Proceedings, 1998, IEEE: Piscataway NJ, pp T1C-11
A Software Engineering Senior Design Project Inherited From a Partially Implemented Software Engineering Class Project
Session F4D A Software Engineering Senior Design Project Inherited From a Partially Implemented Software Engineering Class Project Pearl Brazier, Alejandro Garcia, Abel Vaca University of Texas Pan American,
More informationSoftware development life cycle. Software Engineering - II ITNP92 - Object Oriented Software Design. Requirements. Requirements. Dr Andrea Bracciali
Software development life cycle Software life cycle: Software Engineering - II ITNP92 - Object Oriented Software Design Dr Andrea Bracciali Module Co-ordinator 4B86 abb@cs.stir.ac.uk Spring 2014 (elicitation)
More informationTEACHING SOFTWARE ENGINEERING THROUGH COLLABORATIVE METHODS
TEACHING SOFTWARE ENGINEERING THROUGH COLLABORATIVE METHODS Dr. Alan R. Peslak, Penn State University, arp14@psu.edu ABSTRACT Engineering of Complex Software Systems (IST 412) is a senior level software
More informationA LOOK BACK: UNDERGRADUATE COMPUTER SCIENCE EDUCATION: A NEW CURRICULUM PHILOSOPHY & OVERVIEW
A LOOK BACK: UNDERGRADUATE COMPUTER SCIENCE EDUCATION: A NEW CURRICULUM PHILOSOPHY & OVERVIEW John C. Knight, Jane C. Prey, & Wm. A. Wulf Department of Computer Science University of Virginia ABSTRACT
More informationReal-World Object-Oriented Design Experience for Computer Science Students
Real-World Object-Oriented Design Experience for Computer Science Students Abstract Due to the limitations of time and resources, many undergraduate Software Engineering courses provide a survey of a broad
More informationDeveloping Collaborative Environments A Holistic Software Development Methodology Marge Petersen and John Mitchiner Sandia National Laboratories
Developing Collaborative Environments A Holistic Software Development Methodology Marge Petersen and John Mitchiner Sandia National Laboratories mbpeter@sandia.gov jlmitch@sandia.gov Abstract Sandia National
More informationPart III. Self-Study Report Template
Part 3 Ministry Of Education And Higher Education Directorate General of Higher Education Part III Self-Study Report Template LABE SELF-STUDY QUESTIONNAIRE http://www.labe.org.lb General Instructions Introduction
More informationSOFTWARE ENGINEERING TEAM STUDIOS. Jaime Niño Computer Science, University of New Orleans New Orleans, LA 70148 504-280-7362 jaime@cs.uno.
SOFTWARE ENGINEERING TEAM STUDIOS Jaime Niño Computer Science, University of New Orleans New Orleans, LA 70148 504-280-7362 jaime@cs.uno.edu ABSTRACT Training of students on software engineering methods
More informationBUSINESS RULES AS PART OF INFORMATION SYSTEMS LIFE CYCLE: POSSIBLE SCENARIOS Kestutis Kapocius 1,2,3, Gintautas Garsva 1,2,4
International Conference 20th EURO Mini Conference Continuous Optimization and Knowledge-Based Technologies (EurOPT-2008) May 20 23, 2008, Neringa, LITHUANIA ISBN 978-9955-28-283-9 L. Sakalauskas, G.W.
More informationCriteria for Accrediting Computer Science Programs Effective for Evaluations during the 2004-2005 Accreditation Cycle
Criteria for Accrediting Computer Science Programs Effective for Evaluations during the 2004-2005 Accreditation Cycle I. Objectives and Assessments The program has documented, measurable objectives, including
More informationA Configuration Management Model for Software Product Line
A Configuration Management Model for Software Product Line Liguo Yu 1 and Srini Ramaswamy 2 1 Computer Science and Informatics Indiana University South Bend South Bend, IN 46634, USA ligyu@iusb.edu 2 Computer
More informationLoad Balancing on a Grid Using Data Characteristics
Load Balancing on a Grid Using Data Characteristics Jonathan White and Dale R. Thompson Computer Science and Computer Engineering Department University of Arkansas Fayetteville, AR 72701, USA {jlw09, drt}@uark.edu
More informationComputer Science Curriculum Revision
Computer Science Curriculum Revision Background Undergraduate programs in computing-related disciplines began to emerge in the 1960s. At that time there were only three kinds of computing-related programs:
More informationUNDERGRADUATE COMPUTER SCIENCE EDUCATION: A NEW CURRICULUM PHILOSOPHY & OVERVIEW
UNDERGRADUATE COMPUTER SCIENCE EDUCATION: A NEW CURRICULUM PHILOSOPHY & OVERVIEW John C. Knight, Jane C. Prey, & Wm. A. Wulf Department of Computer Science University of Virginia Charlottesville, VA 22903
More informationAbstraction in Computer Science & Software Engineering: A Pedagogical Perspective
Orit Hazzan's Column Abstraction in Computer Science & Software Engineering: A Pedagogical Perspective This column is coauthored with Jeff Kramer, Department of Computing, Imperial College, London ABSTRACT
More informationEvaluation of a Use-Case-Driven Requirements Analysis Tool Employing Web UI Prototype Generation
Evaluation of a Use-Case-Driven Requirements Analysis Tool Employing Web UI Prototype Generation SHINPEI OGATA Course of Functional Control Systems, Graduate School of Engineering Shibaura Institute of
More informationDEVELOPMENT OF PROJECT DOCUMENTATION: KEY INGREDIENT IN TEACHING SYSTEMS ANALYSIS AND DESIGN
DEVELOPMENT OF PROJECT DOCUMENTATION: KEY INGREDIENT IN TEACHING SYSTEMS ANALYSIS AND DESIGN Mohammad A. Rob, University of Houston Clear Lake, rob@uhcl.edu ABSTRACT Systems Analysis and Design (SAD) is
More informationComputer Science. General Education Students must complete the requirements shown in the General Education Requirements section of this catalog.
Computer Science Dr. Ilhyun Lee Professor Dr. Ilhyun Lee is a Professor of Computer Science. He received his Ph.D. degree from Illinois Institute of Technology, Chicago, Illinois (1996). He was selected
More informationIntegration of Mathematical Concepts in the Computer Science, Information Technology and Management Information Science Curriculum
Integration of Mathematical Concepts in the Computer Science, Information Technology and Management Information Science Curriculum Donald Heier, Kathryn Lemm, Mary Reed, Erik Sand Department of Computer
More informationTRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW
Year 2014, Vol. 1, issue 1, pp. 49-56 Available online at: http://journal.iecuniversity.com TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW Singh RANDEEP a*, Rathee AMIT b a* Department of
More informationA Client-Server Interactive Tool for Integrated Artificial Intelligence Curriculum
A Client-Server Interactive Tool for Integrated Artificial Intelligence Curriculum Diane J. Cook and Lawrence B. Holder Department of Computer Science and Engineering Box 19015 University of Texas at Arlington
More informationPROGRAM EDUCATIONAL OBJECTIVES (PEOs): PEOs should be aligned with the Program Mission
PROGRAM ASSESSMENT Program Mission, Program Educational Objectives, and Program Outcomes Department of Aviation and Technology, College of Engineering, San Jose State University Degree Program: M.S. Quality
More informationAnalysis of the Effectiveness of Online Learning in a Graduate Engineering Math Course
The Journal of Interactive Online Learning Volume 1, Number 3, Winter 2003 www.ncolr.org ISSN: 1541-4914 Analysis of the Effectiveness of Online Learning in a Graduate Engineering Math Course Charles L.
More informationCase Method for Computing Education (CMCE)
Case Method for Computing Education (CMCE) A Strategy for Teaching Software Engineering Emanuel S. Grant Department of Computer Science University of North Dakota North Dakota, USA grante@aero.und.edu
More informationClassical Software Life Cycle Models
Classical Software Life Cycle Models SWEN 301 Trimester 1, 2015 Lecturer: Dr Hui Ma Engineering and Computer Science Lecture slides make use of material provided on the textbook's companion website Motivation
More informationBlended Assessment: A Strategy for Classroom Management
Blended Assessment: A Strategy for Classroom Management Josefina Barnachea Janier 1, Afza Bt Shafie 1 {josefinajanier,afza}@petronas.com.my Fundamental and Applied Sciences Department 1 Universiti Teknologi
More informationWorkflow Automation and Management Services in Web 2.0: An Object-Based Approach to Distributed Workflow Enactment
Workflow Automation and Management Services in Web 2.0: An Object-Based Approach to Distributed Workflow Enactment Peter Y. Wu wu@rmu.edu Department of Computer & Information Systems Robert Morris University
More informationIssues in Information Systems
A FRAMEWORK FOR AN INTERACTIVE WEB-BASED APPLICATION COURSE Paul J. Kovacs, Robert Morris University, kovacs@rmu.edu John J. Scarpino, Robert Morris University, scarpino@rmu.edu Wenli Wang, Robert Morris
More informationCOMPUTER SCIENCE. FACULTY: Jennifer Bowen, Chair Denise Byrnes, Associate Chair Sofia Visa
FACULTY: Jennifer Bowen, Chair Denise Byrnes, Associate Chair Sofia Visa COMPUTER SCIENCE Computer Science is the study of computer programs, abstract models of computers, and applications of computing.
More informationEnabling Remote Access to Computer Networking Laboratories for Distance Education
Enabling Remote Access to Computer Networking Laboratories for Distance Education Carlos E. Caicedo Bastidas Syracuse University, ccaicedo@syr.edu Abstract - Academic organizations that provide students
More informationSenior Design Project Management Skills
Learning Project Management Skills in Senior Design Courses James M. Conrad 1 and Yesim Sireli 2 University of North Carolina at Charlotte, College of Engineering, 9201 University City Blvd, Charlotte,
More informationMaster of Science in Software Engineering Student Guide
King Fahd University of Petroleum & Minerals College of Computer Sciences and Engineering Information and Computer Science Department Master of Science in Software Engineering Student Guide http://www.ccse.kfupm.edu.sa/swe/
More informationINCORPORATING SERVICE LEARNING INTO COMPUTER SCIENCE COURSES *
INCORPORATING SERVICE LEARNING INTO COMPUTER SCIENCE COURSES * Joo Tan, John Phillips Department of Mathematics and Computer Science Mansfield University of Pennsylvania Mansfield, PA 16933 570 662-4553
More informationFlexible, Affordable, Inviting. SUCCESS 97% Master s degree completion rate.
Mission To promote social justice by serving the community and larger society. To prepare and continuously support professional educators to meet the needs of a constantly changing and diverse student
More informationEmpirical Development of a Mobile Application: UVA- Wise Undergraduate Software Engineering Capstone Project
Empirical Development of a Mobile Application: UVA- Wise Undergraduate Software Engineering Capstone Project I. Weissberger, S. Showalter, T. Deel, M. Ward, M. Whitt, and A. Qureshi University of Virginia
More informationInteroperable Learning Leveraging Building Information Modeling (BIM) in Construction Management and Structural Engineering Education
Interoperable Learning Leveraging Building Information Modeling (BIM) in Construction Management and Structural Engineering Education Eric L. Richards and Caroline M. Clevenger, PhD Colorado State University
More informationA Comparison of SOA Methodologies Analysis & Design Phases
202 A Comparison of SOA Methodologies Analysis & Design Phases Sandra SVANIDZAITĖ Institute of Mathematics and Informatics, Vilnius University Abstract. Service oriented computing is a new software engineering
More informationLecture Overview. Object-Oriented Software Engineering: Using UML, Patterns, Java, and Software Development Processes. Prof. Dr.
COM 401 Software Engineering Lecture Overview Object-Oriented Software Engineering: Using UML, Patterns, Java, and Software Development Processes Prof. Dr. Halûk Gümüşkaya haluk.gumuskaya@gediz.edu.tr
More informationCity University of Hong Kong Course Syllabus. offered by Department of Computer Science with effect from Semester A 2015/16
City University of Hong Kong Course Syllabus offered by Department of Computer Science with effect from Semester A 2015/16 Part I Course Overview Course Title: Software Engineering Principles and Practice
More informationThese degree requirements are in effect starting from 2012-2013 Admission.
MASTER S DEGREE PROGRAM IN Computer Science College of Engineering University of Colorado Denver These degree requirements are in effect starting from 2012-2013 Admission. The Department of Computer Science
More informationISU Department of Mathematics. Graduate Examination Policies and Procedures
ISU Department of Mathematics Graduate Examination Policies and Procedures There are four primary criteria to be used in evaluating competence on written or oral exams. 1. Knowledge Has the student demonstrated
More informationLearning Molecules: ecornell s Approach to Designing Learning Systems (White Paper)
Objective ecornell s mission is to help professionals who take our online courses meet their development goals by making available to them first-class content from Cornell University. This white paper
More informationBRAZOSPORT COLLEGE LAKE JACKSON, TEXAS SYLLABUS ITSC 2339: PERSONAL COMPUTER HELP DESK HYBRID VERSION
BRAZOSPORT COLLEGE LAKE JACKSON, TEXAS SYLLABUS ITSC 2339: PERSONAL COMPUTER HELP DESK HYBRID VERSION COMPUTER TECHNOLOGY & OFFICE ADMINISTRATION DEPARTMENT CATALOG DESCRIPTION ITSC 2339 Personal Computer
More informationTeaching Requirements through Interdisciplinary Projects
Teaching Requirements through Interdisciplinary Projects Deepti Suri, Eric Durant Department of Electrical Engineering and Computer Science Milwaukee School of Engineering 1025 North Broadway Milwaukee,
More informationTool-Based Approach to Distributed Database Design:
Tool-Based Approach to Distributed Database Design: Includes Web-Based Forms Design for Access to Academic Affairs Data ABSTRACT David A. Owens System Engineer Lockheed Martin Mission Systems 9970 Federal
More informationFACULTY STUDY PROGRAMME FOR POSTGRADUATE STUDIES
FACULTY OF CONTEMPORARY SCIENCES AND TECHNOLOGIES STUDY PROGRAMME FOR POSTGRADUATE STUDIES (Master of Science) NAME OF THE PROGRAMME: BUSINESS INFORMATICS STUDIES 262 PROGRAMME DESCRIPTION Business Informatics
More informationIndustrial Engineering Definition of Tuning
Industrial Engineering Definition of Tuning Tuning is a faculty-led pilot project designed to define what students must know, understand, and be able to demonstrate after completing a degree in a specific
More informationAdvancing Your Business Analysis Career Intermediate and Senior Role Descriptions
Advancing Your Business Analysis Career Intermediate and Senior Role Descriptions The role names listed in the Career Road Map from International Institute of Business Analysis (IIBA) are not job titles
More informationCS 6361, SPRING 2010 Advanced Requirements Engineering Web Based Meeting Scheduler- Project Plan
1 W E B B A S E D M E E T I N G S C H E D U L E R S Y S T E M Project Plan Version 4.0 CS 6361 ADVANCED REQUIREMENTS ENGINEERING, SPRING 2010 UNIVERSITY OF TEXAS AT DALLAS R E Q U I R E M E N T S E N G
More informationWhat is a life cycle model?
What is a life cycle model? Framework under which a software product is going to be developed. Defines the phases that the product under development will go through. Identifies activities involved in each
More informationImplementing Information Technology in the Learning Process
6th WSEAS International Conference on E-ACTIVITIES, Tenerife, Spain, December 14-16, 2007 263 Implementing Information Technology in the Learning Process SEPPO SIRKEMAA Pori Unit Turku School of Economics
More informationFINAL REPORT. 1. Project Title: Integrating Project And Risk Management Techniques Into An Introductory Engineering Course
FINAL REPORT 1. Project Title: Integrating Project And Risk Management Techniques Into An Introductory Engineering Course 2. Project Objectives: The objectives of the project were to: 1) improve the student
More informationSurvey Results and Further Issues in Construction Automation Education
327 Survey Results and Further Issues in Construction Automation Education Dr. R. Navon Lecturer, Faculty of Civil Engineering Senior Research Engineer, National Building Research Institute Technion -
More informationThe Online Grade Book A Case Study in Learning about Object-Oriented Database Technology
The Online Grade Book A Case Study in Learning about Object-Oriented Database Technology Charles R. Moen, M.S. University of Houston - Clear Lake crmoen@juno.com Morris M. Liaw, Ph.D. University of Houston
More informationSarah A. Rajala Ernest W. & Mary Ann Deavenport, Jr. Chair and Dean Bagley College of Engineering Mississippi State University Mississippi State, MS
Sarah A. Rajala Ernest W. & Mary Ann Deavenport, Jr. Chair and Dean Bagley College of Engineering Mississippi State University Mississippi State, MS 39762 USA November 8, 2012 Background: North Carolina
More informationA Design Paradigm in Undergraduate Electrical Engineering Curriculum
A Design Paradigm in Undergraduate Electrical Engineering Curriculum Habib Rahman Saint Louis University Department of Electrical and Computer Engineering McDonnell Douglas Hall, 3450 Lindell Boulevard
More informationSYLLABUS. OFFICE AND HOURS: Karnoutsos 536 (Access through K506) M 12, T 1, R 10, 12, 2 or by appointment. I am available by e-mail at all times.
SYLLABUS COURSE TITLE: PreCalculus COURSE NUMBER: MATH0165 REFERENCE NUMBER: 1980 PREREQUISITE: MATH0112 Intermediate Algebra or equivalent INSTRUCTOR: Dr. Riggs OFFICE AND HOURS: Karnoutsos 536 (Access
More informationIn this Lecture you will Learn: Implementation. Software Implementation Tools. Software Implementation Tools
In this Lecture you will Learn: Implementation Chapter 19 About tools used in software implementation How to draw component diagrams How to draw deployment diagrams The tasks involved in testing a system
More informationDepartment of Information Systems and Cyber Security
The University of Texas at San Antonio 1 Department of Information Systems and Cyber Security All graduate programs in Information Systems and Cyber Security are accredited by AACSB International The Association
More informationThe Use of Computer Animation in Teaching Discrete Structures Course
The Use of Computer Animation in Teaching Discrete Structures Course Chi-Cheng Lin Mingrui Zhang Computer Science Department Winona State University Winona, Minnesota, MN 55987 {clin, mzhang}@winona.edu
More informationTime Monitoring Tool Software Development Plan. Version <1.1>
Time Monitoring Tool Software Development Plan Version Revision History Date Version Description Author 10/01/01 1.0 First Draft Sabrina Laflamme 12/01/01 1.1 Completion of Document John Lemon Page
More informationUsing Business Intelligence to Mitigate Graduation Delay Issues
Using Business Intelligence to Mitigate Graduation Delay Issues Khaled Almgren PhD Candidate Department of Computer science and Engineering University of Bridgeport Abstract Graduate master students usually
More informationINNOVATION IN UNDERGRADUATE COMPUTER SCIENCE EDUCATION
INNOVATION IN UNDERGRADUATE COMPUTER SCIENCE EDUCATION Amruth N. Kumar (Moderator) Ramapo College of New Jersey, Mahwah, NJ amruth@ramapo.edu Jack Beidler University of Scranton, PA beidler@scranton.edu
More informationTeaching and Encouraging Meaningful Reading of Mathematics Texts
Teaching and Encouraging Meaningful Reading of Mathematics Texts Jane Friedman, Perla Myers and Jeff Wright Department of Mathematics and Computer Science University of San Diego 5998 Alcala Park, San
More informationAdaptive Special Education Program Focus Group Assessment Report
Adaptive Special Education Program Focus Group Assessment Report (Department of Special Education and School Counseling) August 13, 2009 Submitted to: Dr. Jean Morrow, Professor and Interim Chairperson
More informationA discussion of information integration solutions November 2005. Deploying a Center of Excellence for data integration.
A discussion of information integration solutions November 2005 Deploying a Center of Excellence for data integration. Page 1 Contents Summary This paper describes: 1 Summary 1 Introduction 2 Mastering
More informationMINIMIZING STORAGE COST IN CLOUD COMPUTING ENVIRONMENT
MINIMIZING STORAGE COST IN CLOUD COMPUTING ENVIRONMENT 1 SARIKA K B, 2 S SUBASREE 1 Department of Computer Science, Nehru College of Engineering and Research Centre, Thrissur, Kerala 2 Professor and Head,
More informationModelling Software Requirements Exercise on comparing two methods in an empirical study. BLUE 2 nd session Experiment package mss- U
Modelling Software Requirements Exercise on comparing two methods in an empirical study. BLUE 2 nd session Experiment package mss- U Surname: Color: BLUE Name: Application: mss Treatment: UML Use Cases
More informationElectrical Engineering Technology(BS) and Computer Engineering Technology Assessment Plan
BSEET-EET and BSCET-CET Electrical Engineering Technology(BS) and Computer Engineering Technology Assessment Plan The UC EET and CET Academic Quality plan described in this document identifies the process
More informationSchool of Management and Information Systems
School of Management and Information Systems Business and Management Systems Information Science and Technology 176 Business and Management Systems Business and Management Systems Bachelor of Science Business
More informationCHAPTER 24 SOFTWARE PROJECT SCHEDULING. Overview
CHAPTER 24 SOFTWARE PROJECT SCHEDULING Overview The chapter describes the process of building and monitoring schedules for software development projects. To build complex software systems, many engineering
More informationStudent Project Allocation Using Integer Programming
IEEE TRANSACTIONS ON EDUCATION, VOL. 46, NO. 3, AUGUST 2003 359 Student Project Allocation Using Integer Programming A. A. Anwar and A. S. Bahaj, Member, IEEE Abstract The allocation of projects to students
More informationComputational Engineering Programs at the University of Erlangen-Nuremberg
Computational Engineering Programs at the University of Erlangen-Nuremberg Ulrich Ruede Lehrstuhl für Simulation, Institut für Informatik Universität Erlangen http://www10.informatik.uni-erlangen.de/ ruede
More informationMasters of Science in Software & Information Systems
Masters of Science in Software & Information Systems To be developed and delivered in conjunction with Regis University, School for Professional Studies Object Oriented Design Table of Contents January
More informationSIMULATION FOR COMPUTER SCIENCE MAJORS: A PRELIMINARY REPORT
Proceedings of the 1996 Winter Sirn71lation Conference ed. J. M. Charnes, D. J. Morrice, D. T. Brunner, and J. J. SnTain SIMULATION FOR COMPUTER SCIENCE MAJORS: A PRELIMINARY REPORT ABSTRACT With the support
More informationIncorporation of an online tutoring tool into programming courses. Abstract
Incorporation of an online tutoring tool into programming courses Ozgur Aktunc Engineering Department St. Mary s University oaktunc@stmarytx.edu Abstract One of the challenges growing institutions face
More informationBecoming a Business Analyst
Becoming a Business Analyst What is Business Analysis? The practice of enabling change in an organizational context by defining needs and recommending solutions that delivers value to stakeholders When
More informationJOURNAL OF OBJECT TECHNOLOGY
JOURNAL OF OBJECT TECHNOLOGY Online at www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2006 Vol. 5. No. 8, November-December 2006 Requirements Engineering Tasks Donald Firesmith,
More informationChapter 11: Integration- and System Testing
Chapter 11: Integration- and System Testing Chapter 14: Testing (2/2) Object-Oriented Software Construction Armin B. Cremers, Sascha Alda & Tobias Rho (based on Bruegge & Dutoit) Software Lifecycle Activities...and
More informationEnhanced concept of the TeamCom SCE for automated generated services based on JSLEE
Enhanced concept of the TeamCom SCE for automated generated services based on JSLEE Thomas Eichelmann 1, 2, Woldemar Fuhrmann 3, Ulrich Trick 1, Bogdan Ghita 2 1 Research Group for Telecommunication Networks,
More informationPrintshop Workflow Automation System
Fictitious Corp. Software Project Plan Revision 1 Printshop Workflow Automation System CEN4021 Spring 2010 Professor: Masoud Sadjadi Paul White 16 th February 2010 TABLE OF CONTENTS 1 Overview... 3 1.1
More informationSTUDENT OUTCOMES ASSESSMENT PLAN (SOAP)
MS PROGRAM IN C OMPUTER SCIENCE DEPARTMENT OF C OMPUTER SCIENCE College of Science and Mathematics STUDENT OUTCOMES ASSESSMENT PLAN (SOAP) I. Mission Statement The mission of the Department of Computer
More informationDeveloping and Teaching a Hybrid Software Engineering Introductory Course
Developing and Teaching a Hybrid Software Engineering Introductory Course Anna Koufakou 1 Florida Gulf Coast University Abstract This paper summarizes the author s experiences in developing and teaching
More informationJournal of Student Success and Retention Vol. 2, No. 1, October 2015 THE EFFECTS OF CONDITIONAL RELEASE OF COURSE MATERIALS ON STUDENT PERFORMANCE
THE EFFECTS OF CONDITIONAL RELEASE OF COURSE MATERIALS ON STUDENT PERFORMANCE Lawanna Fisher Middle Tennessee State University lawanna.fisher@mtsu.edu Thomas M. Brinthaupt Middle Tennessee State University
More informationRisk Knowledge Capture in the Riskit Method
Risk Knowledge Capture in the Riskit Method Jyrki Kontio and Victor R. Basili jyrki.kontio@ntc.nokia.com / basili@cs.umd.edu University of Maryland Department of Computer Science A.V.Williams Building
More informationTECH. Requirements. Why are requirements important? The Requirements Process REQUIREMENTS ELICITATION AND ANALYSIS. Requirements vs.
CH04 Capturing the Requirements Understanding what the customers and users expect the system to do * The Requirements Process * Types of Requirements * Characteristics of Requirements * How to Express
More informationA Project Based Approach for Teaching System Analysis, Design, and Implementation Courses
A Project Based Approach for Teaching System Analysis, Design, and Implementation Courses Nabil A. Yousif 1 and Masoud Naghedolfeizi 2 Abstract-In curricula of Computer Information Systems at Fort Valley
More informationABSTRACT 1. INTRODUCTION
SUPPORTING LARGE PROJECTS IN A SMALL COLLEGE COMPUTER SYSTEMS MANAGEMENT PROGRAM Ellen L. Walker and Oberta A. Slotterbeck Computer Science Department Hiram College Hiram, OH 44234 {walkerel,obie}@hiram.edu
More informationAssuming the Role of Systems Analyst & Analysis Alternatives
Assuming the Role of Systems Analyst & Analysis Alternatives Nature of Analysis Systems analysis and design is a systematic approach to identifying problems, opportunities, and objectives; analyzing the
More informationObject-Oriented Systems Analysis and Design
Object-Oriented Systems Analysis and Design Noushin Ashrafi Professor of Information System University of Massachusetts-Boston Hessam Ashrafi Software Architect Pearson Education International CONTENTS
More informationAACSB Annual Assessment Report For
AACSB Annual Assessment Report For Masters of Business Administration (MBA) Master s (Instructional Degree Program) (Degree Level) October 1, 2012 September 30, 2013 October 31, 2013 (Assessment Period
More informationProposal for Undergraduate Certificate in Large Data Analysis
Proposal for Undergraduate Certificate in Large Data Analysis To: Helena Dettmer, Associate Dean for Undergraduate Programs and Curriculum From: Suely Oliveira (Computer Science), Kate Cowles (Statistics),
More informationJoseph Cavanaugh Wright State University - LC. Abstract
Practical strategies for reducing the time spent teaching economics online Joseph Cavanaugh Wright State University - LC Abstract Although the online teaching format continues to grow in popularity, faculty
More informationLECTURE 1. SYSTEMS DEVELOPMENT
LECTURE 1. SYSTEMS DEVELOPMENT 1.1 INFORMATION SYSTEMS System A system is an interrelated set of business procedures used within one business unit working together for a purpose A system has nine characteristics
More informationAbstract. Introduction
Database Systems and Oracle: Experiences and Lessons Learned Deborah Dunn Assistant Professor Computer Science Department Stephen F. Austin State University Nacogdoches, TX 75961 (936) 468-2508 ddunn@sfasu.edu
More informationExhibit F. VA-130620-CAI - Staff Aug Job Titles and Descriptions Effective 2015
Applications... 3 1. Programmer Analyst... 3 2. Programmer... 5 3. Software Test Analyst... 6 4. Technical Writer... 9 5. Business Analyst... 10 6. System Analyst... 12 7. Software Solutions Architect...
More informationPartnering for Project Success: Project Manager and Business Analyst Collaboration
Partnering for Project Success: Project Manager and Business Analyst Collaboration By Barbara Carkenord, CBAP, Chris Cartwright, PMP, Robin Grace, CBAP, Larry Goldsmith, PMP, Elizabeth Larson, PMP, CBAP,
More informationThe Capstone Curriculum Development Project Master of Science in Education, Social Studies Adolescence Degree
The Capstone Curriculum Development Project Master of Science in Education, Social Studies Adolescence Degree What is the Curriculum Development Project? The Curriculum Development Project is the professional
More informationEleonóra STETTNER, Kaposvár Using Microsoft Excel to solve and illustrate mathematical problems
Eleonóra STETTNER, Kaposvár Using Microsoft Excel to solve and illustrate mathematical problems Abstract At the University of Kaposvár in BSc and BA education we introduced a new course for the first year
More informationChapter 11: Integrationand System Testing
Object-Oriented Software Engineering Using UML, Patterns, and Java Chapter 11: Integrationand System Testing Integration Testing Strategy The entire system is viewed as a collection of subsystems (sets
More information