Software Development
                       Presentation on Software Engineering on Development of Software Project




Present by
Zulfiqar Ali Sakrani
Kamal Panhwar
Khizer Hayat
Ayaz Ahmed Salam
Ehsan Mumtaz
Acknowledgment
It would be insufficient just to say a ”word of thanks” for all
those people who have been so instrumental in the success of
this project. However, as a small token of our appreciation we
have named here of all those wonderful people, without whom
all this would not have been possible.

       At the very outset, we would like to express our deep
sense of gratitude to our mentors at the college, Our Teacher
Sir Azam Khan who have been so kind to give us the
necessary information and motivation. Who has also been a
constant source of inspiration?
Company Profile
Suppotech Technologies Inc is one of the
pioneers in the Pakistan IT market, with its
origins in 2007. For over three years they
have developed and implemented solutions for
multiple market segments, across a range of
technologies in Pakistan. They have been in
forefront in introducing new technologies and
solutions.
Abstract
 The software package is about “Time
 tracking/Attendance and HR system” which
 runs on online server, and can be used on
 client side on browsers.

 The idea came from Our team key member Mr.
 Zulfiqar Sakrani who mention about a system.

 Application consist of Online website which
 allow company to monitor
 timings/attendance.
Analysis Phase - Requirements
 “I need a payroll system in which an
 employee can give their attendance by typing
 their username and password. So at the end of
 the month admin should be able to see the
 report for number of attendance by an
 employee.

 I require very efficient and using latest
 software engineering practices.”
UML MODELING CURRENT SYSTEM
Client is using very simple Must roll system, it is a
register with lining, and secretary of company write
each months last day name on coming month
SCENARIO BY SYSTEM ANALYST

A system is required where user can login system
to mark his attendance and do changes as per his
rights, while system notice automatically right time.
System check duty shift hours and logout user
automatically on end of shift, but user may login
again for his overtime

create reports Daily/Monthly attendance and absent
sheet, daily monthly early and late going
reports, daily/monthly overtime and employee out
of office reports
UML Diagram for New System
UML Specifications
Use Case:            User login system and mark attendance
Actor:               employee, system
Pre-condition:       User open login page
Post-condition:      mark attendance
Happy/Normal Path:   1. User provide username/password
                     2. System check credentials
                     3. System mark attendance
                     4. System on end of work logout employee
Alternate 1          1. Happy path step 1,2
                     2. Password incorrect
                     3. System refuse
Alternate 2          1. Happy path step 1,2
                     2. User logout early
                     3. System mark end time
Alternate 3          1. Happy path Same steps 1,2,3 and 4
                     2. User on overtime perform step 1 of happy
path again
                     3. User logout system
                     4. System mark end time
Activity Diagram User Login
Deciding Process Model
 Code and Fix Model
 In the beginning of software development
 (1950-1960) the development of software
 was a single person task. Most of time such
 software was created by user to be used by
 him. It included science or an engineering
 application
LINEAR SEQUENTIAL MODEL/
WATERFALL PROCESSES
Of all development models the Waterfall model is
probably the most well known. Having been
presented in 1970 it’s been around forever in
computing industry terms. The Waterfall describes
a series of sequential stages that follow each other
with no overlap.
The prototype Model
 Customer and developer meet to define
  overall system
 A quick design leading to prototype
  occurs, prototype created and forwarded to
  user
The RAD Model:
o A linear sequential software development model
  that emphasis on short development cycle.
o Business Modeling
o Data Modeling
o Process Modeling
o Application Generation
Selection of Process
 Selection is decision of software project
 manager, who must define a choice of process
 to design software. Decision rely on time
 frame, tools, software size, and performance.
 Due to time short We are Using RAD with UML
 business Modeling and advance tools like .Net
 Technologies.
Deciding Database
There are many options for database platform.
Access database is file based database, where
Micrsoft SQL Server, oracle, Mysql and PostGre are
RDBMS. We chose for development access which is
similar to RDBMS except Stored Procedure. And for
Production server we will use Microsoft SQL server.

Due to access for development period we would not
use stored procedures.
Aalysis – Finally User Interface
In the analysis we also need to gather some more
requirement for an application, including data
analysis and data flow, UI design and business
concept.

Web interface selected

User/admin login system

Dashboard for Admin

Manager information update/delete/add

Report system for Admin
Design – Business Modeling
Design – Database Modeling
Design – Methodology
 We are using latest technology with Rapid
  Application development tools. So doing
  structure programing is no more a choice
 .Net consist of services to develop
  software, and it has huge collection of
  reuseable libraries for countless operations.
 Spaghetti codes: In this development
  developer tend to put all codes of
  presentation, data access and business in
  same file, which make codes very difficult to
  maintain and reuse.
DEVELOPMENT IN LAYERS (N-TIER)

I selected layer development method, it is also
called as multi-layer development which refer to a
development model where presentation, business
logic and data are separated and following benefits.
Cleaner Codes
Increased Maintainability
Ability to spread your application load over multiple
servers

Layers refers to conceptual separation of the
application
Layer development concepts
This is very simple representation of my
project of multi layer application. In the
process of this application the data that
comes from a database.
The application, like a website or a
windows forms application is usually
called the Presentation Layer(visual
layer).
Than in the middle I added Business
Logic Layer(it consist of objects) I called
it the BLL that is the bridge between the
Presentation layer and the next layer
Project Management: Gant Chart

