Functional And Non Functional Requirements Information Technology Essay
At present, many countries and communities are facing with the problem of raging war. War has resulted in the loss of numerous valuable human lives. Many governments have launched peace and humanitarian missions against the anti-social elements who race war. Among the weapons of human destruction, landmines acquire a special place. Landmines are used throughout the world and it has prevented armies from penetrating enemy lines.
It is essential for armies to seek knowledge of their enemies in order to defeat them. Due to landmines it has been impossible for armies to enter enemy lands without gaining attention. Therefore it is required to build a device that could penetrate enemy lands without triggering landmines in order to spy for secret information. It is required to build a remotely controllable device that could go to places that are unreachable by humans.
A robot designed for urban warfare will soon be on its way to assist Marines everywhere, where the scrappy machine can peer around corners and snoop in areas too dangerous or inaccessible for human soldiers.
Called Project emissary, the four-wheeled device is small and light enough to be carried in a soldier’s backpack and rugged enough to be used in any sort of conditions.
The robot is steered by a soldier, who can see where it is going via its onboard video camera. It will have infrared capabilities for operating at night.
A big problem in urban environments, he explained, is “situational awareness.” Enemy and civilians are intermixed and fighting must occur in and around a wide variety of structures. A machine that could carry cameras, microphones and other sensors inside and around buildings could reduce the danger to Marine units that must enter those environments.
Some military units already use small robots like the Packbot robots that explored caves during the search for al-Qaida members in Afghanistan. But those robots were designed primarily for explosive ordnance disposal.Even before the Marines started looking for the technology to build their robotic scout, Schempf was pushing the idea of small, mobile robots and in search of a customer. During a tour of CMU by Brig. Gen. William Catto, then commander of the Warfighting Lab, Schempf got his ear and found him receptive to the idea.
That was three years ago. Project emissary today is a 9-pound electric vehicle about 15 inches long, a little less than a foot wide and just five inches in height. Moreau said Project emissary can operate in three modes:
Drive mode. The machine has a top speed of 20 mph and also can be operated slowly and deliberately. The video camera transmits color imagery to the operator, who controls it using a hand-held controller/view screen.
Sentry mode. It can operate as a stationary listening post, with a directional microphone and sensors that can detect motion up to 30 feet away. If it detects something, it can alert the operator by vibrating the hand control or sending a verbal “motion left” or “motion right” alert through an earphone.
Watch mode. Again, the vehicle would remain motionless, but would use its cameras to relay information.
How it works
Do you need to perform an under-vehicle inspection? Pop on the wheels, drive the robot under the vehicle, and start inspecting. Need the robot to enter a multi-story building? Pop off the wheels, attach the stair-climbing flippers and treads, clip the arm onto the top, drive the robot up the stairs, use the gripper to open the door, and enter the building. Do you need a larger or smaller version
Project emissary is a small, rugged robot that weighs between 10-20kg depending on the chosen configuration. It can be easily carried by a soldier in a backpack and is robust enough to operate in rough terrain to help protect troops. The variant selected by the UK MOD is equipped with a manipulator arm to assist with the disarming of improvised explosive devices but the versatility of the Project emissary platform means that it can also be configured for a variety of other reconnaissance and surveillance operations. The Project emissary robot is also able to operate in sewers, drainpipes, caves and courtyards to detect danger.
the all-seeing, all-listening Project emissary has the ability to send video footage back to the operator at a safe distance thereby enabling troops to assess a situation prior to moving forward or entering a structure, potentially safeguarding lives.
The basic chassis is 20cm wide, 7.5cm tall and 23cm in length and can be easily adapted in the field with various accessories. In addition to IED (Improvised Explosive Device) identification, other functions include perimeter security, checkpoint security and the inspection of suspect vehicles.
Project emissary is set to become a vital tool in military campaigns throughout the world,” said Mary Carver. “The majority of the 3,000+ military robots that we have delivered to so far are being used to disable roadside bombs however we’re now seeing increased demand for military surveillance and reconnaissance as well as for homeland security and specialist intelligence operations.
2. Project Aim and Objectives
The aim of this project is as follows;
Aims:
1. Developing a light weight vehicle that could travel over landmines and seek information.
2. Developing a system that could be used to remotely control the vehicle.
. Objectives
1. Designing and developing the electronic circuit for the device.
2. Establishing proper connection between the computer and the device.
3. Coding algorithms to control the vehicle.
4. Developing interactive user interfaces for the system
5. Provide help on troubleshooting system failures
6. Implement a camera for monitoring purposes
7. A face/object recognition programme to identify threatening objects.
3. Project Deliverables
Investigate military requirements for a stealth robot controlling application and requirements.
Perform System Analysis to gather requirements and analyze/elicit/model the requirements.
Perform System Design and produce a design specification that includes the architectural design, data design and user interface designs.
Develop the software to control the software to control the RC car and configure the wireless camera to work accordingly.
Develop the face/object recognition program to identify car bombs or suspected activities.
Perform testing for the entire system to discover errors and to take corrective actions.
Create online help to provide support for the end users.
Finalize the application making it error free and implementing it.
Create a project report to document the development process.
4. Functional and Non Functional Requirements
Functional Requirements
Functional requirements of the Stealth Robot;
The stealth robot should be able to go undetected in any situation
The stealth robot should make less than 20 Hz or soothing close to that which is the human lowest hearing range.
The robot should be able to be controlled with in its specific range of 30m and video transmitted without any sort of disturbances.
The video transmitted should be encoded if not any one could receive the video and audio feed with the current available of technology commercially.
Functional requirements of the Face/object recognition programme;
The programme should be able to detect any sort of movements during 0 visibility
The programme should be able to detect from a various list of Explosives, Car bombs, Weapons or human insurgents.
Non Functional Requirements
Non-Functional requirements of the stealth robot;
Security for the control of the robot making it password protected .
Validate robots information about the bombs or human detection.
5. Project Approach
In order to complete the deliverables with the above mentioned requirements, prototyping will be used to develop the system since this project requires meeting the deadline on time and requires comprehensive system architecture.
A prototype typically simulates only a few aspects of the features of the eventual program, and may be completely different from the eventual implementation.
The conventional purpose of a prototype is to allow users of the software to evaluate developers’ proposals for the design of the eventual product by actually trying them out, rather than having to interpret and evaluate the design based on descriptions. Prototyping can also be used by end users to describe and prove requirements that developers have not considered, so “controlling can be a key factor in the commercial relationship between developers and their clients
My reason for choosing prototype is: The software designer and implementer can obtain feedback from the users early in the project. The designer and the can compare if the software made matches the software specification, according to which the software program is built. It also allows the software engineer some insight into the accuracy of initial project estimates and whether the deadlines and milestones proposed can be successfully met.
Throwaway prototyping
Also called close ended prototyping. Throwaway or Rapid Prototyping refers to the creation of a model that will eventually be discarded rather than becoming part of the final delivered software. After preliminary requirements gathering is accomplished, a simple working model of the system is constructed to visually show the users what their requirements may look like when they are implemented into a finished system.
Evolutionary prototyping
Evolutionary Prototyping (also known as breadboard prototyping) is quite different from Throwaway Prototyping. The main goal when using Evolutionary Prototyping is to build a very robust prototype in a structured manner and constantly refine it. “The reason for this is that the Evolutionary prototype, when built, forms the heart of the new system, and the improvements and further requirements will be built.
Incremental prototyping
The final product is built as separate prototypes. At the end the separate prototypes are merged in an overall design.
Extreme prototyping
Extreme Prototyping as a development process is used especially for developing web applications
I will be choosing evolutionary prototyping where I will be making an robust prototype and making amendments to the programme as needed
6. Project Resources
Resources.
Resources needed to complete the project
Technical resources
1 radio controlled car
1 remote
1 wireless camera
Electronic circuits
25 pin male parallel port socket
VB.NET
Computer with windows XP platform
Human recourses – It is intended to study the basics of port programming and the coding to take the video and audio inputs to the application.
.
Financial resources
To carry out with the project it is required to cover costs such as software costs and hardware costs. Since we are building a prototype, the costs will be handled by our selves. Detailed budget will be provided in the project documentation.
Tools
Efficiently using prototyping requires that an organization have proper tools and a staff trained to use those tools. Tools used in prototyping can vary from individual tools like 4th generation programming languages used for rapid prototyping to complex integrated CASE tools. 4th generation programming languages like Visual Basic and ColdFusion are frequently used since they are cheap, well known and relatively easy and fast to use. CASE tools, supporting requirements analysis, like the Requirements Engineering Environment are often developed or selected by the military or large organizations. Object oriented tools are also being developed like LYMB from the GE Research and Development Center. Users may prototype elements of an application themselves in a spreadsheet.
6.1. Modeling
The objective of this area is to identify a military force requirements. Since this system is not developed for a specific military force or country, processes from other robots and systems that are currently being used should be investigated and use for this system. In order to investigate the process following methods will be used;
Conduct interviews with armed forces who really know what they need in the field, etc…
Refer books, articles, papers, blogs, etc. to investigate military stealth matters.
Request information in internet forums.
When everything is clearly defined, Use Case Diagrams and Activity Diagrams will be constructed. Microsoft Visio will be used as the diagramming software.
6.2. Requirements
The objective of this area is to identify more detailed requirements for the system using the above stealth car models. Resources that can be used to gather information should be identified. Requirements will be gathered separately for the two subsystems, and their procedures will be as follows;
Requirement gathering for the controlling software;
Conduct interviews with armed forces who use similar tools for everyday purposes.
Refer papers/journals/books/articles related to stealth remote vehicles.
Evaluate current systems and robots for their strengths and weaknesses.
Requirement gathering for the face/object recognition;
Conduct interviews with security software companies where face recognition is already being used.
Refer papers/journals/books/articles related to e-commerce.
Visit the places where these are installed to find their strengths and weaknesses.
6.3. Analysis & Design
The purpose of this area is to identify how the system will perform all its requirements by building comprehensive software architecture which shows how the code will be structured and written. This stage requires identifying appropriate resources that can be used to construct diagrams and the application. The following software will be used to create diagrams and the application;
Microsoft Visio
Marketed as Microsoft Office Visio, is a diagramming program for Microsoft Windows that uses vector graphics to create diagrams
6.4. Implementation
This stage requires identifying resources that are required for software development. For the software development following software will be used;
Adobe Dreamweaver/Photoshop to create the interface of the system .
Visual Basic .NET (VB.NET) is an object-oriented computer programming language that can be viewed as an evolution of Microsoft’s Visual Basic (VB) which is generally implemented on the Microsoft .NET Framework. Microsoft currently supplies Visual Basic Express Edition free of charge.
Microsoft Visual Studio to develop the graphical representation of the system.
6.5. Test
The area requires testing the implemented code to check the functionality, reliability, accuracy, etc. of the controlling software and the movements which are the hardest of all to programme. Debugging tools available in the IDE (Visual Studio .NET) will be used for this area.
6.6. Deployment
The objective of this area is to deliver the software to the end users. Who will be the armed forces but in this case it will be handed over for further testing among friends and lectures.
7. Starting Points for Research
This project is influenced by the NREC collaborated with Automatika, Inc. (AI) to develop Dragon runner, an ultra-rugged, portable, lightweight reconnaissance robot for use by the U.S. Marine Corps in Operation Iraqi Freedom (OIF) for urban reconnaissance and sentry missions.
Dragon runner represents the state-of-the-art in rugged ultra-compact, ultra-portable mission-capable mobile robotics platform for use with wireless remote control.
The use of small-scale hand controllers and custom mission backpack, powered through military batteries, make this system ideal for use in areas too dangerous or inaccessible for Marines.
Project emissary has been successfully commercialized by Qinetiq North America.
Following books also provided the theoretical background for this project;
Boehm A, Murach’s Visual Basic 2005 Training and Reference
Coding4fun, Computer-Controlled R/C Car with Camera, last viewed on 12th October 2009, last modified date unknown, http://blogs.msdn.com/coding4fun/archive/2007/01/22/1507304.aspx
JB Projects, Computer controlled RC car, last viewed on 12th October 2009, last modified August 2003, http://www.jbprojects.net/projects/rc/
JB Projects, How to build a pc controlled car, last viewed on 12th October 2009, last modified August 2004, http://www.jbprojects.net/articles/rc/
QinetiQ North America Website
Legacy Automatika Website
Additional study materials that are used for this project are listed in “References”
8. Log of Risks
Following project management risks are identified for this project and following values are assigned for each level of risk impact and probability;
Level
Value
Very Low
0.05
Low
0.20
Medium
0.40
High
0.60
Very High
0.80
Following are the identified risks for this project;
ID
Risk
Probability
Impact
Score
1
Unavailability of IGC web server to host the e-tailing website
0.05
0.60
0.03
2
Loss of project data due to hard disk failure or lightning.
0.20
0.95
0.19
3
Increase of the estimated time of the project.
0.40
0.40
0.16
4
Unable to create program functionality
0.40
0.80
0.32
Following risk response plans are created to face the risks;
Risk ID
1
Risk
Unavailability of IGC web server to host the e-tailing website
Description
If IGC will be unable to provide web space for the project, implementation will be affected.
Response Plan
Buy web space/domain from a vendor and to host the website.
Risk ID
2
Risk
Loss of project data due to hard disk failure or lightning.
Description
If project data loses during the project due to hard disk failure of a natural disaster, the project work will be destroyed.
Response Plan
Keep Backups of daily work.
Risk ID
3
Risk
Increase of the estimated time of the project.
Description
If the project work is delayed due to a personal issue or a technical issue, the estimated ending date will be changed.
Response Plan
Since USDP makes it possible to finish the project early, the estimated ending date of the project is scheduled for 3rd may 2010 making the project capable meeting the deadline.
Risk ID
4
Risk
Unable to create program functionality
Description
If the any part of the program requires extensive knowledge that couldn’t be self-taught before the deadline, the program fails to deliver with functionality.
Response Plan
Find instructors or people who have required knowledge for the project.
9. Breakdown of Tasks
The following WBS shows the main tasks that will be done in order to produce the deliverables. The first level of the WBS shows the six engineering tasks that will be done in USDP; other tasks are done under each disciplinary area.
ID
Item
Description
1.0.0.0
E-tailing system
E-tailing system development project
1.1.0.0
BM
USDP activity, Business Modeling
1.1.1.0
Identify Processes
Identifying business processes
1.1.2.0
Create BM
Create a business model for e-tailing website
1.1.3.0
Create Diagrams
Construct diagrams for the business processes
1.2.0.0
Requirements
Gathering detailed requirements for the e-tailing system.
1.2.1.0
E-tailing Website
Requirement gathering for the e-tailing website.
1.2.2.0
DSS
Requirement gathering for the DSS
1.3.0.0
Analysis & Design
USDP activity, Analysis and Design
1.3.1.0
Data Design
Data Design
1.3.1.1
Data Warehouse
Data warehouse design
1.3.1.2
Database
Relational database design
1.3.2.0
UI Design
User Interface Design
1.3.2.1
E-tailing website
Web layout design for the e-tailing website.
1.3.2.2
DSS
UI design for the DSS
1.3.3.0
Architectural
Architectural design for the e-tailing system
1.4.0.0
Implementation
USDP activity, Implementation
1.4.1.0
DSS
Coding for the DSS
1.4.2.0
E-tailing Website
Coding/designing the e-tailing website
1.4.2.1
Client Side
Client side coding
1.4.2.2
Server Side
Server side coding
1.5.0.0
Testing
USDP activity, Testing
1.6.0.0
Deployment
USDP activity, Deployment
1.6.1.0
Online Help
Document online help of the e-tailing system
1.6.2.0
Host Website
Host the e-tailing website
Order Now