- Open Access
- Total Downloads : 337
- Authors : Bhawna Dhupia, Sadia Rubab, Nabil Litayem
- Paper ID : IJERTV4IS041151
- Volume & Issue : Volume 04, Issue 04 (April 2015)
- DOI : http://dx.doi.org/10.17577/IJERTV4IS041151
- Published (First Online): 24-04-2015
- ISSN (Online) : 2278-0181
- Publisher Name : IJERT
- License: This work is licensed under a Creative Commons Attribution 4.0 International License
Extracting use Cases from Mobile Educational Applications Requirements
Bhawna Dhupia1, Sadia Rubab1, Nabil Litayem1, 2 1Computer Science and Information Department, Prince Sattam Bin Abdulaziz University
Wadi College of Arts and Science, Kingdom of Saudi Arabia
2 LSA Laboratory, INSAT-EPT, University of Carthage, Tunisia
Abstract The Unified Modeling Language is one of the popular traditional tools used for designing a model for software designing. But there are a few aspects which cannot be described by UML while developing the design model for mobile application development. So to describe all the aspects of mobile app model a modified version of UML is defined called M-UML. For initial design of the model use case are used to show the relationship between the various users in the project. The use case helps to depict the task done by various users and relationship of the task among each other graphically. In this paper, we will discuss the implementation of use case diagrams with detailed model of the project as a case study. Use case being the most basic step of creating a model for the project discusses in detail.
Keywords–use case; cross platform architecture; mobile learning; UML; M-UML
-
INTRODUCTION
Defining a model for Software development is a very crucial task. When it comes to the development of the software for mobile application, it becomes more complex. While developing the app for mobiles we face few challenges which are not common to the traditional development. First and foremost challenge is that we have got mobiles in the market with different platforms. So while designing the software we have to keep in mind the requirement of multiple platforms [3] [9]. Although there are various languages available which supports more than one platform, but cannot support all of them. Before the development of an application, we need to gather the requirement and do the prototyping of the project. UML is one of the most popular traditional tools which is used for detailed planning of the software development. There are few aspects of mobile designing which cannot be clearly defined through the use of the only UML tool. So to overcome this modified version of UML is proposing an extension to UML for mobile agents called M-UML [7]. In this paper, we will use both the tools for software modeling.
From a high-level point of view, there is no difference between developing software for desktops, servers, the Web or for mobile devices. It is all software engineering and the basic steps are always the same: requirements, design, programming, testing, and deployment. For mobile application development also we have to follow the basic steps of software engineering. The existence of a solid development framework and methodology allows applications to be developed more rapidly and with higher quality, in addition to promote consistency [1]. As mentioned
before, there are different platforms that are used in the mobile market: Symbian, Blackberry, iOS, Andriod, Windows phone and Plams webOS. For running an application on multiple platforms, a cross-platform framework is required [4]. If we see the current scenario of mobile application, we can broadly categorize them into three categories, as, native apps, mobile web apps and hybrid apps. Native apps can work in the absence of internet. If your environment is without the facility of internet, native application is the best choice. To work with web apps we need to have web browsers. These apps can work on the desktop as well as mobiles. Hybrid apps are very popular these days. It is the combination of both native and web app features. Depending upon these categories, we have a number of programming language combinations to do the development [4].
Before actually programming of the application, we have to collect the expectations of the users. UML is one of the tools which help us in designing the plan for software development. It helps you capture various requirements of the users. The representation done by UML is platform and language independent [5]. After the designing of the plan any language and platform can be used for the implementation. We will discuss the process of software designing of UML. Along with the discussion we will implement these processes in our project. The next section of the paper will deal with the use case design processes exclusively.
-
UML SOFTWARE ENGINEERING TOOL UML is a standard tool used to model the project. It is
language and platform independent. Once designed can be implemented using any language and platform. It has well defined syntaxes and semantics for designing the model. There are various steps laid down for development. It is the collection of various views and diagrams which help you to actually implement the software. Use case diagrams are used to define the requirement and the functionality, structure of a system, whereas state chart diagrams are used to define the dynamic behavior of an individual actor defines in use case
[6] [14]. Sequence diagram shows the sequences of activities carried in the projects. Activity diagram helps to show the concurrent flow of activity to another activity. Component Diagram describes the physical structure of the component. It is also used to define the static architectural aspects of the implementation view of the system model [6] [7] [15]. Traditional UML cannot cover all the aspects of modern designing related to mobiles. Due to this reason for mobilesystem an extension to UML is described which is called Mobile Unified Modeling Language (M-UML). It has been defined by Kassem Saleh and Christo El-Morr [7]. It covers mainly the mobility aspects of the design. While designing the use cases in M-UML, processes are defined by letter M at the top corner and remote process services are represented by letter R at the top corner [7] [8].
-
CASE STUDY
Use of mobile in education has become a hot topic for research. Considering the present scenario, mobile phones among all groups of society motivated us to exploit the mobile phone in education as learning resources. It is the first choice of everyone to communicate. Nowadays desktop has been replaced by smart phones. Rapid development in the technology of mobiles enables it to mobile games, GPS, banking, ticket purchases, social media, video chats, factory automation, and location based services, fitness apps and recently mobile medical apps [8]. Our research is based on the use of mobile phones as learning resources. Fig. 1 shows the main idea of the project. This will help both students and teachers to do the work easily and in a systematic manner.
We proposed to conduct class quizzes and assignment through mobile. Faculty will make the quizzes and assignment and upload it on the site. There will be a time constraint. Depending on which these will be sent to the students automatically. There will be a completion time assigned for all the activities. After completion of the time, students will not be able to submit the work. They will have the options of doing activities offline or online. The administrator will keep a track of student location while doing these activities. This is important because activities like quizzes have to do in the campus, whereas assignment can be done off campus. An administrator will send an alert to the students as and when new activities will add in the system. It will also send them an awareness alert about the deadline of activities, so that student can do them in the given time. After submission, it will be evaluated and marks will be updated for the respective students [3]. Ther will be a facility of communication between all the users through e-mails.
-
USE CASE DIAGRAM
Fig. 1 Flow of information
specifies processing performed by the system [12][15]. Each interaction specifies some communication between the
A use case typically captures the interactions between actors and the system with which it is associated. It collects all the steps done by the user. It provides a set of actions with which the value of a real-world actor can be evaluated. Use cases can also be used as a tool to gather requirements from an end user. To be more precise a use case describes a business system, and records how a user interacts with the system and what the system does in response. Use case diagrams are used to show the functionality of the system [10][13][14][15].
It shows the relationships of various entities between them. Use case diagrams are also called behavioral diagrams. Set actions to be performed are called use cases and entities responsible for performing these actions are named actors. Each use case is composed of one or more behavior sequences [11]. A behavior sequence is a sequence of steps in which each step specifies an action. Each action
system and one of the actors who participate in the use case.
With reference to our problem, we proposed a system which will help the faculties and students to use mobile phones as a learning tool. With the help of use case diagram, we are explaining the relationship between the actors included in the model. This will also explain the dependencies of these actors to each other. Faculties can put their assignment and quizzes online and students can do them via their mobile [3]. The administrator is the actor who relates all the activities of actors for proper functioning. The fig.2 elaborates the roles and responsibilities assigned to various actors in the project. The system collects all the responses from the students. After collecting the data results will be published for them. As a starting phase of the development, we design use case diagram for this project. From proposed system, we concluded that system have 3 use cases, namely, administrator, faculty and student. The figure-3 defines the use case diagram with generalized use
cases for actors of the project. Figure-4 shows the generalized skeleton of the project. This figure shows you the relationship of three actors between them. The faculty is responsible for the management of the activities. This includes addition, modification and deletion of the activities for the students. The student is responsible for performing the activities for their courses. The administrator is performing the key role in the system. It is keeping the log record of all the activities done by all users. We will study all of them in detail as we proceed. Figure-4 shows the
dependencies of actors on use case to perform the tasks. All the actors are dependent on the activities done by all the users. Now we will study all of them individually to know the more specific use case for each of them.
First of all we start with the actor faculty. As mentioned above, the faculty is responsible for managing activities in the systems.
Fig. 2. List of roles & responsibilities of users
Fig.3. The main use case diagram for the project
Fig.4. Dependencies of actors among each other
Fig.5 shows the relationship of entities student and faculty. The faculty is responsible for uploading the activity in the site. Then the student can download the activity and do it offline or online as guidelines given. There are deadlines given to all of the activities. The student can finish them and upload them on the site for evaluation. Till the end date students have permission to edit or delete the assignment uploaded in the system. As the deadline approached, they can just read the uploaded file, but cannot modify or delete them. After the end date, faculty can download the uploaded files from the system, evaluate it and upload the grades for all the students. Faculties have the facility to communicate with the students with the help of e-mails or instant messages.
Fig. 5. Detailed use case relation of student & faculty
One of the tools to describe the use case is the use case report. It coverts graphical use case representation in the form of a detailed report. It is easy to understand the details of actors and events performed by them through this report. This will clearly defined you the flow of events with detailed description of the work done [11] [12]. It also explains all the crucial steps followed by the use case if any.
Use case name
Activity Management
Participating actors
Faculty Student
Flow of Events
Entry Condition
Logged in with providing user name & password. It will also show the status of the user whether logged in home/campus.
-
Select preferred language & course
-
Create activities (quiz /assignment) with the answer key and upload it into the system
-
Fix a specific time and date for each activity with the status required as offline/online and home/campus.
-
Accept the activities done by the students and mark them
-
Upload the evaluated result in the system
-
The student is supposed to download the activity uploaded.
-
Till the deadline of the activity student can do editing if required.
Table-1: Use case report for faculty, student activity management
Fig. 6. Detailed use case of the administrator
Fig. 6. Provides you with the detailed activities of the administrator. The administrator is responsible for the management of the users, courses and users permissions and roles. He keeps a track of the activities done by all the users. Because some activities we want student to do in the campus during the class hours like quizzes and some they can do at home like assignments. There is a limit of time given to all the activities and students is supposed to complete it during that time duration. Status of users is kept on updating as and when the user log into the system. This helps to confirm the location and time of the users. The administrator is also responsible to addition, deletion and modification of the courses in the system. It will assign the faculties and students, according to the course registered. After completion of the semester it deletes all the details of the courses and backed up them in case it is required in any future reference. Permissions for all the users will keep on updating depending upon the requirements. We can demonstrate the use case diagram in the form of the use case report below.
Table-2: Use case report for activity management for the administrator
Use Case Name
Activity Management
Participating
actor
Administrator
Flow of events
Entry Condition
Logged in with providing user name &
password
-
Management of user account (Add, Modify and Delete)
-
Depending upon the date and time of the activity admin makes the activity lives in the system.
-
After completion of the activity admin is supposed to delete the activity.
-
Keep a track of location, status of the users. It will check whether the activity is done on campus or home.
-
It will keep the records of all the activity logs and backup the data in case of a system crash.
-
It is also responsible for assigning courses to the teachers and students, according to the registered courses.
-
-
ARCHITECTURAL REUIREMENTS
The mobile educational app will work as a tool that will provide a mobile based learning environment. It is not meant for a single subject rather anyone in a university can use it for course related activities such as quizzes and assignments. Therefore, for detailed an architecture of the app, it is necessary to define requirements according to its architectural classification. With a clear relationship developed between functional features, usability features and architectural classification during app requirements, in the future we would be able to deepen and formalize our knowledge of using the app in course related activities, technologies required in app implementation, propose some challenges in app deployment and device a mechanism to realize a practical utilization rather than taking an impossible mission of taking all the challenges as some of them listed in [16].
Based on the geographical location of teacher and students, we identify three different architectural classifications. First one is both teacher and student in the same classroom at the same time, second both can be in the university premises may not be at the same time, and the third one is both can use the app out of university premises at any time. These classifications will help us to understand specific resources required, information dissemination and nature of interaction between teachers and students. Data security, data transmission, sensing devices, sensing vital information in the classroom, information presentation support such as smart boards, printers are some of the goals of mobile enabled learning that could be achieved through an array of technologies and the technologies have different technical challenges and deployment issue in each architecture. Importance of cloud computing in learning [17] and Bluetooth used in multi-platform mobile app [18] could be considered while designing architecture and could be adopted during implementation.
-
CONCLUSION
This paper identifies the use cases that could be adopted during implementation and presented a basic flow of information in mobile enabled learning environment. The use cases have highlighted the importance of app by defining the role of each app user. These roles define clearly the architectural responsibilities of users in different scenarios.
The importance of architectural requirements is discussed in terms of architectural classification of app, technology challenges and deployment issues. The Bluetooth technology and cloud computing are recommended to be explored further during the implementation process.
REFERENCES
-
V. Dehlen and J. Øyvind A UML Profile for Modeling Mobile Information Systems
-
G. D. Abowd, L. Iftode, and H. Mitchell. Introduction: The smart phonea first platform for pervasive computing.
-
N. Litayem, B. Dhupia and S. Rubab, Automatic Attendance and Mobile Learning System in Sensor Enabled Heterogeneous and Dynamic University Environment, International Journal of Emerging Technology and Advanced Engineering, Vol. 4, Issue 12, Dec 2014
-
N. Litayem, B. Dhupia and S. Rubab, Review Of Cross-Platforms for Mobile Learning Application Development, (IJACSA) International Journal of Advanced Computer Science and Applications, Vol. 6 No. 1, 2015
-
The Study of Smart Phone Development Based on UML, Zongjiang Wang Computer and Communication Engineering Weifang University Weifang, China
-
M. R. Bahri, A. Hettab, A. Chaoui, and E. Kerkouche, Transforming Mobile UML Statecharts Models to Nested Nets Models using Graph Grammars: An Approach for Modeling and Analysis of Mobile Agent-Based Software Systems, Networked Digital Tevhnologies part : II, 4th International Conference, NDT 2012, Dubai, UAE, April 24-26, 2012.
-
K. Saleh, C. and El-Morr, M-UML: an extension to UML for the modeling of mobile agent-based software systems,
-
V. N. Inukollu, D. D. Keshamoni , T. Kang and M. Inukollu, Factors Influencing Quality Of Mobile Apps: Role of Mobile App Development Life Cycle, International Journal of Software Engineering & Applications (IJSEA), Vol.5, No.5, September 2014
-
S.Vaupe, G. Taentzer, J. P. Harries, R. Stroh, R. Gerlach, and M. Guckert , Model-Driven Development of Mobile Applications Allowing Role-Driven Variants, MODELS 2014, LNCS 8767, pp. 1 17, 2014. c Springer International Publishing Switzerland 2014
-
M. I. Muhairat , and R. E. Al-Qutaish, An Approach to Derive the Use Case Diagrams from an Event Table, Proceedings of the 8th WSEAS Int. Conference on Software Engineering, Parallel and Distributed Systems
-
I. Sommerville, Software Engineering , Addison-wesley publication
-
B. Bruegge, and A. H. Dutoit, Object Oriented Software Engineering, Second Addition , Pearson publication
-
H. A. Hassan, and Z. E. Yousif, Generating Test Cases For Platform Independent Model By Using Use Case Model, International Journal of Engineering Science and Technology Vol. 2(12), 2010
-
S. Supakkul and L. Chung A UML Profile for Goal-Oriented and Use Case-Driven Representation of NFRs and FRs, Proceedings of the 2005 Third ACIS Int'l Conference on Software Engineering Research,
Management and Applications (SERA05) IEEE
-
J. Lee and N. Xue, Analysing user requirement by use cases: A goal driven approach, IEEE Software July/August 1999
-
S. Rubab, B. Dhupia, B. Jaafar, and N. Litayem, Investigating Users Requirements for Mobile Educational App Imapct of Requirements Gathering on Software Development, International Journal of Engineering Research and Technology (IJERT), Vol. 4 Issue 3, Mar 2015
-
A. Bouyer, and B. Arasteh, The Necessity Of Using Cloud Computing In Educational System, Procedia – Social and Behavioral Sciences (143) 581 585, 2014
-
J.P. Espada, V.G. Diaz, R.G. Crespo, et al, Using extended web technologies to develop Bluetooth multi-platform mobile applications for interact with smart things, Information Fusion 21 30-41, 2015