Software Development

  • 1.
    Software Development Presentation on Software Engineering on Development of Software Project Present by Zulfiqar Ali Sakrani Kamal Panhwar Khizer Hayat Ayaz Ahmed Salam Ehsan Mumtaz
  • 2.
    Acknowledgment It would beinsufficient just to say a ”word of thanks” for all those people who have been so instrumental in the success of this project. However, as a small token of our appreciation we have named here of all those wonderful people, without whom all this would not have been possible. At the very outset, we would like to express our deep sense of gratitude to our mentors at the college, Our Teacher Sir Azam Khan who have been so kind to give us the necessary information and motivation. Who has also been a constant source of inspiration?
  • 3.
    Company Profile Suppotech TechnologiesInc is one of the pioneers in the Pakistan IT market, with its origins in 2007. For over three years they have developed and implemented solutions for multiple market segments, across a range of technologies in Pakistan. They have been in forefront in introducing new technologies and solutions.
  • 4.
    Abstract The softwarepackage is about “Time tracking/Attendance and HR system” which runs on online server, and can be used on client side on browsers. The idea came from Our team key member Mr. Zulfiqar Sakrani who mention about a system. Application consist of Online website which allow company to monitor timings/attendance.
  • 5.
    Analysis Phase -Requirements “I need a payroll system in which an employee can give their attendance by typing their username and password. So at the end of the month admin should be able to see the report for number of attendance by an employee. I require very efficient and using latest software engineering practices.”
  • 6.
    UML MODELING CURRENTSYSTEM Client is using very simple Must roll system, it is a register with lining, and secretary of company write each months last day name on coming month
  • 7.
    SCENARIO BY SYSTEMANALYST A system is required where user can login system to mark his attendance and do changes as per his rights, while system notice automatically right time. System check duty shift hours and logout user automatically on end of shift, but user may login again for his overtime create reports Daily/Monthly attendance and absent sheet, daily monthly early and late going reports, daily/monthly overtime and employee out of office reports
  • 8.
    UML Diagram forNew System
  • 9.
    UML Specifications Use Case: User login system and mark attendance Actor: employee, system Pre-condition: User open login page Post-condition: mark attendance Happy/Normal Path: 1. User provide username/password 2. System check credentials 3. System mark attendance 4. System on end of work logout employee Alternate 1 1. Happy path step 1,2 2. Password incorrect 3. System refuse Alternate 2 1. Happy path step 1,2 2. User logout early 3. System mark end time Alternate 3 1. Happy path Same steps 1,2,3 and 4 2. User on overtime perform step 1 of happy path again 3. User logout system 4. System mark end time
  • 10.
  • 11.
    Deciding Process Model Code and Fix Model In the beginning of software development (1950-1960) the development of software was a single person task. Most of time such software was created by user to be used by him. It included science or an engineering application
  • 12.
    LINEAR SEQUENTIAL MODEL/ WATERFALLPROCESSES Of all development models the Waterfall model is probably the most well known. Having been presented in 1970 it’s been around forever in computing industry terms. The Waterfall describes a series of sequential stages that follow each other with no overlap.
  • 13.
    The prototype Model Customer and developer meet to define overall system  A quick design leading to prototype occurs, prototype created and forwarded to user
  • 14.
    The RAD Model: oA linear sequential software development model that emphasis on short development cycle. o Business Modeling o Data Modeling o Process Modeling o Application Generation Selection of Process Selection is decision of software project manager, who must define a choice of process to design software. Decision rely on time frame, tools, software size, and performance. Due to time short We are Using RAD with UML business Modeling and advance tools like .Net Technologies.
  • 15.
    Deciding Database There aremany options for database platform. Access database is file based database, where Micrsoft SQL Server, oracle, Mysql and PostGre are RDBMS. We chose for development access which is similar to RDBMS except Stored Procedure. And for Production server we will use Microsoft SQL server. Due to access for development period we would not use stored procedures.
  • 16.
    Aalysis – FinallyUser Interface In the analysis we also need to gather some more requirement for an application, including data analysis and data flow, UI design and business concept. Web interface selected User/admin login system Dashboard for Admin Manager information update/delete/add Report system for Admin
  • 17.
  • 18.
  • 19.
    Design – Methodology We are using latest technology with Rapid Application development tools. So doing structure programing is no more a choice  .Net consist of services to develop software, and it has huge collection of reuseable libraries for countless operations.  Spaghetti codes: In this development developer tend to put all codes of presentation, data access and business in same file, which make codes very difficult to maintain and reuse.
  • 20.
    DEVELOPMENT IN LAYERS(N-TIER) I selected layer development method, it is also called as multi-layer development which refer to a development model where presentation, business logic and data are separated and following benefits. Cleaner Codes Increased Maintainability Ability to spread your application load over multiple servers Layers refers to conceptual separation of the application
  • 21.
    Layer development concepts Thisis very simple representation of my project of multi layer application. In the process of this application the data that comes from a database. The application, like a website or a windows forms application is usually called the Presentation Layer(visual layer). Than in the middle I added Business Logic Layer(it consist of objects) I called it the BLL that is the bridge between the Presentation layer and the next layer
  • 22.