Saturday, December 11, 2010

+ Task 4 : Myths +

Myth is defined as "widely held but false notation" by the oxford dictionary, so as in
other fields software arena also has some myths.


"Software myths- beliefs about software and the process used to build it- can be traced to
earliest days of computing.


Primarily, there are three types of software myths, all the three are stated below:


1. Management Myth
2. Customer Myth
3. Practitioner/Developer Myth

Management MythManagers with software responsibility, like managers in most disciplines, are often under pressure to maintain budgets, keep schedules from slipping, and improve quality. Like a drowning person who grasps at a straw, a software manager often grasps at belief in a software myth, if those beliefs will lessen the pressure (even temporarily). Some common manage real myths stated by Roger Pressman include:

I. We have standards and procedures for building software, so developers have everything they need to know.
II. We have state-of-the-art software development tools; after all, we buy the latest computers. 
III. If we're behind schedule, we can add  more programmers to catch up.
IV. A good manger can manage any project.

Customer Myth :  Customer who requests computer software may be a personal the next desk, a technical group down the hall, the marketing/sales department, or an outside company that has requested software under contract. In many cases, the customer believes myths about software because software managers and practitioners do little to correct misinformation. Myths lead to false expectations (by the customer) and, ultimately, dissatisfaction with the developer. Commonly held myths by the clients are:

I.A general statement of objectives is sufficient to begin writing programs -we can fill in the details later.
II. Requirement changes are easy to accommodate because software is flexible.
III. I know what my problem is; therefore I know how to solve it.
This primarily is seen evidently because the clients do not have a first hand experience in software development and they think that it's an easy process.

Developer Myth : Myths that are still believed by software practitioners have been fostered by over 50 years of programming culture. During the early days of software, programming was viewed as an art form. Old ways and attitudes die hard. A malpractice seen is developers are that they think they know everything and neglect the peculiarity of each problem.

I.   If I miss something now, I can fix it later.
II. Once the program is written and running, my job is done.
III. Until a program is running, there's no way of assessing its quality.
IV. The only deliverable for a software project is a working program.

Every developer should try to get all requirement is relevant detail to effectively design and code the system
Some misplaced assumptions that intensify the myths are listed below:

1.All requirements can be pre-specified
2.Users are experts at specification of their needs
3.Users and developers are both good at visualization
4.The project team is capable of unambiguous communication

Conclusion :  Realities are always different from the myths. So the myths must be demystified and work should be based on systematic, scientific and logical bases than the irrational myths. The systemic view must be considered to determine the success of any software project its not only the matter of hard skills but soft skills of the developer team also matter to come up with an efficient system.

+ Task 3 : Jobs +

Task 3 has been completed. We have some difficulties to display the table here as it is big and becomes distorted. Thus, the table can downloaded from here.

Most of the job providers require the candidate to possess at least 2 years of experience in the job field they are applying. This is to ensure that the candidate are well versed with the working environment and the job scope. A fresh graduate might not do well because lack of experience and also not ready in the working field. There is some companies that offers training for fresh graduates to learn the job that they are going to pursue.

Other than that, a candidate needs to be a person who have team spirit and good team player. They also must possess good interpersonal and communication skills. This is very important to ensure the work is done perfectly and on-time by the team.

Good command in programming is also needed in order to acquire the job position. Most of the job providers require the candidate to be fluent in C++, VB .NET, MySQL, Apache, and ASP.NET. The candidate should have knowledge in all of the programming language to encounter any kind of project.

In conclusion, a candidate who is interested in getting a job in IT field should have a lot of skills. Be it interpersonal skills, programming skills, and also soft skills. They must have possessed a very good command in programming. Although i feel that most of the companies should provide a training or course to a fresh graduate before they are offered a job.
This will ensure a person is well-aided in terms of the work knowledge. If all the jobs need at least 2 or 3 years of experience, then a fresh graduate will have a hard time looking for a job.

+ Task 2 : Software Application Domain +

Domain

Characteristic(s)

Example

System Software

· Program to service other programs


· Heavy interaction with computer hardware


· Heavy usage by multiple user


· Concurrent operation that require scheduling


· Resource sharing and sophisticated process management


· Complete data structures


· Multiple external interfaces


· Operating Systems


· Drivers


· Networking Software


· Telecommunications Software


· Compilers

Application Software

· Reasonably priced


· Easy to use


· Works accurately and according to spec


· Reasonably trouble free


· Adequate support for troubleshooting problems

· Point -of-Sale (POS)


· Graphic software


· Media players


· Enterprise software


· Accounting Software


· Office suites

Engineering/Scientific Software

· Require massive amount of calculations (floating points)


· Uses number-crunching algorithm


· Almost similar to system software characteristics

· Flight Simulator


· Driving Simulators


· Computer-aided design (CAD)


· Battlefield simulators


· Computer-aided engineering (CAE)

Embedded Software

· Real time computing constraints


· Handle a particular task in a device/system


· Program instructions written are called as firmware


· Small computerized parts within a larger device to serve a more general purpose


· Software to control robots movement


· Portable devices such as mp3 player


· Large stationary installation such as traffic light


· Handheld computer device such as smartphone and PDA

Product Line Software

· Unique composition of features


· Has multiple representation


· Microsoft Word


· Network protocols


· Educational/reference software


· Database management


· Financial software

Web Application

· Hosted in a browser controlled environment


· Inherit support for cross-platform compability


· Maintain and update without distributing and installing in client computers


· Uniten Online Application System


· Online spreadsheet


· Webmail


· Contact and time management software


· Online retail sales

Artificial Intelligent Software

· Perceive its environment and takes actions that maximizes its

chance of success


· Highly technical and specialized


· Expert System


· Pattern recognition


· Virtual reality/computer vision


· Robotics


· Data mining

Thursday, December 9, 2010

+ Group Member : Vimalen +



Name
: Vimalen Naidu

Age : 20

Course : Bachelor in System and Networking

University : Universiti Tenaga Nasional(Uniten)

Hometown : Kulim

About me : Hi I'm Vimalen. Currently doing my 2nd year degree in Universiti Tenaga Nasional.


+ Group Member : Pervin +



Name : Pervin Raja S/O Thuraisamy
Age : 20
ID Number : SN084430
Course : Bachelor in System and Networking
University : Universiti Tenaga Nasional(Uniten)
Address : 147, Persiaran Sg.Pari Timur 12, Taman Mas, Ipoh Perak.
State : Perak
Postal code : 30200
About me :
Hi I'm Pervin. I'm currently doing my 2nd year of degree in Uniten.
 This is our blog for our subject Fundamentals of Software Engineering (CSEB233).