Software Requirements Specification of A University Class Scheduler
|
|
|
- Maude Freeman
- 10 years ago
- Views:
Transcription
1 Software Requirements Specification of A University Class Scheduler Deanna M. Needell Jeff A. Stuart Tamara C. Thiel Sergiu M. Dascalu Frederick C. Harris, Jr. Department of Computer Science University of Nevada, Reno 1664 N. Virginia St. Reno, NV, 89557, USA Abstract The University Class Scheduler (UCS) presented in this paper is a novel scheduling tool intended to be used by universities to schedule classes into classrooms. In essence, UCS allows university administrators to enter relevant college and building information, schedule the input classes (courses) into input classrooms, and create web pages that provide detailed schedule information on a semester-by-semester basis. The UCS, which performs the scheduling of classes according to a number of user-selected parameters, can be easily adapted for applications outside the academic realm. This paper presents the main aspects of the University Class Scheduler s UML-based specification, gives details of the UCS current development status, and points to a series of possible extensions that we intend to investigate in the near future. Keywords: class scheduler, software tool, requirements specification, use cases, scenarios, class diagram, UML. 1 Introduction The University Class Scheduler (UCS) that we have recently developed is a software product intended to be used by universities to schedule classes (courses) offered during a semester into available classrooms. The focus of this project has been on academic scheduling for universities, yet due to its flexible design the UCS can be easily adapted for applications outside the academic realm. The UCS program allows university administrators to input relevant college, department, and building information, schedule courses into classrooms, and create web pages linked to appropriate university pages (specifically, college and department web pages). Thus, via web posting, the UCS makes available to the public detailed information on the scheduling of classes. The UCS performs the scheduling based on certain parameters selected by the user, as explained later in the paper. Besides its scheduling algorithms, UCS incorporates a generic XML parser that allows the manipulation of large data files. In particular, the XML parser is used to translate raw data files into XMLdefined storage files, thus reducing or eliminating the user s highly tedious and time consuming task of entering large amounts of data. There are rather few similar products currently on the market, for instance the Astra Schedule [1] and the Book King Online Scheduling Software [2]. However, these products are more complex than ours and thus require more extensive training of the user. Also, particularly important, these products are rather expensive. We have embarked in the UCS project with the goal of developing a software product that provides a simpler yet very efficient and flexible class scheduler tool that can be made more easily available to universities across the nation. For development purposes we have followed a software engineering approach along the lines described in [3] and have used extensively the Unified Modeling Language (UML) [4, 5] for representing the model of the UCS software. The specifications of the UCS requirements as well as the descriptions of use cases and scenarios have been written following the guidelines presented in [6]. We have found that by
2 following a rigorous development process and by relying on the UML as modeling notation both the UCS functionality and overall architecture have not only been better understood, defined, and represented but also better planned to accommodate future requirements. This paper, in its remaining part, is structured as follows: Section 2 presents a brief description of the UCS, Section 3 describes the main functional and non-functional requirements of the scheduler, Section 4 provides details on use cases and scenarios, Section 5 presents the class diagram of the UCS, Section 6 reports on the current status of the UCS tool, and Section 7 completes the paper with a number of pointers to future work. 2 General Description The UCS is intended to provide a means for entering the necessary information for class scheduling, viewing and modifying this information, storing the information into XMLdefined files, parsing XML files into ready-toprocess data, scheduling classes into classrooms based on user-selected parameters, and creating web pages with scheduling details about courses offered and their assigned classrooms. From an organizational point of view the UCS software tool has two main components: the scheduler itself and the publisher of the schedule. The first component, the scheduler, is used by the administrators of each university department to enter, either manually or by loading data from existing files, the department s classes, times, and professors. Information on buildings and classrooms is also entered. As soon as all the necessary information is entered into the system the UCS can schedule the specified classes into available classrooms without overlap, based on certain parameters selected by the user. Specifically, these parameters are classroom size, classroom type (e.g., regular room, distance education room, or smart room), and distance from department. Once the scheduling is complete, the second component of the UCS, the publisher, can be invoked to create an HTML file with detailed schedule information and pointers to appropriate web pages. Such pointers include links to the University s online map system, as well as to department and professor home pages. 3 Requirements Specification Following the guidelines and notations presented in [6], the requirements for the UCS have been specified as detailed below. 3.1 Functional Requirements The main functional requirements of the UCS are the following: 1. The UCS shall provide a means for entering and storing: a. college information; b. department information; c. professor information; d. class information; e. building information; f. classroom information. 2. The UCS shall schedule, if possible, the classes into classrooms. 3. The UCS shall take into consideration for generating the schedule the following parameters: classroom size, classroom type, and distance from the department. These parameters shall be selected by the user from a list of pre-defined values. 4. The UCS shall save the schedule in a format that can be used to generate a University Semester Catalog that is readable by humans. 5. The UCS shall notify the user if no valid schedule can be generated and shall indicated the causes that prevent the generation of a valid schedule. 6. The UCS shall write the schedule containing class and classroom information to a file that can be read by supplied web pages so that these can be posted onto the university web server. 3.2 Non-functional Requirements The most important non-functional requirements for the UCS are the following: 1. The UCS shall be written in C The interfaces of the UCS shall be implemented using the QT Non-Commercial Toolkit [7]. 3. The UCS shall store its files using XML tags [8]. 4. The UCS will be platform independent.
3 4 Use Case Modeling As part of the modeling process, the functionality of the UCS has been defined using use cases and scenarios. At a high level of abstraction the entire functionality of the class scheduler is captured in the use case diagram shown in Figure 1, a couple of major parts of UCS functionality are presented in use cases shown in Figures 2 and 3, and examples of specific ways of using the software are provided as scenarios in Figures 4 and 5. According to Rumbaugh, a use case is a specification of sequences of actions, including variant sequences and error sequences, that a system, subsystem, or class can perform by interacting with outside actors [9]. One the other hand, as pointed out by Booch, scenarios are to uses cases as instances are to classes, meaning that a scenario is basically one instance of a use case [5]. We have relied extensively on use cases and scenarios to define the expected functionality of the UCS and better describe its intended behavior. 4.1 Use Case Diagram The use case diagram shown in Figure 1 depicts the interactions between the actors (the staff, the students, and the professors of the university) and the UCS software system. First, the department staff will enter information about professors, colleges, buildings, departments, classes, and classrooms. Once this is done, a university administrator will use the UCS to generate the classroom schedule. The university catalog creators will then use the generated classroom schedule to create the semester class catalog. The university webmaster will post the web pages and the generated schedule file to the university server. Consequently, the students, the professors and, generally speaking, the public, can view these web pages. Fig. 1 Use Case Diagram of the UCS
4 4.2 Detailed Use Cases Due to space limitations we present in the following only two examples of use cases and two sample scenarios. Specifically, with respect to use cases, Figure 2 depicts the Enter class information use case, in which relevant data pertaining to a class (course) offered during the semester is entered, while Figure 3 shows the Create classroom schedule scenario. It is worth noting that each use case has a primary scenario which describes the normal, most common way of using the UCS software to perform the respective use case, as well as a number of secondary scenarios, which describe the less likely to occur, less common, or exceptional execution paths of the use case. Use Case: Enter Class Information ID: UC5 Department staff 1. Class information needs to be entered or modified. 1. The use case starts before scheduling is done. 2. The system prompts the user to enter the following class information: college name, department name, class number, call number, professor name, number of students, days and times for lectures, classroom type, lab information, if any, and cross-list information, if any. 3. The user enters all the above class information. 4. The system validates the entry. 5. The system saves the information entered to file. Secondary scenarios: Entered Class Already Exists Required Information Is Missing User Cancels Enter Class Information Postcondition: 1. Entered class information is saved. Fig. 2 UCS Use Case Enter Class Information Use Case: Create Classroom Schedule ID: UC7 University administrator 1. All semester information has been entered. 1. The use case starts after all semester information has been entered. 2. The system prompts the user to choose which parameter(s) he or she wishes to schedule by. 3. The system schedules, as much as possible, the classes into classrooms. 4. The system notifies the user whether it has successfully scheduled all classes into classrooms. 5. The system saves the schedule even if it was not successful (in all cases, the portion that is successfully scheduled is saved). Secondary Scenarios: No Valid Schedule Solution Is Possible Ran Out of Memory User Cancels Schedule Creation Postconditions: 1. A schedule file is created. 2. The user knows whether the schedule was created successfully or if changes to the information are needed. Fig. 3 UCS Use Case Create Classroom Schedule 4.3 Scenarios For the Enter class information use case described above both the primary scenario and a secondary scenario are presented in the figures that follow. More exactly, Figure 4 presents the normal scenario of the Enter class information use case, while Figure 5 shows the Entered class already exists scenario of this particular use case.
5 Scenario for Use Case: Enter Class Information Scenario for Use Case: Enter Class Information Primary scenario Scenario ID: S5.1 Department staff 1. Class information needs to be entered or modified. 1. When the user chooses to enter class information, a window is displayed with fields in which to enter or to select for existing values the following class information: college name, department name, class number, call number, professor name, number of students, and classroom type. There are also fields to enter or select the date and time(s) of both lecture and, if there is one, the lab. If there is a lab, fields allowing the user enter or select classroom parameters for the lab are also displayed. 2. The user enters class information by providing all the items indicated in step The user clicks the Done button. (Note that if the user clicks the Cancel button, the scenario User Cancels Enter Class Information takes place.) 4. The system validates the class information entry. (Note that if the entry is invalid, either the scenario Entered Class Already Exists or the scenario Required Information Is Missing takes place.) 5. The system saves the class information to file. Postcondition: 1. Entered class information is saved. Secondary scenario: Entered Class Already Exists Scenario ID: S5.2 Department staff 1. Class information needs to be entered or modified. 1. This scenario starts following step 3 of scenario S5.1, after the user clicks Done. If the program detects that the class entered already exists, the program will display an error message and prompt the user for a valid class name and department. 2. The program detects that a class with the same class name and same department has previously been entered. 3. An error message is displayed notifying the user that the entered class already exists. The user is asked to enter a different class name or department. 4. The user clicks the OK button. 5. The window for the use case Enter Class Information is displayed, as indicated in step 1 of scenario S5.1. The user has the option of either updating the required information in the fields provided (and continue as in scenario S5.1) or clicking the Cancel button. In the latter case the scenario User Cancels Enter Class Information takes place from here. Postcondition: 1. Class information remains unchanged. Fig. 4 Primary Scenario of the Enter Class Information Use Case Fig. 5 A Secondary Scenario of the Enter Class Information Use Case
6 5 Class Diagram The class diagram of UCS is presented in Figure 6. This diagram has been developed iteratively along the guidelines suggested in [6]. Specifically, we have developed first an analysis class diagram, with the less detailed analysis classes indicated. Then, the class diagram has evolved into a structural model for the UCS that contains the more refined design classes of the system. The variant we present in Figure 6 is the design class diagram of UCS, showing the complete high level architecture of the UCS software and details on attributes, operations, relationships, and multiplicity constraints. Fig. 6 The Class Diagram of the UCS
7 6 Current Status Although we have focused in this paper on the specification of the UCS software, we note that the development of the UCS has already led to a first, fully operational version of the scheduler. This version has been written in C++, and its interfaces were implemented using the QT Non-Commercial Toolkit [7]. In addition, UCS stores all its data files in XML format [8]. The UCS has been successfully tested at the University of Nevada, Reno using information pertaining to the last semester. The results of the complete scheduling were more than encouraging: the UCS has provided a better allocation of classes to classrooms than the one previously used (done manually). In particular, more classes were assigned to classrooms in buildings belonging to the offering departments, thus shortening considerably the distances between the departments that offer the courses and the locations where the courses are delivered. More details on the design, implementation, integration, and testing of the UCS are beyond the scope of this paper. For more information on the UCS the reader is invited to have a look at [10]. 7 Conclusions The UCS tool whose specification has been presented in this paper provides a simple but efficient means of scheduling university classes into classrooms. We believe that the UCS not only represents a useful, practical tool, but also a research proof of concept based on which many possible extensions to this project can be further investigated. A very useful addition to the UCS would be the inclusion of time scheduling. Thus, the UCS would schedule classes not only into classrooms but also into time slots. Also, the UCS could suggest optimal courses of actions for resolving scheduling conflicts of various types, including time conflicts. Another possible extension would be to elaborate the web pages associated with UCS so that they could link to campus maps, campus images, and so forth. Enhancement of scheduling algorithms is another potential area of research and development for the UCS. Finally, the UCS could evolve into a generic scheduler that could be used in numerous applications outside the university environment. References [1] Ad Astra Information Systems, Astra Schedule, accessed May 4, 2003 at [2] Book King Online Scheduling Software, accessed May 4, 2003 at [3] I. Jacobson, G. Booch, and J. Rumbaugh, The Unified Software Development Process, Addison-Wesley, [4] OMG s UML Resource Page, accessed April 25, 2003 at [5] G. Booch, J. Rumbaugh, and I. Jacobson, The Unified Modeling Language User Guide, Addison-Wesley, [6] J. Arlow and I. Neustadt, UML and the Unified Process: Practical Object-Oriented Analysis & Design, Addison-Wesley, [7] Trolltech AS, QT Overview, accessed at May 4, [8] E. R. Harold and W. S. Means, XML in A Nutshell, 2 nd Ed., O Reilly and Associates, Inc., [9] J. Rumbaugh, I. Jacobson, and G. Booch, The Unified Modeling Language Reference Manual, Addison-Wesley, [10] Group 8 UCS Project web-site, accessed at May 4, 2003.
Specification of the UFT Web-Based Fitness Tracking Software
Specification of the UFT Web-Based Fitness Tracking Software STEVEN ARNOLD, CATHY OSTERHOUT, CHUL YIM, SERGIU DASCALU Department of Computer Science University of Nevada, Reno 1664 N. Virginia St., Reno,
How To Create A Network Monitoring Tool For A Distributed Network
Software Modeling for Open Distributed Network Monitoring Systems Jacob W. Kallman, Pedrum Minaie, Jason Truppi, Sergiu M. Dascalu, Frederick C. Harris, Jr. Department of Computer Science and Engineering,
Business Modeling with UML
Business Modeling with UML Hans-Erik Eriksson and Magnus Penker, Open Training Hans-Erik In order to keep up and be competitive, all companies Ericsson is and enterprises must assess the quality of their
Course Registration Case Study
Course Registration Case Study Table of Contents Case Study...1 Case Study Background... 2 Course Registration System Problem Statement... 2 The Role of Tools... 2 Project Summary... 2 The Inception Phase...
Designing Real-Time and Embedded Systems with the COMET/UML method
By Hassan Gomaa, Department of Information and Software Engineering, George Mason University. Designing Real-Time and Embedded Systems with the COMET/UML method Most object-oriented analysis and design
Menouer Boubekeur, Gregory Provan
Software Requirements Menouer Boubekeur, Gregory Provan Lectures Introduction to UML Introduction to Requirements Analysis Advanced techniques for Requirement Analysis M. Boubekeur, CSL, University College
The WebShop E-Commerce Framework
The WebShop E-Commerce Framework Marcus Fontoura IBM Almaden Research Center 650 Harry Road, San Jose, CA 95120, U.S.A. e-mail: fontouraalmaden.ibm.com Wolfgang Pree Professor of Computer Science Software
Evaluation 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
Systematization of Requirements Definition for Software Development Processes with a Business Modeling Architecture
Systematization of Requirements Definition for Software Development Processes with a Business Modeling Architecture Delmir de Azevedo Junior 1 and Renato de Campos 2 1 Petrobras University, Republican
Modeling a Problem Scenario with UML
1 Table of Contents 1 Table of Contents... 1 2 Problem Statement... 1 3 Overview... 1 3.1 Background... 1 3.2 Overall Description... 1 4 Constraints... 2 5 Functional Specifications... 2 5.1 Student...
Object-Oriented Design Guidelines
Adaptive Software Engineering G22.3033-007 Session 8 Sub-Topic 3 Presentation Object-Oriented Design Guidelines Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute
Rational Software. Course Registration System Use-Case Model
Rational Software Course Registration System Use-Case Model Version 2003 Revision History Date Issue Description Author 9/5/2000 V2000 Generation for beta Shawn Siemers 10/2/2000 V2000 Final release Shawn
A SYSTEMATIC APPROACH FOR COMPONENT-BASED SOFTWARE DEVELOPMENT
A SYSTEMATIC APPROACH FOR COMPONENT-BASED SOFTWARE DEVELOPMENT Cléver Ricardo Guareis de Farias, Marten van Sinderen and Luís Ferreira Pires Centre for Telematics and Information Technology (CTIT) PO Box
Tool Support for Software Variability Management and Product Derivation in Software Product Lines
Tool Support for Software Variability Management and Product Derivation in Software s Hassan Gomaa 1, Michael E. Shin 2 1 Dept. of Information and Software Engineering, George Mason University, Fairfax,
Applying Use Cases to Microcontroller Code Development. Chris Gilbert Cypress Semiconductor
Applying Use Cases to Microcontroller Code Development Chris Gilbert Cypress Semiconductor Agenda Why Use Cases Microcontroller Project Development Use Cases Defined Use Cases Composition General Example
Use Cases. Reference: Craig Larman, Applying UML and Patterns, Ch. 6
Use Cases Reference: Craig Larman, Applying UML and Patterns, Ch. 6 Use Case What it is: Text story Widely used to discover and record (mostly functional) requirements What is it about: Some actor(s) using
CHAPTER_3 SOFTWARE ENGINEERING (PROCESS MODELS)
CHAPTER_3 SOFTWARE ENGINEERING (PROCESS MODELS) Prescriptive Process Model Defines a distinct set of activities, actions, tasks, milestones, and work products that are required to engineer high quality
Requirement engineering Exercise the POS System solution
Requirement engineering Exercise the POS System solution Problem Description A POS (Point-Of-Sale) system is a computer system typically used to manage the sales in retail stores. It includes hardware
Chapter 4 Software Lifecycle and Performance Analysis
Chapter 4 Software Lifecycle and Performance Analysis This chapter is aimed at illustrating performance modeling and analysis issues within the software lifecycle. After having introduced software and
A Meeting Room Scheduling Problem
A Scheduling Problem Objective Engineering, Inc. 699 Windsong Trail Austin, Texas 78746 512-328-9658 FAX: 512-328-9661 [email protected] http://www.oeng.com Objective Engineering, Inc., 1999-2007. Photocopying,
3C05: Unified Software Development Process
3C05: Unified Software Development Process 1 Unit 5: Unified Software Development Process Objectives: Introduce the main concepts of iterative and incremental development Discuss the main USDP phases 2
Software Development Methodologies
Software Development Methodologies Lecturer: Raman Ramsin Lecture 5 Integrated Object-Oriented Methodologies: OPM and Catalysis 1 Object Process Methodology (OPM) Introduced by Dori in 1995 Primarily intended
270015 - IES - Introduction to Software Engineering
Coordinating unit: 270 - FIB - Barcelona School of Informatics Teaching unit: 747 - ESSI - Department of Service and Information System Engineering Academic year: Degree: 2015 BACHELOR'S DEGREE IN INFORMATICS
TDDC88 Lab 2 Unified Modeling Language (UML)
TDDC88 Lab 2 Unified Modeling Language (UML) Introduction What is UML? Unified Modeling Language (UML) is a collection of graphical notations, which are defined using a single meta-model. UML can be used
Incorporating Aspects into the UML
Incorporating Aspects into the UML Mark Basch University of North Florida Department of Computer and Information Sciences Jacksonville, FL 32224-2645 (904) 620-2985 [email protected] Arturo Sanchez University
Execution of A Requirement Model in Software Development
Execution of A Requirement Model in Software Development Wuwei Shen, Mohsen Guizani and Zijiang Yang Dept of Computer Science, Western Michigan University {wwshen,mguizani,zijiang}@cs.wmich.edu Kevin Compton
CS 389 Software Engineering. Lecture 2 Chapter 2 Software Processes. Adapted from: Chap 1. Sommerville 9 th ed. Chap 1. Pressman 6 th ed.
CS 389 Software Engineering Lecture 2 Chapter 2 Software Processes Adapted from: Chap 1. Sommerville 9 th ed. Chap 1. Pressman 6 th ed. Topics covered Software process models Process activities Coping
Analysis and Design with UML
Analysis and Design with UML Page 1 Agenda Benefits of Visual Modeling History of the UML Visual Modeling with UML The Rational Iterative Development Process Page 2 What is Visual Modeling? Item Order
The Unified Software Development Process
The Unified Software Development Process Technieche Universal Darmstadt FACHBEREICH IN-FORMAHK BLIOTHEK Ivar Jacobson Grady Booch James Rumbaugh Rational Software Corporation tnventar-nsr.: Sachgebiete:
ISSUES OF STRUCTURED VS. OBJECT-ORIENTED METHODOLOGY OF SYSTEMS ANALYSIS AND DESIGN
ISSUES OF STRUCTURED VS. OBJECT-ORIENTED METHODOLOGY OF SYSTEMS ANALYSIS AND DESIGN Mohammad A. Rob, University of Houston-Clear Lake, [email protected] ABSTRACT In recent years, there has been a surge of
DEVELOPING REQUIREMENTS FOR DATA WAREHOUSE SYSTEMS WITH USE CASES
DEVELOPING REQUIREMENTS FOR DATA WAREHOUSE SYSTEMS WITH USE CASES Robert M. Bruckner Vienna University of Technology [email protected] Beate List Vienna University of Technology [email protected]
CS 425 Software Engineering
Department of Computer Science and Engineering College of Engineering, University of Nevada, Reno Fall 2009 CS 425 Software Engineering Lectures: Instructors: Office hours: Catalog description: Course
Towards an Integration of Business Process Modeling and Object-Oriented Software Development
Towards an Integration of Business Process Modeling and Object-Oriented Software Development Peter Loos, Peter Fettke Chemnitz Univeristy of Technology, Chemnitz, Germany {loos peter.fettke}@isym.tu-chemnitz.de
Object-oriented design methodologies
Object-oriented design methodologies An object-oriented methodology is defined as the system of principles and procedures applied to object-oriented software development. Five years ago, there was no standard
Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53
Preface xvi Part I Introduction and System Engineering 1 Chapter 1 Introduction 2 1.1 What Is Software Engineering? 2 1.2 Why Software Engineering? 3 1.3 Software Life-Cycle Activities 4 1.3.1 Software
CHAPTER 4: BUSINESS ANALYTICS
Chapter 4: Business Analytics CHAPTER 4: BUSINESS ANALYTICS Objectives Introduction The objectives are: Describe Business Analytics Explain the terminology associated with Business Analytics Describe the
Modeling the User Interface of Web Applications with UML
Modeling the User Interface of Web Applications with UML Rolf Hennicker,Nora Koch,2 Institute of Computer Science Ludwig-Maximilians-University Munich Oettingenstr. 67 80538 München, Germany {kochn,hennicke}@informatik.uni-muenchen.de
Mapping between Levels in the Metamodel Architecture
Mapping between Levels in the Metamodel Architecture José Álvarez, Andy Evans 2, Paul Sammut 2 Dpto. de Lenguajes y Ciencias de la Computación, University Málaga, Málaga, 2907, Spain [email protected]
The BPM to UML activity diagram transformation using XSLT
The BPM to UML activity diagram transformation using XSLT Ondřej Macek 1 and Karel Richta 1,2 1 Department of Computer Science and Engineering, Faculty of Electrical Engineering, Czech Technical University,
Software Design Models, Tools & Processes *
Software Design Models, Tools & Processes * Lecture 1: Software Design and Software Development Process Cecilia Mascolo * Thanks to Alan Blackwell and Jim Arlow for le7ng me use some of their slides. About
Use-Case Analysis. ! What is it? ! From where did it come? ! Now part of UML
Use-Case Analysis Use-Case Analysis! What is it?! An informal, user-friendly, technique useful for functional requirements analysis and specification! From where did it come?! Ivar Jacobson, a Swedish
Use Cases. Massimo Felici. Massimo Felici Use Cases c 2004 2011
Use Cases Massimo Felici Use Cases 1 Support requirements engineering activities and the requirement process Capture what a system is supposed to do, i.e., systems functional requirements Describe sequences
UML SUPPORTED SOFTWARE DESIGN
UML SUPPORTED SOFTWARE DESIGN Darko Gvozdanović, Saša Dešić, Darko Huljenić Ericsson Nikola Tesla d.d., Krapinska 45, HR-0000 Zagreb, Croatia, tel.: +385 365 3889, faks: +385 365 3548, e-mail: [email protected]
I219 Software Design Methodology
I219 Software Design Methodology JAIST Master s Program Fall 2014 Nguyen Van Vu [email protected] Topics Course Introduction Objectives and Scope Evaluation Policies Content and Schedule Basic Concepts
CS 425 Software Engineering. Course Syllabus
Department of Computer Science and Engineering College of Engineering, University of Nevada, Reno Fall 2013 CS 425 Software Engineering Course Syllabus Lectures: Instructor: Office hours: Catalog description:
To introduce software process models To describe three generic process models and when they may be used
Software Processes Objectives To introduce software process models To describe three generic process models and when they may be used To describe outline process models for requirements engineering, software
A Brief Analysis of Web Design Patterns
A Brief Analysis of Web Design Patterns Ginny Sharma M.Tech Student, Dept. of CSE, MRIU Faridabad, Haryana, India Abstract Design patterns document good design solutions to a recurring problem in a particular
Masters 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
11 Tips to make the requirements definition process more effective and results more usable
1 11 Tips to make the s definition process more effective and results more usable This article discusses what I believe are the key techniques for making s definition process repeatable from project to
The 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 [email protected] Morris M. Liaw, Ph.D. University of Houston
2. Analysis, Design and Implementation
2. Subject/Topic/Focus: Software Production Process Summary: Software Crisis Software as a Product: From Individual Programs to Complete Application Systems Software Development: Goals, Tasks, Actors,
Modeling Web Applications Using Java And XML Related Technologies
Modeling Web Applications Using Java And XML Related Technologies Sam Chung Computing & Stware Systems Institute Technology University Washington Tacoma Tacoma, WA 98402. USA [email protected] Yun-Sik
UML-based Test Generation and Execution
UML-based Test Generation and Execution Jean Hartmann, Marlon Vieira, Herb Foster, Axel Ruder Siemens Corporate Research, Inc. 755 College Road East Princeton NJ 08540, USA [email protected] ABSTRACT
Generating Aspect Code from UML Models
Generating Aspect Code from UML Models Iris Groher Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81739 Munich, Germany [email protected] Stefan Schulze Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81739 Munich,
Tips for writing good use cases.
Transforming software and systems delivery White paper May 2008 Tips for writing good use cases. James Heumann, Requirements Evangelist, IBM Rational Software Page 2 Contents 2 Introduction 2 Understanding
Managing the Schedule of Classes
Managing the Schedule of Classes Index In Index Search for Classes -------------------------------------------------------------------------------------- Section 1 Schedule New Course/Maintain Schedule
CS4507 Advanced Software Engineering
CS4507 Advanced Software Engineering Lectures 2 & 3: Software Development Lifecycle Models A O Riordan, 2015 Some diagrams from Sommerville, some notes from Maciaszek/Liong Lifecycle Model Software development
Case Study: Design and Implementation of an Ordering system using UML, Formal specification and Java Builder
SETIT 2005 3 rd International Conference: Sciences of Electronic, Technologies of Information and Telecommunications MARCH 27-31, 2005 TUNISIA Case Study: Design and Implementation of an Ordering system
Information Systems Analysis and Design CSC340. 2004 John Mylopoulos. Software Architectures -- 1. Information Systems Analysis and Design CSC340
XIX. Software Architectures Software Architectures UML Packages Client- vs Peer-to-Peer Horizontal Layers and Vertical Partitions 3-Tier and 4-Tier Architectures The Model-View-Controller Architecture
Application of UML in Real-Time Embedded Systems
Application of UML in Real-Time Embedded Systems Aman Kaur King s College London, London, UK Email: [email protected] Rajeev Arora Mechanical Engineering Department, Invertis University, Invertis Village,
Requirements Engineering Process
Software Engineering Requirements Engineering Process Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To describe the principal requirements engineering activities and d their
Formalization of Functional Requirements and Their Traceability in UML Diagrams A Z Notation Based Approach
Formalization of Functional Requirements and Their Traceability in UML Diagrams A Z Notation Based Approach Sabnam Sengupta 1,Swapan Bhattacharya 2 Department of Computer Science & Engineering, Jadavpur
Requirements engineering
Learning Unit 2 Requirements engineering Contents Introduction............................................... 21 2.1 Important concepts........................................ 21 2.1.1 Stakeholders and
Aspect Oriented Strategy to model the Examination Management Systems
Aspect Oriented Strategy to model the Examination Management Systems P.Durga 1, S.Jeevitha 2, A.Poomalai 3, Prof.M.Sowmiya 4 and Prof.S.Balamurugan 5 Department of IT, Kalaignar Karunanidhi Institute of
Neglecting Agile Principles and Practices: A Case Study
Neglecting Agile Principles and Practices: A Case Study Patrícia Vilain Departament de Informatics and Statistics (INE) Federal University of Santa Catarina Florianópolis, Brazil [email protected] Alexandre
CS 425 Software Engineering. Course Syllabus
Department of Computer Science and Engineering College of Engineering, University of Nevada, Reno Fall 2015 CS 425 Software Engineering Course Syllabus Lectures: TR, 9:30 10:45 am, LEG-212 Instructor:
The Expressive Power of UML-based Web Engineering 1
The Expressive Power of UML-based Web Engineering 1 NORA KOCH AND ANDREAS KRAUS Ludwig-Maximilians-Universität München. Germany UML-based Web Engineering (UWE) is a development process for Web applications
Data Flow Diagram (DFD) Tutorial Written Date : January 27, 2012
Written Date : January 27, 2012 What is a data flow diagram (DFD)? Data Flow Diagrams (DFD) helps us in identifying existing business processes. It is a technique we benefit from particularly before we
Universiti Teknologi MARA. Requirement Analysis Using UML Approach for Research Management System (RMS)
C^tJ O19OO(^'J.Tfi^'i- Universiti Teknologi MARA Requirement Analysis Using UML Approach for Research Management System (RMS) Enamul Hasan Bin Rusly Thesis submitted in fulfillment of the requirements
Functional Requirements Document -Use Cases-
EUROPEAN COMMISSION DIRECTORATE GENERAL JRC JOINT RESEARCH CENTRE Cyber-security & New Technologies for Combating Fraud (CSCF) Institute for the Protection and Security of the Citizen (IPSC) EYE IN THE
A process-driven methodological approach for the design of telecommunications management systems
A process-driven methodological approach for the design of telecommunications management systems Thierry FRAIZE, Julio VILLENA, Jean-Daniel GUEDJ TELECOM ARGENTINA Av Dorrego 2520 (1425) Buenos Aires Argentina
UML TUTORIALS THE USE CASE MODEL
UML TUTORIALS THE USE CASE MODEL www.sparxsystems.com.au Sparx Systems 2004 Page 1/5 describes the proposed functionality of the new system. A Use Case represents a discrete unit of interaction between
Component Based Development Methods - comparison
Component Based Development Methods - comparison Dan Laurenţiu Jişa Abstract: This paper realizes a comparison among three of the best known component based development methods, emphazing on the earlier
TOGAF usage in outsourcing of software development
Acta Informatica Pragensia 2(2), 2013, 68 76, DOI: 10.18267/j.aip.25 Section: Online: aip.vse.cz Peer-reviewed papers TOGAF usage in outsourcing of software development Aziz Ahmad Rais 1, Rudolf Pecinovsky
Chap 1. Introduction to Software Architecture
Chap 1. Introduction to Software Architecture 1. Introduction 2. IEEE Recommended Practice for Architecture Modeling 3. Architecture Description Language: the UML 4. The Rational Unified Process (RUP)
Time 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
Software Architecture Action Guide. Why do we care about Software Architecture?
Software Action Guide Dana Bredemeyer Bredemeyer Consulting Tel: (812) 335-1653 Fax: (812) 335-1652 Email: [email protected] Web: Why do we care about Software? Because we want to be a dominant player
New York University Computer Science Department Courant Institute of Mathematical Sciences
New York University Computer Science Department Courant Institute of Mathematical Sciences Course Title: Software Engineering Course Number: g22.2440-001 Instructor: Jean-Claude Franchitti Session: 4 (Individual)
A UML Introduction Tutorial
A UML Introduction Tutorial 1/27/08 9:55 PM A UML Introduction Tutorial In this tutorial you will learn about the fundamentals of object oriented modelling, the Unified Modelling Language and the software
Formally speaking: How to apply OCL
Page 1 of 6 Copyright IBM Corporation 2004 http://www-106.ibm.com/developerworks/rational/library/5390.html Search for: within All of dw Use + - ( ) " " Search help IBM home Products & services Support
Software Engineering. Software Development Process Models. Lecturer: Giuseppe Santucci
Software Engineering Software Development Process Models Lecturer: Giuseppe Santucci Summary Modeling the Software Process Generic Software Process Models Waterfall model Process Iteration Incremental
Sofware Requirements Engineeing
Sofware Requirements Engineeing Three main tasks in RE: 1 Elicit find out what the customers really want. Identify stakeholders, their goals and viewpoints. 2 Document write it down (). Understandable
Computer Science. 232 Computer Science. Degrees and Certificates Awarded. A.S. Degree Requirements. Program Student Outcomes. Department Offices
232 Computer Science Computer Science (See Computer Information Systems section for additional computer courses.) We are in the Computer Age. Virtually every occupation in the world today has an interface
Home Appliance Control System
Home Appliance Control System Object-Oriented Analysis & Design Project Phase 1 CS 6359 Object-Oriented Analysis and Design Dr Lawrence Chung Summer 2005 Section 581 Group Members: Uttama Shakya: http://www.utdallas.edu/~uxs023000/
CPS122 Lecture: State and Activity Diagrams in UML
CPS122 Lecture: State and Activity Diagrams in UML Objectives: last revised February 14, 2012 1. To show how to create and read State Diagrams 2. To introduce UML Activity Diagrams Materials: 1. Demonstration
Using Use Cases for requirements capture. Pete McBreen. 1998 McBreen.Consulting
Using Use Cases for requirements capture Pete McBreen 1998 McBreen.Consulting [email protected] All rights reserved. You have permission to copy and distribute the document as long as you make no changes
UML Activity Diagrams: Versatile Roadmaps for Understanding System Behavior
UML Activity Diagrams: Versatile Roadmaps for Understanding System Behavior by Ben Lieberman Senior Software Architect Blueprint Technologies The core purpose of software development is to provide solutions
Role-based Authorization Constraints Specification Using Object Constraint Language
Role-based Authorization Constraints Specification Using Object Constraint Language Gail-Joon Ahn Department of Computer Science University of North Carolina at Charlotte [email protected] Michael. E. Shin
Course Computer Science Academic year 2012/2013 Subject Software Engineering II ECTS 6
Course Computer Science Academic year 2012/2013 Subject Software Engineering II ECTS 6 Type of course Compulsory Year 3rd Semester 1st semester Student Workload: Professor(s) Maria Clara Silveira Total
How to make a good Software Requirement Specification(SRS)
Information Management Software Information Management Software How to make a good Software Requirement Specification(SRS) Click to add text TGMC 2011 Phases Registration SRS Submission Project Submission
Case Study Solutions. This appendix contains the solutions to the Acme Mining Company Case Study.
Case Study Solutions This appendix contains the solutions to the Acme Mining Company Case Study. Sun Proprietary: Internal Use Only 1 The Acme Mining Company Rewritten Problem Statement Note The candidate
An Enterprise Knowledge Management System Based on the Use Case Model
An Enterprise Knowledge Management System Based on the Use Case Model Yixin Li 1, Nan Ren 2 and Sohail S. Chaudhry 3 1 School of Business Administration, Jiangsu University, Zhenjiang 212013, Jiangsu,
Linking BPMN, ArchiMate, and BWW: Perfect Match for Complete and Lawful Business Process Models?
Linking BPMN, ArchiMate, and BWW: Perfect Match for Complete and Lawful Business Process Models? Ludmila Penicina Institute of Applied Computer Systems, Riga Technical University, 1 Kalku, Riga, LV-1658,
Roadmap. Software Engineering. Software Engineering. Project Life Cycle. Database. Project Lifecycle
Database Project Lifecycle Philippe Bonnet, 2006 2 Software Engineering The implementation of a database application is a significant engineering endeavor The project must complete On time On budget The
The Business Process Model
An Introduction to UML The Business Process Model by Geoffrey Sparks All material (c) Geoffrey Sparks 2000 www.sparxsystems.com.au Geoffrey Sparks 2000 Page:1 Table of Contents THE BUSINESS PROCESS MODEL...3
MEASURING SOFTWARE FUNCTIONAL SIZE FROM BUSINESS PROCESS MODELS
International Journal of Software Engineering and Knowledge Engineering World Scientific Publishing Company MEASURING SOFTWARE FUNCTIONAL SIZE FROM BUSINESS PROCESS MODELS CARLOS MONSALVE CIDIS-FIEC, Escuela
Information systems modelling UML and service description languages
Internet Engineering Tomasz Babczyński, Zofia Kruczkiewicz Tomasz Kubik Information systems modelling UML and service description languages Student Contact Hours: 25.02.2015- Location: 325 C3 room 25.03.2015:
